17/05/2011, 13:31
|
| | Fecha de Ingreso: octubre-2009
Mensajes: 38
Antigüedad: 14 años, 6 meses Puntos: 0 | |
Respuesta: ¿Como integrar reCaptcha en un formulario? Cita:
Iniciado por s00rk Tambien podrias hacer un captcha de numeros de alguna suma algo asi supongo:
Formulario: Código PHP: <?php session_start(); $_SESSION['num1'] = mt_rand(1,100); $_SESSION['num2'] = mt_rand(1,100); ?> <form method="post" enctype="multipart/form-data" action="processor.php" onsubmit="return validatePage1();"> <p> <label class="formFieldQuestion"> · Contact name: <br /> </label> <input class="mainForm" type="text" name="field_1" id="field_1" size='30' value='' /> <label class="formFieldQuestion"><br /> <br /> · Phone number: <br /> </label> <input class="mainForm" type="phone" name="field_2" id="field_2" size="25" value="" style="background-image:url(imgs/phone.png); background-repeat: no-repeat; padding: 2px 2px 2px 25px;" /> </p> <p> <label class="formFieldQuestion">· Email: <br /> </label> <input class="mainForm" type="email" name="field_3" id="field_3" size="25" value="" style="background-image:url(imgs/email.png); background-repeat: no-repeat; padding: 2px 2px 2px 25px;" /> </p> <p> <label class="formFieldQuestion">· Numer of people<br /> </label> <input class="mainForm" type="text" name="field_4" id="field_4" size='30' value='' /> </p> <p> <label class="formFieldQuestion">· Type of service: <br /> </label> <select class="mainForm" name="field_5" id="field_5"> <option value=''></option> <option value="Girona">Girona</option> <option value="Sitges">Sitges</option> <option value="Montserrat + Cavas Penedes">Montserrat + Cavas Penedes</option> <option value="Cavas Penedes">Cavas Penedes</option> <option value="Montserrat Tour">Montserrat Tour</option> <option value="Modernism Tour">Modernism Tour</option> <option value="Artistic Tour">Artistic Tour</option> <option value="Walking Tour">Walking Tour</option> <option value="City Tour Barcelona">City Tour Barcelona</option> <option value="Transfer in/out">Transfer in/out</option> <option value="Figueres (Dalí Museum)">Figueres (Dalí Museum)</option> <option value="Tarragona">Tarragona</option> <option value="Cadaques & Portlligat">Cadaques & Portlligat</option> <option value="Other City Tour">Other City Tour</option> <option value="Other Outside City Tour">Other Outside City Tour</option> <option value="Other Service">Other Service</option> </select> </p> <p> <label class="formFieldQuestion">· Pick-up hour: <br /> </label> <input class="mainForm" type="text" name="field_6" id="field_6" size='30' value='' /> </p> <p> <label class="formFieldQuestion">· Pick-up place:<br /> </label> <input class="mainForm" type="text" name="field_7" id="field_7" size='30' value='' /> </p> <p> <label class="formFieldQuestion">· Explain your needs: <br /> </label> <textarea class="mainForm" name="field_8" id="field_8" rows="5" cols="23"></textarea> <script type="text/javascript"> <!-- function validatePage1() { retVal = true; if (validateField('field_1','fieldBox_1','text',1) == false) retVal=false; if (validateField('field_2','fieldBox_2','phone',1) == false) retVal=false; if (validateField('field_3','fieldBox_3','email',1) == false) retVal=false; if (validateField('field_4','fieldBox_4','text',1) == false) retVal=false; if (validateField('field_5','fieldBox_5','menu',1) == false) retVal=false; if (validateField('field_6','fieldBox_6','text',1) == false) retVal=false; if (validateField('field_7','fieldBox_7','text',1) == false) retVal=false; if (validateField('field_8','fieldBox_8','textarea',1) == false) retVal=false; if(retVal == false) { alert('Please correct the errors. Fields marked with an asterisk (*) are required'); return false; } return retVal; } //--> </script> <!-- end page validaton --> <!-- next page buttons --> </p> <p> Resuelve: <?=$_SESSION['num1']?> + <?=$_SESSION['num2']?> : <input type="text" name="captch" /> <input id="saveForm" class="mainForm" type="submit" value="Submit" /> </p> </form> Y el PHP algo asi: Código PHP:
<?php session_start(); $n = ($_SESSION['num1']+$_SESSION['num2']); if (!$n == $_POST['captch']) { die ("La suma es incorrecta"); } $where_form_is="http://".$_SERVER['SERVER_NAME'].strrev(strstr(strrev($_SERVER['PHP_SELF']),"/")); mail("[email protected]","Day Tours Barcelona Contact & Booking","Form data: · Contact name:: " . $_POST['field_1'] . " · Phone number:: " . $_POST['field_2'] . " · Email:: " . $_POST['field_3'] . " · Numer of people: " . $_POST['field_4'] . " · Kind of service: : " . $_POST['field_5'] . " · Hour of pick up:: " . $_POST['field_6'] . " · Place of pick up:: " . $_POST['field_7'] . " · Explain your needs: : " . $_POST['field_8'] . " "); include("confirm.html"); ?> No me funciona, no me aparecen los números -_- gracias, me echas un cable? |