INSERT INTO funktioniert nicht
JaschaAK
- datenbank
Aloha,
[--STORY--]
Ich hab vor einiger Zeit angefangen DVD's zu sammeln und wollte mir jetzt eine Seite basteln, wo ich reinschreiben kann welche Filme ich noch gerne hätte (meistens fallen sie mir bei Freunden oder so ein).
Ich habe mir bereits eine Tabelle über PHPMyAdmin erstellt
und auch eine Seite für die Ausgabe, welche Reibungslos funktioniert.
[--PROBLEM--}
Nun baue ich gerade die Seite damit ich die Informationen eingeben kann, lasse das Formular allerdings erstmal weg.
Ich habe über google mehrere Tutorials gefunden, die meisten mit dem selben Code und mich daher für diesen entschieden.
Nur funktioniert er nicht.
Ergebnis ist eine leere Seite und kein Eintrag in der Tabelle
<?php
$con = mysql_connect("xx","xx","xx");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("xx", $con);
mysql_query("INSERT INTO `alliwant` ( `ID` , `Titel` , `Amazon` , `Trailer` , `Imdb` , `Datum` )
VALUES (
'', 'Blues Brothers', '', '', '', NOW( )
");
mysql_close($con);
?>
Datenbankname usw. habe ich natürlich bei mir richtig hingeschrieben.
Kennt ihr die Lösung?
MfG,
Jascha
hi,
Kennt ihr die Lösung?
Selbstverständlich. Frage nach Deinem Statement den ErrorLevel ab und poste den hier.
Hotti
hi,
Kennt ihr die Lösung?
Selbstverständlich. Frage nach Deinem Statement den ErrorLevel ab und poste den hier.
Hotti
Aloha,
in einem Tutorial stand, das man so die Fehler abfragt.
Meinstest du Error Reporting? (Ergebnis ist weiterhin eine leere Seite).
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$con = mysql_connect("xx","xx","xx");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("xx", $con);
mysql_query("INSERT INTO `alliwant` ( `ID` , `Titel` , `Amazon` , `Trailer` , `Imdb` , `Datum` )
VALUES (
'', 'Blues Brothers', '', '', '', NOW( )
");
mysql_close($con);
?>
Was den Syntax angeht.
Eclipse zeigt mir keine Fehler an.
Was genau sollte ich ändern?
Gruß,
Jascha
hi,
Was genau sollte ich ändern?
Deine Vorgehensweise.
1. Teste Dein Insert-Statement am mySQL-Prompt, funktioniert das?
2. baue mit PHP eine Verbindung zu Deiner DB auf, hast Du die?
3. schreibe Dein Statement in den PHP-Code
4. führe PHP-Code aus
5. prüfe das Ergebnis, frage die PHP-Methoden, ob Dein Statement einen Fehler erzeugt hat (siehe tk).
Dann klappts auch mit dem Insert,
Hotti
hi,
Was genau sollte ich ändern?
Deine Vorgehensweise.
- Teste Dein Insert-Statement am mySQL-Prompt, funktioniert das?
- baue mit PHP eine Verbindung zu Deiner DB auf, hast Du die?
- schreibe Dein Statement in den PHP-Code
- führe PHP-Code aus
- prüfe das Ergebnis, frage die PHP-Methoden, ob Dein Statement einen Fehler erzeugt hat (siehe tk).
Dann klappts auch mit dem Insert,
Hotti
huhu,
sorry ich bin etwas neuer in der Programmier-Welt.
Insert Statement? mySQL Prompt? Nie gehört :/
Aber ich weiss das die Verbindung zur DB steht.
Und wegen dem Fehlerprüfen schau ich gleich nochmal was man
da machen kann...
hi,
[..] mySQL Prompt? Nie gehört :/
den Prompt kriegst Du, wenn Du die Verbindung zu MySQL auf der Kommandozeile herstellst.
Andere Möglichkeit: MySQL Control Center.
Da hst du dann neben PHP die Möglichkeit, Deine Statements zu testen.
Statement = "SELECT feldname FROM tabellename"
= "INSERT ..."
usw.
Hotti
hi,
[..] mySQL Prompt? Nie gehört :/
den Prompt kriegst Du, wenn Du die Verbindung zu MySQL auf der Kommandozeile herstellst.
Andere Möglichkeit: MySQL Control Center.
Da hst du dann neben PHP die Möglichkeit, Deine Statements zu testen.
Statement = "SELECT feldname FROM tabellename"
= "INSERT ..."
usw.Hotti
Jo, das Statement ist richtig und funktioniert wenn ich es bei
PHPMyAdmin eingebe. :/
Hi,
bitte sinnvoll zitieren, nicht einfach alles!
Jo, das Statement ist richtig und funktioniert wenn ich es bei
PHPMyAdmin eingebe. :/
*Welches* Statement? Das dynamisch von PHP zusammengesetzte?
Und hast du dir jetzt endlich mal von der Datenbank den Fehler melden lassen?
MfG ChrisB
Aloha again,
nun habe ich den Fehler gefunden.
Ich habe einfach eine Klammer vergessen und zwar
hinter dem NOW().
Danke für eure Hilfe. Habe einiges gelernt.
Hier der funktionierende Code:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$con = mysql_connect("host","name","pw");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("datenbankname", $con);
mysql_query("INSERT INTO `alliwant` ( `ID` , `Titel` , `Amazon` , `Trailer` , `Imdb` , `Datum` )
VALUES (
'', 'Herr der Ringe - Die Gefaehrten', '', '', '', NOW( ))
");
mysql_close($con);
?>
Hallo Jascha,
mysql_query("INSERT INTO
alliwant
(ID
,Titel
,Amazon
,Trailer
,Imdb
,Datum
)
VALUES (
'', 'Blues Brothers', '', '', '', NOW( )
");
Mit einer Fehlerbehandlung hättest du gesehen, dass MySQL mit dem Syntax des Querys nicht einverstanden ist ...
Gruß,
Tobias