Avatar billede encorez Nybegynder
15. juli 2003 - 15:14 Der er 17 kommentarer og
2 løsninger

Indsæt ' i mysql

Hej

Mit problem er at følgende eksempel ikke virker:
$test = "Hans Hansen' her";
mysql_query("insert into Noget (start) values('$test')");

Problemet er det enkelte ping tegn efter Hansen. Kan det lade sig gøre at indsætte sådan et tegn i en mysql db sammen med andet tekst, eller skal man bruge htmlentities?

Simon
Avatar billede ztyxx Nybegynder
15. juli 2003 - 15:16 #1
du kan bruge addslashes(), eller escape directe i strengen med
$test = "Hans Hansen\' her";
Avatar billede codebase Praktikant
15. juli 2003 - 15:16 #2
$test = addslashes("Hans Hansen' her");
mysql_query("insert into Noget (start) values('$test')");
Avatar billede codebase Praktikant
15. juli 2003 - 15:17 #3
og stripslashes til at fjerne dem igen.. :-)
Avatar billede ztyxx Nybegynder
15. juli 2003 - 15:19 #4
det er ved udskrivningen af strengen fra databasen du bruger stripslashes(), som codebase siger :-)
Avatar billede encorez Nybegynder
15. juli 2003 - 15:19 #5
den havde jeg ikke tænkt på. Virker addslashes kun på '-tegnet? Og hvis det gør gør at '-tegnet så det eneste tegn man har problemer med, når en streng skal indsættes i en db
Avatar billede erikjacobsen Ekspert
15. juli 2003 - 15:20 #6
Du skal ikke bruge stripslashes til at fjerne dem igen ved udtræk fra databasen.
Avatar billede ztyxx Nybegynder
15. juli 2003 - 15:20 #7
erik> nej det kom jeg også lige i tanke om :-)
Avatar billede encorez Nybegynder
15. juli 2003 - 15:22 #8
takker
Avatar billede snuseren.dk Nybegynder
15. juli 2003 - 15:24 #9
Kan du ikke bare replace ' med " når du indsætter i databasen, og så bare replace " med ' når du udskriver fra databasen??

$str = str_replace("'","\"", $test);
$test = "Hans Hansen' her";
mysql_query("insert into Noget (start) values('$test')");

Og så udskriv siden:

$str = str_replace("\"","'", $tekst);
$tekst = $row["indsaet selv her"];

// Anders
Avatar billede encorez Nybegynder
15. juli 2003 - 15:25 #10
jo, men er det er ikke bare at opfinde addslashes og stripslashes igen!
Avatar billede ztyxx Nybegynder
15. juli 2003 - 15:26 #11
takker for point :-)

http://dk2.php.net/addslashes
Avatar billede erikjacobsen Ekspert
15. juli 2003 - 15:44 #12
snuseren.dk: der er ingen grund til at lave om i brugerens input. Lad
brugeren få præcis den tekst han skrev.
Avatar billede encorez Nybegynder
16. juli 2003 - 20:42 #13
erikjacobsen -> hvis du har tid, vil du så prøve at kigge på dette spørgsmål:
http://www.eksperten.dk/spm/376776
Det er en hjernevrider og jeg tror det er en opgave for én som dig.
Avatar billede erikjacobsen Ekspert
16. juli 2003 - 20:46 #14
Ekspertens regler: det er ikke tilladt at "spamme, flame eller poste indlæg
uden relevans for det aktuelle spørgsmål."

Dit indlæg er ganske uden relevans.

Nej, jeg gider ikke kigge på det.
Avatar billede erikjacobsen Ekspert
16. juli 2003 - 20:46 #15
...selv om det er dit eget spørgsmål *gg* ... Du må anmelde dig selv hvis du synes ;))
Avatar billede encorez Nybegynder
16. juli 2003 - 21:08 #16
sorry, jeg har fundet ud af det er et rimeligt hardcore problem jeg har på hænderne, som jeg ved fra tidligere spørgsmål du er ekspert i.

Det var IKKE for at "spamme" jer 3 andre, det beklager jeg. Jeg havde åbenbart ikke nærlæst eksperten regler godt nok, det beklager jeg. Det var ikke for at skjule at det var mit eget spørgsmål, jeg fik bare ikke skrevet i indlæget; regnede ikke med det blev et problem.

Undskyld ulejligheden alle sammen
Avatar billede erikjacobsen Ekspert
16. juli 2003 - 21:15 #17
Jeg håber du fandt mine indlæg lidt humoristiske...
Med fare for at lave et irrelevant indlæg i dette spørgsmål: jeg løser
kun spørgsmål, som jeg synes er interessante. Azero finder jeg ikke
interessant...
Avatar billede ztyxx Nybegynder
16. juli 2003 - 21:17 #18
det er da rent ud af posen c",)
Avatar billede encorez Nybegynder
17. juli 2003 - 00:04 #19
Nu drejer problemet sig heller ikke specifikt om azero, men det er opå til dig erik.
Hvis azero ikke er interessant, så vil jeg gerne høre hvem du vil foreslår som alternativ...
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