- Home
- Categorie
- Coding e Sistemistica
- HTML e CSS
- Form che salvi testo html nel database
-
Form che salvi testo html nel database
Salve a tutti! Ho un piccolo problema: volevo creare uno script che mediante un form nel pannello utente, permettesse di scrivere un testo in html (quindi tutte le varie formattazioni di testo, le immagini, etc.) e lo riproducesse su una pagina.
Bene, a fare il form e a riprodurre tutto sulla pagina ci sono riuscito, ma non legge l'html! Vi incollo i codici.
Questo è il form che è nel pannello utente
[HTML]<label>{$lng->g_spaziotesto}<br /> <textarea cols="40" rows="5" name="spaziotesto">{$spaziotesto}</textarea><br /><br /> </label>[/HTML]
Questa è la query
[HTML]
spaziotesto
varchar(255) NOT NULL,[/HTML]Ovviamente, se modifico il testo dal dabatase e inserisco dei tag html, me li legge, quindi credo che il problema sia nel form html. Come faccio?
-
La "query" che hai scritto è un pezzo della query per inserire un campo in una tabella e non quello per modificare il valore.
La query per modificare sarà:UPDATE nome_tabella SET spaziotesto='valore inserito nel form' WHERE {VARIE CONDIZIONI PER STABILIRE QUALE RIGA MODIFICARE}
-
@matmattia said:
La "query" che hai scritto è un pezzo della query per inserire un campo in una tabella e non quello per modificare il valore.
La query per modificare sarà:>UPDATE nome_tabella SET spaziotesto='valore inserito nel form' WHERE {VARIE CONDIZIONI PER STABILIRE QUALE RIGA MODIFICARE} >``` Avrei bisogno del tuo aiuto matmattia. Vado a spiegarti. Ho la necessità di offrire all'utente la possibilità di aggiornare il testo del suo annuncio. Premetto che per connettermi al db uso una classe a qui mi collego nella pagina con un include() la query è identica alla UPDATE da te specificata ma il testo non viene modificato se proviene da una textarea:
<?php
// inizializzazione della sessione
session_start();Global $id, $vt, $testo;
// valorizzazione delle variabili con i parametri dal form
if(isset($_POST['submit'])){// inclusione del file della classe
include("classemysql.php");
// istanza della classe
$data = new classemysql();
// chiamata alla funzione di connessione
$data->connetti();
// query per la modifca del testo
$data->query("UPDATE nome_tabella SET campo='$testo' WHERE id='$id'");
// disconnessione
$data->disconnetti();echo "<br /><a href="login.php">Torna all'Area riservata</a>";
}
else
{
// form per l'inserimento
?>
<h1>Modifica testo annuncio</h1>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
ID annuncio: <input name="id" type="text" value="<?php echo $_GET['id']; ?>" readonly="readonly" size="5" class="irosso" /><br />
Testo attuale: <?php echo $_GET['vt']; ?><br />
Testo modificato: <textarea name="testo" cols="98" rows="5" class="irosso"></textarea><br />
<input name="submit" type="submit" value="Modifica Testo" />
</form>
<?php
}
?>In cosa sto sbagliando?
-
Ho risolto.
Avevo referenziato in modo errato l'ID.