Top-Themen

Aktuelle Themen (A bis Z)

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

Mit PHP Formular in DB schreiben funktioniert nicht

Frage Entwicklung

Mitglied: helmuthelmut2000

helmuthelmut2000 (Level 2) - Jetzt verbinden

20.07.2006, aktualisiert 23.07.2006, 5900 Aufrufe, 18 Kommentare

Hallo,

Ich habe ein Problem mit mienem ersten Formular wo ich Daten in eine
MySql DB schreiben will, kann mir da jemand helfen?

Wenn ich das Formular abschicke dann werden die Felder wieder leer gemacht
und es wird nichts in die DB geschrieben.
Weis jemand warum??




<html>
<head>
<?php
if (isset($gesendet))
{
mysql_connect();
mysql_select_db("firma");

$sqlab = "insert personen";
$sqlab .= "(name, vorname, personalnummer,";
$sqlab .= " gehalt, geburtstag) values ";
$sqlab .= "('$na', '$vn', $pn, $ge, '$gt')";

mysql_query($sqlab);

$num = mysql_affected_rows();
if ($num>0)
echo "Es wurde 1 Datensatz hinzugef&uuml;gt<p>";
else
{
echo "Es ist ein Fehler aufgetreten, ";
echo "es wurde kein Datensatz hinzugef&uuml;gt<p>";
}
}
?>
</head>
<body>
Geben Sie einen vollst&auml;ndigen Datensatz ein und senden Sie das formular ab:
<form action = "ud13.php" method = "post">
<input name="na"> Name<p>
<input name="vn"> Vorname<p>
<input name="pn"> Personalnummer
(eine ganze Zahl)<p>
<input name="ge"> Gehalt (Nachkommastellen
mit Punkt) <p>
<input name="gt"> Geburtsdatum (in der
Form JJJJ-MM-TT)<p>
<input type="submit" name="gesendet">
<input type="reset">
</form>
Alle Datens&auml;tze <a href="ud07.php">anzeigen</a>
</body>
</html>



Wenn mir da jemand den Fehler finden würde wäre ich sehr Dankbar.

Gruß
Helmut
Mitglied: Dani
20.07.2006 um 20:21 Uhr
Hi,
probier es mal so:
01.
<html> 
02.
<head> 
03.
<?php 
04.
 
05.
define ('MYSQL_HOST','localhost'); 
06.
define ('MYSQL_USER','BENUTZER'); 
07.
define ('MYSQL_PASS','PASSWORT'); 
08.
define ('MYSQL_DATABASE','DATENBANK'); 
09.
 
10.
$db_link=mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS); 
11.
$select=mysql_select_db(MYSQL_DATABASE); 
12.
 
13.
if (isset($gesendet)) 
14.
15.
 
16.
$sql="INSERT INTO personen (name, vorname, personalnummer, gehalt, geburtstag) 
17.
		  VALUES (NULL , '".$_POST['na']."', '".$_POST['vn']."', '".$_POST['pn']."', '".$_POST['ge']."', '".$_POST['gt']."');"; 
18.
mysql_query($sql); 
19.
 
20.
$num = mysql_affected_rows(); 
21.
if ($num > 0) 
22.
echo "Es wurde 1 Datensatz hinzugef&uuml;gt<p>"; 
23.
else 
24.
25.
echo "Es ist ein Fehler aufgetreten, "; 
26.
echo "es wurde kein Datensatz hinzugef&uuml;gt<p>"; 
27.
28.
29.
?> 
30.
</head> 
31.
<body> 
32.
Geben Sie einen vollst&auml;ndigen Datensatz ein und senden Sie das formular ab: 
33.
<form action = "ud13.php" method = "post"> 
34.
<input name="na"> Name<p> 
35.
<input name="vn"> Vorname<p> 
36.
<input name="pn"> Personalnummer 
37.
(eine ganze Zahl)<p> 
38.
<input name="ge"> Gehalt (Nachkommastellen 
39.
mit Punkt) <p> 
40.
<input name="gt"> Geburtsdatum (in der 
41.
Form JJJJ-MM-TT)<p> 
42.
<input type="submit" name="gesendet"> 
43.
<input type="reset"> 
44.
</form> 
45.
Alle Datens&auml;tze <a href="ud07.php">anzeigen</a> 
46.
</body> 
47.
</html>
Gruß
Dani
Bitte warten ..
Mitglied: helmuthelmut2000
20.07.2006 um 22:35 Uhr
Hallo,

