Condividi:        

Javascript e il codice captcha

Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!

Moderatori: Anthony47, Triumph Of Steel, archimede

Javascript e il codice captcha

Postdi Paolo87 » 01/03/08 12:25

Buon giorno a tutti,ho trovato questa guida http://www.mrwebmaster.it/tutorial/js/tutorial796.htm,ma al punto "A questo punto andiamo a valorizzare il nostro tag span con il codice generato, in modo da stamparlo a video: document.getElementById("captcha").innerText = CAPTCHA();" mi sono perso. Cosa vuol dire e cosa devo fare??? Prima di rispondere andate a vedere il link che vi ho postato.
Grazie anticipatamente
Paolo87
Utente Senior
 
Post: 305
Iscritto il: 26/08/07 09:54
Località: Roma

Sponsor
 

Re: Javascript e il codice captcha

Postdi Dylan666 » 03/03/08 10:02

Non c'è molto da capire, la riga che riporti va a individuare l'elemento che ha come ID la parola "captcha" e ci mette dentro come testo il risultato della funzione CAPTCHA(); non devi fare nulla a parte copiare e incollare e creare uno SPAN con l'ID sopra citato dove vuoi che appaia il captcha.
Avatar utente
Dylan666
Moderatore
 
Post: 39988
Iscritto il: 18/11/03 16:46

Re: Javascript e il codice captcha

Postdi Paolo87 » 03/03/08 10:05

io ci ho provato,ma poi non mi appare nulla a video se non le caselle per inserire il codice. Mi posteresti gentilemente il codice javascript completo,così capisco meglio ?!
Paolo87
Utente Senior
 
Post: 305
Iscritto il: 26/08/07 09:54
Località: Roma

Re: Javascript e il codice captcha

Postdi Dylan666 » 03/03/08 10:31

Metti la riga di prima in una funzione, lancia la funzione sull'onLoad della pagina e apri il file con Internet Explorer
Avatar utente
Dylan666
Moderatore
 
Post: 39988
Iscritto il: 18/11/03 16:46

Re: Javascript e il codice captcha

Postdi Dylan666 » 03/03/08 10:40

Dylan666 ha scritto:e apri il file con Internet Explorer

Se vuoi che sia supportato anche da Firefox o per questo browser usi una riga a parte con textContent invece di innerText oppure sostituisci gli innerText con innerHTML
Avatar utente
Dylan666
Moderatore
 
Post: 39988
Iscritto il: 18/11/03 16:46

Re: Javascript e il codice captcha

Postdi Paolo87 » 03/03/08 10:41

dici così ?
Codice: Seleziona tutto
<form name="modulo">
<script language ="Javascript">
onload function codice();
</script>
Inserisci del testo qui<br>
<input type="text" name="testo" size="50"><br><br>
Copia il codice di sicurezza:
<span id="captcha"></span><br><br>
<input type="text" name="codice" size="50"><br><br>
<input type="button" value="Invia i dati" onclick="Invia()">
</form>
<script language ="Javascript">
function CAPTCHA()
{
 var car, min, max, dif, lun, inc;
 car  = "abcdefghijklmnopqrstuvwxyz";
 car += "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 car += "1234567890";
 min  = 5;
 max  = 5;
 dif  = max - min;
 lun  = Math.round((Math.random() * dif) + min);
 inc  = 0;
 cod  = "";
 while (inc < lun)
 {
  cod += car.charAt(Math.round(Math.random() * car.length));
  inc++;
 }
 return cod;
}
</script>

<script language ="Javascript">
function Invia()
{
 var testo = document.modulo.testo.value;
 var codice = document.modulo.codice.value;
 if (testo == "")
 {
  alert("Inserisci del testo nell'apposita casella!");
  document.modulo.testo.value = "";
  document.modulo.testo.focus();
 }
 else if (codice != document.getElementById("captcha").innerText)
 {
  alert("Il codice di sicurezza è errato!");
  document.modulo.codice.value = "";
  document.modulo.codice.focus();
 }
 else
 {
  document.modulo.method = "post";
  document.modulo.action = "script.asp";
  document.modulo.submit();
 }
}
</script>
<script language="Javascript">
function codice()
{
   document.getElementById("captcha").innerText = CAPTCHA();
}
</script>
Paolo87
Utente Senior
 
Post: 305
Iscritto il: 26/08/07 09:54
Località: Roma

Re: Javascript e il codice captcha

Postdi Dylan666 » 03/03/08 10:49

