Foros del Web » Programando para Internet » PHP »

Problema con formulario php

Estas en el tema de Problema con formulario php en el foro de PHP en Foros del Web. nose que es lo que ocurre pero no me hace nada cuando le doy a enviar, ni me comprueba, ni me envia, ni me da ...
  #1 (permalink)  
Antiguo 21/03/2011, 04:16
 
Fecha de Ingreso: abril-2006
Mensajes: 147
Antigüedad: 18 años
Puntos: 1
Problema con formulario php

nose que es lo que ocurre pero no me hace nada cuando le doy a enviar, ni me comprueba, ni me envia, ni me da error, nada.

pongo todo el codigo a ver si sabeis porque?
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<style type="text/css">
td {
border:hidden;
}
table {
border: 1px solid #336;
}
</style>
</head>

<body>
<?php session_start(); ?>
 <form method="post" action="">
<center>
  <p><font size="+3" color="#336"><strong>PRESUPUESTO BALLESTA</strong></font></p>
<table width="87%" border="0" cellspacing="0" cellpadding="0">
   <tr>
     <th colspan="4" scope="col" bgcolor="#336" bordercolor="#000066" border="2"><table valign="middle" cellpadding="5" width="671" border="0" align="center">
  <tr >
    <th colspan="4" scope="col"><font size="+2" color="#FFFFFF"><b>Introduzca los datos de cliente:</b></font></th>
    </tr>
  <tr >
    <td width="21%"><font color="#FFFFFF"><strong>Empresa:*</strong></font></td>
    <td width="34%"><input type="text" name="empresa" width="200px" value="<?php if(isset($_POST["empresa"])) {echo $_POST["empresa"];} ?>"></td>
    <td width="12%"><font color="#FFFFFF"><strong>Población:</strong></font></td>
    <td width="33%"><input type="text" name="poblacion" width="200px"></td>
  </tr>
  <tr >
    <td><font color="#FFFFFF"><strong>Dirección: </strong></font></td>
    <td><input type="text" name="direccion" width="200px"></td>
    <td><font color="#FFFFFF"><strong>Teléfono:*</strong></font></td>
    <td><input type="text" name="telefono" width="200px" value="<?php if(isset($_POST["telefono"])) {echo $_POST["telefono"];} ?>"></td>  
  </tr>
  <tr >
    <td><font color="#FFFFFF"><strong>Referencia puerta: </strong></font></td>
    <td><input type="text" name="referencia" width="200px"></td>
    <td><font color="#FFFFFF"><strong>Fecha:</strong></font></td>
    <td><input type="text" name="fecha" width="200px"></td>
  </tr>
  <tr >
    <td><font color="#FFFFFF"><strong>Cantidad: </strong></font></td> 
    <td><input type="text" name="cantidad" width="200px"></td>
    <td><font color="#FFFFFF"><strong>Email: *</strong></font></td><td><input type="text" name="email" width="200px" value="<?php if(isset($_POST["email"])) {echo $_POST["email"];} ?>"></td>
  </tr>
 
</table>
</th>
   </tr>
   <tr>
     <td width="33%">
         <table width="100%">
             <tr>
                 <td><input type="radio" name="horizontal" value="A"></td>
                 <td><img src="../images/imagenes/a.png" /></td>
               </tr>
             <tr>
                 <td><input type="radio" name="horizontal" value="D"></td>
                 <td><img src="../images/imagenes/d.png" /></td>
             </tr>
             <tr>
                 <td height="81"><input type="radio" name="horizontal" value="G"></td>
                 <td><img src="../images/imagenes/g.png" /></td>
               </tr>
         </table>
     </td>
     <td width="33%">
         <table>
             <tr>
                 <td width="20"><input type="radio" name="horizontal" value="B"></td>
                 <td width="196"><img src="../images/imagenes/b.png" /></td>
             </tr>
             <tr>
                 <td><input type="radio" name="horizontal" value="E"></td>
                 <td><img src="../images/imagenes/e.png" /></td>
             </tr>
             <tr>
                 <td height="81"><input type="radio" name="horizontal" value="H"></td>
                 <td><img src="../images/imagenes/h.png" /></td>
             </tr>
         </table>
     </td>
     <td width="33%">
         <table>
             <tr>
                 <td width="20"><input type="radio" name="horizontal" value="C"></td>
                 <td width="237"><img src="../images/imagenes/c.png" /></td>
             </tr>
             <tr>
                 <td><input type="radio" name="horizontal" value="F"></td>
                 <td><img src="../images/imagenes/f.png" /></td>
             </tr>
             <tr>
                 <td height="81"><input type="radio" name="horizontal" value="I"></td>
                 <td><img src="../images/imagenes/i.png" /></td>
             </tr>
         </table>
     </td>
   </tr>
   <tr  bordercolor="#336" border="2">
       <td colspan="3" align="center" >
        <table width="50%">
            <tr bordercolor="">
                <td><input type="radio" name="vertical" value="X"></td><td><img src="../images/imagenes/x.png" /></td>
                <td><input type="radio" name="vertical" value="Z"></td><td><img src="../images/imagenes/z.png" /></td>
            </tr>
        </table>
    </td>
   </tr>
   <tr   bordercolor="#336" border="2">
     
     <td colspan="3" align="center"><table width="100%" border="0" bgcolor="#336" cellspacing="0" cellpadding="5">
  <tr>
    <th scope="col" colspan="2"><font size="+2" color="#FFFFFF">Medidas</font></th>
    <th width="393" align="center" scope="col"><font size="+2" color="#FFFFFF">Detalles</u></font></th>
  </tr>
  <tr>
  
    <td width="109" height="92" align="center"><input name="ancho" type="text" size="15" value="<?php if(isset($_POST["ancho"])) {echo $_POST["ancho"];} ?>"></td>
    <td width="137"><strong><font color="#FFFFFF">Ancho (mm)*</font></strong></td>
    <td rowspan="2" align="center"><textarea name="detalles" cols="50" rows="10"></textarea></td>
  </tr>
  <tr>
    <td height="32" align="center"><input name="alto" type="text" size="15" value="<?php if(isset($_POST["alto"])) {echo $_POST["alto"];} ?>"></td>
    <td><strong><font color="#FFFFFF">Alto (mm)*</font></strong></td>
  </tr>
  
  <tr><td colspan="4" align="right"><font color="#FFFFFF">*Campos obligatorios</font></td></tr> 
