icecoldkilla
Was ist an diesem Code falsch :
php: |
1:
2:
3:
4:
5:
6:
7:
8:
|
if(!mysql_query("INSERT INTO Comment
(Titel,Thread,Inhalt,Datum,Autor)
VALUES
('$_POST[Name]',
'$_POST[Thread]',
'$_POST[Nachricht],
NOW(),
'$_POST[Autor]')")) { echo("Fehler"); } |
|
Die Datenbank "Comment" wurde folgendermaßen hergestellt :
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
|
if(mysql_query("CREATE TABLE Comment (
ID INT AUTO_INCREMENT PRIMARY KEY,
Titel VARCHAR(60),
Thread VARCHAR(60),
Inhalt TEXT,
Datum DATETIME,
Autor VARCHAR(15)
)")) { echo("Datenbank 'Comment' erfolgreich bearbeitet </br>"); } else {echo(" Fehler "); } |
|
Tabelle herstellen ging problemlos, aber ich kann nichts hineinschreiben, es wird immer, wie vordefiniert "Fehler" ausgegeben, und in der Tabelle befinden sich weiterhin keine Inhalte.
Hat jemand ne Idee??
MfG
icecoldkilla
bossi
Also Nimm mal den Code Teil, und guck mal ob die Post Variablen alle Richtig sind:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
|
if(!mysql_query("INSERT INTO Comment
VALUES
("'.$_POST[Name].'",
"'.$_POST[Thread].'",
"'.$_POST[Nachricht].'",
NOW(),
"'.$_POST[Autor].'")"))
{
echo"Fehler";
} |
|
Ich hoff es klappt so
icecoldkilla
Hallo,
DIe Anführungszeichen mussten weg, da sonst :
php: |
1:
|
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in C:Programmexampphtdocsnewscomment.php on line 71 |
|
kam
Fehler bleibt aber immernoch
lycoos
Nimm mal die Fehler ausgabe raus und führe es so aus! Dann zeig mal die fehlermeldung
[kamui]
Wieso machst dus nichtso:
php: |
1:
|
mysql_query("INSERT INTO Comment VALUES ('', '".$_POST['Name']."', '".$_POST['Thread']."', '".$_POST['Nachricht'].",NOW(), '".$_POST['Autor']."')") or die("Fehler"); |
|
?
icecoldkilla
@ [kamui]
geht nicht
@lycoos
dann kommt gar nichts, einfach nichts, nicht mal ein Wort...
MfG
icecoldkilla
24Bytes
geh in phpMyAdmin, füge dort beispiel werte in die DB ein, dann kommt der Befehl, der ausgeführt werden muss, dann ersetzt du einfach alle werte mit ".$_POST['wert']." so kannst du sichergehen, das der Befehl auf diesem server funktioniert.
Desweiteren: Sicher das MySQL Verbindung besteht ? Den Fehler habe ich oft
[kamui]
Mach mal folgendes, dann siehst du gleich auch den Fehler:
php: |
1:
|
mysql_query("INSERT INTO Comment VALUES ('', '".$_POST['Name']."', '".$_POST['Thread']."', '".$_POST['Nachricht'].",NOW(), '".$_POST['Autor']."')") or die("Fehler: <pre>".mysql_error()."</pre>"); |
|
icecoldkilla
php: |
1:
|
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'hdg') at line 1 |
|
Das kommt, ich verstehe diese Fehlermeldung aber leider nicht, da ich noch ein My-Sql neuling bin, ich habe früher ja immer TXT Programmiert
Wisst ihr, was ich ändern sollte??
MfG
icecoldkilla
[kamui]
Welche Variable hat den Wert "hdg" ?
xundy
Du solltest deine werte auch entsprechend maskieren bevor du die in deine datenbank schreibst, dein Query ist ja ne Einladung für sql-injections.
mfg
icecoldkilla
$_POST[Autor] hat den Wert gehabt
MfG
icecoldkilla
seb
sollte es nicht besser
heißen
24Bytes
Zitat: |
Original von icecoldkilla
php: |
1:
|
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'hdg') at line 1 |
|
Das kommt, ich verstehe diese Fehlermeldung aber leider nicht, da ich noch ein My-Sql neuling bin, ich habe früher ja immer TXT Programmiert
Wisst ihr, was ich ändern sollte??
MfG
icecoldkilla |
php: |
1:
|
Du hast eine Störung in deiner SQL Syntax; das Handbuch überprüfen, das deiner MySQL Bedienerversion für die rechte Syntax Gebrauch nahe „HDG“) an Linie 1 entspricht |
|
So übersetzt google die Fehlermeldung
d.h. wenn nahe $_POST['autor'] liegt es an "NOW()" ... welche MySQL Version hast du ?
xundy
code: |
1:
|
'".$_POST['Nachricht'].",NOW(), |
|
das sollte doch nun zu erkennen sein da fehlt ein ' vor dem Komma
mfg
lycoos
Kann das sein da du keinen Edtior mit Highlight Funktion hast? Wenn nein, lege dir mal einen zu. Ist sehr wichtig.
Ich empfehle Proton...
24Bytes
ich mag diese kleine fehler
icecoldkilla
Hallo,
Ich Code immer mit dem stink-normalen Text-Editor, aber ich habe immernoch nicht verstanden wo der Fehler liegt.
Die My-Sql Version... gute Frage, auf jeden Fall wird NOW() unterstützt, da ich es in dem Code Xtausend mal verwendet habe, und es immer funktioniert hat.
MfG
icecoldkilla
xundy
Ein stinknormaler Texteditor ist nich wirklich geeignet um vernüftig zu coden und auch kein Zeichen besonderer Fähigkeiten,
also besorge dir nen vernüftigen php-Editor (Weaverslave wäre zum Beispiel Freeware).
Und den fehler habe ich dir oben schon gezeigt
falsch
code: |
1:
|
'".$_POST['Nachricht'].",NOW(), |
|
richtig
code: |
1:
|
'".$_POST['Nachricht']."',NOW(), |
|
mfg
icecoldkilla
Hallo,
Mir ist klar, dass es kein Zeichen besonderer Fähigkeit ist, mit dem normalen TXT Editor zu coden, da codes ja immer die selben sind, der andere Editor ( den ich mir bald anschauen werde ) macht die Codes ja auch nicht von selber....
Also, Danke für die Hilfe
MfG
icecoldkilla