elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  problema con mi formulario
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: problema con mi formulario  (Leído 3,474 veces)
estebanjd

Desconectado Desconectado

Mensajes: 7


Ver Perfil
problema con mi formulario
« en: 6 Noviembre 2011, 02:17 am »

Buenas gente, soy novato en esto de php y queria saber porque no me funciona el formulario (segui el tutorial al pie de la letra de una pagina)

Mi html es asi:

Código
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  2. <html>
  3. <head>
  4. <link href="style.css" rel="stylesheet" type="text/css" >
  5. <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"><title>Dreamon</title></head>
  6. <body>
  7. <body background=backgrund.png>
  8. <center>
  9. <br>
  10.  
  11. <form id="form1" name="form1" method="post" action="enviar.php">
  12. <input type="text" name="name" value="Ingrese su nombre" id="nombre"/>
  13.      <input type="email" name="email" value="Inserte su email" id="email" />
  14.      <input type="text" name="contraseña" value="Código" id="codigo" />
  15. <br>
  16. <br>
  17.      <input type="submit" name="boton" id="boton" class='boton' value="Enviar" />
  18.    </form>
  19.  
  20.  
  21. </center>
  22. </body></html>




La accion se llama enviar.php, lo cual hice un archivo llamado "enviar.php" que contiene lo siguiente


Código
  1. <? php
  2.  
  3. $nombre = $_POST['nombre'];
  4. $mail = $_POST['email'];
  5.  
  6. $header = 'From: ' . $mail . " \r\n";
  7. $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  8. $header .= "Mime-Version: 1.0 \r\n";
  9. $header .= "Content-Type: text/plain";
  10.  
  11. $mensaje = "Este mensaje fue enviado por " . $nombre . "\r\n";
  12. $mensaje .= "Su e-mail es: " . $email . " \r\n";
  13. $mensaje .= "Mensaje: " . $_POST['codigo'] . " \r\n";
  14. $mensaje .= "Enviado el " . date('d/m/Y', time());
  15.  
  16. $para = 'mimail@hotmail.com';
  17. $asunto = 'Probando form php';
  18.  
  19. mail($para, $asunto, utf8_decode($mensaje), $header);
  20.  
  21. echo 'se envio...';
  22.  
  23. ?>

Cuando hago click en el boton, me envia a la pagina/enviar.php, y me muestra el código, y no me llega el mail... cabe destacar que lo probe tambien utilizando el servidor local con xamp y tampoco anduvo :( alguien sabe que puede pasar ?


En línea

2Fac3R


Desconectado Desconectado

Mensajes: 300


Why be a king when you can be a god


Ver Perfil WWW
Re: problema con mi formulario
« Respuesta #1 en: 6 Noviembre 2011, 06:27 am »

Segun tengo entendido en local no funciona, entonces lo tendras que probar en algun hosting, aparte al principio tienes "<? php" eso es incorrecto, seria "<?php" o simplemente "<?".

Zalu2


En línea

Escuela de Hackers & Programación. http://ihackndev.blogspot.com/
s00rk

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: problema con mi formulario
« Respuesta #2 en: 6 Noviembre 2011, 06:39 am »

Segun tengo entendido en local no funciona, entonces lo tendras que probar en algun hosting, aparte al principio tienes "<? php" eso es incorrecto, seria "<?php" o simplemente "<?".

Zalu2

Lo del <? php si lo tuviera mal le marcaria error en la web, asi que a como lo veo lo que sucede es que
1.- Lo guardo con otra extension
2.- No corre PHP

y mas probable la 2, porque en el html lo manda al php y lo lee, pero por alguna razon le muestra el contenido y no lo que deberia o si fuera la casualidad tambien que si lo codea con dreamweaver que lo haya colocado en la sección de diseño y pues lo puso como html accidentalmente, son las razones que pienso que podrian ser jejeje

Sobre lo de mail eso si solo en hosting funciona a menos que lo configures en tu servidor, o usar PHPMailer
En línea

Carluís

Desconectado Desconectado

Mensajes: 49


Estableciendo conexión...


Ver Perfil WWW
Re: problema con mi formulario
« Respuesta #3 en: 6 Noviembre 2011, 16:37 pm »

Al parecer te estas complicando la vida con X-Mailer, prueba utilizar la función Mail en php, puedes utilizar un código como el siguiente:

Código:
<?php
if(isset($_POST['enviar'])) //Preguntamos si se presiono el boton de submit
{
     //Recibimos las variables
     $recipiente = $_POST['recipiente'];
     $asunto = $_POST['asunto'];
     $mensaje = $_POST['mensaje'];

     $encabezado = 'MIME-Version: 1.0' . "\r\n";
     $encabezado .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
     $encabezado .= 'From: Carluís <Carluis@hotmail.com>' . "\r\n";

     // (substr_count) cuenta dentro de la frase o palabra almacenada en la variable si, existe '@' solo debe haber uno.
     // se le pone @ adelante del substr_count para ignorar los errores.

     if(@substr_count($recipiente,'@') == 1){ // Validacion de correo escrito correctamente
          if($asunto == '' or $mensaje == '' or  $recipiente == '' ) // Validacion de campos sin rellenar
          {
               echo '<strong>Campos vacios, por favor llene los campos</strong>';
          }
          else
          {
               mail($recipiente, $asunto, $mensaje, $encabezado);
               echo "<strong>Se envio correctamente</strong>";
          }
     }
     else
     {
          echo "<strong>Email es incorrecto</strong>";
     }
}
?>

Reemplazando el código anterior del enviar.php, y cambiando los valores y variables en tu caso:

Código:
$nombre = $_POST['nombre'];
$mail = $_POST['email'];

Cambialos por

Código:
//Recibimos las variables
$recipiente = $_POST['recipiente'];
$asunto = $_POST['asunto'];
$mensaje = $_POST['mensaje'];

Adapta tu formulario al código que te deje, para más información puedes mirar una introducción a la función Mailer
« Última modificación: 6 Noviembre 2011, 16:39 pm por Carluís » En línea

Desarrollo Web, Blogging, Diseño: http://onsoni.blogspot.com
estebanjd

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: problema con mi formulario
« Respuesta #4 en: 6 Noviembre 2011, 19:29 pm »

Gracias Carluis, lo voy a probar y te informo el resultado :)
En línea

estebanjd

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: problema con mi formulario
« Respuesta #5 en: 6 Noviembre 2011, 19:43 pm »

Sigue pasando lo mismo, no se que puede pasar :S no podrias pasarme un programa que estes seguro que ande y lo pruebo de nuevo aqui ?, gracias
En línea

2Fac3R


Desconectado Desconectado

Mensajes: 300


Why be a king when you can be a god


Ver Perfil WWW
Re: problema con mi formulario
« Respuesta #6 en: 6 Noviembre 2011, 20:21 pm »

Si estas en linux tendrias que activar el servicio (puede ser que lo tengas desactivado) por ejemplo con xampp:

Código
  1. /opt/lampp/lampp start

Trata con algo simple como mostrar en pantalla para ver si esta correcto.

Código
  1. <form action="process.php" method="POST">
  2. <input type="text" name="prueba">
  3. <input type="submit">
  4. </form>

process.php

Código
  1. <?php
  2. echo "Mensaje: ".$_POST[`prueba'];
  3. ?>

Si esto te funciona, entonces es problema del mailer, como se te ha dicho no funciona en local, prueba en hosting online.

Espero haberte ayudado.
Zalu2
En línea

Escuela de Hackers & Programación. http://ihackndev.blogspot.com/
estebanjd

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: problema con mi formulario
« Respuesta #7 en: 6 Noviembre 2011, 20:34 pm »

Creeria que si, el problema que me tiro es este:



Notice: Undefined index: nombre in C:\xampp\htdocs\enviar.php on line 3

Notice: Undefined index: codigo in C:\xampp\htdocs\enviar.php on line 5

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\xampp\htdocs\enviar.php on line 14
Se envio correctamente



En línea

2Fac3R


Desconectado Desconectado

Mensajes: 300


Why be a king when you can be a god


Ver Perfil WWW
Re: problema con mi formulario
« Respuesta #8 en: 7 Noviembre 2011, 00:01 am »

Puede ser problema que no tengas puerto, o simplemente no tengas servicio de SMTP (protocolo de correo) y es por eso que no lo envia, sigo diciendo, prueba en un hosting...
En línea

Escuela de Hackers & Programación. http://ihackndev.blogspot.com/
Carluís

Desconectado Desconectado

Mensajes: 49


Estableciendo conexión...


Ver Perfil WWW
Re: problema con mi formulario
« Respuesta #9 en: 7 Noviembre 2011, 02:55 am »

Amigo el código o programa como le llamaste que te proporcione funciona perfectamente, el error que genera te lo dice todo "Fallo la conexión con mailserver verifica SMTP" no tienes el servicio, prueba en un diferente host o comunícate con tu proveedor de servicios.

Saludos.
En línea

Desarrollo Web, Blogging, Diseño: http://onsoni.blogspot.com
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
problema con formulario MDI
Programación Visual Basic
fraktal 5 3,649 Último mensaje 6 Octubre 2006, 00:59 am
por fraktal
Problema con formulario PHP
PHP
daam 4 2,494 Último mensaje 25 Octubre 2007, 18:55 pm
por daam
Problema con formulario PHP
PHP
oscarj24 0 1,581 Último mensaje 1 Junio 2010, 07:17 am
por oscarj24
Problema con Formulario PHP
PHP
LordBlackRed 9 4,091 Último mensaje 6 Agosto 2010, 14:53 pm
por LordBlackRed
Problema con formulario HTM - PHP
PHP
kuka_18 8 3,603 Último mensaje 5 Agosto 2011, 09:11 am
por kuka_18
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines