Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Daten aus ausgewaehlter Select Box ind die DB schreiben lassen

Frage Entwicklung PHP

Mitglied: burmy

burmy (Level 1) - Jetzt verbinden

27.10.2006, aktualisiert 06.11.2006, 8329 Aufrufe, 4 Kommentare

Eintrag aus Select Box wählen, und dann in DB schreiben lassen

Hallo

ich habe das ein kleines Problem, was ich nicht in den Griff bekomme,

Also ich habe einFormular mit einer Select Box erstellt die mir den Inhalt aus der MySQL DB in die Select Box füllt, das klappt auch soweit.

<?php
$sql = ("select NAME from tabelle");
$query = mysql_query($sql);
?>
<center>
<?php echo "INHALT: "?>
<select name="select">
<?php
while($liste = mysql_fetch_array($query)) {
?>
<option value="<?= $liste["NAME"] ?>"><?= $liste["NAME"] ?></option>
<?php
}
?>
</select></center>


Das unten ist die Übergabe der Daten aus den Formularfeldern:

$mysql_query = "INSERT INTO t_index (ID, NAME, ANSCHAFFUNG, SERIENNUMMER, INVENTARNUMMER, HOSTID, BESCHREIBUNG, BEMERKUNG)
VALUES ('','$NAME_db','$ANSCHAFFUNG_db','$SERIENNUMMER_db','$INVENTARNUMMER_db','$HOSTID_db','$BESCHREIBUNG_db','$BEMERKUNG_db')";
echo "$mysql_query<br />";
$rs = mysql_query($mysql_query) or die ("keine gültige DB Abfrage (INSERT)");

Nun möchte ich meine Formularfelder mit Daten füllen wo sich auch mehrere Select Boxen(Auswahlfelder) befinden.
Ich wähle einen Eintrag aus der Select Box und möchte das gesamte Formular mit allen Inhalten der Formularfelder und der gewählten Select Boxen in die DB schreiben, das eintragen der Formularfelder funktioniert, nur nicht der Select Boxen !!!

Mir kommt es jetzt nur darauf an wie ich die Übertragung der Inhalte der Select Boxen in die DB bekomme ??? quasi den gewählten Inhalt dann mit übergeben (submit) in die DB.

ich hoffe ich habe das nicht zu kompliziert formuliert.

Würde mich wahnsinnig über Hilfe freuen

Gruß Martin
Mitglied: Nippie
03.11.2006 um 20:49 Uhr
Moin,
Ich habe erst gestern ein Registrierungsformular geschrieben, also lass dich von den Begriffen im Quellcode net ablenken

Also:

