Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Inserire captcha in un form di registrazione, come? consigli o esempi.... :)

    Salve, ho un problema,
    vorrei inserire un controllo con un'immagine captcha all'interno di
    un form di registrazione, vorrei che la form prima di essere
    processata verificasse che l'immagine del chapta sia correttamente
    inserita, quindi in sintesi controllasse prima il numero generato
    nell'immagine e poi processasse normalmente la form.
    Solo che nn ho idea di come fare vista la complessita della form di
    registrazione.
    Allego il codice della registrazione nella speranza che qualcuno che
    sa come agire mi dia una mano di aiuto,ringrazio in anticipo chi lo
    fara!

    Codice PHP:
    <?php ob_start(); ?> 
    <?php 
    require_once("../system/templater.class.php"); 
    require_once(
    "../configuration/language.php"); 
    require_once(
    "../configuration/config.php"); 


            
    $result mysql_query('SELECT users_ip FROM banned WHERE 
    users_ip="' 
    $_SERVER['REMOTE_ADDR'] . '"'$conn); 
            
    $num_rows mysql_num_rows($result); 
            if (
    $num_rows >= 1) { 
                    die(
    "$error1"); 
            } 
            
    $dropbox '<input type="hidden" name="ndomain" value="' 
    $_REQUEST["dom"]. '">'


    $ref=$_SERVER['HTTP_REFERER']; 


    $main 


    Inserire i dati richiesti.</P> 
    <form method="POST" action="./register2.php"> 
    <table cellspacing="12" border="0" cellpadding="0"> 


    <tr><td>' 
    $first_name '</td><td><input type="text" 
    name="first_nameraw"></td></tr> 


    <tr><td>' 
    $last_name '</td><td><input type="text" 
    name="last_nameraw"></td></tr> 


    <tr><td>' 
    $secret_question '</td> 


    <td> 
    <select name="questionraw"> 
    <option value="" selected>Scegli la domanda segreta 
    <option value="'
    .$q1.'">'.$q1.
    <option value="'
    .$q2.'">'.$q2.
    <option value="'
    .$q3.'">'.$q3.
    <option value="'
    .$q4.'">'.$q4.
    <option value="'
    .$q5.'">'.$q5.
    <option value="'
    .$q6.'">'.$q6.
    </select> 
    </td></tr> 


    <tr><td>' 
    $secret_answer '</td><td><input type="text" 
    name="answerraw"></td></tr> 


    <tr><td>' 
    $howfound '</td><td><input type="text" name="foundraw"></ 
    td></tr> 


    <tr><td>' 
    $username '</td><td><input type="text" 
    name="emailraw">@'
    $_REQUEST["dom"] . $dropbox '</td></tr> 


    <tr><td>' 
    $password '</td><td><input type="password" 
    name="passwordraw"></td></tr> 


    <tr><td>' 
    $confirm_password '</td><td><input type="password" 
    name="passwordconfirmraw"></td></tr> 


    <!-- tr><td>' 
    $website_title '</td><td><input readonly 
    type="hidden" name="websiteraw" value="'
    $_REQUEST["dom"] .'"></td></ 
    tr> 


    <tr><td>' 
    $website_url '</td><td><input  size="50" readonly 
    type="hidden" name="urlraw" value="http://www.'
    $_REQUEST["dom"] . 
    '"></td></tr --> 


     
    '



    if(
    $allow_free != '0') { 
            
    $main .= 
                    <input type="hidden" name="memlev" value="0,' 
    0.00 ',' 
    $allow_free '">'
            } 
    $main .= 
     


    <input type="hidden" name="verifraw" value="1"> 
    <input type="hidden" name="user_ipraw" value=' 

    $_SERVER['REMOTE_ADDR'] . '> 
    <tr><td></td></tr> 


    <tr><td><input type="submit" value="' 
    $submit_register '"></td></ 
    table> 


    </form>'



    $templater = new Templater("../templates/template.html"); 
    $templater->replace_tags(array( "main" => "$main")); 
    $templater->output(); 


    ?> 
    <?php ob_end_flush(); ?>
    Il codice deve rimanere questo, devo solo aggiungere il controllo
    captha.... come fare?
    grazie mille

  2. #2
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697
    Questo è il codice captca, metti online anche il font (io uso il courbi.ttf)

    Codice PHP:
    <?php

    //Captca-image 

    session_start(); 

    if (empty(
    $_SESSION['rand_code'])){ 
    $str ""
    $length 0
    $caratteri "abcdefghijkmnpqrstuvwxyz123456789";  /* Caratteri che appaiono come immagine */
    for ($i 0$i 5$i++){          /* il 5 indica il numero di caratteri-immagine che appaiono */
    $str .= $caratteri{rand(0,34)};

    $_SESSION['rand_code'] = $str

    $imgX 60;//Sposta a dx i caratteri-immagine 
    $imgY 18;//Sposta in alto i caratteri-immagine 
    $image imagecreatetruecolor(6020); 
    $backgr_col imagecolorallocate($image238,239,239);//Colore di sfondo
    $border_col imagecolorallocate($image208,208,20);//Colore del bordo 
    $text_col imagecolorallocate($image46,60,31);//Colore dei caratteri-immagine
     
    imagefilledrectangle($image006020$backgr_col);//Cambiando i 4 valori appare un'ombra nera e si può creare un'effetto rilievo o incassato del rettangolo  
    imagerectangle($image005919$border_col);// Sposta il bordino colorato del rettangolo

    $font "courbi.ttf";
    $font_size 14;//Dimensione dei caratteri-immagine 
    $angle 0;//Ruota obliqui i caratteri-immagine 
    $box imagettfbbox($font_size,$angle,$font,$_SESSION['rand_code']); 
    $x = (int)($imgX $box[4]) / 2;//Sposta a sx i caratteri-immagine 
    $y = (int)($imgY $box[5]) / 2;//Sposta in alto i caratteri-immagine
    imagettftext($image,$font_size,$angle,$x,$y,$text_col,$font,$_SESSION['rand_code']); 

    header("Content-type: image/jpeg"); 
    imagejpeg($image); 
    imagedestroy ($image);
     
    //Fine Captca-image 

    ?>
    questo lo metti nel form:

    codice:
    [img]captca-image.php[/img]Scrivi il codice<input type="text" name="validator" id="validator" />
    avresti una cosa del genere http://www.photoman.altervista.org/guestbook/form.php

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    33
    questo codice mi da un errore a questa riga

    $image = imagecreatetruecolor(60, 20);


    Fatal error: Call to undefined function: imagecreatetruecolor() in D:\Inetpub\webs\captcaimage.php on line 18
    sapete come risolvere??
    ele

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.