Avatar billede leif Seniormester
20. september 2005 - 22:12 Der er 15 kommentarer og
1 løsning

Kan ikke indsætte tekst med apostrof

Hej,

Jeg bruger følgende linie til at sætte ind med:
mysql_query("INSERT INTO `log` (`id`, `id2`, `tekst`, `oprettetaf`, `oprettettid`, `aktiv`) VALUES ('', '".$id2."', '".$tekst."', '".$bruger."', '".$tid."', 'j')") or die ("Der skete følgende fejl".mysql_error()."");

Men så kan jeg ikke indsætte fx. følgende tekst:
Jeg skriver lige SMS'er

Hvad kan jeg gøre for at det virker ?

Fra
Leif
Avatar billede erikjacobsen Ekspert
20. september 2005 - 22:13 #1
Avatar billede leif Seniormester
20. september 2005 - 22:15 #2
Og så vil du replace \' til ' ved udskrivning eller er det bedst med stripslashes() ?
Avatar billede erikjacobsen Ekspert
20. september 2005 - 22:18 #3
Nej, du skal kun bruge addslashes. Du skal ikke gøre yderligere i den anledning når du henter data fra databasen.
Avatar billede leif Seniormester
20. september 2005 - 22:19 #4
Hvorfor ikke ? Hvis jeg vil kun have udskrevet ' og ikke \' ?
Avatar billede coderdk Praktikant
20. september 2005 - 22:27 #5
I stedet for addslashes, brug mysql_escape_string eller mysql_real_escape_string
Avatar billede coderdk Praktikant
20. september 2005 - 22:29 #6
Faktisk, drop mysql_escape_string, brug mysql_real_escape_string ;)
Avatar billede leif Seniormester
20. september 2005 - 22:31 #7
Hvad skal jeg gøre med den ? Bare "$tekst = mysql_real_escape_string($tekst);" lige før min INSERT ?
Avatar billede coderdk Praktikant
20. september 2005 - 22:33 #8
Det kunne du ja :)
Avatar billede leif Seniormester
20. september 2005 - 22:34 #9
Det kunne jeg ? Men er der andre "løsningerne" jeg kan ikke lige gennemskue det der står på php.net
Avatar billede coderdk Praktikant
20. september 2005 - 22:51 #10
Well, du kunne også gøre det i statementet:

mysql_query("INSERT INTO `log` (`id`, `id2`, `tekst`, `oprettetaf`, `oprettettid`, `aktiv`) VALUES ('', '".$id2."', '".mysql_real_escape_string($tekst)."', '".$bruger."', '".$tid."', 'j')") or die ("Der skete følgende fejl".mysql_error()."");
Avatar billede leif Seniormester
21. september 2005 - 08:44 #11
Vil I dele point ?
Avatar billede leif Seniormester
21. september 2005 - 08:45 #12
Jeg har valgt at bruge erikjacobsen's løsning, da det er til et lille internt system.
Avatar billede coderdk Praktikant
21. september 2005 - 09:07 #13
Tror bare du kan beholde dine point, erik har ikke for vane at tage points :)
Avatar billede leif Seniormester
21. september 2005 - 09:08 #14
:) Det er høfligt at spørge alligevel.
Avatar billede leif Seniormester
21. september 2005 - 09:08 #15
Du vil ikke have ?
Avatar billede coderdk Praktikant
21. september 2005 - 09:17 #16
Ellers tak :)
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