Erstmal danke für die schnelle Antwort.
Aber das funktioniert leider auch nicht.
Also wenn ich Daten ins Formular eingebe,
und dann auf Anfrage senden gehe dann löscht
es nur meine Daten wieder raus und nichts wird in die
DB geschrieben,
Es gibt auch keine Fehlermeldung.

Woran könnte das noch liegen??

Danke.

Gruß
Helmut
Bitte warten ..
Mitglied: Dani
20.07.2006 um 22:41 Uhr
Hi,
du solltest erst mal ganz oben deine Daten angeben für den MySQL Server. Danach vergewissern, dass es die Datenbank gibt. Daraufhin überprüfen, ob die Tabelle mit genau den angegebenen Spalten vorhanden ist!


Gruß
Dani
Bitte warten ..
Mitglied: helmuthelmut2000
20.07.2006 um 22:47 Uhr
Hallo,

Ja klar das hab ich gemacht,
Ich habe den Benutzername und das Passwort geändert.
Ich habe die dB gelöscht und auch neu angelegt und mit
<a href="ud07.php">anzeigen, kann ich auf die DB zugreifen.
ud07.php sieht so aus:

<html>
<body>
<?php
mysql_connect();
mysql_select_db("firma");
$res = mysql_query("select * from personen");
$num = mysql_num_rows($res);

Tabellenbeginn
echo "<table border>";

Ueberschrift
echo "<tr><td>Lfd.Nr.</td><td>Name</td>";
echo "<td>Vorname</td>
<td>Personal-nummer</td>";
echo "<td>Gehalt</td> <td>Geburtstag</td> </tr>";

$lf = 1;

while ($dsatz = mysql_fetch_assoc($res))
{
echo "<tr>";
echo "<td>$lf</td>";
echo "<td>" . $dsatz["name"] . "</td>";
echo "<td>" . $dsatz["vorname"] . "</td>";
echo "<td>" . $dsatz["personalnummer"] . "</td>";
echo "<td>" . $dsatz["gehalt"] . "</td>";
echo "<td>" . $dsatz["geburtstag"] . "</td>";
echo "</tr>";
$lf = + 1;
}
//Tabellenende
echo "</table>";
?>
</body>
</html>

Gruß
Helmut
Bitte warten ..
Mitglied: Dani
20.07.2006 um 22:51 Uhr
Hi,
probier wirklich mal meins. Ich habe es grad probiert! => Es geht.


Gruß
Dani
Bitte warten ..
Mitglied: helmuthelmut2000
20.07.2006 um 23:04 Uhr
Hallo,

Hab ich schon, aber geht nicht.
Habe ich da ein fehler in der DB?

Gruß
Helmut

P.S. Oder liegt es an verschiedene versionen.
Ich mach das mit PHP5 und Mysql 5

Mit welchen Versionen hast du das Probiert?
Bitte warten ..
Mitglied: helmuthelmut2000
21.07.2006 um 21:46 Uhr
Hallo,

Jetzt hab ich das mal mit MySql4.1 versucht da geht es auch nicht.
Da gibt es doch einen Befehl den man mit reinschreibt, wo man dann
sieht in welcher Zeile der Fehler ist.
Weis den vielleicht jemand?


Gruß
Helmut
Bitte warten ..
Mitglied: Xaero1982
22.07.2006 um 00:12 Uhr
Lad dir mal den MySQL Query Browser runter.
Starte die MySQL Konsole und zeig mal den dump. Also die sicherung wie deine dp aussieht.
Bitte warten ..
Mitglied: helmuthelmut2000
22.07.2006 um 10:03 Uhr
Hallo,

Ich habe das PHPMyadmin installiert geht das da auch?

