Foros del Web » Programando para Internet » PHP »

problema en busqueda agregar variable a like

Estas en el tema de problema en busqueda agregar variable a like en el foro de PHP en Foros del Web. La coneion esta bien la bariable si resive la cadena el problema esta en como poner la variable en la query ojala puedan ayudarme. @import ...
  #1 (permalink)  
Antiguo 02/06/2014, 10:16
 
Fecha de Ingreso: octubre-2013
Mensajes: 16
Antigüedad: 10 años, 6 meses
Puntos: 0
problema en busqueda agregar variable a like

La coneion esta bien la bariable si resive la cadena el problema esta en como poner la variable en la query ojala puedan ayudarme.

Código PHP:
Ver original
  1. <?php
  2. include('php_lib/config.ini.php'); //incluimos configuración
  3. include('php_lib/desconectar.php');
  4. $busca_discos =$_POST['busca_discos'];
  5. $nombre_archivo=$_POST['nombre_archivo'];
  6. $aceptar =$_POST['aceptar'];
  7.  
  8. if (isset($aceptar)){
  9. $numero_disco =$_POST['numero_disco'];
  10.  
  11. $link =  mysql_connect(SERVIDOR_MYSQL, USUARIO_MYSQL, PASSWORD_MYSQL);
  12.     // Seleccionar la base de datos activa
  13.     mysql_select_db(BASE_DATOS, $link);
  14.     $sql = 'SELECT numero_disco, nombre_archivos, clasificacion, extension, calidad, idioma,  tamano FROM discos WHERE  nombre_archivos LIKE  '%'$busca_discos%'';
  15.     $result = mysql_query($sql,$link);
  16. // verificamos que no haya error
  17.  
  18. if (! $result){
  19.   echo "La consulta SQL contiene errores.".mysql_error();
  20.   exit();
  21. }else {
  22.   // echo "<table border=’1′><tr><td>numero_disco</td><td>nombre</td><td>genero</td><td>descripcion</td></tr>";
  23.     echo "<table border=’1′><tr><td>numero_disco</td><td>nombre_archivos</td><td>clasificacion</td><td>extension</td><td>calidad</td><td>idioma</td><td>tamano</td><td>";
  24. //obtenemos los datos resultado de la consulta
  25.    while ($row = mysql_fetch_row($result)){
  26.                echo "<tr><td>".$row[0]."</td><td>".$row[1]."</td><td>".$row[2]."</td><td>".$row[3]."</td><td>".$row[4]."</td><td>".$row[5]."</td><td>".$row[6]."</td><td>".$row[7]."</td><td>".$row[8]."</td><td>".$row[9]."</td>";
  27.   }
  28. echo "</tr></table>";
  29. }
  30. }
  31. mysql_free_result($sql);
  32.  
  33. ?>
  34.  
  35. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  36. <html xmlns="http://www.w3.org/1999/xhtml">
  37.    <head>
  38.        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  39.        <title>Busqueda serie</title>
  40.    </head>
  41.    <body>
  42.     <form name="busqueda_discos" type="Submit" action="busqueda_discos.php" method="post">
  43.         buscar:<input type="text" name="nombre_archivo" maxlength="14">
  44.         <input type="submit" name="aceptar" value="Aceptar">
  45. </form>
  46. <input type="button" onClick="document.location = '<? echo 'pagina-acceso-restringido.php';?>'" name="pagina-acceso-restringido" value="regresar">
  47.     </body>
  48. </html>
  #2 (permalink)  
Antiguo 02/06/2014, 10:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problema en busqueda agregar variable a like

¿Me imagino que tenemos que ejecutar el código mentalmente para adivinar algún mensaje de error cierto?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 02/06/2014, 10:21
 
Fecha de Ingreso: octubre-2013
Mensajes: 16
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: problema en busqueda agregar variable a like

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Me imagino que tenemos que ejecutar el código mentalmente para adivinar algún mensaje de error cierto?
si pero el poblema ensi esta en como poner la variable en lie
Código PHP:
Ver original
  1. $sql = 'SELECT numero_disco, nombre_archivos, clasificacion, extension, calidad, idioma,  tamano FROM discos WHERE  nombre_archivos LIKE  '%$busca_discos'';
  #4 (permalink)  
Antiguo 02/06/2014, 10:23
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema en busqueda agregar variable a like

Por lo que me parece, tienes errores al crear la consulta.
No estás escapando los apostrofes, por lo que no te va a funcionar. Eso sí no da error de sintaxis...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 02/06/2014, 10:29
 
Fecha de Ingreso: octubre-2013
Mensajes: 16
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: problema en busqueda agregar variable a like

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Por lo que me parece, tienes errores al crear la consulta.
No estás escapando los apostrofes, por lo que no te va a funcionar. Eso sí no da error de sintaxis...
la consula esri algo asi

SELECT * FROM tabla WHERE nombre_archivos LIKE %variable%

el problema es como poner la variable rntr los % en php para mi busqueda

Código PHP:
Ver original
  1. $sql = 'SELECT numero_disco, nombre_archivos, clasificacion, extension, calidad, idioma,  tamano FROM discos WHERE  nombre_archivos LIKE  '%'$busca_discos'%'';
  #6 (permalink)  
Antiguo 02/06/2014, 10:29
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problema en busqueda agregar variable a like

Definitivamente es un problema de comillas.

alucard_2k, te sugiero leer lo siguiente: http://www.forosdelweb.com/f18/como-...s-bien-588701/
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: busqueda, html, mysql, select, sql, variable
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 09:16.