Die Datei mit dem Formular
01.
<? 
02.
include("db_connect.php"
03.
?> 
04.
 
05.
<html> 
06.
<head> 
07.
<title>Unbenanntes Dokument</title> 
08.
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
09.
</head> 
10.
 
11.
<body> 
12.
<form action="create_user.php" method="post"
13.
<p> 
14.
<input type="text" size="17" name="user">  
15.
Name 
16.
</p> 
17.
<p> 
18.
<input type="text" size="17" name="password">  
19.
gew&uuml;nschtes Passwort 
20.
</p> 
21.
<p> 
22.
<input type="text" size="17" name="mail">  
23.
E-Mail</p> 
24.
<p> 
25.
<input type="submit" value="OK"></center> 
26.
</p> 
27.
</form> 
28.
 
29.
</body> 
30.
</html>
Die Datei db_connect.php verbindet dich mit der Datenbank.
und hier ist sie:
01.
<html> 
02.
<head> 
03.
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
04.
<title>Unbenanntes Dokument</title> 
05.
</head> 
06.
 
07.
<body> 
08.
<? 
09.
mysql_connect("host","Benutzer","PW");  
10.
mysql_select_db("Datebase");  
11.
?> 
12.
 
13.
<? 
14.
$abfrage = "SELECT * FROM TABELLE"
15.
$ergebnis = mysql_query($abfrage); 
16.
while($row = mysql_fetch_object($ergebnis)) 
17.
18.
echo $row->title; 
19.
20.
?> 
21.
 
22.
</body> 
23.
</html>
So....Und nun das Wichtigste ....Der "Insert Into" teil. Wie du sicher schon gesehen hast steht im Formular bei "action" "create_user.php".... Das ist diese hier.
01.
<html> 
02.
<body> 
03.
<?php 
04.
mysql_connect('host','User','PW') or die(mysql_error()); 
05.
     mysql_select_db('Datebase') or die(mysql_error()); 
06.
	  
07.
$user = $HTTP_POST_VARS["user"]; 
08.
$password = $HTTP_POST_VARS["password"]; 
09.
$mail = $HTTP_POST_VARS["mail"]; 
10.
 
11.
 
12.
$eintrag = "INSERT INTO TABELLE (UserName, UserPass, UserMail)  
13.
VALUES ('$user', '$password', 
14.
'$mail')"; 
15.
?> 
16.
<?php 
17.
$eintragen = mysql_query($eintrag); 
18.
?> 
19.
 
20.
 
21.
<p class="Stil1">eintrag erfolgreich </p> 
22.
</body> 
23.
</html>
So... Das ist schon alles. Nur noch deine Daten rein und fertig...

Mit freundlichen Grüßen Nippie
Bitte warten ..
Mitglied: burmy
06.11.2006 um 09:55 Uhr
Hallo, leider funktioniert es noch nicht, die Inhalte der Select Boxen werden als Wert "0" an die DB geschickt, als ob ein Modul nicht geladen wäre oder als ob ein Modul fehlt was die HTTP_POST_VARS verarbeiten kann, oder ?


Hier ist die Echo Ausgabe meiner Insert Anweisung für die DB:

INSERT INTO t_index (ID, NAME,TYP_ID, BETRIEBSSYSTEM_ID, STANDORT_ID, ANSCHAFFUNG, LIEFERANT_ID, STATUS_ID, SERIENNUMMER,
INVENTARNUMMER, INTERN_ID, HOSTID, POWERINPUT_ID, CPU_ID, CPUFREQUENZ_ID, RAM_ID, HDD_ID, HDDM_ID, NETSPEED_ID, IP_ID, SUBNET_ID, BESCHREIBUNG, BEMERKUNG) VALUES ('','test','','','', '2001-1-1','','','1111', '1111','','2222','', '','','','','', '','','','ohne','ohne');



Es werden nur die Werte der normalen Eingabefelder aus dem Formular an die DB übertragen !!! Komisch


include('../Connections/T_index.php');


Hier ist der Code für die T_index.php:



FileName="Connection_php_mysql.htm"
  1. Type="MYSQL"
  2. HTTP="true"
$hostname_T_index = "localhost";
$database_T_index = "hardwaredb";
$username_T_index = "xxxxx";
$password_T_index = "xxxxx";
#$T_index = mysql_pconnect($hostname_T_index, $username_T_index, $password_T_index) or trigger_error(mysql_error(),E_USER_ERROR);
$T_index = mysql_connect($hostname_T_index,$username_T_index,$password_T_index) or die ("keine DB verbindung");
mysql_select_db($database_T_index, $T_index) or die ("DB nicht erreichbar");







Hier ist nochmals der Code für die INSERT Anweisung


$ID_db = $HTTP_POST_VARS['ID'];
$NAME_db = $_POST['NAME'];
$TYP_ID_db = $HTTP_POST_VARS["TYP_ID"];
$BETRIEBSSYSTEM_ID_db = $HTTP_POST_VARS["BETRIEBSSYSTEM_ID"];
$STANDORT_ID_db = $HTTP_POST_VARS["STANDORT_ID"];
$ANSCHAFFUNG_db = $_POST['ANSCHAFFUNG'];
$LIEFERANT_ID_db = $HTTP_POST_VARS["LIEFERANT_ID"];
$STATUS_ID_db = $HTTP_POST_VARS["STATUS_ID"];
$SERIENNUMMER_db = $_POST['SERIENNUMMER'];
$INVENTARNUMMER_db = $_POST['INVENTARNUMMER'];
$INTERN_ID_db = $HTTP_POST_VARS["INTERN_ID"];
$HOSTID_db = $_POST['HOSTID'];
$POWERINPUT_ID_db = $HTTP_POST_VARS["POWERINPUT_ID"];
$CPU_ID_db = $HTTP_POST_VARS["CPU_ID"];
$CPUFREQUENZ_ID_db = $HTTP_POST_VARS["CPUFREQUENZ_ID"];
$RAM_ID_db = $HTTP_POST_VARS["RAM_ID"];
$HDD_ID_db = $HTTP_POST_VARS["HDD_ID"];
$HDDM_ID_db = $HTTP_POST_VARS["HDDM_ID"];
$NETSPEED_ID_db = $HTTP_POST_VARS["NETSPEED_ID"];
$IP_ID_db = $HTTP_POST_VARS["IP_ID"];
$SUBNET_ID_db = $HTTP_POST_VARS["SUBNET_ID"];
$BESCHREIBUNG_db = $_POST['BESCHREIBUNG'];
$BEMERKUNG_db = $_POST['BEMERKUNG'];

Das sind die Variablen für meine Felder und Select Boxen

Und hier ist der Code für die INSERT ANWEISUNG:

$mysql_query = "INSERT INTO t_index (ID, NAME,TYP_ID, BETRIEBSSYSTEM_ID, STANDORT_ID, ANSCHAFFUNG,
LIEFERANT_ID, STATUS_ID, SERIENNUMMER, INVENTARNUMMER, INTERN_ID,
HOSTID, POWERINPUT_ID, CPU_ID, CPUFREQUENZ_ID, RAM_ID, HDD_ID,
HDDM_ID, NETSPEED_ID, IP_ID, SUBNET_ID, BESCHREIBUNG, BEMERKUNG)
VALUES ('','$NAME_db','$TYP_ID_db','$BETRIEBSSYSTEM_ID_db','$STANDORT_ID_db',
'$ANSCHAFFUNG_db','$LIEFERANT_ID_db','$STATUS_ID_db','$SERIENNUMMER_db',
'$INVENTARNUMMER_db','$INTERN_ID_db','$HOSTID_db','$POWERINPUT_ID_db',
'$CPU_ID_db','$CPUFREQUENZ_ID_db','$RAM_ID_db','$HDD_ID_db','$HDDM_ID_db',
'$NETSPEED_ID_db','$IP_ID_db','$SUBNET_ID_db','$BESCHREIBUNG_db','$BEMERKUNG_db')";
echo "$mysql_query<br />";
$rs = mysql_query($mysql_query) or die ("keine gültige DB Abfrage (INSERT)");



