Problem mit MySQL Abfrage

eXecuTe

Registered User
Hey!

Ich hab ein Problem... der sagt mir immer folgenden Fehler:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /var/www/a5p/submit.php on line 78

Der Codeauszug schaut so aus:
PHP:
$session = session_id();
echo "<br>".$session."<br>".$_POST['email']."<br>".$_SESSION['5'];
$SQL="INSERT INTO temp (name,email,link,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19) VALUES ('$_POST[name]', '$_POST[email]', '$session', '".$_SESSION['1']."', '".$_SESSION['2']."', '".$_SESSION['3']."', '".$_SESSION['4']."', '".$_SESSION['5']."', '".$_SESSION['6']."', '".$_SESSION['7']."', '".$_SESSION['8']."', '".$_SESSION['9']."', '".$_SESSION['10']."', '".$_SESSION['11']."', '".$_SESSION['12']."', '".$_SESSION['13']."', '".$_SESSION['14']."', '".$_SESSION['15']."', '".$_SESSION['16']."', '".$_SESSION['17']."', '".$_SESSION['18']."', '".$_SESSION['19']."')";
$gemacht = mysql_query($SQL);
$gemacht2 = mysql_fetch_assoc($gemacht);
if($gemacht2)
echo "Gemacht!";
else
echo "Nicht gemacht!";

Netten Greetz,
eXecuTe
 
Habe ich.. bringt mich leider nicht weiter..
das sieht dann so aus:

INSERT INTO temp (name,email,link,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19) VALUES ('sdfsadf', 'sdfsadfsadf', '1eb26ca7dbb89e0174fbb9ff603b8663', '3', '2', '4544', '1', '2', '3', '5', '2', '2', '4', '1', '1', '2', '3', '4', '3', '3', '6', '1')
 
Funktioniert "mysql_fetch_assoc" ueberhaupt mit "INSERT INTO"? Ich denke mal, dass ein "SELECT" besser passen wuerde.
 
Der soll mit mysql_fetch_assoc nur checken ob der die Anfrage durchgefüht hat..
Aber der führt die Abfrage net durch -.-
 
Der soll mit mysql_fetch_assoc nur checken ob der die Anfrage durchgefüht hat..
Also ich finde zu der Funktion diese Beschreibung hier
PHP: mysql_fetch_assoc - Manual
da heisst es
Liefert einen Datensatz als assoziatives Array ...
Liefert ein assoziatives Array, das den geholten entprechenden Datensatz enthält.
das klingt eigentlich so, als muesste die Funktion mit einem resultset, einer Ergebnismenge ausgefuehrt werden;
Insert liefert aber keine ("echte") Ergebnismenge und schon gar nicht von Datensaetzen.

Um zu sehen, ob da was und richtig gemacht wurde ist das wohl nicht wirklich die geeignete Funktion bei einem Insert da hilft eher mysql_errno.

Ciao,
Mercy.
 
OK, hab das fetch_assoc jetzt rausgenommen und mysql_error eingefügt. Der gibt mir jetzt folgenden SQL Fehler aus:

INSERT INTO temp ('name','email','link','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19') VALUES ('name', 'eMail Addi', 'd8860837ea923b057673667ad0456d95', '3', '3', '9999', '1', '2', '5', '2', '2', '3', '1', '1', '3', '2', '2', '1', '2', '1', '3', '3')My-SQL Fehler: 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 ''name','email','link','1','2','3','4','5','6','7','8','9','10','11','12','13','1' at line 1
 
INSERT INTO temp ('name','email','link','1','2','3','4','5','6','7' ,'8','9','10','11','12','13','14','15','16','17',' 18','19') VALUES ('name', 'eMail Addi', 'd8860837ea923b057673667ad0456d95', '3', '3', '9999', '1', '2', '5', '2', '2', '3', '1', '1', '3', '2', '2', '1', '2', '1', '3', '3')

Die Felder einer Tabelle grenzt du nicht mit ' sondern mit ` ein.

Code:
INSERT INTO temp (`name`,`email`,`link`,`1`,`2`,`3`,`4`,`5`,`6`,`7` ,`8`,`9`,`10`,`11`,`12`,`13`,`14`,`15`,`16`,`17`,`18`,`19`) VALUES ('name', 'eMail Addi', 'd8860837ea923b057673667ad0456d95', '3', '3', '9999', '1', '2', '5', '2', '2', '3', '1', '1', '3', '2', '2', '1', '2', '1', '3', '3')
 
Back
Top