Ich habe schon in der DB nur mit zwei Spalten das probiert,
also nur mit Name und Vorname. Das geht auch nicht.
Mich wunder nur das ich die Daten aus der DB lesen kann wenn
ich die mit PHPMyadmin reinschreibe.
Liegt es vielleicht an den Berechtigungen?
Ich habe aber alle Hacken drin also volle berechtigung.

Gruß
Helmut
Bitte warten ..
Mitglied: Dani
22.07.2006 um 11:13 Uhr
Hi,
sry, ich hab dir den falschen Code gepostet!
Der hier geht:
01.
<html> 
02.
<head> 
03.
<?php 
04.
 
05.
define ('MYSQL_HOST','localhost'); 
06.
define ('MYSQL_USER','root'); 
07.
define ('MYSQL_PASS','test'); 
08.
define ('MYSQL_DATABASE','helmut'); 
09.
 
10.
$db_link=mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS); 
11.
$select=mysql_select_db(MYSQL_DATABASE); 
12.
 
13.
if (isset($_POST['gesendet'])) 
14.
15.
 
16.
$sql="INSERT INTO personen (id, name, vorname, personalnummer, gehalt, geburtstag) 
17.
          VALUES (NULL , '".$_POST['na']."', '".$_POST['vn']."', '".$_POST['pn']."', '".$_POST['ge']."', '".$_POST['gt']."');"; 
18.
mysql_query($sql); 
19.
 
20.
$num = mysql_affected_rows(); 
21.
if ($num > 0) 
22.
echo "Es wurde 1 Datensatz hinzugef&uuml;gt<p>"; 
23.
else 
24.
25.
echo "Es ist ein Fehler aufgetreten, "; 
26.
echo "es wurde kein Datensatz hinzugef&uuml;gt<p>"; 
27.
28.
29.
?> 
30.
</head> 
31.
<body> 
32.
Geben Sie einen vollst&auml;ndigen Datensatz ein und senden Sie das formular ab: 
33.
<form action = "<? echo $PHP_SELF; ?>" method = "post"> 
34.
<input name="na"> Name<p> 
35.
<input name="vn"> Vorname<p> 
36.
<input name="pn"> Personalnummer 
37.
(eine ganze Zahl)<p> 
38.
<input name="ge"> Gehalt (Nachkommastellen 
39.
mit Punkt) <p> 
40.
<input name="gt"> Geburtsdatum (in der 
41.
Form JJJJ-MM-TT)<p> 
42.
<input type="submit" name="gesendet"> 
43.
<input type="reset"> 
44.
</form> 
45.
Alle Datens&auml;tze <a href="ud07.php">anzeigen</a> 
46.
</body> 
47.
</html>
Gruß
Dani
Bitte warten ..
Mitglied: helmuthelmut2000
22.07.2006 um 21:41 Uhr
Hallo,

Danke,

Ich komme weiter, aber mit einer neuen Fehlermeldung:

Forbidden
You don't have permission to access /< on this server.

Apache/2.0.55 (Win32) PHP/5.1.4 Server at localhost Port 80

Sagt dir die Fehlermeldung was?
Ich habe natürlich Passwort und DB name geänder.

Gruß
Helmut
Bitte warten ..
Mitglied: Dani
22.07.2006 um 23:09 Uhr
Hi,
hört sich so an, als die Datei nicht die nötigen Rechte hat. Mach mal chmod 755 DATEINAME.


Gruß
Dani
Bitte warten ..
Mitglied: helmuthelmut2000
23.07.2006 um 12:37 Uhr
Hallo,

Jetzt bekomme ich die Fehlermeldung:

Es ist ein Fehler aufgetreten, es wurde kein Datensatz hinzugefügt


Gibt es das noch???

Gruß
Helmut
Bitte warten ..
Mitglied: helmuthelmut2000
23.07.2006 um 13:31 Uhr
Hallo,

Jetzt hab ich noch folgendes Probiert.

Ich habe den Befehl
if (mysql_errno()) die ("MySQL-Error:" . mysql_error());

nach der Zeile
mysql_query($sql);

eingefügt.

