Foros del Web » Programando para Internet » PHP »

Problema con "like" usando variable

Estas en el tema de Problema con "like" usando variable en el foro de PHP en Foros del Web. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original $recetas= $_GET['txtReceta'];?>   <H4> <?php echo $recetas ?> </H4>   <?php $codrec   = mysql_query ( "SELECT NOMBRE FROM ...
  #1 (permalink)  
Antiguo 13/07/2010, 18:51
 
Fecha de Ingreso: junio-2010
Mensajes: 37
Antigüedad: 13 años, 10 meses
Puntos: 0
Problema con "like" usando variable

Código PHP:
Ver original
  1. $recetas= $_GET['txtReceta'];?>
  2.  
  3. <H4><?php echo $recetas?></H4>
  4.  
  5. <?php
  6. $codrec  = mysql_query("SELECT NOMBRE FROM receta WHERE NOMBRE like \'%'.$recetas.'%\'")or die (mysql_error());
  7. ?>

El error:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\'%'.ARROZ.'%\'' at line 1

La variable se recibe correctamente (txtReceta). Gracias por la ayuda.
  #2 (permalink)  
Antiguo 13/07/2010, 19:02
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Problema con "like" usando variable

Prueba asi:

Código PHP:

$recetas=$_GET['txtReceta'];

?>
<H4>
<?php 
echo $recetas;
?>
</H4> 
<?php

$codrec  
mysql_query("SELECT NOMBRE FROM receta WHERE NOMBRE like '%".$recetas."%'")or die (mysql_error());

?>
  #3 (permalink)  
Antiguo 13/07/2010, 19:47
 
Fecha de Ingreso: febrero-2006
Mensajes: 134
Antigüedad: 18 años, 2 meses
Puntos: 10
Respuesta: Problema con "like" usando variable

Cita:
Iniciado por wiwi74 Ver Mensaje
Prueba asi:

Código PHP:

$recetas=$_GET['txtReceta'];

?>
<H4>
<?php 
echo $recetas;
?>
</H4> 
<?php

$codrec  
mysql_query("SELECT NOMBRE FROM receta WHERE NOMBRE like '%".$recetas."%'")or die (mysql_error());

?>
Hombre no, pero ya que estás usando comillas dobles haz esto:

Código PHP:

$recetas=$_GET['txtReceta'];

?>
<H4>
<?php 
echo $recetas;
?>
</H4> 
<?php

$codrec  
mysql_query("SELECT NOMBRE FROM receta WHERE NOMBRE like '%$recetas%'")or die (mysql_error());

?>
y te ahorras la concatenación

Saludos!
__________________
Si te ha gustado lo que he dicho, puedes darme algún punto de reputación, que no te cuesta nada ^_^.

Di no a los juicios de valor!
  #4 (permalink)  
Antiguo 13/07/2010, 20:19
 
Fecha de Ingreso: junio-2010
Mensajes: 37
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Problema con "like" usando variable

Gracias pero da el mismo error...

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE NOMBRE LIKE '%ARROZ%'' at line 1
  #5 (permalink)  
Antiguo 13/07/2010, 20:39
 
Fecha de Ingreso: junio-2010
Mensajes: 37
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Problema con "like" usando variable

Gracias santhy!!!! Funcionó perfecto. Lo que pasa es que estoy acostumbrado a la sintaxis de ASP y aún me enredo mucho.

El problema que me queda es que como soy nuevo, no sé como dar puntos de reputación Te los debo. Gracias, amigo!!!
  #6 (permalink)  
Antiguo 15/07/2010, 07:13
 
Fecha de Ingreso: febrero-2006
Mensajes: 134
Antigüedad: 18 años, 2 meses
Puntos: 10
Respuesta: Problema con "like" usando variable

En el icono del Ying-Yang debajo de las estrellitas (Tooltip: Añadir karma) ;)
__________________
Si te ha gustado lo que he dicho, puedes darme algún punto de reputación, que no te cuesta nada ^_^.

Di no a los juicios de valor!
  #7 (permalink)  
Antiguo 15/07/2010, 08:07
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Problema con "like" usando variable

...No concateno en vano:

Código PHP:

//esto no esta mal
echo "Dentro de esta cadena  $mivar hay variable cualquiera";

//esto tampoco, pero la variable puede verse mejor
echo "Dentro de esta cadena  ".$mivar." hay variable cualquiera"

Etiquetas: variables
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 17:09.