webForumDet fria alternativet

\" in i databas

PHP

3 svar · 401 visningar · startad av SoulGod

Medlem sedan aug. 20051 200 inlägg
Frågan#1

När jag lägger in ett värde som ser ut såhär:

<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/FhXvl1lVxLI&hl=sv&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/FhXvl1lVxLI&hl=sv&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>

Och sparar det i ett fält som är "blob" i databasen.
Och när jag sparar informationen så blir det \" för varje " ..
och när jag läser ut infon så blir det inte rätt..
Så jag vill inte att den ska göra \" ..

Hur gör jag det?

Medlem sedan sep. 2006867 inlägg
#2

Jag tror du löser det problemet med att inte lagra text som binärdata

Medlem sedan mars 2007845 inlägg
#3

Om den inte gör \" så får du i bästa fall syntaxfel när du skickar frågan till databasen. I värsta fall är det någon annan som skickar frågan och raderar din databas.

Använd stripslashes() för att ta bort \ när du visar texten.

Medlem sedan mars 20041 505 inlägg
#4

drew skrev:

Om den inte gör \" så får du i bästa fall syntaxfel när du skickar frågan till databasen. I värsta fall är det någon annan som skickar frågan och raderar din databas.

Använd stripslashes() för att ta bort \ när du visar texten.

Nej, det där är feltänk.
Man ska inte lagra slashes i databasen. Något är galet här.

SoulGod, jag misstänker att magic quotes är aktiverat på servern, slå av det!
Med magic quotes så riskerar man att göra dubbel escape på indatat, vilket resulterar i dubbla slashes.
Scenariot nu är att istället för \" så skickas \\" till databasen och bara den ena slashen försvinner.
Hoppas du förstår!

262 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)