</table></td>
   </tr>
 </table><br />
 <input type="submit" value="Enviar solicitud" /></center></form>
 <?php
       
if (isset($_POST['action'])) {
 
       
$dest "[email protected]";
       
$head "From: ".$_POST['empresa']."<".$_POST['email'].">\r\n";
       
$asunto $_POST["Presupuesto ballesta web"];
       
$email $_POST['email'];
 
       
// CUERPO DEL MENSAJE
       
$msg "----------------------------------------- \n";
       
$msg.= "            DATOS DE CONTACTO             \n";
       
$msg.= "----------------------------------------- \n";
       
$msg.= "EMPRESA:  ".$_POST['empresa']."\n";
       
$msg.= "POBLACION:     ".$_POST['poblacion']."\n";
       
$msg.= "EMAIL:    ".$_POST['email']."\n";
       
$msg.= "TELEFONO: ".$_POST['telefono']."\n";
       
$msg.= "DIRECCION: ".$_POST['direccion']."\n";
       
$msg.= "REFERENCIA: ".$_POST['referencia']."\n";
       
$msg.= "FECHA: ".$_POST['fecha']."\n";
       
$msg.= "CANTIDAD: ".$_POST['cantidad']."\n";
       
$msg.= "HORA:     ".date("h:i:s a ")."\n";
       
$msg.= "FECHA:    ".date("D, d M Y")."\n";
       
$msg.= "IP:       ".$REMOTE_ADDR."\n\n";
       
$msg.= "----------------------------------------- \n";
       
$msg.= "                 DATOS                  \n";
       
$msg.= "----------------------------------------- \n";
       
$msg.= "MODELO HORIZONTAL:  ".$_POST['horizontal']."\n";
       
$msg.= "MODELO VERTICAL:  ".$_POST['vertical']."\n";
       
$msg.= "----------------------------------------- \n";
       
$msg.= "                 MEDIDAS                  \n";
       
$msg.= "----------------------------------------- \n";
       
$msg.= "ANCHO:     ".$_POST['ancho']."\n";
       
$msg.= "ALTO:    ".$_POST['alto']."\n";
       
$msg.= "DETALLES: ".$_POST['detalles']."\n";
 
       
// CAMPOS REQUERIDOS
       
if(empty($_POST['empresa'])) die("El campo Empresa es requerido");
       if(empty(
$_POST['telefono'])) die("El campo Telefono es requerido");
       if(empty(
$_POST['email'])) die("El campo E-mail es requerido");
       if(empty(
$_POST['ancho'])) die("El campo Ancho es requerido");  
       if(empty(
$_POST['alto'])) die("El campo Alto es requerido");
 
       
// VALIDAR EMAIL
       
function validarCorreo($email)
       {
       return 
eregi('^[_a-z0-9-]+(\.[_a-z0-9-]+)*@([a-z0-9]+[\.-])*[a-z0-9]+\.[a-z]{2,6}$',$email);
       }
 
       if(
validarCorreo($email)) { }
       else { die (
'Su E-mail no es valido, verifiquelo e intentelo nuevamente.'); }
 
        
       
// ENVIO DEL MENSAJE
       
if (mail($dest$asunto$msg$head)) {
       echo 
"Su petición de presupuesto fue enviada, pronto estaremos en contacto. Gracias.";
       } else {
       echo 
"Error de envio, intentelo nuevamente.";
       }
       }
 
?>
</body>
</html>
  #2 (permalink)  
