Foros del Web » Programando para Internet » PHP »

Error en código de envio de formulario

Estas en el tema de Error en código de envio de formulario en el foro de PHP en Foros del Web. Saludos. Alguien me puede indicar cual es el error de este formulario, solo me llega el dato del email y el texto de cada campo ...
  #1 (permalink)  
Antiguo 28/05/2009, 09:49
Avatar de gVenom  
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 15 años, 9 meses
Puntos: 53
Pregunta Error en código de envio de formulario

Saludos.

Alguien me puede indicar cual es el error de este formulario, solo me llega el dato del email y el texto de cada campo pero sin las variables, osea, llega
Nombre:
País:

y asi pero sin variables, solo el email llega bien.

Código PHP:
Ver original
  1. <?php
  2.  
  3.                   ////////////////////Aqui va la respuesta inmediata al cliente//////////////
  4. $email = $_POST["email"];
  5. $myname = "VtX Costa Rica, Soporte";
  6. $myemail = "[email protected]";
  7. $subject = "Formulario de consulta recibido";
  8. $body = "Estimado(a) $nombre \n
  9. Nuestro departamento de soporte ha recibido su consulta. Gracias.
  10.  
  11. Respetuosamente,
  12.  
  13. VtX-cr Webmaster
  14.  
  15.  
  16. http://vtx-cr.com ";
  17.  
  18. $headers = "Content-Type: text/plain; charset=us-ascii\nFrom: $myname <$myemail>\nReply-To:<$myemail>\nReturn-Path: <$myemail>\nX-Mailer: PHP";
  19. mail($email,$subject,$body,$headers);
  20.  
  21.                                                   $myemail = "[email protected]";
  22.                                                  
  23.                      ///////// Aqui va lo que se llena en el formulario  //////////
  24.                      
  25. if (!isset($visitormail))
  26. echo " http://vtx-cr.com " ;
  27. $todayis = date("m d Y") ;
  28. $subject = "Formulario de contacto desde VTX website" ;
  29. $message = " $todayis [EST] \n
  30. Nombre: $nombre \n
  31. Pais: $pais \n
  32. E-Mail: $email \n
  33. Tipo de consulta: $consulta \n
  34. Teléfono: $telefono \n
  35. Dirección: $direccion \n
  36. Mensaje: $mensaje \n
  37.  
  38. Hasta aqui la información recibida ;\n
  39. ";
  40. $from = "From: $email\r\n";
  41. if ($myemail != "")
  42. mail($myemail, $subject, $message, $from);
  43. ?>
el form
Código HTML:
<form id="Contacto" name="Contacto" method="post" action="send.php">
          <span  class="style1" >Nombre completo:</span>
          <label>
          <input name="nombre" type="text" id="nombre" style="margin-left:20px" size="30px" />
          </label>
          <br />
          <span  class="style1" > Pais:</span>
          <label>
          <input name="pais" type="text" id="pais" size="30px" style="margin-left:98px" />
          </label>
          <br />
          <span  class="style1" >E-Mail:</span>
          <label>
          <input name="email" type="text" id="email" size="30px" style="margin-left:88px" />
          </label>
          <br />
          <span  class="style1" > Tipo de consulta:</span>&nbsp;.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
          <label>
          <select name="consulta" id="consulta" >
            <option value="general">Consulta en General</option>
            <option value="soporte">Soporte T&eacute;cnico</option>
            <option value="plantillas">Plantillas Web</option>
            <option value="hosting">Servicio Hosting</option>
            <option value="hosting">Cat&aacute;logo de plantillas</option>
          </select>
          </label>
          <br />
          <span  class="style1" > Tel&eacute;fono fijo o Celular:</span>
          <label>
          <input name="telefono" type="text" id="telefono" size="30px" style="margin-left:0px" />
          </label>
          <br />
          <span  class="style1" >Direcci&oacute;n:</span>
          <label>
          <input name="direccion" type="text" id="direccion" size="30px" style="margin-left:70px" />
          </label>
          <p><br />
            <span  class="style1" >Escriba su Consulta aqu&iacute;:</span> </p>
          <label>
          <textarea name="mensaje" id="mensaje" cols="50" rows="13"></textarea>
          </label>
          <br />
          <label>
          <input type="submit" name="enviar" id="enviar" value="Submit" />
          </label>
          <label>
          <input type="reset" name="Borrar" id="Borrar" value="Reset" />
          </label>
        </form> 
