Foros del Web » Programando para Internet » PHP »

Como usar query LIKE

Estas en el tema de Como usar query LIKE en el foro de PHP en Foros del Web. Hola buenas noches a todos, nuevamente yo pidiendo un poco de tutoria... esta vez mi duda es la siguiente, tengo un modulo de consulta o ...

  #1 (permalink)  
Antiguo 05/07/2012, 21:00
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Pregunta Como usar query LIKE

Hola buenas noches a todos, nuevamente yo pidiendo un poco de tutoria...
esta vez mi duda es la siguiente,

tengo un modulo de consulta o busqueda en mi pagina html en la cual uso una funcion sencilla para buscar y mostrar un registro dentro de mi base de datos pero me han recomendado que utilice el LIKE para que al momento de buscar un registro en mi base de datos me muestre todos los relacionados con la palabra que ingreso.

Ejemplo:
Tengo una tabla de productos con 5 productos distintos los cuales son tipos de puertas (puertas plegable, puertas corredizas, puertas de madera, puertas de metal y puertas plasticas) entonces al ingresar la palabra puertas me muestre todos los tipos de puertas existentes y para eso me recomendaron usar el Query con la funcion del LIKE pero noc como usarlo.

este es mi codigo PHP
Código PHP:
          $producto=$_POST['descripcion_producto'];
           
