scusate se m'intrometto...stavo giusto affrontando questo argomento e non riesco a capire una cosa nello script che ho creato..Nel mio caso non inserisco su db ma passo dei valori da una pagina all'altra con post. Ecco il codice, l'ho semplificato molto e se lo copiate in un file nuovo e lo salvate in .php potete testarlo in prima persona :

Codice PHP:
echo "<form action= " $_SERVER['PHP_SELF'] ." method='POST'>";
$nome "D'Antoni";
$nome_db addslashes($nome);
echo 
"<select name='prova'><option selected value=''>cognome...</option>";
echo 
"<option value='".$nome_db."' size=8>$nome</option>";
echo 
"</select>
"
;
echo 
"<button type='submit' name='invia'>invia</button>";
echo 
"

</p>"
;

if(isset(
$_POST['prova']) && $_POST['prova']!='') { 
  
$valoreIns $_POST['prova']; 
  echo 
stripslashes($valoreIns) ."
"
;

perchè alla fine mi stampa D e non D'Antoni ??
io ho il magic_quotes_gpc disattivato, uso addslashes (oppure ho provato anche con mysql_real_escape_string) per salvare il valore da passare tramite post e aggiungere l'escape (e lo fa correttamente) e stripslashes quando lo vado a visualizzare...perchè non funziona? dove il problema?

PS: non volevo creare una nuova discussione visto che siamo in tema, ma se ho pensato male ne creo una.