__________________
"Al que venciere y guardare mis obras hasta el fin, yo le daré autoridad sobre las naciones."
Apocalipsis 2: 26
Servicios para Pymes http://dst.co.cr
  #2 (permalink)  
Antiguo 28/05/2009, 09: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: Error en código de envio de formulario



pues usa $_POST['variable'] en lugar de $variable, por ejemplo con nombre, país, edad, etc...

lee estos enlaces:
register_globals
http://www.forosdelweb.com/f18/como-...1/#post2414268

NOTA que estas enviando dos veces el mail() ¿eso esta bien??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 28/05/2009, 10:04
Avatar de gVenom  
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 15 años, 9 meses
Puntos: 53
Pregunta Respuesta: Error en código de envio de formulario

hola

lo malo es que yo no se php, ese formulario lo tome de uno que tengo que trabaja bien y va así:

Código PHP:
Ver original
  1. Name: $name \n
  2. Address: $address \n
  3. City, State, Zip: $city \n
  4. Phone: $phone \n
  5. E-Mail: $email \n
  6. Message: $mesg \n

lo unico que hice fue cambiar los nombres. No entiendo bien como acomodar las variables de la forma que me dices, algo asi:
Nombre: $_POST['nombre'] \n

?
__________________
"Al que venciere y guardare mis obras hasta el fin, yo le daré autoridad sobre las naciones."
Apocalipsis 2: 26
Servicios para Pymes http://dst.co.cr
  #4 (permalink)  
Antiguo 28/05/2009, 10:13
 
Fecha de Ingreso: mayo-2009
Mensajes: 45
Antigüedad: 14 años, 10 meses
Puntos: 2
Respuesta: Error en código de envio de formulario

Cuando haces el mail en html con el método post, las variables legan a tu php dentro de $POST.

Si tienes en el html por ejemplo en el formulario <input name="nombre">

te llegara al php el nombre intorducido en $_POST["nombre"] y así con todas las variables que tengas.

Después también debes tener cuidado en el echo del php ya que todo lo que sean cadenas deben ir entre comillas simples dentro de las comillas dobles del echo:

echo " Nombre: $_POST['nombre'] ";
  #5 (permalink)  
Antiguo 28/05/2009, 10:21
Avatar de gVenom  
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 15 años, 9 meses
Puntos: 53
De acuerdo Respuesta: Error en código de envio de formulario

Ahh, ya me quedo bien, me quedo así:
Código PHP:
Ver original
  1. echo " http://vtx-cr.com " ;
  2. $todayis = date("m d Y") ;
  3. $subject = "Formulario de contacto desde VTX website" ;
  4. $message = " $todayis [EST] \n
  5. Nombre: ".$_POST['nombre']." \n
  6. Pais: ".$_POST['pais']." \n
  7. E-Mail: ".$_POST['email']." \n
  8. Tipo de consulta: ".$_POST['consulta']." \n
  9. Teléfono: ".$_POST['telefono']." \n
  10. Dirección: ".$_POST['direccion']." \n
  11. Mensaje: ".$_POST['mensaje']." \n
  12.  
  13. Hasta aqui la información recibida ;\n
  14. ";
me quedo un punto "." antes de cada $ porque aqui http://www.comalis.com/ayuda/formulario-php.php lo ponen asi. El asunto es que por ahora esta trabajando correctamente en ambas direcciones.

Muchas gracias.
__________________
"Al que venciere y guardare mis obras hasta el fin, yo le daré autoridad sobre las naciones."
Apocalipsis 2: 26
Servicios para Pymes http://dst.co.cr
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:50.