Foros del Web » Programando para Internet » PHP »

Como Integrar reCaptcha a mi formulario de contacto?

Estas en el tema de Como Integrar reCaptcha a mi formulario de contacto? en el foro de PHP en Foros del Web. Amigos necesito saber como añadir un captcha de reCaptcha.net. He tratado de seguir las instrucciones pero no doy, pero no se como integrarlo (o enlazarlo) ...
  #1 (permalink)  
Antiguo 10/11/2008, 17:35
 
Fecha de Ingreso: octubre-2008
Mensajes: 12
Antigüedad: 15 años, 6 meses
Puntos: 0
Como Integrar reCaptcha a mi formulario de contacto?

Amigos necesito saber como añadir un captcha de reCaptcha.net.

He tratado de seguir las instrucciones pero no doy, pero no se como integrarlo (o enlazarlo) a la accion del boton, alguno sabe?

He visto los codigos que te da www.cerospam.com.ar, http://recaptcha.net/plugins/php/, www.icaptcha.com/icaptcha/config.html pero no explican como integrarlo al formulario

He leido tambien el pequeño manual de http://www.desarrolloweb.com/articulos/poner-captcha-en-3-pasos.html y no le hayo a como integrarlo con mi codigo

El codigo del formulario que estoy usando es de una plantilla del programa WebSite X5, el cual no incluye alguna especie de captcha para evitar el spam a mi correo, por esa razon estoy intentando añadirle un captcha al formulario que me genera WebSite X5, el cual es el siguiente:

Código:
<div id="imCel8_00">
<div id="imCel8_00_Cont">
<div id="imObj8_00">
<script type="text/javascript"><!--
function ChkFrm_8_00(oForm)
{
sAlert1 = "Error en el dato ingresado! ";
sAlert2 = "Direccion de email incorrecta! ";
if (oForm.Itm_8_00_1.value == "")
{
  oForm.Itm_8_00_1.focus();
  alert(sAlert1 + "'Nombre'");
  return (false);
}
if (oForm.Itm_8_00_2.value == "" || oForm.Itm_8_00_2.value.indexOf ('@', 0) < 1 || oForm.Itm_8_00_2.value.indexOf ('.', 0) < 1)
{
  oForm.Itm_8_00_2.focus();
  alert(sAlert2 + "'Email'");
  return (false);
}
return (true);
}
//--></script>
<form action="files/mail_p020_8_00.php" method="post" onsubmit="return ChkFrm_8_00(this)">
<fieldset>
<div><label for="Itm_8_00_1">
Nombre*:<br />
<input class="imInput imInput_0" name="Itm_8_00_1" id="Itm_8_00_1" type="text" /></label></div>
<div><label for="Itm_8_00_2">
Email*:<br />
<input class="imInput imInput_0" name="Itm_8_00_2" id="Itm_8_00_2" type="text" /></label></div>
<div><label for="Itm_8_00_3">
Pais:<br />
<input class="imInput imInput_0" name="Itm_8_00_3" id="Itm_8_00_3" type="text" /></label></div>
<div><label for="Itm_8_00_4">
Comentario:<br />
<textarea class="imInput imInput_0" name="Itm_8_00_4" id="Itm_8_00_4" rows="5" cols="15" style="height: 75px"></textarea></label></div>

<?
require_once('recaptchalib.php');
$publickey = "AQUI PONGO MI KEY"; // you got this from the signup page
$privatekey = "AQUI IGUAL";
$resp = null;
$error = null;

