value di un input text

frenkytribe

Utente Attivo
17 Gen 2013
87
0
0
Ciao,
vi spiego cosa devo fare e qual'è il problema.
in pratica ho un input type text dove scrivo dentro il titolo dell'articolo, (anche se in realtà questo titolo viene automaticamente prelevato dal db), il titolo in precedenza è stato salvato con mysql_real_escape_string, quindi quando ci sono degli apici mi mette i backslash.

Quando apro la pagina per inserire l'articolo, estraggo quel titolo con una query e lo stampo nel value dell' input con stripslashes(). Risultato: appena incontra un doppio apice non m stampa più il resto del titolo.

Ho provato a stampare la stessa variabile fuori dall' input ed il risultato è quello che volevo, quindi io credo che vadano in conflitto gli apici del titolo con quelli dell' input vero e proprio.

Come posso risolvere?
 
ciao
verifica come hai messo gli apici negli input
PHP:
<?php
$str=addslashes("d'alrossi");
echo "<input type=\"text\" value=\"$str\"><br />";
echo "<input type=\"text\" value=\"".stripslashes($str)."\"><br />";
//oppure
$str=stripslashes($str);
echo "<input type=\"text\" value=\"$str\"><br />";
?>
output
apici.jpg
 
ciao
avevo capito i singoli, i doppi apici dentro il db sono sempre un problema
comunque prova così
PHP:
<?php
$str=addslashes('d"alrossi');//qui per rinchiudere la stringa ho messo gli apici singoli, altrimenti tronca
$str=htmlentities($str);//aggiungi questa prima di passarli agli input
echo "<input type=\"text\" value=\"$str\"><br />";
echo "<input type=\"text\" value=\"".stripslashes($str)."\"><br />";
$str=stripslashes($str);
echo "<input type=\"text\" value=\"$str\"><br />";
?>
stesso out di prima
 

Discussioni simili