Salve,
Vi posto il mio codice che prende due stringe da un form, li memorizza in un db scrive il contenuto del db.
codice:
<?php
include ('configurazione.php'); //per l'accesso al db
function scrivi(){?>
<table border="1">
<?php
$sql = 'select * from tabella_form order by data desc,time desc';
$res = mysql_query($sql);
while($row = mysql_fetch_array($res)){
?>
<tr>
<td><?php print $row["id"]; ?></td>
<td><?php print $row["titolo"]; ?></td>
</tr>
<?php
}
mysql_free_result($res);
?>
</table>
<?php
}
?>
<body>
<form action='' method='POST'>
Titolo:
<textarea name='titolo'></textarea>
Testo
<textarea name='testo'></textarea>
<input type='submit' value='Invia' name="invia">
</form>
<?php scrivi(); ?>
</body>
<?php
if (isset($_POST["invia"])) {
$titolo = mysql_escape_string($_POST['titolo']);
$testo = mysql_escape_string($_POST['testo']);
if ( $titolo == TRUE && $testo == TRUE ) {
$data=date("y-m-d");
$time=date("H:i:s");
mysql_query("INSERT INTO tabella_form (id , titolo , testo, data, time) VALUES ('','$titolo', '$testo','$data','$time')") OR DIE(mysql_error());
//scrivi();
} else {
echo "Tutti i campi sono obbligatori!!";
}
}
?>
Il problema è che quando l'utente riempe i campi ed invia i dati questi vengono memorizzati ma non vengono visualizzati all'instante. Cose che non so come fare. Mi potete dar qualche consiglio?
Ed un altra cosa: dopo aver inviato, se l'utente aggiorna per visualizzare il messaggio appare la richiesta di ri-inviare i moduli e se l'utente accetta i dati vengono inviati una seconda volta. Come posso rimediare anche a questo pasticcio?
Grazie in anticipo.