Hur hanterar man bäst text som sparas i mysql som kan innehålla " och/eller '
Kan tänka mig att det kan ställa till problem när man ska skriva ut resultatet eller redigera texten.
11 svar · 459 visningar · startad av Pedda
Hur hanterar man bäst text som sparas i mysql som kan innehålla " och/eller '
Kan tänka mig att det kan ställa till problem när man ska skriva ut resultatet eller redigera texten.
vet inte hur du tänker, men addslashes($text) funkar bra, sätter ex \ fram för " (=\"), sen strippar man bor dem med stripslashes($text)
Jo, så brukar jag göra. Men det är ju inte alltid som det fungerar.
T.ex om jag ska redigera texten i ett formulär.
Då kan jag till exempel göra så här:
<?php
$text = stripslashes($rad['text']);
?>
// och sen i formuläret
<input name="text" type="text" id="text" value="<?=$text?>" size="60" maxlength="150">
Om texten är t.ex: Jag kallas "Pedda"
så kommer ju bara Jag kallas att skrivas ut i textfältet.
Du behöver sannolikt inte köra stripslashes då mysql strippar slashes framför apostrofer och citationstecken när man lägger in texten.
Kör jag inte stripslashes så blir ju texten Jag kallas \ istället.
Måste ju gå att lösa på något sätt ju?
Då har du kört addslashes på text som redan hade slashes när du la in det ?
Gör isåfall så här:
$text = htmlentities(stripslashes($rad['text']));
Vi är lite i otakt ser jag :)
Normalt sett när du postar från ett formulär lägger PHP på slashes på din text. Detta ifall du har magic_quotes_gpc satt.
När du sedan kör SQL-frågan plockar MySQL bort dina slashes, så du behöver normalt inte göra någonting.
Ja, men ska man helt enkelt strunta i addslashes och stripslashes.
:) :)
Ja, jag ser det.