Leider funktioniert das immer noch nicht, was kann denn noch falsch sein ?
Ich habe die Eingabefelder mit $_POST versehen und die Select Boxen mit $HTTP_POST_VARS.

Vielleicht wird es jetzt ersichtlicher durch den Quelltext.

Danke
Bitte warten ..
Mitglied: burmy
06.11.2006 um 10:13 Uhr
Hallo, leider funktioniert es noch nicht, die Inhalte der Select Boxen werden als Wert "0" an die DB geschickt, als ob ein Modul nicht geladen wäre oder als ob ein Modul fehlt was die HTTP_POST_VARS verarbeiten kann, oder ?

Hier ist die Echo Ausgabe meiner Insert Anweisung für die DB:

INSERT INTO t_index (ID, NAME,TYP_ID, BETRIEBSSYSTEM_ID, STANDORT_ID, ANSCHAFFUNG, LIEFERANT_ID, STATUS_ID, SERIENNUMMER,
INVENTARNUMMER, INTERN_ID, HOSTID, POWERINPUT_ID, CPU_ID, CPUFREQUENZ_ID, RAM_ID, HDD_ID, HDDM_ID, NETSPEED_ID, IP_ID, SUBNET_ID, BESCHREIBUNG, BEMERKUNG) VALUES (,'test',,,, '2001-1-1',,,'1111', '1111',,'2222',, ,,,,, ,,,'ohne','ohne');

Es werden nur die Werte der normalen Eingabefelder aus dem Formular an die DB übertragen !!! Komisch

include('../Connections/T_index.php');

Hier ist der Code für die T_index.php:

FileName="Connection_php_mysql.htm"

Type="MYSQL"
HTTP="true"
$hostname_T_index = "localhost";
$database_T_index = "hardwaredb";
$username_T_index = "xxxxx";
$password_T_index = "xxxxx";
#$T_index = mysql_pconnect($hostname_T_index, $username_T_index, $password_T_index) or trigger_error(mysql_error(),E_USER_ERROR);
$T_index = mysql_connect($hostname_T_index,$username_T_index,$password_T_index) or die ("keine DB verbindung");
mysql_select_db($database_T_index, $T_index) or die ("DB nicht erreichbar");

Hier ist nochmals der Code für die INSERT Anweisung

