Ciao a tutti, premesso che devo finire la parte dei checkbox che è una cosa a parte, questo è il codice:
Codice PHP:
<form name="form1" method="post" action='?inviodati=ok'>
<table width="798" border="0" cellspacing="0">
<tr>
<td colspan="4">Commenti dagli utenti</td>
</tr>
<tr>
<td width="115">Di la tua:</td>
<td width="280"> </td>
<td width="115"> </td>
<td width="280"> </td>
</tr>
<tr>
<td>Nome:</td>
<td><label>
<input name="nome" type="text" id="nome" size="40">
</label></td>
<td>Commento:*</td>
<td rowspan="5"><label>
<textarea name="commento" id="commento" cols="42" rows="7"></textarea>
</label></td>
</tr>
<tr>
<td>Cognome:</td>
<td><label>
<input name="cognome" type="text" id="cognome" size="40">
</label></td>
<td> </td>
</tr>
<tr>
<td>Email:*</td>
<td><label>
<input name="email" type="text" id="email" size="40">
</label></td>
<td> </td>
</tr>
<tr>
<td>Autorizzazioni:</td>
<td><input type="checkbox" name="mostra_nome" id="mostra_nome">
Mostra il mio nome.</td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><label>
<input type="checkbox" name="mostra_mail" id="mostra_mail">
Mostra il mio indirizzo Email.</label></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input type="checkbox" name="ricevi_commenti" id="ricevi_commenti">
Avvisami quando qualcuno commenta.</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td>* Campi necessari</td>
<td> </td>
<td><input type="reset" name="reset" id="reset" value="Cancella tutto" />
<input type="submit" name="invia" id="invia" value="Invia il commento" /></td>
</tr>
</table>
</form>
<?php
// attraverso un if controlliamo che il form sia stato inviato
if ( $_GET['inviodati'] == "ok" ) {
// recuperiamo i dati inviati con il form
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$email = $_POST['email'];
$mostra_nome = $_POST['mostra_nome'];
$mostra_mail = $_POST['mostra_mail'];
$ricevi_commenti = $_POST['ricevi_commenti'];
$commento = $_POST['commento'];
// ora controlliamo che i campi siano stati tutti compilati
if ( $email == TRUE && $commento == TRUE ) {
// controlliamo se il campo mail � stato scritto in maniera errata
$mail = eregi("^[_a-z0-9+-]+(\.[_a-z0-9+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+$",$email);
if ( $mail == TRUE ) {
// e inviamo una mail con il riuscito inserimento del commento all'utente
$oggetto_mail = "Commento inserito nella galleria di Carmine Gioia";
$mittente_mail = "From: Galleria di Carmine Gioia <>";
$messaggio_mail = "Buongiorno $nome $cognome,\n
ti confermiamo che il tuo commento e' stato inserito correttamente.\n
Commento:
$commento";
mail ($email, $oggetto_mail, $messaggio_mail, $mittente_mail);
// invio una mail all'amministratore per informarlo del fatto
$mailtome0 = "adminreluca@hotmail.it";
$oggetto_mail0 = "Nuovo commento inserito nella tua galleria";
$mittente_mail0 = "From: Galleria di Carmine Gioia <>";
$messaggio_mail0 = "Buongiorno amministratore, ti informo che $nome $cognome ha appena aggiunto un commento fornendo $mail come indirizzo.\n
Commento:
$commento";
mail ($mailtome0, $oggetto_mail0, $messaggio_mail0, $mittente_mail0);
//recupero la data e l'orario
$today = date("j F Y, g:i a"); // March 10, 2001, 5:16 pm
// costruisco la tabella e metto le basi per postarla
$post = '<table width="800" border="0" cellspacing="0">
<tr>
<td colspan="2">Commenti inseriti</td>
<td width="150"> </td>
<td width="289"> </td>
</tr>
<tr>
<td width="125">Nome</td>
<td width="228">$nome</td>
<td colspan="2">Ha scritto:</td>
</tr>
<tr>
<td>Cognome</td>
<td>$cognome</td>
<td colspan="2" rowspan="4">$commento</td>
</tr>
<tr>
<td>Email</td>
<td>$email</td>
</tr>
<tr>
<td>Data commento:</td>
<td>$today</td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>';
$a=fopen("database_cx_calore.html", "a"); // apro il db html e aggiungo sopra la tabella compilata
fwrite($a, $post); //scrivo tutto cio che ce in textarea
fclose($a); //chiudo il file
// messaggio da far visualizzare all'utente finale
echo "<div style=\"color:#093\"><strong>Il tuo commento e' stato inserito! Ti e' stata inviata una e-Mail.</strong></div>";
} else {
echo "<div style=\"color:#F00\"><strong>L'indirizzo e-Mail che ci hai fornito non e' stato scritto correttamente.</strong></div>";
}
} else {
echo "<div style=\"color:#F00\"><strong>I campi indicati sono obbligatori.</strong></div>";
}
}
?>
Bene, ora funziona tutto, ma se vi spostate a fine script dove dice "// costruisco la tabella e metto le basi per postarla" li trovate il problema, ovvero che non mi va a mettere nel file html che aggiorna i dati del form $nome, $cognome, $commento ecc. ma mi lascia la voce cosi facendomi comparire $nome.
Quindi il file html me lo crea e aggiunge correttamente la tabella, ma non inserisce i dati.
Grazie in anticipo per l'aiuto!