1) usa i tag CODE quando metti codice sul forum

2) metti la parte javascript nell'head della pagina

3) è inutile che apri e chiudi il tag <script> per tre parti consecutive di javascript. Scrivi le tre parti aprendo il tag prima della prima parte e chiudendolo alla fine della terza.

4) l'onLoad si mette nel tag Body

5) pure per utilizzare script già fatti un po' di dimestichezza col linguaggio che si vuole adoperare ci vuole. Mi sembri uno che vuole costruire un palazzo avendo dimestichezza con i Lego.

La soluzione comunque era più o meno questa:

Codice: Seleziona tutto
<html>
<head>

<script>
function CAPTCHA()
{
 var car, min, max, dif, lun, inc;
 car  = "abcdefghijklmnopqrstuvwxyz";
 car += "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 car += "1234567890";
 min  = 5;
 max  = 5;
 dif  = max - min;
 lun  = Math.round((Math.random() * dif) + min);
 inc  = 0;
 cod  = "";
 while (inc < lun)
 {
  cod += car.charAt(Math.round(Math.random() * car.length));
  inc++;
 }
 return cod;
}


function Prova(){
document.getElementById("captcha").innerHTML = CAPTCHA();
}

function Invia()
{
 var testo = document.modulo.testo.value;
 var codice = document.modulo.codice.value;
 if (testo == "")
 {
  alert("Inserisci del testo nell'apposita casella!");
  document.modulo.testo.value = "";
  document.modulo.testo.focus();
 }
 else if (codice != document.getElementById("captcha").innerHTML)
 {
  alert("Il codice di sicurezza è errato!");
  document.modulo.codice.value = "";
  document.modulo.codice.focus();
 }
 else
 {
  document.modulo.method = "post";
  document.modulo.action = "script.asp";
  document.modulo.submit();
 }
}
</script>

</head>



<body onLoad="Prova()">


<form name="modulo">
Inserisci del testo qui<br>
<input type="text" name="testo" size="50"><br><br>
Copia il codice di sicurezza:
<span id="captcha"></span><br><br>
<input type="text" name="codice" size="50"><br><br>
<input type="button" value="Invia i dati" onclick="Invia()">
</form>

</body>
</html>
Avatar utente
Dylan666
Moderatore
 
Post: 39988
Iscritto il: 18/11/03 16:46

Re: Javascript e il codice captcha

Postdi Paolo87 » 03/03/08 10:56

Grazie molte.
Paolo87
Utente Senior
 
Post: 305
Iscritto il: 26/08/07 09:54
Località: Roma

Re: Javascript e il codice captcha

Postdi Paolo87 » 03/03/08 11:02

senti una curiosità,vedi questo pezzo di codice preso dallo script che hia postato tu :

Codice: Seleziona tutto
else
{
  document.modulo.method = "post";
  document.modulo.action = "script.asp";
  document.modulo.submit();
}


se io aggiungo questo :

Codice: Seleziona tutto
else
{
  document.modulo.method = "post";
  document.modulo.action = "script.asp";
  document.modulo.action = "inserimento.php" //script che  inserisce i dati nel db mysql
 document.modulo.submit();
}


prima lo spedisce per email e dopo mi aggiunge i dati al db?! giusto?!
Paolo87
Utente Senior
 
Post: 305
Iscritto il: 26/08/07 09:54
Località: Roma

Re: Javascript e il codice captcha

Postdi Dylan666 » 03/03/08 11:11

Il codice che hai trascritto diceva: se il captcha è giusto allora vai alla pagina...
Così come è ora gli puoi specificare solo UNA pagina. Se ne scrivi più di una vale solo l'ultima che gli hai dato.
Se devi fare più cose con più pagine php fai aprire allo script una pagina in php che ha l' "include" delle altre due che volevi lanciare.

Ma da quello che vedo che chiedi suppongo che non hai le competenze per fare una cosa simile. Invece di aprire altri 100 topic fossi in te mi comprerei un libro di javascript e uno sul php.
Avatar utente
Dylan666
Moderatore
 
Post: 39988
Iscritto il: 18/11/03 16:46

Re: Javascript e il codice captcha

Postdi Paolo87 » 03/03/08 11:14

ok. grazie per la risposta
Paolo87
Utente Senior
 
Post: 305
Iscritto il: 26/08/07 09:54
Località: Roma


Torna a Programmazione


Topic correlati a "Javascript e il codice captcha":


Chi c’è in linea

Visitano il forum: Nessuno e 7 ospiti

cron