$ID_db = $HTTP_POST_VARS['ID'];
$NAME_db = $_POST['NAME'];
$TYP_ID_db = $HTTP_POST_VARS["TYP_ID"];
$BETRIEBSSYSTEM_ID_db = $HTTP_POST_VARS["BETRIEBSSYSTEM_ID"];
$STANDORT_ID_db = $HTTP_POST_VARS["STANDORT_ID"];
$ANSCHAFFUNG_db = $_POST['ANSCHAFFUNG'];
$LIEFERANT_ID_db = $HTTP_POST_VARS["LIEFERANT_ID"];
$STATUS_ID_db = $HTTP_POST_VARS["STATUS_ID"];
$SERIENNUMMER_db = $_POST['SERIENNUMMER'];
$INVENTARNUMMER_db = $_POST['INVENTARNUMMER'];
$INTERN_ID_db = $HTTP_POST_VARS["INTERN_ID"];
$HOSTID_db = $_POST['HOSTID'];
$POWERINPUT_ID_db = $HTTP_POST_VARS["POWERINPUT_ID"];
$CPU_ID_db = $HTTP_POST_VARS["CPU_ID"];
$CPUFREQUENZ_ID_db = $HTTP_POST_VARS["CPUFREQUENZ_ID"];
$RAM_ID_db = $HTTP_POST_VARS["RAM_ID"];
$HDD_ID_db = $HTTP_POST_VARS["HDD_ID"];
$HDDM_ID_db = $HTTP_POST_VARS["HDDM_ID"];
$NETSPEED_ID_db = $HTTP_POST_VARS["NETSPEED_ID"];
$IP_ID_db = $HTTP_POST_VARS["IP_ID"];
$SUBNET_ID_db = $HTTP_POST_VARS["SUBNET_ID"];
$BESCHREIBUNG_db = $_POST['BESCHREIBUNG'];
$BEMERKUNG_db = $_POST['BEMERKUNG'];

Das sind die Variablen für meine Felder und Select Boxen

Und hier ist der Code für die INSERT ANWEISUNG:

$mysql_query = "INSERT INTO t_index (ID, NAME,TYP_ID, BETRIEBSSYSTEM_ID, STANDORT_ID, ANSCHAFFUNG,
LIEFERANT_ID, STATUS_ID, SERIENNUMMER, INVENTARNUMMER, INTERN_ID,
HOSTID, POWERINPUT_ID, CPU_ID, CPUFREQUENZ_ID, RAM_ID, HDD_ID,
HDDM_ID, NETSPEED_ID, IP_ID, SUBNET_ID, BESCHREIBUNG, BEMERKUNG)
VALUES ('','$NAME_db','$TYP_ID_db','$BETRIEBSSYSTEM_ID_db','$STANDORT_ID_db',
'$ANSCHAFFUNG_db','$LIEFERANT_ID_db','$STATUS_ID_db','$SERIENNUMMER_db',
'$INVENTARNUMMER_db','$INTERN_ID_db','$HOSTID_db','$POWERINPUT_ID_db',
'$CPU_ID_db','$CPUFREQUENZ_ID_db','$RAM_ID_db','$HDD_ID_db','$HDDM_ID_db',
'$NETSPEED_ID_db','$IP_ID_db','$SUBNET_ID_db','$BESCHREIBUNG_db','$BEMERKUNG_db')";
echo "$mysql_query<br />";
$rs = mysql_query($mysql_query) or die ("keine gültige DB Abfrage (INSERT)");

Leider funktioniert das immer noch nicht, was kann denn noch falsch sein ?
Ich habe die Eingabefelder mit $_POST versehen und die Select Boxen mit $HTTP_POST_VARS.

Vielleicht wird es jetzt ersichtlicher durch den Quelltext.

Danke
Bitte warten ..
Mitglied: burmy
06.11.2006 um 11:20 Uhr
Habe den Fehler gefunden,

ich habe die Select Anweisungen der Select Boxen in extra Funktionen geschrieben, und dort nicht die Namen der Select Felder genau vergeben und sowmit konnten die Felder nicht gefunden werden bei dem Eintrag in die DB, es wurde der Wert 0 übergeben.

01.
 <select name="Typ_ID"> 

Danke trotzdem für die Hilfe

Martin
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Debian
Www-data in ein CIFS Share Daten schreiben lassen? (3)

Frage von Jens4ever zum Thema Debian ...

Webbrowser
gelöst Daten in entfernte Mysql DB schreiben (3)

Frage von nullacht15 zum Thema Webbrowser ...

Cloud-Dienste
Amazon: Dieser Lkw transportiert Daten in die Cloud (1)

Link von Kraemer zum Thema Cloud-Dienste ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...