Foros del Web » Programando para Internet » PHP »

Tengo problema para ingresar captcha

Estas en el tema de Tengo problema para ingresar captcha en el foro de PHP en Foros del Web. Me encontré un código para ingresar un captcha en mi formulario pero no me llegan los mensajes a mi correo... el código es el siguiente: ...
  #1 (permalink)  
Antiguo 10/12/2008, 09:40
 
Fecha de Ingreso: diciembre-2008
Mensajes: 33
Antigüedad: 15 años, 4 meses
Puntos: 0
Tengo problema para ingresar captcha

Me encontré un código para ingresar un captcha en mi formulario pero no me llegan los mensajes a mi correo... el código es el siguiente:

CONTACTO.PHP

<img src="captcha.php" width="100" height="30" vspace="3"><br>
<input name="tmptxt" type="text" size="30"><br>
<input name="btget" type="submit" class="boton" value="Enviar">
<input name="action" type="hidden" value="checkdata">
<label>
<input type="reset" name="Borrar" id="Borrar" value="Restablecer" />
</label>


ENVIA.PHP

<?php
if ($_POST['action'] == "checkdata") {
if ($_SESSION['tmptxt'] == $_POST['tmptxt']) {
echo "Mensaje Enviado correctamente";
} else {
echo "Código erróneo";
}
exit;
}
?>

<?php

$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

$mensaje = "Mensaje enviado por ... " . $nombre . ", de la empresa " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Dice que: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Fue enviado... " . date('d/m/Y', time());

$para = "MI CORREO";
$asunto = 'MI SITIO WEB';


mail($para, $asunto, utf8_decode($mensaje), $header);


?>


Alguien me puede ayudar a hacer que los mensajes me lleguen a mi correo?

Gracias de antemano.
  #2 (permalink)  
Antiguo 10/12/2008, 10:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Tengo problema para ingresar captcha

Pues creo el problema es el exit; que tienes despues del if, eso hace que ya no envie nada.

Saludos.
  #3 (permalink)  
Antiguo 10/12/2008, 10:49
 
Fecha de Ingreso: diciembre-2008
Mensajes: 33
Antigüedad: 15 años, 4 meses
Puntos: 0
entonces le quito el

}
exit;
}


Es eso?

Gatorv, es mejor pasar por tonto una vez y no quedar así para siempre... pregunto que línea de código hay que quitarle...

Otra vez Gracias.

Última edición por GatorV; 10/12/2008 a las 14:01
  #4 (permalink)  
Antiguo 10/12/2008, 14:01
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Tengo problema para ingresar captcha

Pues ya lo intentaste? De que sirve que te diga que si es esa linea si no lo intentas? Es mejor intentarlo y luego publicar en caso de que tengas un error.

Saludos.
  #5 (permalink)  
Antiguo 10/12/2008, 14:22
 
Fecha de Ingreso: diciembre-2008
Mensajes: 33
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Tengo problema para ingresar captcha

Pues bien, te voy a mandar todo el código :


CONTACTO.PHP


<form id="contacto" name="contacto" method="post" action="enviar.php">
<p>
<label>Nombre:
<input name="nombre" type="text" id="nombre" size="35"/></label></p>
<p>&nbsp;</p>
<p>
<label>Empresa:
<input name="empresa" type="text" id="empresa" size="35"/></label></p>
<p>&nbsp;</p>
<p>
<label> E-mail:
<input name="mail" type="text" id="mail" size="35"/>
</label>
</p>
<p>&nbsp;</p>
<p>
<label>Mensaje:<br />

<textarea name="mensaje" cols="40" rows="8" id="mensaje" ></textarea>
</label>
</p>
<p>

<img src="captcha.php" width="100" height="30" vspace="3"><br>
<input name="capta" type="text" size="30"><br>
<input type="submit" name="submit" value="Enviar" />
<input name="action" type="hidden" value="checkdata">
<label>
<input type="reset" name="Borrar" id="Borrar" value="Restablecer" />
</label>
</p>
<p>

</form>



ENVIAR.PHP


<?php
session_start();
if ($_POST['action'] == "checkdata") {
if ($_SESSION['capta'] == $_POST['capta']) {
echo "Mensaje enviado";
} else {
echo "Código Erróneo";
}
}
?>

<?php

$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

$mensaje = "Mensaje enviado por... " . $nombre . ", de la empresa " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Dice que: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Fue enviado... " . date('d/m/Y', time());

$para = "MI CORREO";
$asunto = "MI SITIO WEB";


Ya quité el código y lo que me manda es lo siguiente:

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/centram0/public_html/test1/captcha/enviar.php:10) in /home/centram0/public_html/test1/captcha/enviar.php on line 93
Bienvenido.


Si gustas te mando los archivos para que los veas porque estoy más perdido que el chiquito de la llorona... jajaja

Gracias nuevamente.
  #6 (permalink)  
Antiguo 10/12/2008, 14:59
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Tengo problema para ingresar captcha

Lee esta FAQ: http://www.forosdelweb.com/2037876-post179.html

Saludos.
  #7 (permalink)  
Antiguo 10/12/2008, 15:54
 
Fecha de Ingreso: diciembre-2008
Mensajes: 33
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Tengo problema para ingresar captcha

Ya leí el archivo FAQ's y como soy nuevo en el foro y en php no entendí nada. Me puedes ayudar con ejemplos...?

Gracias...
  #8 (permalink)  
Antiguo 10/12/2008, 16:26
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Tengo problema para ingresar captcha

Lamentablemente no hay un ejemplo, si ves esa FAQ, te esta diciendo lo que debes de hacer.

Antes de session_start() no debe de haber nada NADA de contenido de texto, si tu error lo ves te esta diciendo que la salida de texto empezo en el archivo enviar.php en la linea 10, por lo que tu en la linea 93 al poner session_start() te va a marcar ese error.

La solución? Ve a la linea 10 de tu archivo contacto.php y quita esa salida de texto.

Saludos.
  #9 (permalink)  
Antiguo 10/12/2008, 16:36
 
Fecha de Ingreso: diciembre-2008
Mensajes: 33
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Tengo problema para ingresar captcha

Gracias...
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 20:29.