Foros del Web » Programando para Internet » PHP »

Problemas con envio de formulario

Estas en el tema de Problemas con envio de formulario en el foro de PHP en Foros del Web. Hola, resulta que tengo el siguiente formulario pero al momento del envío no recibo nada en mi casilla de e-mail, la misma es [email protected] , ...
  #1 (permalink)  
Antiguo 13/03/2010, 16:37
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 14 años, 10 meses
Puntos: 269
Problemas con envio de formulario

Hola, resulta que tengo el siguiente formulario pero al momento del envío no recibo nada en mi casilla de e-mail, la misma es [email protected], ¿a que se debera?

Código:
<body>    
<div id="contenedor">
<h1 id="titulo1">Pedido on-line</h1>

<form id="formulario" action="" method="post">
<fieldset id="pagYdias" class="3niveles">
                    <h2>Detalles del pedido</h2>
                    <p>¿Cuantas páginas desea?</p>
                    <input name="paginas" id="paginas" type="text" value="5" maxlength="2" />
                        <input type="radio" name="nroPag"  value="1"   class="radio"/>
                        <input type="radio" name="nroPag"  value="2"   class="radio"/>
                        <input type="radio" name="nroPag"  value="3"   class="radio"/>
                        <input type="radio" name="nroPag"  value="4"   class="radio"/>
                        <input type="radio" name="nroPag"  value="5"   class="radio" checked="checked"/>
                        <input type="radio" name="nroPag"  value="6"   class="radio"/>
                        <input type="radio" name="nroPag"  value="7"   class="radio"/>
                        <input type="radio" name="nroPag"  value="8"   class="radio"/>
                        <input type="radio" name="nroPag"  value="9"   class="radio"/>
                        <input type="radio" name="nroPag"  value="10"  class="radio"/>
                        <input type="radio" name="nroPag"  value="11"  class="radio"/>
                        <input type="radio" name="nroPag"  value="12"  class="radio"/>
                        <input type="radio" name="nroPag"  value="13"  class="radio"/>
                        <input type="radio" name="nroPag"  value="14"  class="radio"/>
                        <input type="radio" name="nroPag"  value="mas" class="radio"/>
                    <br>
                    <p>¿En cuantos días?</p>
                    <input name="dias" id="dias" type="text" value="5" />
                        <input type="radio" name="nroDia"   value="1" class="radio"/>
                        <input type="radio" name="nroDia"   value="2" class="radio"/>
                        <input type="radio" name="nroDia"   value="3" class="radio"/>
                        <input type="radio" name="nroDia"   value="4" class="radio"/>
                        <input type="radio" name="nroDia"   value="5" class="radio" checked="checked"/>
                        <input type="radio" name="nroDia"   value="6" class="radio"/>
                        <input type="radio" name="nroDia"   value="7" class="radio"/>
                        <input type="radio" name="nroDia"   value="15" class="radio"/>
                        <input type="radio" name="nroDia"   value="30" class="radio"/>
</fieldset>
<fieldset id="otrasOp"  class="3niveles">
                    <h2>Opciones adicionales</h2>
                    <p>¿Desea un Slide?</p>
                    <span>si</span><input type="radio" name="slide"  value="si" class="radio"/>
                    <span>no</span><input type="radio" name="slide"  value="no" class="radio"/>
</fieldset>
<fieldset id="contacto" class="3niveles">
                    <h2>Enviar el pedido</h2>
                    <p>Nombre / Apellido</p>
                    <input name="nombre" id="nombre" type="text"/>
                    <p>Dirección</p>
                    <input name="direccion" id="direccion" type="text"/>
                    <p>Teléfono</p>
                    <input name="telefono" id="telefono" type="text"/>
                    <p>Email</p>
                    <input name="email" id="email" type="text"/>
                    <p>Comentarios</p>
                    <textarea name="comentarios" id="comentarios" cols="30" rows="10"></textarea>
                    <!--enviar--><br>
</fieldset>
<input type="submit" value="enviar" />
</form>

</div>
        
    <?php
    if(isset($_POST["enviar"])) {  
    $fecha=date("d-m-Y");
    $hora=date("H:i:s");
    $destino="[email protected]";
    $asunto="comentario";
    $desde="From: " .$_POST[email];
    $comentario = "
    \n
    páginas: $_POST[paginas]\n   
    Número de páginas: $_POST[nroPag]\n
    Dias: $_POST[dias]\n
    Número de páginas: $_POST[nroDia]\n
    Slide: $_POST[slide]\n
    Nombre: $_POST[nombre]\n
    Dirección: $_POST[direccion]\n
    Teléfono: $_POST[telefono]\n
    Email: $_POST[email]\n
    Comentarios: $_POST[comentarios]\n
    enviado: $fecha a las $hora\n
    \n";
    mail($destino, $asunto, $comentario, $desde);
    echo '<META HTTP-EQUIV="Refresh" CONTENT="1"; URL="http://www.estudiojamba.com.ar/trabajo.php">';
    }
    ?>
</body>
Aquí el ejemplo en funcionamiento

Desde ya muchas gracias por su ayuda. Si tienen algun articulo de referencia se los agradeceré también. saludos.
  #2 (permalink)  
Antiguo 13/03/2010, 16:43
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 15 años
Puntos: 19
Respuesta: Problemas con envio de formulario

No compruebas si mail tuvo éxito. A ver mail devuelve true si tiene éxito y false si no. Prueba a empezar con esto.

Me imagino que habrás comprobado las direcciones, pero por si ves que no te sale, puedes usar SMTP.

Para conectarte con SMTP puedes usar el módulo de PEAR Mail, o mi módulo http://anesgysd.byethost7.com/Clase-AMailer-PHP-.html, o cualquier otro módulo de envío por SMTP. De esta forma si envías por SMTP puedes ver si el correo es devuelto (es decir si no existe el destinatario).

Empieza primero por comprobar mail, pero recuerda que mail es una función algo lenta y por tanto a lo mejor tarda media hora en llegar el correo.
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #3 (permalink)  
Antiguo 13/03/2010, 16:49
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 14 años, 10 meses
Puntos: 269
Respuesta: Problemas con envio de formulario

Gracias Anes, probaré con tu modulo.
  #4 (permalink)  
Antiguo 13/03/2010, 17:00
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 15 años
Puntos: 19
Respuesta: Problemas con envio de formulario

Todavía no he puesto los comentarios en la página (hace poco cambié el software base de la página y estoy actualizando los complementos). Así que si ves que algo no funciona, me lo dices para ver si lo arreglo.
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #5 (permalink)  
Antiguo 13/03/2010, 21:12
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 14 años, 10 meses
Puntos: 269
Respuesta: Problemas con envio de formulario

Hola Anes, primero agradecer por tus ayudas. Luego comentarte que resolvi el problema asi:

Código:
<?
if (!$HTTP_POST_VARS){
?>

<!--codigo html-->

    <?
}else{
    //Estoy recibiendo el formulario, compongo el cuerpo
    $cuerpo = "Formulario enviado\n";
    $cuerpo .= "Nombre: " . $HTTP_POST_VARS["nombre"] . "\n";
    $cuerpo .= "Dirección: " . $HTTP_POST_VARS["direccion"] . "\n";
    $cuerpo .= "Telefono: " . $HTTP_POST_VARS["telefono"] . "\n";
    $cuerpo .= "Email: " . $HTTP_POST_VARS["email"] . "\n";
    $cuerpo .= "Comentarios: " . $HTTP_POST_VARS["comentarios"] . "\n";

    $cuerpo .= "paginas: " . $HTTP_POST_VARS["paginas"] . "\n";
    $cuerpo .= "Número de Páginas: " . $HTTP_POST_VARS["nroPag"] . "\n";
    $cuerpo .= "Slide: " . $HTTP_POST_VARS["slide"] . "\n";
    $cuerpo .= "Días: " . $HTTP_POST_VARS["dias"] . "\n";
    $cuerpo .= "Número de días: " . $HTTP_POST_VARS["nroDia"] . "\n";

    
    mail("[email protected]","Formulario recibido",$cuerpo);

    echo "Gracias por rellenar el formulario. Se ha enviado correctamente.";
    
    echo '<META HTTP-EQUIV="Refresh" CONTENT="5"; URL="http://www.estudiojamba.com.ar/trabajo/trabajo.php">';
}
?>
Aunque de todos modos muchas gracias por el modulo, esta super interesante asi que lo implementaré, cualquier cosa te aviso como fue.

Un abrazo!
  #6 (permalink)  
Antiguo 13/03/2010, 23:03
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 14 años, 2 meses
Puntos: 55
Respuesta: Problemas con envio de formulario

el problema de tu codigo del primer post era a fomrma que usabas ls variables post
debiera ser asi
Código PHP:
 $comentario "
    \n
    páginas: "
.$_POST['paginas'] ."\n   
    Número de páginas: "
.$_POST['nroPag'] ."\n
    Dias: "
.$_POST['dias'] ."\n
    Número de páginas: "
.$_POST['nroDia'] ."\n
    Slide:"
$_POST['slide'] ."\n
    Nombre: "
.$_POST['nombre'] ."\n
    Dirección: "
.$_POST['direccion'] ."\n
    Teléfono:"
$_POST['telefono'] ."\n
    Email: "
.$_POST['email'] ."\n
    Comentarios: "
.$_POST['comentarios'] ."\n
    enviado: "
.$fecha ." a las $hora\n
    \n"

  #7 (permalink)  
Antiguo 14/03/2010, 02:19
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 14 años, 10 meses
Puntos: 269
Respuesta: Problemas con envio de formulario

Ahhh, muchas gracias Death_Empire

Etiquetas: envio, 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 15:44.