Antiguo 21/03/2011, 05:56
Avatar de cluster28  
Fecha de Ingreso: enero-2008
Ubicación: Donostia - San Sebastián
Mensajes: 756
Antigüedad: 16 años, 3 meses
Puntos: 32
Respuesta: Problema con formulario php

Hay varias opciones.

Una por ejemplo es ponerle un nombre al botón

Código HTML:
Ver original
  1. <input type="submit" name="boton_enviar" value="Enviar solicitud" />

y luego comprobar que se ha enviado el formulario mirando si $_POST['boton_enviar'] está incializado

Código PHP:
isset($_POST['boton_enviar']) 
en $_POST['action'] se guarda el valor de un elemento con nombre "action" que en tu caso no hay ninguno.
  #3 (permalink)  
Antiguo 21/03/2011, 08:02
 
Fecha de Ingreso: abril-2006
Mensajes: 147
Antigüedad: 18 años
Puntos: 1
Respuesta: Problema con formulario php

gracias, otra pregunta, para poner un valor a un checkbox cuando no esta marcado como lo tendria que hacer???
  #4 (permalink)  
Antiguo 21/03/2011, 08:09
Avatar de cluster28  
Fecha de Ingreso: enero-2008
Ubicación: Donostia - San Sebastián
Mensajes: 756
Antigüedad: 16 años, 3 meses
Puntos: 32
Respuesta: Problema con formulario php

Cita:
Iniciado por chuntin Ver Mensaje
gracias, otra pregunta, para poner un valor a un checkbox cuando no esta marcado como lo tendria que hacer???
No te entiendo...
  #5 (permalink)  
Antiguo 21/03/2011, 08:11
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 2 meses
Puntos: 128
Respuesta: Problema con formulario php

al momento de recibir, lo comparas que no este vacio
__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #6 (permalink)  
Antiguo 21/03/2011, 08:50
 
Fecha de Ingreso: abril-2006
Mensajes: 147
Antigüedad: 18 años
Puntos: 1
Respuesta: Problema con formulario php

os lo explico mejor. cuando le doy a enviar, si esta marcado me tiene que llegar esto:


Central: Si

si no esta marcado:

Central: No


tengo esto
Código PHP:
$msg.= "CENTRAL: ".$_POST['central']."\n"
y como valor le pongo Si en el value="Si" pero si no lo marco la enviar el form me da un error en los que no he marcado.
  #7 (permalink)  
Antiguo 21/03/2011, 08:53
Avatar de cluster28  
Fecha de Ingreso: enero-2008
Ubicación: Donostia - San Sebastián
Mensajes: 756
Antigüedad: 16 años, 3 meses
Puntos: 32
Respuesta: Problema con formulario php

Pues muy fácil:

Si no se envía $_POST['central'] debe ser "No", verdad?

Código PHP:
if(!isset($_POST['central'])){$_POST['central']="No";}
$msg.= "CENTRAL: ".$_POST['central']."\n"
  #8 (permalink)  
Antiguo 21/03/2011, 09:00
 
Fecha de Ingreso: abril-2006
Mensajes: 147
Antigüedad: 18 años
Puntos: 1
Respuesta: Problema con formulario php

Cita:
Iniciado por cluster28 Ver Mensaje
Pues muy fácil:

Si no se envía $_POST['central'] debe ser "No", verdad?

Código PHP:
if(!isset($_POST['central'])){$_POST['central']="No";}
$msg.= "CENTRAL: ".$_POST['central']."\n"
muchisimas gracias, nose porque pero no me venia como hacerlo, bloqueo...

me has salvado la vida.


supongo que esto tambien valdra para los type="radio" no?
  #9 (permalink)  
Antiguo 21/03/2011, 09:08
Avatar de cluster28  
Fecha de Ingreso: enero-2008
Ubicación: Donostia - San Sebastián
Mensajes: 756
Antigüedad: 16 años, 3 meses
Puntos: 32
Respuesta: Problema con formulario php

En los radio puedes poner Si y No ya que únicamente deja seleccionar uno de los dos, tres o los que haya.
  #10 (permalink)  
Antiguo 21/03/2011, 09:17
 
Fecha de Ingreso: abril-2006
Mensajes: 147
Antigüedad: 18 años
Puntos: 1
Respuesta: Problema con formulario php

ok, lo he probado con los radio y va bien. lo que queria con los radio es si selecciona alguno que ponga el valor que tiene cada radio y sino selecciona ninguno que ponga: No. porque tambien tengo la posibilidad de que no se seleccione ninguno.

gracias
  #11 (permalink)  
Antiguo 21/03/2011, 09:46
 
Fecha de Ingreso: marzo-2011
Mensajes: 1
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Problema con formulario php

Cita:
Iniciado por chuntin Ver Mensaje
muchisimas gracias, nose porque pero no me venia como hacerlo, bloqueo...

me has salvado la vida.


supongo que esto tambien valdra para los type="radio" no?
Lo probé y funciona bien

Etiquetas: 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 14:42.