Salve a tutti,
vi seguo praticamente ogni volta che ho qualche piccolo dubbio sulla programmazione web in generale, solo che ora ho necessità di un aiuto diretto, non stò riuscendo a venire a capo di un problema che mi si è presentato nella realizzazione di un form mail.
Ho trovato un semplicissimo form mail di questo tipo:
codice:
<form name="form1" id="form1" method="post" action="mail.php">
<form name="modulo" method="post" action="mail.php">
<div>La tua email 

<input type="text" name="email" size="30"></div>
<div>Oggetto 

<input type="text" name="oggetto" size="30"></div>
<div>Messaggio 

<textarea name="testo" cols="40" rows="7"></textarea></div>
<div>[img]captcha.php[/img]
<input name="codice" type="text" id="codice" size="5" maxlength="5"/></div>
<div><input type="submit" value="Invia email"> <input type="reset" value="Resetta campi"></div>
</form>
</form>
Al quale ho associato una immagine captcha, per limitare quanto più possibile lo spam:
Codice PHP:
<?php 
session_start
(); 
$random_txt md5(microtime()); 
$random_txt substr($random_txt05); 
$immagine imagecreatefrompng("captcha.png"); 
$colore imagecolorallocate($immagine000); 
imagestring($immagine1003515$random_txt$colore); 
$_SESSION['CODICE'] = $random_txt
header("Content-type: image/jpeg"); 
imagejpeg($immagine); 
?>
Per il controllo dei campi ho utilizzato questo:
Codice PHP:
<?php
$ogg
="$_POST[oggetto]"
$test="$_POST[testo]"
$em="$_POST[email]"
$dest="mailacuiinviare@gmail.com"
if (
$em==""){ 
echo 
"<center><font color='red'>[b]Non hai inserito la tua email[/b]</font></center> "
}elseif (
$ogg=="") { 
echo 
"<center><font color='red'>[b]Non hai specificato oggetto del messaggio[/b]</font></center>"
}elseif (
$test=="") { 
echo 
"<center><font color='red'>[b]Non hai inserito il testo[/b]</font></center>"
}elseif (
$dest=="") { 
echo 
"<center><font color='red'>[b]Non hai inserito il destinatario[/b]</font></center>"
}elseif (
$_POST['codice']=="") { 
echo 
"<center><font color='red'>[b]Non hai inserito il captcha[/b]</font></center>"
}elseif (
$_SESSION['CODICE']!=$_POST['codice']) { 
echo 
"<center><font color='red'>[b]Captcha errato![/b]</font></center>"
}else {  
mail("$dest","$ogg","$test","From: $em"); 
echo 
"<center><table border=0><td>[b]La tua email e' stata inviata con successo![/b]</td></table></center>"

?> 

 <center>[url="javascript:history.back()"]Torna indietro[/url]</p></center>
Nel controllo mi si è presentato questo problema, se il captcha è sbagliato, mi stampa un messaggio di errore (e fin qui tutto perfetto), se il captcha è corretto, mi visualizza lo stesso errore... Praticamente cose se l'else fosse totalmente snobbato... Ammetto di non essere una cima, ma io in quell'ultimo codice postato non ci vedo errori sintattici, tanto è vero che hanno la stessa identica forma degli altri controlli che funzionano perfettamente...
Se qualcuno riuscisse a darmi una mano, gli sarei molto grato
Anche xkè nonostante tutto, stò per rinunciare al form e passare ad un semplice, quanto odioso, mailto....