if ($_POST["submit"]) {
$resp = recaptcha_check_answer ($privatekey,
                                $_SERVER["REMOTE_ADDR"],
                                $_POST["recaptcha_challenge_field"],
                                $_POST["recaptcha_response_field"]);
if ($resp->is_valid)
{
AQUI QUE PONGO? PORQUE SI PONGO echo "You got it!"; solo aparece ese mensaje, existe algun "if ($resp->is_valid) { then value=true then value=enviar"?? He Intentado dejarlo en blanco, pero solo me sale "error en la linea 185 "{" verifique etc"
}
else
{
$error = $resp->error;
}
}
echo recaptcha_get_html($publickey, $error);
?>

<div class="imAlign_center"><input class="imFormButton" value=" Enviar " type="submit" /><input class="imFormButton" value=" Limpiar " type="reset" /></div></fieldset></form></div></div></div></div>
la pagina php que manda a llamar es la siguiente:

Código:
<?php
$Msg = "\r\n\r\n";
$UserData = "";
$UserData .= "Nombre " . $_POST["Itm_8_00_1"] . "\r\n";
$UserData .= "Email " . $_POST["Itm_8_00_2"] . "\r\n";
$UserData .= "Pais " . $_POST["Itm_8_00_3"] . "\r\n";
$UserData .= "Comentario " . $_POST["Itm_8_00_4"] . "\r\n";
mail( "my_webmail", "", $Msg . $UserData, "From: contact@mydomain\r\nContent-type: text/plain; charset=iso-8859-1\r\n");

@header("Location: ../gracias.html");
?>
Tampoco entiendo como obtener el recaptcha_get_html, del codigo que me dan en recaptcha.net:

Código:
require_once('recaptchalib.php');
$publickey = "..."; // you got this from the signup page
echo recaptcha_get_html($publickey);
Claro que puse mi publickey y Que segun con ese echo debo conseguir el codigo para integrarlo a mi formulario pero tampoco he logrado que me de el codigo para mi formulario. En el manual de foros del web dice que si debo obtener el codigo, y he probado con el codigo que ellos dan y con el de recaptcha.net y no logro obtener resultados:

Cita:
En la librería descargada ('recaptchalib.php') Hay una función que sirve para mostrar la captcha. Simplemente tenemos que llamarla con los parámetros correctos. La función devuelve el código HTML que tenemos que colocar en la página para que se vea la captcha.

recaptcha_get_html($captcha_publickey, $error_captcha);

Los parámetros que recibe son la llave pública que conseguimos anteriormente y un código de error, que es opcional. Luego veremos de dónde podría venir ese código de error.
Respecto a tu pregunta:

Cita:
y supongo tiene un input type="text" :/ y cual es el problema de agregar mas imputs text uno para el nombre otro para email telefono mensaje etc.... ?
Es que yo no lo hice, es una plantilla del programa Website x5 que utilice para crear SOLO el diseño, ya que el contenido adicional, scripts, contadores, etc lo he estado añadiendo desde el editor de codigo del CPanel de mi sitio, esto porque se me hace mas manejable el codigo desde el mismo codigo y no del programa que ya trae predetermina estilos css que no me gustan del todo y voy editando poco a poco, es imposible añadir enlaces desde los menus por lo que se lo añado desde el codigo, etc

Asi que deseo editar ese codigo para añadirle un captcha, en dado caso de que no se pueda con ese codigo, pueden sugerirme uno para remplazarlo por el formulario del programa, no me seria de problema porque el programa crea la web por secciones tipo frames, asi que solo borraria el codigo del formulario y queda en blanco ese espacio con el mismo formato de la web

Espero su ayuda, gracias

Última edición por irg_perez; 25/11/2008 a las 22:55
  #2 (permalink)  
Antiguo 10/11/2008, 17:44
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Como Integrar reCaptcha a mi formulario de contacto?

primera pregunta el captcha le funciona y todo por separado ok.....

y supongo tiene un input type="text" :/ y cual es el problema de agregar mas imputs text uno para el nombre otro para email telefono mensaje etc.... ?
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #3 (permalink)  
Antiguo 11/11/2008, 02:36
Avatar de armandoweb  
Fecha de Ingreso: enero-2003
Ubicación: San Cristobal, Santa Fe, Argentina
Mensajes: 544
Antigüedad: 21 años, 3 meses
Puntos: 7
Respuesta: Como Integrar reCaptcha a mi formulario de contacto?

Irg_Perez:

Yo tengo un captcha que es una clase que está muy bien hecha y es bastante simple de configurar, si quieres te la puedo enviar, enviame un msj al privado.

Saludos.

ARMANDOWEB
__________________
www.awdesarrollos.com.ar - [twitter: @armandoweb] - [Skype: awdesarrollos"]
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:21.