jag har ingen $_SESSION['sess_id'] på den sidan jag har den här koden på
Fel på kod när jag ska göra en insert
26 svar · 855 visningar · startad av Emil W · sida 2 av 2
Frågan, av Emil W
någon som vet varför inte koden funkar ? jag får detta felmeddelandet felYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from,to,text) VALUES(3,3,hej)' at line 1 här kommer koden <?php $server = ""; $user = ""; $pass = ""; $con = mysqlconnect($server,$user,$pass); if
Läs frågan i sin helhet →Vad får du egentligen för felmeddelande nu.
Klagar den på att SESSION saknas så tror jag att det är raden:
$f = intval($_SESSION['sess_id']);
jag får detta felmeddelande nu
Error: 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 ''f','to','te') VALUES('3','3','Hej\r\n')' at line 1
och så ser koden ut
<?php
$server = "***********";
$anv = "***********";
$los = "**********'";
$con = @mysql_connect($server,$anv,$los);
if(!$con)
{
die('fel' . mysql_error());
}
mysql_select_db("****************",$con);
$f = intval($_SESSION['sess_id']);
$mottagare = intval($_POST['mottagare']);
$text = mysql_real_escape_string($_POST['text']);
$in ="INSERT INTO pm ('f','to','te') VALUES('$f','$mottagare','$text')";
if(!mysql_query($in,$con))
{
die('fel' . mysql_error());
}
echo "Din pm är nu skickad";
mysql_close($con);
?>
Titta på vad nitro2k01 skrev. Du ska inte ha apostrofer runt fältnamnen, det ska vara accenter.
är accenter såna här ^
$in = "INSERT INTO pm (f,to,te) VALUES($f,$mottagare,'$text')";
Följande kod förutsätter:
f och to i databasen är integers och te är någon typ av text-fält.
Är f och to av typen integer?
Vad händer om du kör den koden? För vad jag kan se i tråden så har du aldrig testat just den här strängen?
så här är lösningen
$in ="INSERT INTO pm (`f`,`to`,`te`) VALUES('$f','$mottagare','$text')";
Tack så jätte mycket nitro2k01 för hjälpen