PHP CAPTCHA AYUDA EN EL CODIGO PARA ENLAZAR A MI PAGINA DE CONTACTO

MUFFAZZA

Bovino adolescente
#1
AMIGOS BAKUNOS TENGO UN PROBLEMA AL MOMENTO DE UTILIZAR LA CAPTCHA EN MI SITIO Y ES QUE NO SE COMO EN LUGAR DE QUE EL USUARIO INGRESE CORRECTAMENTE EL TEXTO DE LA CAPTCHA ESTA ME MANDE A LA HOJA DE CONTACTOS EN HTML POR EL MOMENTO ESTA SOLAMENTE ME DA UN MENSAJE QUE DICE BIENVENIDO QUIERO SUSTITUIR ESE TEXTO POR LA PAGINA DE CONTACTO LES DEJO EL CODIGO PARA VER SI ME PUEDEN AYUDAR.

CODIGO 1

<?php
session_start();
if ($_POST['action'] == "checkdata") {
if(isset($_SESSION['tmptxt'])){ // Comprobamos que este la session tmptxt
if ($_SESSION['tmptxt'] == $_POST['tmptxt']) { // Si la cadena de texto introducida es igual a la imagen
echo "Bienvenido";
} else {
echo "Intentalo nuevamente";
}
} else {
echo "Error";
}
exit;
}
?>
<strong>CAPTCHA con PHP </strong><br>
Ingresar el texto mostrado en la imagen. <br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<img src="captcha.php" width="200" height="200" vspace="3"><br>
<input name="tmptxt" type="text" size="30"><br>
<input name="btget" type="submit" class="boton" value="Verificar Codigo">
<input name="action" type="hidden" value="checkdata">
</form>


CODIGO 2 GENERA LA CAPTCHA


<?php
session_start();
function randomText($length) {
$pattern = "1234567890abcdefghijklmnopqrstuvwxyz";
for($i=0;$i<$length;$i++) {
$key .= $pattern{rand(0,35)};
}
return $key;
}

$_SESSION['tmptxt'] = randomText(8);
$captcha = imagecreatefromgif("bgcaptcha.gif");
$colText = imagecolorallocate($captcha, 0, 0, 0);
imagestring($captcha, 5, 16, 7, $_SESSION['tmptxt'], $colText);

header("Content-type: image/gif");
imagegif($captcha);
?>:punzadita:
 

greyess74

Bovino maduro
#2
Como dijo el descuartizador, "vamos por partes".
quieres sustituir el captcha por la página de contacto? o que en lugar del mensaje de bienvenida te mande a la página de contactos?
porque son 2 cosas diferentes.

Para lograr lo segundo debes sustituir la instrucción "echo" por un "header(location:xxx)"
tomando tu código quedaría así:

if(isset($_SESSION['tmptxt'])){ // Comprobamos que este la session tmptxt
if ($_SESSION['tmptxt'] == $_POST['tmptxt']) { // Si la cadena de texto introducida es igual a la imagen
header("Location: contactos.php");
} else {
 
Arriba