Foros del Web » Programando para Internet » PHP »

Consulta desde php

Estas en el tema de Consulta desde php en el foro de PHP en Foros del Web. Buenas de nuevo. Tengo un pequeño problemilla con una consulta. Tengo una consulta que es esta que me funciona bien me muestra el resultado: Código: ...
  #1 (permalink)  
Antiguo 24/10/2007, 04:42
 
Fecha de Ingreso: abril-2007
Mensajes: 156
Antigüedad: 17 años
Puntos: 0
Consulta desde php

Buenas de nuevo. Tengo un pequeño problemilla con una consulta.

Tengo una consulta que es esta que me funciona bien me muestra el resultado:

Código:
$cadbusca=mysql_query("select * from files where nombre like  '%$busqueda%' limit 3") or die(mysql_error());
	$result = @mysql_fetch_array($cadbusca);
  $resultado = $result['nombre'];
  echo "$resultado";
le paso por post la variable $busqueda y dependiendo de lo que contenga asi busca.

Bién el problema lo tengo cuando tecleo mas de una palabra uso este algoritmo con un if compruebo si se ha introducido una o varias palabras pero no funciona no me muestra ningun mensaje ni error ni nada:

Código:
$cadbusca= mysql_query ("SELECT  * , MATCH (`nombre`) AGAINST ('$busqueda') AS id
  FROM files WHERE MATCH (`nombre`) AGAINST ('$busqueda')
  ORDER BY id DESC LIMIT 3") or die(mysql_error());
  $otro = mysql_fetch_array($cadbusca);
  $resultado = $otro['nombre'];
  echo "$resultado";
que hago mal en la consulta? lo he sacado tal y como vienen en el tutorial en la web http://www.tomatoma.ws/articulo.php?...67&forum_id=27 la diferencia es que yo solo busco en el campo nombre solo en un campo, y el order by lo hago por el id.

Bueno espero respuesta impaciente un saludo y gracias desde ya!!!
  #2 (permalink)  
Antiguo 24/10/2007, 06:53
 
Fecha de Ingreso: octubre-2007
Mensajes: 4
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Consulta desde php

La sintaxis de la funcion mysql_query es la siguiente:

mysql_query([CONSULTA],[CONEXION A LA BASE DE DATOS]);

Te pongo un ejemplo: (Yo lo haria asi)
<?
$c=mysql_connect('localhost','pepe','pepa');
.
.
.
$consulta="select * from ... ");
mysql_query($consulta,$c);
.
.
.
?>
  #3 (permalink)  
Antiguo 24/10/2007, 08:44
 
Fecha de Ingreso: abril-2007
Mensajes: 156
Antigüedad: 17 años
Puntos: 0
Re: Consulta desde php

GRacias manolitoflores por la respuesta ya lo he probado y sigue sin funcionar. El problema creo que está en la consulta ya que la primera si devuelve un resultado y la segunda no.

Es la sintaxis de la segunda consulta la que por lo que sea no devuelve el resultado. Si alguien me ayudara estaria agradecido un saludo y gracias de nuevo
  #4 (permalink)  
Antiguo 24/10/2007, 10:00
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 8 meses
Puntos: 638
Re: Consulta desde php

hola, hace unos dias tuve ese mismo problema con un buscador del tipo MATCH() AGAINST() y lo resovi agregandole IN BOOLEAN MODE, fijate aqui:
http://dev.mysql.com/doc/refman/5.0/...t-boolean.html
si quieres ver el codigo e mi buscador pues te lo paso:
http://www.forosdelweb.com/f18/neces...an-mod-527018/

espero resuelvas
saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #5 (permalink)  
Antiguo 24/10/2007, 10:38
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Re: Consulta desde php

hyperrjas, cuando tenés problemas con MySQL lo mejor es consultar mysql_error() que te devuelve el error de la base de datos... seguramente con ello sea más fácil corregirlo
  #6 (permalink)  
Antiguo 24/10/2007, 11:38
 
Fecha de Ingreso: abril-2007
Mensajes: 156
Antigüedad: 17 años
Puntos: 0
Re: Consulta desde php

Gracias a los dos por la respuesta. Seppo también en la segunda función tengo puesto el mysql_error() lo que pasa esque no lo he posteado... sorry.

Lo he conseguido solucionar agregandole lo que me indica Rogertm IN BOOLEAN MODE. Estoy construyendo un paginador con buscador incluido con trozos de aquí y de allí. Cuando lo tenga completo lo posteo por si le sirve a alguien de ayuda.

Muchas gracias de nuevo Un saludo sois los mejores :)
  #7 (permalink)  
Antiguo 24/10/2007, 11:46
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 8 meses
Puntos: 638
Re: Consulta desde php

por ultimo, fijate en el link que te di del manual de mysql, la forma de usar los operadores + * - etc

saludos
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #8 (permalink)  
Antiguo 30/10/2007, 03:49
 
Fecha de Ingreso: abril-2007
Mensajes: 156
Antigüedad: 17 años
Puntos: 0
Re: Consulta desde php

Buenas de nuevo me surge un pequeño problemilla con este tema otra vez

Al realizar la consulta con IN BOOLEAN MODE me sacaba resultados y si no pongo eso no me sacaba ninguno. El problema lo tengo ahora en los resultados ya que al ponerte el id en modo booleano no sabe como ordenar los resultados. Este es el query:

Código:
 $cadbusca= mysql_query ("SELECT  * , MATCH (`nombre`) AGAINST ('$busqueda') AS id
  FROM files WHERE MATCH (`nombre`) AGAINST ('$busqueda' IN BOOLEAN MODE )
  ORDER BY id DESC LIMIT $inicio, $registros ") or die(mysql_error());
El problema es con IN BOOLEAN MODE que el campo id te lo pone a 0 o 1 y yo necesito que el valor de ese campo cuando lo llame me de el valor que tiene o un 1 o un 0, y si quito IN BOOLEAN MODE no me realiza la busqueda y no me devuelve ningun resultado.

Alguien podría orientarme como hacer que la palabra IN BOOLEAN MODE no afecte al campo id en esta consulta, para que no me devuelva 0 o 1 si no su numero id real?

Muchas Gracias de nuevo espero respuesta impaciente Un saludo a todos.


**NOta el campo nobre es un indice FUllTEXt;
  #9 (permalink)  
Antiguo 30/10/2007, 04:37
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 5 meses
Puntos: 48
Re: Consulta desde php

Una pregunta, ¿por que has puesto el AS id al match del select? Quitalo, ya que te esta pisando el valor del id que lees de la tabla.
  #10 (permalink)  
Antiguo 30/10/2007, 05:14
 
Fecha de Ingreso: abril-2007
Mensajes: 156
Antigüedad: 17 años
Puntos: 0
Re: Consulta desde php

Gracias DarkJ Problema solucionado era el dichoso AS id que me pisaba el id de la tabla. Mil gracias!!!!!!! Un saludo de nuevo :)

Última edición por hyperrjas; 30/10/2007 a las 05:19 Razón: Problema solucionado Gordita tkmm no te enfades conmigo
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:26.