Avatar billede tanzaweb Nybegynder
28. juli 2007 - 14:25 Der er 4 kommentarer og
1 løsning

You have an error in your SQL syntax

Hejsa jeg får en fejl når jeg forsøger at sætten noget tekst med formatering in i min MySql database. Fejlen er:
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 'Palatino Linotype'">Day 1<span style="font-size: 12pt; f' at line 2

Og sql linjen ser således ud:
mysql_query("INSERT into tours_luxury (TOUR_NO,TOUR_HEAD,TOUR_PROGRAM,PRICE_5,PRICE_CHILD_0_12,s_room,CATEGORY)
    VALUES ('{$_POST['TOUR_NO']}','{$_POST['TOUR_HEAD']}','" .$_POST['TOUR_PROGRAM']. "','{$_POST['PRICE_5']}','{$_POST['PRICE_CHILD_0_12']}','{$_POST['s_room']}','{$_POST['CATEGORY']}')") or die(mysql_error());

Det er omkring selve TOUR_PROGRAM fejlen kommer, og når jeg tager den ud virker den. Teksten i dette felt er textarea, og er formateret med TinyMCE så jeg tror det har noget med de ' som den har sat men jeg har ikke rigtigt kunne finde ud af at ændre det, jeg har prøvet med den linje herover, men også hvor den ser ud som dette '{$_POST['TOUR_PROGRAM']}' men det virker heller ikke, så er der nogen herinde som har et godt forslag?

På Forhånd tak.
Avatar billede dkfire Nybegynder
28. juli 2007 - 15:30 #1
Det er rigtig hvad du selv har fundet ud af, det er ' som giver fejl.
Du skal bruge funktionen mysql_escape_string() på din $_POST['TOUR_PROGRAM'].
Se evt. http://dk.php.net/manual/en/function.mysql-escape-string.php

Jeg vil også foreslå dig at lave lidt validering på alle dine $_POST's, for at gøre dit script lidt mere sikkert.
Avatar billede tanzaweb Nybegynder
28. juli 2007 - 16:33 #2
Det var lige det, tak for hjælpen. Jeg har noget validering på, men det er til en ven i Afrika som jeg skal ned og vise hvordan man bruger, så det bliver kun ham som skal bruge det.
Avatar billede tanzaweb Nybegynder
28. juli 2007 - 16:33 #3
Ups, smid lige et svar til point
Avatar billede dkfire Nybegynder
28. juli 2007 - 16:49 #4
Svar.

Eftersom du lægger dine $_POST's direkte ind i din database så har du da ingen validering af værdierne for dine $_POST's.
Avatar billede dkfire Nybegynder
28. juli 2007 - 16:52 #5
og et svar da ;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester