Foros del Web » Programando para Internet » PHP »

ayuda enviar formulario con php

Estas en el tema de ayuda enviar formulario con php en el foro de PHP en Foros del Web. hola; no puedo hacer funcionar este formulario... en general logre levantar varios formularios utilizando un codigo similar, pero no puedo terminar de entender por qué ...
  #1 (permalink)  
Antiguo 18/10/2010, 14:48
 
Fecha de Ingreso: octubre-2010
Mensajes: 6
Antigüedad: 13 años, 6 meses
Puntos: 0
ayuda enviar formulario con php

hola; no puedo hacer funcionar este formulario... en general logre levantar varios formularios utilizando un codigo similar, pero no puedo terminar de entender por qué en este caso los datos que recibo en mi casilla de mail están en blanco:

mi html:
Código HTML:
<form action="send.php" method="post" enctype="text/plain">
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
              <tr> 
                <td>Name:</td>
                <td rowspan="8" width="5%">&nbsp;</td>
                <td>Message:</td>
              </tr>
              <tr> 
                <td valign="top">
                  <input name="name_form" type="text" class="form"/>
                  </td>
                <td rowspan="5" valign="top"><textarea name="message_form" cols="40" rows="8" class="form"></textarea></td>
              </tr>
              <tr> 
                <td>Country:</td>
              </tr>
              <tr> 
                <td valign="top"><input name="country_form" type="text" class="form"/></td>
              </tr>
              <tr> 
                <td>Phone:</td>
              </tr>
              <tr> 
                <td valign="top"><input name="phone_form" type="text" class="form"/></td>
              </tr>
              <tr> 
                <td>Mail:</td>
                <td valign="top">&nbsp;</td>
              </tr>
              <tr> 
                <td valign="top"><input name="mail_form" type="text" class="form" /></td>
                <td>
                  <input name="reset" type="reset" class="button" value="Reset" />
                  <input name="submit" type="submit" class="button" value="Submit" />
                  </td>
              </tr>
            </table>
          </form> 
mi php:

Código:
<?php
$name = $_POST['name_form'];
$country = $_POST['country_form'];
$phone = $_POST['phone_form'];
$mail = $_POST['mail_form'];
$message = $_POST['message_form'];

$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 = "Sent by " . $name . ", from " . $country . " \r\n";
$mensaje .= "Email: " . $mail . " \r\n";
$mensaje .= "Phone: " . $phone . " \r\n";
$mensaje .= "Mensaje: " . $message . " \r\n";
$mensaje .= "Enviado el" . date('d/m/Y', time());

$para = '[email protected]';
$asunto = 'Contacto desde WEB';

if (mail($para, $asunto, utf8_decode($mensaje), $header)) {
   echo("<p>Message successfully sent!</p>");
  } else {
   echo("<p>Message delivery failed...</p>");}
?>
el script lo había levantado de internet hace un tiempo ya y lo pude utilizar en varios sitios exitosamente... no termino de entender qué estoy pasando por alto.

gracias!
  #2 (permalink)  
Antiguo 18/10/2010, 14:53
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ayuda enviar formulario con php

aparentemente no hay errores sintácticos o de compatibilidad con PHP, si el código ya sirve entonces el problema no es del código, ni de PHP...

sin embargo, me pregunto porque usas el enctype como text/plain en el formulario?

si no me equivoco eso esta mal... a menos que sepas lo que estas haciendo claro esta...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 18/10/2010, 15:06
 
Fecha de Ingreso: octubre-2010
Mensajes: 6
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: ayuda enviar formulario con php

pateketrueke, antes que nada muchas gracias por responder.

Como el formulario se envia a un mail, habia leido por ahi que lo mejor era ponerlo como text/plain; a veces he puesto "Content-Type: text/plain; charset=\"iso-8859-1\" porque no me llegaban los caracteres con ñ ni acentos, pero no se mucho mas que esto; me recomiendas alguna otra configuracion?

otra consulta mas... ya que dices que el error no es de código... qué otra variable podría estar generando el error? algo de la configuración del servidor quizas?

gracias de nuevo

Última edición por nate_rivers; 18/10/2010 a las 15:14
  #4 (permalink)  
Antiguo 18/10/2010, 15:20
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ayuda enviar formulario con php

naturalmente un formulario estándar no requiere la especificación del enctype, otra cuestión sería que antes de enviar el mensaje imprimas el contenido del mismo... así puedes comprobar manualmente si las variables existen, y llevan consigo algún valor...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 20/10/2010, 17:22
 
Fecha de Ingreso: octubre-2010
Mensajes: 6
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: ayuda enviar formulario con php

Cita:
Iniciado por pateketrueke Ver Mensaje
naturalmente un formulario estándar no requiere la especificación del enctype, otra cuestión sería que antes de enviar el mensaje imprimas el contenido del mismo... así puedes comprobar manualmente si las variables existen, y llevan consigo algún valor...
Intente quitarle esa especificacion y funciono bien. Sabrias explicarme por que me generaba ese error?
  #6 (permalink)  
Antiguo 20/10/2010, 17:54
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ayuda enviar formulario con php

Cita:
Iniciado por nate_rivers Ver Mensaje
Intente quitarle esa especificacion y funciono bien. Sabrias explicarme por que me generaba ese error?
eso lo puedes investigar en el mismo manual de PHP, o alguna referencia de HTML!!

http://php.net/manual/en/features.file-upload.php

el enctype se considera como el tipo de codificación HTTP empleada para el formulario, en dado caso text/plain no corresponde al tipo de codificación que se espera para un formulario...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: enviar, formulario
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:19.