Devo creare un form per la richiesta di certificati. Questo il codice:
codice:
<?php
if(isset($_POST['name']) && isset($_POST['email']) && isset($_POST['msg']) && isset($_POST['uso'])){
// indirizzo e-mail destinatario
$receiverMail = "indirizzo@mail.it";
// pulizia dei dati inseriti
$name = ltrim(rtrim(strip_tags(stripslashes($_POST['name']))));
$email = ltrim(rtrim(strip_tags(stripslashes($_POST['email']))));
$msg = ltrim(rtrim(strip_tags($_POST['msg'])));
// lettura dell'indirizzo IP
$ip = getenv("REMOTE_ADDR");
// formattazione del messaggio ( \n per le messe a capo )
// $msgformat = "Messaggio da: $name ($ip)\nEmail: $email\n\n$msg";
$msgformat = "Mittente: $name \nIP del mittente: ($ip)\nE-mail: $email\n$msg \ncertificato: $uso";
// verifica campi obbligatori
if(empty($name) || empty($email) || empty($msg)) {
echo "<h3>Il messaggio non è stato inviato</h3>
<h3>Si prega di compilare tutti i campi</h3>"; }
//verifica l'indirizzo mail
elseif(!ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) {
echo "<h3>Il messaggio non è stato inviato</h3>
<h3>L'indirizzo e-mail indicato non è valido</h3>"; }
else{
//invio del messaggio
mail($receiverMail, $subject, $msgformat, "From: $name <$email>");
echo "<h3>Il messaggio è stato inviato correttamente</h3>
<h3>Nei limiti del possibile,
risponderemo entro 24 ore</h3>
<h3>Grazie di averci scritto</h3>";
}
}
else{
// metti il form
$self=$_SERVER['index.php?pagina=informazioni'];
echo <<<FRM
<h2>Richiesta informazioni</h2>
<h3>Riempire i campi richiesti
e premere il pulsante "Invia"</h3>
<form action="$self" method="post">
Nome e cognome:
<input name="name" size="50" maxlength="40" />
Indirizzo e-mail:
<input name="email" size="50" maxlength="40" />
Quali informazioni si desiderano?
<textarea name="msg" cols="50" rows="12"></textarea>
ad uso
<select name="uso">
<option value="assegni familiari">assegni familiari
<option value="assistenza sanitaria">assistenza sanitaria
<option value="sussidio scolastico">sussidio scolastico
<option value="borsa di studio">borsa di studio
<option value="libretto di lavoro">libretto di lavoro
<option value="rinvio obblighi di leva">rinvio obblighi di leva
<option value="altro (usi consentiti dalla legge)">altro (usi consentiti dalla legge)
</select>
<input type="submit" value="Invia" />
<input type="reset" value="Cancella" />
</form>
FRM;
}
?>
Ora, il messaggio arriva correttamente a destinazione, ma la voce uso
e differenza dell ealtre è vuota. Ora, sospetto che la option value
sia male impostata, cosicché non trasmette il suo valore. Suggerimenti?
Grazie
M.