Foros del Web » Programando para Internet » PHP »

Un problema con submit

Estas en el tema de Un problema con submit en el foro de PHP en Foros del Web. Cuando intrduzca en el buscador un termino que no esta en la base de datos, debería mostrar nada mas que la pagina en blanco. Pero ...
  #1 (permalink)  
Antiguo 02/06/2012, 22:17
 
Fecha de Ingreso: mayo-2012
Ubicación: En la Tierra
Mensajes: 41
Antigüedad: 12 años
Puntos: 3
Un problema con submit

Cuando intrduzca en el buscador un termino que no esta en la base de datos, debería mostrar nada mas que la pagina en blanco. Pero me muestra el bton submit.

¿cómo evito que aparezca?



Aqui el codigo:

Código HTML:
Ver original
  1. </head>
  2. <?php // query.php
  3. require_once 'midb.php';
  4. $db_server = mysql_connect($db_hostname, $db_username, $db_password);
  5. if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());
  6. mysql_select_db($db_database)
  7. or die("Unable to select database: " . mysql_error());
  8.  
  9. function build_query ($user_search){
  10. $query = "SELECT * FROM riskyjobs";
  11.  
  12. $where_list = array();
  13. $clean_search = str_replace(',', ' ', $user_search);
  14. $search_words = explode(' ', $clean_search);
  15. $final_search_words = array();
  16. if (count($search_words) > 0) {
  17.     foreach ($search_words as $word) {
  18.         if (!empty($word)) {
  19.             $final_search_words[] = $word;
  20.         }
  21.     }
  22. }
  23. foreach ($final_search_words as $word) {
  24. $where_list[] = "descripcion LIKE '%$word%'";
  25. }
  26. $where_clause = implode(' OR ', $where_list);
  27.  
  28. if (!empty($where_clause)) {
  29. $query .= " WHERE $where_clause";
  30. }
  31. return $query;
  32. }
  33.  
  34.  $user_search = $_GET['usersearch'];
  35.   if (empty($user_search)){
  36.     echo '<div>Introduzca otro termino de busqueda</div>';
  37. }
  38.  else {
  39. $query = build_query($user_search);
  40. $result = mysql_query($query) or die(mysql_error());
  41. echo '<form method="get" action="checkboxes.php">';
  42. while($row = mysql_fetch_assoc($result))
  43. {
  44.     echo 'titulo:' . $row['titulo'] .  '<br />';
  45. echo 'descripcion: ' . $row['descripcion'] . '<br />';
  46. echo 'ciudad: ' . $row['ciudad'] . '<br />';
  47. echo 'estado: ' . $row['estado'] . '<br />';
  48. echo 'codigol: ' . $row['codigol'] . '<br />';
  49. echo 'company: ' . $row['company'] . '<br />';
  50. echo 'fecha: ' . $row['fecha'] . '<br />';
  51. echo 'link: ' . '<input name="checky[]" type="checkbox" id="activar2" value="'.$row['link'].'"/>' . '<br /><br />';
  52. }
  53. echo '<input type=submit value="submit" >';
  54. echo '</form>';
  55. }
  56. ?>
  57. </body>
  58. </html>
  #2 (permalink)  
Antiguo 02/06/2012, 22:33
 
Fecha de Ingreso: junio-2012
Ubicación: Durango
Mensajes: 10
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Un problema con submit

creo que tu error esta en que entra al "else" donde tienes metido el botón, esto es porque quizas tu funcion obtiene como palabra de busqueda un espacio en blanco y por eso te muestra el boton
  #3 (permalink)  
Antiguo 03/06/2012, 03:48
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 481
Antigüedad: 12 años
Puntos: 97
Respuesta: Un problema con submit

Tu problema esta en que, encuentre o no, siempre pasa por el submit. Filtra antes si se han devuelto resultados:
Código PHP:
  if (empty($user_search)){
    echo 
'<div>Introduzca otro termino de busqueda</div>';

 else {
$query build_query($user_search);
$result mysql_query($query) or die(mysql_error());
if(
mysql_num_rows($result)>0){
    echo 
'<form method="get" action="checkboxes.php">';
    while(
$row mysql_fetch_assoc($result)) 
    {
        echo 
'titulo:' $row['titulo'] .  '<br />';
    echo 
'descripcion: ' $row['descripcion'] . '<br />';
    echo 
'ciudad: ' $row['ciudad'] . '<br />';
    echo 
'estado: ' $row['estado'] . '<br />';
    echo 
'codigol: ' $row['codigol'] . '<br />';
    echo 
'company: ' $row['company'] . '<br />';
    echo 
'fecha: ' $row['fecha'] . '<br />';
    echo 
'link: ' '<input name="checky[]" type="checkbox" id="activar2" value="'.$row['link'].'"/>' '<br /><br />';
    }
    echo 
'<input type=submit value="submit" >';
    echo 
'</form>';
}

Saludos!
  #4 (permalink)  
Antiguo 04/06/2012, 08:36
 
Fecha de Ingreso: mayo-2012
Ubicación: En la Tierra
Mensajes: 41
Antigüedad: 12 años
Puntos: 3
Respuesta: Un problema con submit

Muchas gracias.

Salu2.

Etiquetas: html, mysql, sql, submit
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 21:00.