Ciao a tutti!
Sono abbastanza nuovo nel mondo di PHP.
Sto diventando matto con la gestione dei FORM e del loro output, tra htmlentities() e stripslashes() non ci sto capendo più nulla.

Vi spiego nel dettaglio la situazione.

Sto cercando di creare un'applicazione di inventario, i problemi li sto incontrando mentre sto realizzando la pagina per modificare un articolo.

Se seleziono un oggetto da modificare l'utente viene portato alla pagina "modifica_articolo.php?art_id=x", questa pagina mostra un form con i vari campi da modificare.
Alla fine del form sono presenti tre pulsanti: "Modifica ora", "Anteprima" e "Annulla".
Il form conduce alla pagina "modifica_articolo2.php" con metodo POST.

Nella pagina "modifica_articolo2.php" definisco in principio le variabili per estrapolarle da $_POST (ad esempio $art_id = $_POST['art_id'], $art_descrizione = $_POST['art_descrizione'], etc).

In seguito è presente un ciclo switch composto da 3 casi, uno per l'anteprima, uno per annullare e uno per modificare.

Prima del ciclo switch ho creato una variabile del tipo .=<<<TAB [...] TAB; dove è presente il codice per creare la tabella che mostra l'anteprima delle modifiche. Questa variabile la vado a richiamare nel ciclo switch se viene selezionato anteprima.

Ora iniziano i problemi. Man mano che vado avanti nel FORM (ad esempio cliccando prima ANTEPRIMA e poi MODIFICA) se vado a fare un print_r($_POST) ottengo non solo i classici slashes prima delle virgolette (\") ma dopo il 3° clic ad esempio ottengo addirittura un \\\" per le virgolette, e se c'è una lettera accentatà si interrompe la frase (ad esempio "L\\\'articolo è" invece che "L'articolo è in ottime condizioni").
Ho provato in tutti i modi, se nella pagina "modifica_articolo2.php" vado ad utilizzare htmlentities($art_descrizione) ottengo che tutte le lettere accentate vengono visualizzate come A accentate, se uso stripslashes invece che \\\" ottengo \", insomma, sono arrivato al punto che non ci sto capendo più niente...

Spero soltanto che qualcuno abbia avuto la pazienza di leggere quanto ho scritto, accetto volentieri qualsiasi consiglio. Mi piacerebbe sapere anche se concettualmente questa pagina che sto creando è una buona soluzione o conviene adottarne altre...