Jetzt bekomme ich die Fehlermeldung:

MySQL-Error:Unknown column 'id' in 'field list'

Ist das richtig so??

Gruß
Helmut
Bitte warten ..
Mitglied: helmuthelmut2000
23.07.2006 um 13:57 Uhr
Hallo,,,,


Ich habs es funtzt.


Ich habe in der Zeile
personen (id, name, vorname... das id entfernt,

und in der Zeile
VALUES (NULL , '".$_POST[.... das NULL entfernt.

Dann gehts.

Aber ist das richtig?
Was bedeutet das id und NULL braucht man das?
Muß ich da eine Spalte dafür hinzufügen?

Gruß
Helmut
Bitte warten ..
Mitglied: Xaero1982
23.07.2006 um 14:20 Uhr
Also aus deinem Eingangspost lese ich, dass du schon mit DB gearbeitet hast.

Kommt mir nicht so vor :/

Du solltest schon wissen wie deine Tabelle "personen" aufgebaut ist. Ob du da nen PKey hast und wie der heißt und welchen Typ dieser hat. Vielleicht ne PersonenId die du manuell eingibst oder eine Fortlaufende .. DAS musst du wissen, deswegen bat ich dich uns mal deine Tabelle zu posten.

bzw. aus dem Post konnt ich das lesen: http://www.administrator.de/Mit_einem_PHP-Formular_in_eine_MSSQL-DB_sch ...
Bitte warten ..
Mitglied: helmuthelmut2000
23.07.2006 um 19:48 Uhr
Hallo,

Ja alles klar,
Jetzt weis ichs.
Ich habe immer nur mit MSSQL2000 gearbeitet.
PHPmyadmin ist total neu für mich,
aber wo du das jetzt schreibst leuchtet mirs ein.

Danke nochmal für alles.

Gruß
Helmut
Bitte warten ..
Mitglied: Xaero1982
23.07.2006 um 19:52 Uhr
Fein fein .. auch wenn du noch nicht auf meine Bitte eingegangen bist.
Bitte warten ..
Ähnliche Inhalte
PHP
Mehrdimensionales Array mit PHP auslesen um es in eine MySql DB zu schreiben
gelöst Frage von IrunGoldsteinPHP2 Kommentare

Hallo Leute, eventuell kann mir jemand hier auf die Sprünge helfen damit. Ich habe ein Mehrdimensionales Array namens $tree ...

PHP
PHP Problem mit Formular
gelöst Frage von vServerPHP6 Kommentare

Hallo, ich habe ein Formular jedoch ein Problem das später nicht alle Felder weitergegeben werden? und hier hab ich ...

PHP
Druckbefehl in PHP schreiben
Frage von wescraven07PHP16 Kommentare

Hallo Leude, folgende Frage: Ich habe einen Server bei mir im Netzwerk, der verschiedene Produktdaten hält. Das Ganze ist ...

Webbrowser
Daten in entfernte Mysql DB schreiben
gelöst Frage von nullacht15Webbrowser3 Kommentare

Hi, ich beschäftige mich derzeit mit einem System, bestehend aus einigen Sensoren, welches Daten regelmäßig ausliest und diese in ...

Neue Wissensbeiträge
Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 1 StundeTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 1 StundeSicherheit4 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 StundenSicherheit3 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Sicherheit

Meltdown und Spectre: Die machen uns alle was vor

Information von Frank vor 3 StundenSicherheit10 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Heiß diskutierte Inhalte
Batch & Shell
Anmeldevorgang für Informatikraum (Schule) unter Windows
gelöst Frage von IngenieursBatch & Shell29 Kommentare

Hey zusammen, ich werde in naher Zukunft den Informatik Raum meiner jetzigen Schule von dem aktuellen Betreiber übernehmen (Vertrag ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von 92943Windows 1027 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Netzwerkgrundlagen
Welches Modem für VDSL 50000 der T-Com
Frage von Windows10GegnerNetzwerkgrundlagen19 Kommentare

Hallo, ein Kollege von mir will sich VDSL50000 von der T-Com holen, um daran einen Server zu betreiben. Ich ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...