Avatar billede cyfer Nybegynder
15. januar 2009 - 10:43 Der er 7 kommentarer og
1 løsning

Kan ikke bruge specialtegn ved indsættelse i mysql

Jeg kan simpelthen ikke gennemskue hvorfor jeg ikke kan få lov at indsætte et tegn som dette ' når jeg indsætter i min database. Jeg henter variablerne med GET.

$insertSQL = mysql_query("insert into whiteboard_incidents (time_added,incident_number,severity,is_driftinfo,title,description,username_added,show_incident) VALUES('$form_time_added','$form_incident_number','$form_severity','$form_is_driftinfo', '$form_title', '$form_description', '$form_username_added', '$show_incident')") or die(mysql_error());

Får fx. følgende fejl når jeg i min description eller andensteds indsætter det nævnte tegn:
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 'mail@mail.com', '1')' at line 1
Avatar billede dkfire Nybegynder
15. januar 2009 - 11:32 #1
Prøv at udskrive alle dine variabler og list dem her.
Du bliver nok nød til at bruge mysql_real_escape_string() på dine variabler.
http://dk2.php.net/manual/en/function.mysql-real-escape-string.php
Avatar billede lakridserne Nybegynder
15. januar 2009 - 11:48 #2
Har du prøvet med '\' foran?

Kristoffer
Avatar billede cronaldo Nybegynder
15. januar 2009 - 20:42 #3
addslashes($variabel);

og når du udskriver:

stripslashes($variabel);
Avatar billede cyfer Nybegynder
15. januar 2009 - 22:11 #4
meget nemmere med mysql_real_escape_string(), der behøves ikke gøres andet end at smide den på variablen når den indsættes :)
Avatar billede dkfire Nybegynder
15. januar 2009 - 22:20 #5
Jamen så smider jeg et svar ;-)
Avatar billede cyfer Nybegynder
15. januar 2009 - 22:24 #6
takker
Avatar billede jensgram Nybegynder
15. januar 2009 - 22:26 #7
cronaldo > Hvis du har brug for stripslashes() når du hiver ud fra DB, har du vist fået for mange på til at begynde med :)
Avatar billede olebole Juniormester
15. januar 2009 - 22:29 #8
<ole>

Det er derfor, man nu om stunder bruger mysqli og prepared statements. Se til begyndelse:
    http://dk2.php.net/manual/en/book.mysqli.php
    http://dk2.php.net/manual/en/mysqli-stmt.prepare.php

/mvh
</bole>
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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