"INSERT INTO" geht nicht
Christoph
- php
0 Marko0 Sven Rautenberg
Hallo,
ich habe ein kleines Problem ;-)
Undzwar versuche ich in eine MySQL Tabelle diverse Daten zu schreiben..
siehe hier::
mysql_query ("INSERT INTO referenzen ( uri, schnappschuss, leistung, status ) VALUES ( '$this->hp', '$this->schnappschuss', '$this->leistung', '$this->status' ) ");
nur leider klappt das net :(
Ich bekomme weder eine Fehlermeldung noch sonst irgendwas..*leider*
Das Script läuft bis zum ende durch ohne zu hängen oder sonst eine art Fehler, bis auf das wichtigste halt "er schreibt die Daten nicht in die Tabelle :-)
Seht ihr vieleicht einen Fehler in meiner Synthax?
Oder könnt ihr mir sonst einen Tipp geben?
Ach bevor ichs vergesse, gibt es eine funktion mit der ich prüfen kann ob eine MySQL Verbindung besteht?
Ich danke euch für eure Hilfe.. :)
Grüsse Christoph
Wenn keine Fehlermeldung ausgegeben wird kann es sein das zb der Tabellenname oder die Spaltennamen falsch geschrieben sind oder mit der Anzahl der Values nicht uebereinstimmen.
Auch wenn zb ein Variableinhalt nicht zum Datentyp der Spalte passt.
Dann wird keine Fehlermeldung ausgegeben sondern der Befehl wird einfach von mysql ignoriert.
Wenn jedoch keine Verbindung zur Datenbank vorhanden ist sollte eine Fehlermeldung erscheinen beim abarbeiten der Zeile.
Überprüfe bitte nochmal deine Spaltennamen und Datentypen in der Tabelle
Moin!
mysql_query ("INSERT INTO referenzen ( uri, schnappschuss, leistung, status ) VALUES ( '$this->hp', '$this->schnappschuss', '$this->leistung', '$this->status' ) ");
Bei Problemen mit PHP _und_ Datenbanken ist es immer sinnvoll, Debug-Informationen über die Datenbank-Aktivitäten ausgeben zu lassen. Dazu gehört insbesondere:
1. Lege deine SQL-Abfragen immer zuerst in eine Variable, und führe mysql_query mit der Variablen aus. Vorteil: Du kannst den tatsächlich wirksam werdenden Query mit echo auch nochmal im Browser ausgeben - vor allem wenn du Variablen in den Query steckst, ist das enorm wichtig. Vielleicht enthalten die Variablen nicht das, was du glaubst - oder sie werden nicht korrekt eingepflanzt.
2. Frage die MySQL-Fehlermeldung ab. http://www.php.net/manual/en/function.mysql-error.php. Sie gibt dir Aufschluß darüber, ob und was nicht geklappt hat.
3. Wenn alles nichts hilft: phpMyAdmin installieren und den aus 1. bekannten SQL-String einfach mal manuell auf die Datenbank loslassen. Dann sieht man in der Regel, was schief läuft. Insbesondere kann man viel leichter und interaktiv am SQL-String rummanipulieren, was zum Testen und Herausfinden sehr nett ist.
- Sven Rautenberg
Hi an alle Helfer,
ich danke euch für eure Hilfe!! ;-)
Der Tipp mit dem PHPadmin war gut :)
hatte da eine kleine ungereimtheit in der DB...
Gut das es euch gibt...
Viele Grüsse