Ciao a tutti,
di linguaggi per il web ne so pochissimo e sto sperimentando.
Ho provato a mettere su un controllo captcha su un form, dopo aver urtato la testa un pò ovunque sono arrivato ad una cosa secondo me funzionante:

http://testsoftware.altervista.org/newprova.html

Unico problema (almeno credo.. almeno per ora) è dovuto al fatto che quando si sbaglia il codice e si torna indietro l'immagine di sicurezza non cambia. Il resto dei dati è meglio che rimanga uguale, come faccio a modificare solo l'immagine?


Codice PHP:
<html>
<
body>

<
SCRIPT language=JavaScript>
function 
ValidateForm(myForm)
{
  
message="OK";
   
  if (
myForm.Formato.value=="elettronico")
  {
    if (
myForm.EMail.value=="")
      
message="E' necessario inserire il proprio indirizzo di e-mail se si vuole ricevere il catalogo in formato elettronico";
  }
  else
  {
    if ((
myForm.Indirizzo.value=="")||(myForm.CAP.value=="")||(myForm.Citta.value=="")||(myForm.Nazione.value==""))
      
message="E' necessario compilare tutti i campi relativi al proprio indirizzo se si vuole ricevere il catalogo in formato cartaceo";
  }
  
  if (
myForm.Azienda.value=="")
    
message="E' necessario inserire il riferimento della propria azienda nell'apposito campo prima di continuare";
  
  if (
myForm.Nome.value=="")
    
message="E' necessario inserire il proprio nome nell'apposito campo prima di continuare";
    
  if (
myForm.Cognome.value=="")
    
message="E' necessario inserire il proprio cognome nell'apposito campo prima di continuare";
      
  if ((
message=="OK")&&(myForm.EMail.value=="")&&myForm.Formato.value!="elettronico")
    
myForm.EMail.value="info@oemmespa.com";    

  if (
message!="OK")
  {
    
alert(message);
    return 
false;
  }  
  else
    return 
true;
        
}
  
</SCRIPT>

<script language='JavaScript'>
   <!--
     function setFocus() {
     document.verifica.key.focus();
     
     document.getElementById("captcha").src="captcha/immagine.php";
     }
   -->
</script>

<script language='JavaScript'>
   <!--
     function refreshImmagine() { 
     alert ("REFRESH");
     document.getElementById("captcha").src="captcha/immagine.php";
     }
   -->
</script>


   

<form name="Form" target="_self" action="/form/check.php" method="post" onSubmit="return ValidateForm(this)" >
<input name="PHORM_CONFIG" type="hidden" id="PHORM_CONFIG" value="config.inc">



<TABLE cellSpacing=0 cellPadding=3 width="100%" align=center border=0>
  
  <TR>
    <TD>


Motivo Richiesta:

      <SELECT size=1 name=AreaDiInteresse>
      <OPTION value=6>Commerciale</OPTION>
      <OPTION value=7>Software</OPTION>
      </SELECT><FONT 
      face=Tahoma size=2></p></TD>
    </TR><TR>
    <TD>


Lingua:
<SELECT size=1 name=Lingua><OPTION 
        value=italiano selected>Italiano</OPTION> <OPTION 
        value=inglese>English</OPTION> <OPTION value=francese>Français</OPTION> 
        <OPTION value=spagnolo>Espanol</OPTION></SELECT><FONT 
      face=Tahoma size=2></p></TD>
    </TR><TR>
    <TD>
      

Formato:
<SELECT size=1 name=Formato><OPTION value=cartaceo 
        selected>Cartaceo</OPTION> <OPTION 
        value=elettronico>Elettronico</OPTION></SELECT><FONT 
      face=Tahoma size=2></P></TD></TR>
  <TR>
    <TD>
      

Cognome
<INPUT size=40 name=Cognome><FONT face=Tahoma 
      size=2></P></TD>
    </TR><TR>
    <TD>
      

Nome
<INPUT size=40 name=Nome><FONT face=Tahoma 
      size=2></P></TD>
     </TR><TR>
   <TD>
      

Azienda
<INPUT size=40 name=Azienda><FONT face=Tahoma 
      size=2></P></TD></TR>
  <TR>
    <TD>
      

Indirizzo
<INPUT size=40 name=Indirizzo><FONT face=Tahoma 
      size=2></P></TD>
    </TR><TR>
    <TD>
      

CAP - Citta
<INPUT size=8 name=CAP><INPUT size=28 
      name=Citta></P></TD>
    </TR><TR>
    <TD>
      

Nazione
<INPUT size=40 name=Nazione><FONT 
      face=Tahoma size=2></P></TD></TR>
    </TR><TR>
  <TR>
    <TD>
      

E-Mail
<INPUT size=40 name=EMail></P></TD>
    <TD></TD>
    <TD><FONT face=Tahoma size=2></TD></TR>
    <TR>
    <TD>
      

Telefono
<INPUT size=40 name=Phone></P></TD>
    <TD></TD>
    <TD><FONT face=Tahoma size=2></TD>
    </TR>
    <TR>
    <TD>
     

Codice Sicurezza</P></TD>
     <TD></TD>
     </TR><TR>
     <TD>
     [img]captcha/immagine.php[/img]</TD>
     </TR><TR>
     <TD>
      

Ricopiare
<INPUT size=40 name=Key></P></TD>
      </TR>
</TABLE>             
          </p>          
<P align=center><INPUT type=submit value=Invia name=submit><FONT face=Tahoma size=2> 
<INPUT type=reset value="Azzera Campi" name=reset></P> 
</form>

</body>
</html> 

Codice PHP:
<?php
session_start
();
$sicurezza = @$_POST['Key'];
$lingua = @$_POST['Lingua'];

echo (
"
SICUREZZA:"
);
echo (
$sicurezza);
echo (
"
CODE:"
);
echo (
$_SESSION['code']);

if (
$sicurezza !=""
    { 
    if (
$sicurezza == $_SESSION['code']) { 
            if (
is_readable("phorm.php")) {
              include(
"phorm.php");
        }

    } else { 
       if( 
$lingua=="italiano")
        echo(
"
Il numero inserito non corrisponde al codice di sicurezza"
); 
       else if ( 
$lingua=="inglese")
        echo(
"
The inserted number is different from security code"
); 
       else if( 
$lingua=="francese")
        echo(
"
Le numéro inséré ne correspond pas au code de sûreté"
); 
       else if( 
$lingua=="spagnolo")
        echo(
"
El numero insertado no corresponde al código de seguridad"
);  

echo 
"

[url='javascript:history.back();']Indietro / Back [/url]</p>"
;

    }
}
else {
       if( 
$lingua=="italiano")
        echo(
"
E' necessario inserire il codice di sicurezza"
); 
       else if ( 
$lingua=="inglese")
        echo(
"
Please insert security code"
); 
       else if( 
$lingua=="francese")
        echo(
"
Il est nécessaire d’insérer le code de sûreté"
); 
       else if( 
$lingua=="spagnolo")
        echo(
"
Es necesario de insertar el código de seguridad"
); 


echo 
"

[url='javascript:history.back();']Indietro / Back[/url]</p>"
;
}

?>
Il phorm.php ve lo evito
Qualsiasi consiglio/traccia su cui lavorare è ben accetta.

Grazie per l'attenzione.