Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con consulta y formulario

Estas en el tema de Problema con consulta y formulario en el foro de PHP en Foros del Web. Hola. No puedo dar con el error y quisiera compartir lo que tengo para que me ayuden. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código HTML: Ver original < form ...
  #1 (permalink)  
Antiguo 30/05/2017, 05:52
 
Fecha de Ingreso: febrero-2012
Ubicación: Cancun
Mensajes: 79
Antigüedad: 12 años, 2 meses
Puntos: 0
Problema con consulta y formulario

Hola. No puedo dar con el error y quisiera compartir lo que tengo para que me ayuden.
Código HTML:
Ver original
  1. <form action="index.php" method="post" class="form" id="form1">
  2.                         <p class="name">
  3.                         <input name="dni_input" type="text" class="validate[required,custom[onlyLetter],length[0,100]] feedback-input" placeholder="DNI" id="name" required />
  4.                         </p>
  5.  
  6.            
  7.                         <div class="submit">
  8.                         <input type="submit" name="buscar" value="BUSCAR" id="button-blue"/>
  9.                         <div class="ease"></div>
  10.  
  11.                         </div>
  12.                     </form>
  13.  
  14.     </div>
  15. </div>

Código PHP:
<?php

    
if (isset($_POST['buscar'] )) {
    
$sql mysqli_query($dblocal,"SELECT dni from abonados where dni = '".$_POST['dni_input']."'") or die("Error en: "mysqli_error());
        if (
$sql) {
                
header("1.php");
          }else{
                
header("2.php");
          }

    }

?>
Simplemente no se ejecuta lo que intento realizar, cuando hago clic en buscar es como si se actualizara la pagina. Entiendo que estoy apuntando el formulario a la misma pagina pero esto deberia de hacer que ejecute el script php no?

Bueno, agradezco por su tiempo.

Gracias!
  #2 (permalink)  
Antiguo 30/05/2017, 08:18
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Problema con consulta y formulario

Hola agustinpak,

Según tienes el código, $_POST['buscar'] está siempre seteado, por lo que siempre te intentará ejecutar el código si es eso lo que pones como condición, yo en tu lugar validaría que dni_input esté seteada y no esté vacía, eso no significa que te vaya a funcionar lo que quieres, pero es el primer error que veo y que, sin corregirlo, no podremos seguir.

Aparte de esto, sería bueno que habilites el reporte de errores y compartas los errores que se te produzcan para poder ayudarte en base a eso.
  #3 (permalink)  
Antiguo 30/05/2017, 08:58
 
Fecha de Ingreso: febrero-2012
Ubicación: Cancun
Mensajes: 79
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Problema con consulta y formulario

Hola! Gracias por responder. Si, ya lo habia intentado pero me hace lo mismo. Hay algo que esta mal y no se que puede ser, posteo todo el codigo por si ves algo que yo no.

PD: Tengo un problema en esta web, siempre al querer enviar la respuesta o ver la vista previa, luego de hacer la comprobacion se queda sin hacer nada. Utilizo el Chrome, les pasa? Tengo que reintentarlo varias veces, actualizar, etc.
Código HTML:
Ver original
  1. <?php
  2.    session_start();
  3.    include('acceso_db.php');
  4.    if(empty($_SESSION['firstname'])) {      
  5. ?>
  6. <link rel="stylesheet" type="text/css" href="estilos.css" media="screen" />
  7.  
  8. <div id="form-main">
  9.   <div id="form-div">
  10.   <h1 align="center" style="color: white">REGISTRO</h1>
  11.         <form action="comprobar.php" method="post" class="form"  id="form1">
  12.             <p class="name">
  13.  
  14.             <input type="text" class="validate[required,custom[onlyLetter],length[0,100]] feedback-input" name="usuario_nombre" id="name" placeholder="USUARIO" required />
  15.  
  16.             </p>
  17.  
  18.             <p class="name">
  19.  
  20.  
  21.             <input type="password" class="validate[required,custom[onlyLetter],length[0,100]] feedback-input" name="usuario_clave" id="comment" placeholder="CONTRASEÑA" required />
  22.  
  23.             </p>
  24.  
  25.             <input type="submit" name="enviar" value="Ingresar" id="button-blue" />
  26.         </form>
  27. </div>
  28. </div>                
  29. <?php
  30.    }else{
  31. ?>
  32. <!DOCTYPE html>
  33.     <link rel="stylesheet" type="text/css" href="estilos.css" media="screen" />
  34. </head>
  35. <div style="background-color:#52D050; width: 260px">
  36. <p style="color: white"><strong><?=$_SESSION['firstname']?></strong> <strong><?=$_SESSION['lastname']?></strong> | <a style="color: #3c3c3c " href="logout.php">Salir</a></p>
  37. </div>
  38.  
  39. <div id="form-main">
  40.   <div id="form-div">
  41.                    
  42.                     <form action="index.php" method="post" class="form" id="form1">
  43.                         <p class="name">
  44.                         <input name="dni_input" type="text" class="validate[required,custom[onlyLetter],length[0,100]] feedback-input" placeholder="DNI" id="name" required />
  45.                         </p>
  46.  
  47.            
  48.                         <div class="submit">
  49.                         <input type="submit" name="buscar" value="BUSCAR" id="button-blue"/>
  50.                         <div class="ease"></div>
  51.  
  52.                         </div>
  53.                     </form>
  54.  
  55.     </div>
  56. </div>
  57.  
  58. <?php
  59.  
  60.    if (isset($_POST['dni_input'] )) {
  61.    $sql = mysqli_query($dblocal,"SELECT dni from abonados where dni = '".$_POST['dni_input']."'") or die("Error en: ". mysqli_error());
  62.        if ($sql) {
  63.                header("1.php");
  64.          }else{
  65.                header("2.php");
  66.          }
  67.  
  68.    }
  69.  
  70. ?>
  71.  
  72.  
  73. </body>
  74. </html>
  75.  
  76. <?php
  77. }
  78.  
  79. ?>
  #4 (permalink)  
Antiguo 30/05/2017, 09:25
 
Fecha de Ingreso: febrero-2012
Ubicación: Cancun
Mensajes: 79
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Problema con consulta y formulario

Bueno, cambie la forma de la consulta:
Código PHP:
Ver original
  1. if (isset($_POST['dni_input'] )) {
  2.         $consulta = mysqli_query($dblocal,"SELECT dni FROM abonados WHERE dni = '".$_POST['dni_input']."'");
  3.             while ($resultado = mysqli_fetch_array($consulta)){
  4.                 echo $resultado['dni'];
  5.             }
  6.  
  7.     }else{
  8.         header("abonados.php");
  9.     }

Me funciona bien si encuentro el dni en la tabla, pero si no lo encuentro no me funciona el else y no hace nada. Me refresca la pagina, se queda en index.php
  #5 (permalink)  
Antiguo 30/05/2017, 09:36
 
Fecha de Ingreso: febrero-2012
Ubicación: Cancun
Mensajes: 79
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Problema con consulta y formulario

Buenas. Encontre el error y era mas tonto de lo que pensaba. Estaba escribiendo mal el header, es header('Location: abonados.php');

Saludos y gracias

Etiquetas: formulario, mysql, sql
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 04:27.