Probleempje met ' teken, msql syntax error

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Henk

Henk

25/03/2008 19:22:00
Quote Anchor link
Probleempje met het Agenda script,

Script werkt prima, alleen heb ik een mysql foutmelding als ik bv 's avonds in het bericht type bij bv avond niet, ligt dus aan het ' teken..
ik gebruik al de strip_tags() functie om de code te zuiveren van php of html tags. Maar toch gaat het fout..
Waarschijnlijk probleem met ' of " zie soort = 'feestdag"
$bericht = strip_tags($bericht);
Foutmelding: 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 'A vonds', date = '13/3/2008', soort = 'feestdagen'' at line 1

Iemand idee waar ' fouten geeft, btw niet op xamp omgeving maar wel bij mijn provider..vreemd? thanks
Gewijzigd op 01/01/1970 01:00:00 door Henk
 
PHP hulp

PHP hulp

29/03/2024 15:12:54
 
Mike van Dongen

Mike van Dongen

25/03/2008 19:24:00
Quote Anchor link
Laat je php script eens zien waar je de MySQL uitvoert?

Edit, 'feestdagen", dat kan natuurlijk niet ;)
Gewijzigd op 01/01/1970 01:00:00 door Mike van Dongen
 
Johan K

Johan K

25/03/2008 19:26:00
Quote Anchor link
De fout bevind zich op regel 51 colum 15.
Daar moet je even de ' in een '' vervangen.


NIET DUS...

Hoe moeten wij nou weten waar een fout zit, als we de broncode niet eens kunnen bekijken?
Gewijzigd op 01/01/1970 01:00:00 door Johan K
 
Henk

Henk

25/03/2008 19:32:00
Quote Anchor link
Sorry de code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
if ($_POST['titel'])
{
$titel = $_POST['titel'];
$titel = wordwrap($titel, 15, '<br>', 1);
$bericht = $_POST['bericht'];
$bericht = wordwrap($bericht, 50, '<br>', 1);
$bericht = nl2br($bericht);
$jaar = $_GET['jaar'];
$maand = $_GET['maand'];
$dag = $_GET['dag'];
$soort = $_POST['soort'];
if($_POST['soort']===activiteit and $_POST['soort']===afspraak and $_POST['soort']===feestdag and $_POST['soort']===verjaardag)
{
$sql = "INSERT INTO agenda SET id = '', titel = '$titel', bericht = '$bericht', date = '$jaar/$maand', soort = 'activiteit', soort = 'afspraak', soort = 'feestdag', soort = 'verjaardag'";
mysql_query($sql) or die (mysql_error());
}
else
{
$sql = "INSERT INTO agenda SET id = '', titel = '$titel', bericht = '$bericht', date = '$jaar/$maand/$dag', soort = '$soort'";
mysql_query($sql) or die (mysql_error());
}
?>

Gewijzigd op 01/01/1970 01:00:00 door Henk
 
Mike van Dongen

Mike van Dongen

25/03/2008 19:33:00
Quote Anchor link
Wat is dit dan?
if($_POST['soort']===activiteit and $_POST['soort']===afspraak and $_POST['soort']===feestdag and $_POST['soort']===verjaardag)

Edit, INSERT query's gaan anders dan de UPDATE query's.
Gewijzigd op 01/01/1970 01:00:00 door Mike van Dongen
 
Mebus  Hackintosh

Mebus Hackintosh

25/03/2008 19:38:00
Quote Anchor link
mysql_real_escape_string

Verder geen strip_tags gebruiken maar htmlspecialchars
Gewijzigd op 01/01/1970 01:00:00 door Mebus Hackintosh
 
Frank -

Frank -

25/03/2008 19:58:00
Quote Anchor link
wordwrap en nl2br kunnen richting afvalbak, die gebruik je pas bij het presenteren van data, niet bij het opslaan van data.

De SQL-syntax is ook redelijk brak, dat is de syntax van een UPDATE die je nu misbruikt voor een INSERT. Wanneer je dan in de problemen komt, dan heb je er ook zelf om gevraagd.

Sla je de datum wel op als een datum? Dus in een kolom van het type DATE. Ik heb m'n twijfels, die slashes / duiden daar namelijk niet op.
 
Henk

Henk

25/03/2008 20:03:00
Quote Anchor link
mebus schreef op 25.03.2008 19:38:
mysql_real_escape_string

Verder geen strip_tags gebruiken maar htmlspecialchars


Top Mebus.. werkt als een speer met deze mysql_real_escape_string

thanks..
 
Henk

Henk

25/03/2008 20:06:00
Quote Anchor link
pgFrank schreef op 25.03.2008 19:58:
wordwrap en nl2br kunnen richting afvalbak, die gebruik je pas bij het presenteren van data, niet bij het opslaan van data.

De SQL-syntax is ook redelijk brak, dat is de syntax van een UPDATE die je nu misbruikt voor een INSERT. Wanneer je dan in de problemen komt, dan heb je er ook zelf om gevraagd.

Sla je de datum wel op als een datum? Dus in een kolom van het type DATE. Ik heb m'n twijfels, die slashes / duiden daar namelijk niet op.


ok, ga ik ook uitvogelen.. Thanks.
 
- SanThe -

- SanThe -

25/03/2008 20:13:00
Quote Anchor link
Niet Bumpen.
Bumpen::
Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de Afbeelding knop om je tekst aan te passen.

SanThe.
 
Mebus  Hackintosh

Mebus Hackintosh

25/03/2008 20:20:00
Quote Anchor link
@Santhee, hoe snel typ je dat? Of is het knippen en plakken?^^
 
- SanThe -

- SanThe -

25/03/2008 20:21:00
Quote Anchor link
mebus schreef op 25.03.2008 20:20:
knippen en plakken?^^
 
Mebus  Hackintosh

Mebus Hackintosh

25/03/2008 20:23:00
Quote Anchor link
I knew it! Got ya!
 
GaMer B

GaMer B

25/03/2008 21:28:00
Quote Anchor link
mebus schreef op 25.03.2008 20:23:
I knew it! Got ya!

SanThe heeft er gewoon een snelkoppeling voor op zijn toetsenbord ;)
 
Mebus  Hackintosh

Mebus Hackintosh

25/03/2008 21:47:00
Quote Anchor link
Santhe durft gewoon niet te zeggen dat ze super slim is en het het stukje tekst in 5 seconden typt want niemand zal het dan toch geloven inclusief ik^^
 
Jelmer -

Jelmer -

25/03/2008 22:00:00
Quote Anchor link
Geen wonder, want SanThe is een hij :P

Waarschijnlijk heeft 'ie gewoon een bookmark ergens, die via Javascript dat stukje tekst in dit vak (de textarea ^^ ) plakt.
 
Mebus  Hackintosh

Mebus Hackintosh

25/03/2008 22:13:00
Quote Anchor link
Sorry dat wist ik.. ben vandaag dom.. morgen ben ik weer slim..
 
Jan Koehoorn

Jan Koehoorn

25/03/2008 22:49:00
Quote Anchor link
Ja, wij mods hebben wat extra knoppen op de UBB bar van Jelmer ;-)
 



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.