Hulp nodig - You have an error in your SQL syntax

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Roy Dekker

Roy Dekker

05/08/2010 10:08:17
Quote Anchor link
Goedemorgen,

Mijn gastenboek geeft steeds een fout melding wanneer ik quotes in het bericht zet. Bijv. Halo dit is een 'mooie' website.. Als foutmelding krijg ik dan:

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 'mooie'', '05/08/2010')' at line 1.

De fout zou in dit stukje code moeten zitten, loop mij eigen echt blind te staren.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
break;
case 'complete':
if($_POST['submit']){
$name = strip_tags(stripslashes($_POST['name']));
$message = strip_tags(stripslashes(htmlspecialchars($_POST['message'])));
if($name == NULL OR $message == NULL){
$display .= "Please complete the form before hitting submit.";
}else{
$addmess = mysql_query("INSERT INTO `fv_guestbook` (`id` ,`postname` ,`postmessage` ,`postdate`)VALUES ('', '".$name."', '".$message."', '".$date."');") or die(mysql_error());
$display .= "Bedankt ".$name.", jouw bericht is geaccepteerd. <a href=\"http://www.dicolive.nl/pagina/gastenboek/\">Klik hier</a> om terug te keren";
}}
?>
Gewijzigd op 05/08/2010 10:18:54 door Roy Dekker
 
PHP hulp

PHP hulp

28/11/2024 21:31:30
 
Johan Dam

Johan Dam

05/08/2010 10:40:09
Quote Anchor link
echo de query eens,
 
Roy Dekker

Roy Dekker

05/08/2010 10:49:47
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$query = "SELECT id, postmessage, postname, postdate FROM fv_guestbook ORDER BY id DESC";
 $PagedQuery = new PagedQuery($query, $totalRows);
 $result = mysql_query($query);
 
Johan Dam

Johan Dam

05/08/2010 10:54:12
Quote Anchor link
ik bedoel, doe eens echo "INSERT INTO `fv_guestbook` (`id` ,`postname` ,`postmessage` ,`postdate`)VALUES ('', '".$name."', '".$message."', '".$date."';

als k je post lees dan lijkt het dat de query op regel 9 van je eerste post mis gaat, als je daar de mysql code van echo'd dan zie je precies wat hij probeerd te doen en kan je makkelijker zien waar het mis gaat.
 
John D

John D

05/08/2010 11:00:41
Quote Anchor link
Gebruik: mysql_real_escape_string — Escapes special characters in a string for use in an SQL statement
 
Roy Dekker

Roy Dekker

05/08/2010 11:01:21
Quote Anchor link
Ik heb het zo gedaan maar dan stuurt de pagina mij wel door (zonder foutmelding) alleen wordt uiteraard het bericht niet gepost.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo ( "INSERT INTO `fv_guestbook` (`id` ,`postname` ,`postmessage` ,`postdate`)VALUES ('', '".$name."', '".$message."', '".$date."');")


Klik hier voor het GB
 
B a s
Beheerder

B a s

05/08/2010 11:01:37
Quote Anchor link
Het is eigenlijk veel simpeler. Kijk eens naar de functie mysql_real_escape_string
 
Roy Dekker

Roy Dekker

05/08/2010 11:12:26
Quote Anchor link
Bedankt voor jullie hulp, het werkt!
Heb strip_tags(stripslashes(htmlspecialchars vervangen door mysql_real_escape_string.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.