$cnn mysql_connect("localhost","root","");
           if (!
$cnn) { 
              echo(
"<p>No es Posible Establecer Conexión con el Servidor.</p>");
              exit();
           }     
           if (!@
mysql_select_db("epa")){ 
              echo(
"<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
              exit();
           }                     
           
$Consulta= @mysql_query("select * from producto where descripcion_producto='$producto'");       
           if (!
$Consulta) {        
              echo(
"<p>Error al ejecutar el Query Sql.</p>");
              exit();
           }    
           
          else
           
$Registros=mysql_num_rows($Consulta);
if (
$Registros==1){
while(
$Fila mysql_fetch_array($Consulta)) { 
                
                echo 
"<table border='1' align='center'><tr><td bgcolor='lightblue'><p>Codigo del producto</p></td><td><p>".$Fila["codigo_producto"]."</p></td></tr>";
                echo 
"<tr><td bgcolor='lightblue'><p>Descripcion</p></td><td><p>".$Fila["descripcion_producto"]."</p></td></tr>";
                echo 
"<tr><td bgcolor='lightblue'><p>Cantidad</p></td><td><p>".$Fila["cantidad_producto"]."</p></td></tr>";
                echo 
"<tr><td bgcolor='lightblue'><p>Bs Monto Unitario</p></td><td><p>".$Fila["monto_unitario"]."</p></td></tr></table>"
                echo 
"<p align='center'><a href='inventario.html'>Volver</a></p>";


mysql_close($cnn); 
} else {
redireccionar ('inventario.html');

  #2 (permalink)  
Antiguo 05/07/2012, 21:12
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: Como usar query LIKE

Tenes que leer un manual de SQL,

http://www.desarrolloweb.com/articulos/268.php lee eso
  #3 (permalink)  
Antiguo 05/07/2012, 22:05
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Cita:
Iniciado por rodrigo791 Ver Mensaje
Tenes que leer un manual de SQL,

[url]http://www.desarrolloweb.com/articulos/268.php[/url] lee eso
Gracias rodrigo, amm el unico detalle es que no me funciona con una variable..
en mi caso he intentado de estas formas y aun no me funciona:
Código PHP:
$Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'");

$Consulta= @mysql_query("select * from producto where descripcion_producto like='%$producto%'");

$Consulta= @mysql_query("select * from producto where descripcion_producto like=%$producto%");

$Consulta= @mysql_query("select * from producto where descripcion_producto like %$producto%"); 
  #4 (permalink)  
Antiguo 05/07/2012, 22:10
 
Fecha de Ingreso: junio-2012
Mensajes: 11
Antigüedad: 11 años, 10 meses
Puntos: 2
Respuesta: Como usar query LIKE

Hola mucho gusto mira aportando con el amigo puedes probar de esta forma.


Código PHP:
$sql " select * from producto where descripcion_producto like '%$producto%'"
  #5 (permalink)  
Antiguo 05/07/2012, 22:21
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Como usar query LIKE

y tu formulario donde esta, muestralo para ver algo
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #6 (permalink)  
Antiguo 05/07/2012, 22:26
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Cita:
Iniciado por SouljAk Ver Mensaje
Hola mucho gusto mira aportando con el amigo puedes probar de esta forma.


Código PHP:
$sql " select * from producto where descripcion_producto like '%$producto%'"
Aun asi ni siquiera me muestra algun resultado encontrado, no se si tenga algo que ver la condicion IF que le puse para mostrar el resultado.
  #7 (permalink)  
Antiguo 05/07/2012, 22:27
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Cita:
Iniciado por gldelossantos Ver Mensaje
y tu formulario donde esta, muestralo para ver algo
Código HTML:
<form action="buscar.php" method="post" align='center' name='buscar' onsubmit="return validando(this)">
					<p align='center'>Indique el Nombre del Producto que desea buscar<br><input type="text" name='descripcion_producto'>			
					<input type="submit" value="Buscar" align='center'> <input type="reset" value="Borrar" align='center'></p>
				</form> 
  #8 (permalink)  
Antiguo 05/07/2012, 22:35
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Como usar query LIKE

ahi esta el error tu consulta debe ser la siguiente

$sql = " select * from producto where descripcion_producto like = '%$_POST['descripcion_producto%']'";
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #9 (permalink)  
Antiguo 05/07/2012, 22:37
 
Fecha de Ingreso: junio-2012
Mensajes: 11
Antigüedad: 11 años, 10 meses
Puntos: 2
Respuesta: Como usar query LIKE

Cita:
Iniciado por gldelossantos Ver Mensaje
ahi esta el error tu consulta debe ser la siguiente

$sql = " select * from producto where descripcion_producto like = '%$_POST['descripcion_producto%']'";
no creo porque agrego el post a una variable al inicio del script
Código PHP:
$producto=$_POST['descripcion_producto']; 
oye y no te tira ni error ni nada queda en blanco?
  #10 (permalink)  
Antiguo 05/07/2012, 22:41
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Como usar query LIKE

Amigo otra cosa, quitale el onsubmit=""
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #11 (permalink)  
Antiguo 05/07/2012, 22:46
 
Fecha de Ingreso: junio-2012
Mensajes: 11
Antigüedad: 11 años, 10 meses
Puntos: 2
Respuesta: Como usar query LIKE

Mira suerte aqui tengo una sección búsqueda que puedes añadir o adaptarla a tu forma de hacerlo lo hago con el fin de aportar y que logres comprenderlo no con fin de "Copiar y Pegar" espero te ayude en algo.

Código PHP:
    if(isset($_POST["buscar"]))
    {
    
$tipo $_POST["busqueda"];
    
    
$con mysql_connect("localhost""root") or die (mysql_error());
    
mysql_select_db("cruz"$con);
    
$tabla "producto";
    
$sql " select * from producto where $tipo like '%$_POST[busca]%'";
    
    
$consulta mysql_query($sql$con) or die (mysql_error());
    
    
    
    
    echo 
"<form action='conexion.php' method='POST'>";
    echo 
" <table border='5'>";
    echo 
"<tr><td> Codigo </td><td> Nombre </td> <td>Descripcion </td> <td>Marca </td> <td>Precio </td><td>Existencia</td><td> Proveedor</td>";
    while (
$row mysql_fetch_array($consulta))
 {
    
        echo 
'<tr><td>'.$row["id_producto"].'</td><td>'.$row["nombre"].'</td><td>'.$row["descripcion"].'</td><td>'.$row["marca"].'</td><td>'.$row["precio"].'</td><td>'.$row["existencia"].'</td><td>'.$row["id_proveedor"].'</td>';
 }
    echo 
"</form>";
    
     
mysql_close($con);
 } 
aqui el codigo html

Código HTML:
Ver original
  1. <form action = "buscar.php" method = "POST">
  2.             <h2> Busqueda por: </h2><select  name="busqueda">
  3.             <option value="id_producto"> Codigo Producto </option>
  4.             <option value="nombre"> Nombre Producto </option>
  5.             <option value= "marca"> Marca Producto </option>
  6.             <option value="precio"> Precio Producto </option>
  7.             <option value="existencia"> Existencia de Producto </option>
  8.             <option value="id_proveedor"> Proveedor de Producto </option>
  9.             </select>
  10.            
  11.             <br>
  12.             <h2> Buscar: </h2><input type = "text" name="busca"/><br>
  13.             <input type = "submit" name="buscar"/>
  14.         </form>

NOTA: no digo que así se hace pero puedes basarte en este código para lograr lo que necesitas. y si alguien puede mejorarlo incluso tu pueden hacerlo y aportarlo :D
  #12 (permalink)  
Antiguo 05/07/2012, 22:48
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: Como usar query LIKE

Claro,
Código PHP:
Ver original
  1. $sql = " select * from producto where $tipo like '%$_POST[busca]%'";

el tema es que ya si ponga $_POST o directamente una variable no hace la diferencia, deberia de funcionar igual, el problema lo tiene en otro lado.
Porque esa consulta esta bien hecha
  #13 (permalink)  
Antiguo 05/07/2012, 22:49
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Cita:
Iniciado por gldelossantos Ver Mensaje
Amigo otra cosa, quitale el onsubmit=""
sucede que el onsubmit lo uso por un script para que no deje el campo en blanco pero gracias de igual forma.
  #14 (permalink)  
Antiguo 05/07/2012, 22:51
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: Como usar query LIKE

alrf1809

hace una cosa, volve a poner todo tu código de nuevo, con las modificaciones que has hecho agregando lo de LIKE
  #15 (permalink)  
Antiguo 05/07/2012, 22:54
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Como usar query LIKE

Cita:
Iniciado por alrf1809 Ver Mensaje
sucede que el onsubmit lo uso por un script para que no deje el campo en blanco pero gracias de igual forma.
Quitale el onsubmit y prueba, si te funciona intenta validar con otro metodo..
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #16 (permalink)  
Antiguo 05/07/2012, 23:01
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: Como usar query LIKE

Código HTML:
Ver original
  1. <form action="buscar.php" method="post" align='center' name='buscar' onsubmit="return validando(this)">
  2.                     <p align='center'>Indique el Nombre del Producto que desea buscar<br><input type="text" name='descripcion_producto'>           
  3.                     <input type="submit" value="Buscar" align='center'> <input type="reset" value="Borrar" align='center'></p>
  4.                 </form>
Ese es el problema
el nombre de la variable es "Buscar", y estas haciendo esto.
Código PHP:
Ver original
  1. $sql = " select * from producto where descripcion_producto like '%$producto%'";

tenes que cambiar producto por Buscar, acordate de que Buscar va con la B mayúsculas, lo digo porque por ahí lo pusieron mal.
  #17 (permalink)  
Antiguo 05/07/2012, 23:02
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Cita:
Iniciado por gldelossantos Ver Mensaje
Quitale el onsubmit y prueba, si te funciona intenta validar con otro metodo..
GOLDELOSSANTOS intente quitandole el onsubmit y colocando el query como me aconsejaste y ahora lo que me salta es este error.

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING'

  #18 (permalink)  
Antiguo 05/07/2012, 23:06
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Como usar query LIKE

intenta con la query que estabas usando

$sql = " select * from producto where descripcion_producto like = '%$producto%'";
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #19 (permalink)  
Antiguo 05/07/2012, 23:09
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: Como usar query LIKE

Cita:
Iniciado por gldelossantos Ver Mensaje
intenta con la query que estabas usando

$sql = " select * from producto where descripcion_producto like = '%$producto%'";
Si la variable del input del formulario se llama "Buscar" eso no le va a servir.
Hace lo que te dije arriba, de cambiar eso de producto por Buscar, y PONE TU CÓDIGO ACTUAL PARA VER COMO LO TENES
  #20 (permalink)  
Antiguo 05/07/2012, 23:10
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Cita:
Iniciado por gldelossantos Ver Mensaje
Quitale el onsubmit y prueba, si te funciona intenta validar con otro metodo..
Cita:
Iniciado por rodrigo791 Ver Mensaje
Código HTML:
Ver original
  1. <form action="buscar.php" method="post" align='center' name='buscar' onsubmit="return validando(this)">
  2.                     <p align='center'>Indique el Nombre del Producto que desea buscar<br><input type="text" name='descripcion_producto'>           
  3.                     <input type="submit" value="Buscar" align='center'> <input type="reset" value="Borrar" align='center'></p>
  4.                 </form>
Ese es el problema
el nombre de la variable es "Buscar", y estas haciendo esto.
Código PHP:
Ver original
  1. $sql = " select * from producto where descripcion_producto like '%$producto%'";

tenes que cambiar producto por Buscar, acordate de que Buscar va con la B mayúsculas, lo digo porque por ahí lo pusieron mal.
Rodrigo intento con tus metodos pero tampoco me funciona ni me da un error siquiera..
  #21 (permalink)  
Antiguo 05/07/2012, 23:18
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: Como usar query LIKE

Porque no pones todo el codigo que tenes hasta ahora asi nos haces la vida mas facil, no soy adivino
  #22 (permalink)  
Antiguo 05/07/2012, 23:20
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Aqui les muestro nuevamente ambos codigos..

Código HTML:
<form action="buscar.php" method="post" align='center' name='busc'>
<p align='center'>Indique el Nombre del Producto que desea buscar<br>
<input type="text" name='descripcion_producto'>	
<br><br>		
<input type="submit" value="Buscar" align='center'>
<input type="reset" value="Borrar" align='center'></p>
</form> 
Código PHP:
$producto=$_POST['descripcion_producto'];
$cnn mysql_connect("localhost","root","");
if (!
$cnn) { 
echo(
"<p>No es Posible Establecer Conexión con el Servidor.</p>");
exit();
}     
if (!@
mysql_select_db("epa")){ 
echo(
"<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
exit();
}                     
$Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'");       
           if (!
$Consulta) {        
              echo(
"<p>Error al ejecutar el Query Sql.</p>");
              exit();
           }else
           
$Registros=mysql_num_rows($Consulta);
           
        if (
$Registros==1){
    while(
$Fila mysql_fetch_array($Consulta)) { 
                
            echo 
"<table border='0' align='center' bgcolor='lightblue'>
                <tr>
                    <td bgcolor='00A3C2'>
                    <p>Codigo del producto</p></td>
                    <td><p>"
.$Fila["codigo_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Descripcion</p></td>
                    <td><p>"
.$Fila["descripcion_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Cantidad</p></td>
                    <td><p>"
.$Fila["cantidad_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Bs Monto Unitario</p></td>
                    <td><p>"
.$Fila["monto_unitario"]."</p></td>
                </tr></table>"

            
            echo 
"<p align='center'><a href='inventario.html'>Volver</a></p>";


mysql_close($cnn); 
} else {
redireccionar ('inventario.html');

  #23 (permalink)  
Antiguo 05/07/2012, 23:23
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: Como usar query LIKE

Código PHP:
Ver original
  1. $Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'");

te esta faltando la variable conexion

Código PHP:
Ver original
  1. $Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'",$cnn);
  #24 (permalink)  
Antiguo 05/07/2012, 23:28
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Como usar query LIKE

Amigo utiliza este codigo completo sin cambiar nada y luego me dices por favor


Código PHP:
Ver original
  1. $producto=$_POST['descripcion_producto'];
  2. $cnn = mysql_connect("localhost","root","");
  3. mysql_select_bd("epa",$cnn);
  4. if (!$cnn) {
  5. echo("<p>No es Posible Establecer Conexión con el Servidor.</p>");
  6. exit();
  7. }    
  8. if (!@mysql_select_db("epa")){
  9. echo("<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
  10. exit();
  11. }                    
  12. $Consulta= @mysql_query("SELECT * FROM producto WHERE descripcion_producto LIKE '%$producto%'");      
  13.            if (!$Consulta) {        
  14.               echo("<p>Error al ejecutar el Query Sql.</p>");
  15.               exit();
  16.            }else
  17.            $Registros=mysql_num_rows($Consulta);
  18.            
  19.         if ($Registros==1){
  20.     while($Fila = mysql_fetch_array($Consulta)) {
  21.                
  22.             echo "<table border='0' align='center' bgcolor='lightblue'>
  23.                <tr>
  24.                    <td bgcolor='00A3C2'>
  25.                    <p>Codigo del producto</p></td>
  26.                    <td><p>".$Fila["codigo_producto"]."</p></td>
  27.                </tr>";
  28.             echo "
  29.                <tr>
  30.                    <td bgcolor='00A3C2'><p>Descripcion</p></td>
  31.                    <td><p>".$Fila["descripcion_producto"]."</p></td>
  32.                </tr>";
  33.             echo "
  34.                <tr>
  35.                    <td bgcolor='00A3C2'><p>Cantidad</p></td>
  36.                    <td><p>".$Fila["cantidad_producto"]."</p></td>
  37.                </tr>";
  38.             echo "
  39.                <tr>
  40.                    <td bgcolor='00A3C2'><p>Bs Monto Unitario</p></td>
  41.                    <td><p>".$Fila["monto_unitario"]."</p></td>
  42.                </tr></table>";
  43.            
  44.             echo "<p align='center'><a href='inventario.html'>Volver</a></p>";
  45. }
  46.  
  47. mysql_close($cnn);
  48. } else {
  49. redireccionar ('inventario.html');
  50. }
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #25 (permalink)  
Antiguo 05/07/2012, 23:29
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Cita:
Iniciado por rodrigo791 Ver Mensaje
Código PHP:
Ver original
  1. $Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'");

te esta faltando la variable conexion

Código PHP:
Ver original
  1. $Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'",$cnn);
PERFECTO!!.

Pero.. en caso de tener 2 o mas "productos" en mi tabla con nombres similares, no deberia mostrarmelos tambien?
  #26 (permalink)  
Antiguo 05/07/2012, 23:34
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Como usar query LIKE

SI TE FUNCIONO EL EJEMPLO DEL COMPAñERO EXCELENTE
para tu siguiente incognita eliminale el if antes del while que quede asi

Código PHP:
Ver original
  1. $producto=$_POST['descripcion_producto'];
  2. $cnn = mysql_connect("localhost","root","");
  3. if (!$cnn) {
  4. echo("<p>No es Posible Establecer Conexión con el Servidor.</p>");
  5. exit();
  6. }    
  7. if (!@mysql_select_db("epa")){
  8. echo("<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
  9. exit();
  10. }                    
  11. $Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'");      
  12.            if (!$Consulta) {        
  13.               echo("<p>Error al ejecutar el Query Sql.</p>");
  14.               exit();
  15.            }else
  16.            $Registros=mysql_num_rows($Consulta);
  17.            
  18.    
  19.     while($Fila = mysql_fetch_array($Consulta)) {
  20.                
  21.             echo "<table border='0' align='center' bgcolor='lightblue'>
  22.                <tr>
  23.                    <td bgcolor='00A3C2'>
  24.                    <p>Codigo del producto</p></td>
  25.                    <td><p>".$Fila["codigo_producto"]."</p></td>
  26.                </tr>";
  27.             echo "
  28.                <tr>
  29.                    <td bgcolor='00A3C2'><p>Descripcion</p></td>
  30.                    <td><p>".$Fila["descripcion_producto"]."</p></td>
  31.                </tr>";
  32.             echo "
  33.                <tr>
  34.                    <td bgcolor='00A3C2'><p>Cantidad</p></td>
  35.                    <td><p>".$Fila["cantidad_producto"]."</p></td>
  36.                </tr>";
  37.             echo "
  38.                <tr>
  39.                    <td bgcolor='00A3C2'><p>Bs Monto Unitario</p></td>
  40.                    <td><p>".$Fila["monto_unitario"]."</p></td>
  41.                </tr></table>";
  42.            
  43.             echo "<p align='center'><a href='inventario.html'>Volver</a></p>";
  44. }
  45.  
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos
  #27 (permalink)  
Antiguo 05/07/2012, 23:34
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Como usar query LIKE

Me da un error en la linea marcada de verde amigo :/
if (!$cnn) {
echo("<p>No es Posible Establecer Conexión con el Servidor.</p>");
exit();
}


Cita:
Iniciado por gldelossantos Ver Mensaje
Amigo utiliza este codigo completo sin cambiar nada y luego me dices por favor


Código PHP:
Ver original
  1. $producto=$_POST['descripcion_producto'];
  2. $cnn = mysql_connect("localhost","root","");
  3. mysql_select_bd("epa",$cnn);
  4. if (!$cnn) {
  5. echo("<p>No es Posible Establecer Conexión con el Servidor.</p>");
  6. exit();
  7. }    
  8. if (!@mysql_select_db("epa")){
  9. echo("<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
  10. exit();
  11. }                    
  12. $Consulta= @mysql_query("SELECT * FROM producto WHERE descripcion_producto LIKE '%$producto%'");      
  13.            if (!$Consulta) {        
  14.               echo("<p>Error al ejecutar el Query Sql.</p>");
  15.               exit();
  16.            }else
  17.            $Registros=mysql_num_rows($Consulta);
  18.            
  19.         if ($Registros==1){
  20.     while($Fila = mysql_fetch_array($Consulta)) {
  21.                
  22.             echo "<table border='0' align='center' bgcolor='lightblue'>
  23.                <tr>
  24.                    <td bgcolor='00A3C2'>
  25.                    <p>Codigo del producto</p></td>
  26.                    <td><p>".$Fila["codigo_producto"]."</p></td>
  27.                </tr>";
  28.             echo "
  29.                <tr>
  30.                    <td bgcolor='00A3C2'><p>Descripcion</p></td>
  31.                    <td><p>".$Fila["descripcion_producto"]."</p></td>
  32.                </tr>";
  33.             echo "
  34.                <tr>
  35.                    <td bgcolor='00A3C2'><p>Cantidad</p></td>
  36.                    <td><p>".$Fila["cantidad_producto"]."</p></td>
  37.                </tr>";
  38.             echo "
  39.                <tr>
  40.                    <td bgcolor='00A3C2'><p>Bs Monto Unitario</p></td>
  41.                    <td><p>".$Fila["monto_unitario"]."</p></td>
  42.                </tr></table>";
  43.            
  44.             echo "<p align='center'><a href='inventario.html'>Volver</a></p>";
  45. }
  46.  
  47. mysql_close($cnn);
  48. } else {
  49. redireccionar ('inventario.html');
  50. }
  #28 (permalink)  
Antiguo 05/07/2012, 23:38
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: Como usar query LIKE

supongo que me vas a decir cual es el error
  #29 (permalink)  
Antiguo 05/07/2012, 23:42
Avatar de alrf1809  
Fecha de Ingreso: junio-2011
Ubicación: caracas
Mensajes: 40
Antigüedad: 12 años, 10 meses
Puntos: 0
Sonrisa Respuesta: Como usar query LIKE

LISTO!!! SU AYUDA ES DIGNA DE ADMIRAR DE VERDAD.. UN MILLON DE GRACIAS A AMBOS POR SU PACIENCIA Y COLABORACION YA ME FUNCIONO..

logra buscar los productos de la tabla y si son similares me los muestra ambos!!.. de verdad gracias el codigo final me quedo asi para el que pueda servirle mas adelante.


Código PHP:
<?php
function redireccionar($url){ //Redirecciona a otra pagina dentro del directorio de ejecucion
ob_start();   // Se utiliza para solucionar el error de  headers already sent 
$host=$_SERVER['HTTP_HOST'];  //Devuelve la direccion web: Ejemplo: www.cantv.net
//echo "Host: ".$host."<br>";
$uri=rtrim(dirname($_SERVER['PHP_SELF']), '/\\'); //Devuelve el Directorio desde donde se esta ejecutando la pagina que invoca la funcion.
//echo "Uri: ".$uri."<br>";
header("Location: http://$host$uri/$url"); //Redirecciona a la Pagina Solicitada
ob_flush();  // Se utiliza para solucionar el error de  headers already sent 
}

          
$producto=$_POST['descripcion_producto'];
           
$cnn mysql_connect("localhost","root","");
           if (!
$cnn) { 
              echo(
"<p>No es Posible Establecer Conexión con el Servidor.</p>");
              exit();
           }     
           if (!@
mysql_select_db("epa")){ 
              echo(
"<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
              exit();
           }                     
           
$Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'",$cnn);       
           if (!
$Consulta) {        
              echo(
"<p>Error al ejecutar el Query Sql.</p>");
              exit();
           }else
           
$Registros=mysql_num_rows($Consulta);
           
        
    while(
$Fila mysql_fetch_array($Consulta)) { 
                
            echo 
"<table border='0' align='center' bgcolor='lightblue'>
                <tr>
                    <td bgcolor='00A3C2'>
                    <p>Codigo del producto</p></td>
                    <td><p>"
.$Fila["codigo_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Descripcion</p></td>
                    <td><p>"
.$Fila["descripcion_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Cantidad</p></td>
                    <td><p>"
.$Fila["cantidad_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Bs Monto Unitario</p></td>
                    <td><p>"
.$Fila["monto_unitario"]."</p></td>
                </tr></table>"

            
            echo 
"<p align='center'><a href='inventario.html'>Volver</a></p>";


mysql_close($cnn); 

?>
  #30 (permalink)  
Antiguo 05/07/2012, 23:43
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: Como usar query LIKE

Cita:
Iniciado por alrf1809 Ver Mensaje
LISTO!!! SU AYUDA ES DIGNA DE ADMIRAR DE VERDAD.. UN MILLON DE GRACIAS A AMBOS POR SU PACIENCIA Y COLABORACION YA ME FUNCIONO..

logra buscar los productos de la tabla y si son similares me los muestra ambos!!.. de verdad gracias el codigo final me quedo asi para el que pueda servirle mas adelante.


Código PHP:
<?php
function redireccionar($url){ //Redirecciona a otra pagina dentro del directorio de ejecucion
ob_start();   // Se utiliza para solucionar el error de  headers already sent 
$host=$_SERVER['HTTP_HOST'];  //Devuelve la direccion web: Ejemplo: www.cantv.net
//echo "Host: ".$host."<br>";
$uri=rtrim(dirname($_SERVER['PHP_SELF']), '/\\'); //Devuelve el Directorio desde donde se esta ejecutando la pagina que invoca la funcion.
//echo "Uri: ".$uri."<br>";
header("Location: http://$host$uri/$url"); //Redirecciona a la Pagina Solicitada
ob_flush();  // Se utiliza para solucionar el error de  headers already sent 
}

          
$producto=$_POST['descripcion_producto'];
           
$cnn mysql_connect("localhost","root","");
           if (!
$cnn) { 
              echo(
"<p>No es Posible Establecer Conexión con el Servidor.</p>");
              exit();
           }     
           if (!@
mysql_select_db("epa")){ 
              echo(
"<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
              exit();
           }                     
           
$Consulta= @mysql_query("select * from producto where descripcion_producto like '%$producto%'",$cnn);       
           if (!
$Consulta) {        
              echo(
"<p>Error al ejecutar el Query Sql.</p>");
              exit();
           }else
           
$Registros=mysql_num_rows($Consulta);
           
        
    while(
$Fila mysql_fetch_array($Consulta)) { 
                
            echo 
"<table border='0' align='center' bgcolor='lightblue'>
                <tr>
                    <td bgcolor='00A3C2'>
                    <p>Codigo del producto</p></td>
                    <td><p>"
.$Fila["codigo_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Descripcion</p></td>
                    <td><p>"
.$Fila["descripcion_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Cantidad</p></td>
                    <td><p>"
.$Fila["cantidad_producto"]."</p></td>
                </tr>"
;
            echo 
"
                <tr>
                    <td bgcolor='00A3C2'><p>Bs Monto Unitario</p></td>
                    <td><p>"
.$Fila["monto_unitario"]."</p></td>
                </tr></table>"

            
            echo 
"<p align='center'><a href='inventario.html'>Volver</a></p>";


mysql_close($cnn); 

?>

Un oi
__________________
El talento se educa en la KARMA y el carácter en la tempestad.
Gabriel De Los Santos

Etiquetas: html, mysql, query, registro, sql, tabla, usar
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 19:28.