Foros del Web » Programando para Internet » PHP »

Problemas con buscador

Estas en el tema de Problemas con buscador en el foro de PHP en Foros del Web. Aquí te mando la estructura de la tabla: Field -- Type --Collation-- Null id -- int(10) ------- No category -- varchar(50) -- latin1_swedish_ci -- No ...

  #31 (permalink)  
Antiguo 04/05/2007, 08:07
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

Aquí te mando la estructura de la tabla:

Field -- Type --Collation-- Null
id -- int(10) ------- No
category -- varchar(50) -- latin1_swedish_ci -- No
subcategory -- varchar(50)-- latin1_swedish_ci -- No
products -- varchar(50) -- latin1_swedish_ci -- No
codrugs -- varchar(12) -- latin1_swedish_ -- No
  #32 (permalink)  
Antiguo 04/05/2007, 08:11
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

Hice lo que dice cala 932 y me sale el mismo error:

SELECT * FROM rugs_carpets WHERE MATCH(products) AGAINST('wall decor') or MATCH(subcategory) AGAINST('wall decor') ORDER BY Score DESC LIMIT 50
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in pag-search.php on line 246
  #33 (permalink)  
Antiguo 04/05/2007, 08:11
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

estos son todos los campos?:-o
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #34 (permalink)  
Antiguo 04/05/2007, 08:16
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

Field -- Type --Collation-- Null
id -- int(10) ------- No
category varchar(50) latin1_swedish_ci No
subcategory varchar(50) latin1_swedish_ci No
products varchar(50) latin1_swedish_ci No
codrugs varchar(12) latin1_swedish_ci No
name text latin1_swedish_ci No
style varchar(12) latin1_swedish_ci No
shape varchar(12) latin1_swedish_ci No
color varchar(10) latin1_swedish_ci No
width decimal(6,2) No 0.00
height decimal(6,2) No 0.00
units varchar(10) latin1_swedish_ci No
grupo varchar(12) latin1_swedish_ci No
weight decimal(6,2) No 0.00
price decimal(6,2) No 0.00
image_1_binario blob BINARY No
image_1_name varchar(255) latin1_swedish_ci No
image_1_peso varchar(15) latin1_swedish_ci No
image_1_tipo varchar(25) latin1_swedish_ci No
description text latin1_swedish_ci No
cant_unid char(1) latin1_swedish_ci No
cant_max int(3) No 0
cant_lot int(3) No 0
art_lote int(3) No 0
ofer char(1) latin1_swedish_ci No
ofer_tiempo varchar(30) latin1_swedish_ci No
ofer_desde varchar(20) latin1_swedish_ci No
ofer_hasta varchar(20) latin1_swedish_ci No
ofer_cant int(3) No 0
regalo char(1) latin1_swedish_ci No
mas_ven varchar(5) latin1_swedish_ci No
anniversary char(1) latin1_swedish_ci No
baby_shower char(1) latin1_swedish_ci No
birthday char(1) latin1_swedish_ci No
bridal_shower char(1) latin1_swedish_ci No
bridesmaids char(1) latin1_swedish_ci No
christmas char(1) latin1_swedish_ci No
engagement char(1) latin1_swedish_ci No
housewarming char(1) latin1_swedish_ci No
new_baby char(1) latin1_swedish_ci No
thank_you char(1) latin1_swedish_ci No
wedding char(1) latin1_swedish_ci No
others char(1) latin1_swedish_ci No
pais001 varchar(20) latin1_swedish_ci No
tiemstan001 varchar(20) latin1_swedish_ci No
tiemexpe001 varchar(20) latin1_swedish_ci No
shipstan001 decimal(6,2) No 0.00
shipexpe001 decimal(6,2) No 0.00
fadistan001 decimal(6,2) No 0.00
fadiexpe001 decimal(6,2) No 0.00
pais002 varchar(20) latin1_swedish_ci No
tiemstan002 varchar(20) latin1_swedish_ci No
tiemexpe002 varchar(20) latin1_swedish_ci No
shipstan002 decimal(6,2) No 0.00
shipexpe002 decimal(6,2) No 0.00
fadistan002 decimal(6,2) No 0.00
fadiexpe002 decimal(6,2) No 0.00
pais003 varchar(20) latin1_swedish_ci No
tiemstan003 varchar(20) latin1_swedish_ci No
tiemexpe003 varchar(20) latin1_swedish_ci No
shipstan003 decimal(6,2) No 0.00
shipexpe003 decimal(6,2) No 0.00
fadistan003 decimal(6,2) No 0.00
fadiexpe003 decimal(6,3) No 0.000
pais004 varchar(20) latin1_swedish_ci No
tiemstan004 varchar(20) latin1_swedish_ci No
tiemexpe004 varchar(20) latin1_swedish_ci No
shipstan004 decimal(6,2) No 0.00
shipexpe004 decimal(6,2) No 0.00
fadistan004 decimal(6,2) No 0.00
fadiexpe004 decimal(6,2) No 0.00
pais005 varchar(20) latin1_swedish_ci No
tiemstan005 varchar(20) latin1_swedish_ci No
tiemexpe005 varchar(20) latin1_swedish_ci No
shipstan005 decimal(6,2) No 0.00
shipexpe005 decimal(6,2) No 0.00
fadistan005 decimal(6,2) No 0.00
fadiexpe005 decimal(6,2) No 0.00
pais006 varchar(20) latin1_swedish_ci No
tiemstan006 varchar(20) latin1_swedish_ci No
tiemexpe006 varchar(20) latin1_swedish_ci No
shipstan006 decimal(6,2) No 0.00
shipexpe006 decimal(6,2) No 0.00
fadistan006 decimal(6,2) No 0.00
fadiexpe006 decimal(6,2)
  #35 (permalink)  
Antiguo 04/05/2007, 08:20
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Re: Problemas con buscador

Hola, si estas utilizando mysql_fetch_array(), he notado que faltan las comillas dentro del $row, esta asi:
Código PHP:
while($row=mysql_fetch_array($result)){ //cambia el object por array
    //Mostramos los titulos de los articulos o lo que deseemos...
    
$referencia=$row[id]; // cambiemos esto tambien
    
$titulo=$row[subcategory]; // cambiemos esto tambien
    
echo $referencia." - ".$titulo."<br>";
//deberia ir asi:
while($row=mysql_fetch_array($result)){ //cambia el object por array
    //Mostramos los titulos de los articulos o lo que deseemos...
    
$referencia=$row['id']; // cambiemos esto tambien
    
$titulo=$row['subcategory']; // cambiemos esto tambien
    
echo $referencia." - ".$titulo."<br>"
Probalo
__________________
->Aprender es un proceso que incluye el error..
  #36 (permalink)  
Antiguo 04/05/2007, 08:32
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

Hola Cala932:
Hice lo que me indicaste y nada sigue el mismo error en la misma fila del while...
  #37 (permalink)  
Antiguo 04/05/2007, 08:35
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

estoy haciendo pruebas ya te respondo

tienes muchos datos en esa tabla?
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #38 (permalink)  
Antiguo 04/05/2007, 08:44
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

Hola Cirujano:
Si. Efecticamente tengo muchos datos en mi tabla.
Gracias por tu ayuda. Esperemos que pronto llegue la solución..... No pensé que iba a estar tan dificil...

Saludos.
  #39 (permalink)  
Antiguo 04/05/2007, 08:46
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

revisa exactamente esto en la BD, esto es segun lo que me mandastes

Código PHP:
CREATE TABLE `rugs_carpets` (
  `
idint(11NOT NULL auto_increment,
  `
categoryvarchar(200NOT NULL default '',
  `
subcategoryvarchar(50NOT NULL default '',
  `
productstext NOT NULL,
  `
codrugsvarchar(12NOT NULL default '',
// pendiente aqui
  
PRIMARY KEY  (`id`),
  
FULLTEXT KEY `products` (`products`),
  
FULLTEXT KEY `category` (`category`)
// hasta aqui
TYPE=MyISAM AUTO_INCREMENT=

codigo pa la búsqueda

Código PHP:
  $busqueda=="";
  
$trozos=explode(" ",$busqueda);
  
$numero=count($trozos);
  if (
$numero=="1") {
$cadbusca="SELECT * FROM rugs_carpets WHERE subcategory LIKE '%$busqueda%' OR products LIKE '%$busqueda%' LIMIT 50";
  } else {
// PENDIENTE AQUI
    
$cadbusca="SELECT *  FROM `rugs_carpets` WHERE MATCH(products) AGAINST ('wall decor') or MATCH(products) AGAINST ('wall decor') ORDER BY Score DESC LIMIT 50";
  }
echo 
$cadbusca;
$result=mysql_query($cadbusca); 
while(
$row=mysql_fetch_array($result)){
    
$referencia=$row[id];
    
$titulo=$row[subcategory];
    echo 
$referencia." - ".$titulo."<br>";
  } 
me corrio la consulta....
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #40 (permalink)  
Antiguo 04/05/2007, 08:57
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

sale el mismo error
  #41 (permalink)  
Antiguo 04/05/2007, 09:11
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

Código PHP:
$busqueda="wall decor";
  
$trozos=explode(" ",$busqueda);
  
$numero=count($trozos);
  if (
$numero=="1") {
$cadbusca="SELECT * FROM rugs_carpets WHERE subcategory LIKE '%$busqueda%' OR products LIKE '%$busqueda%' LIMIT 50";
  } else {
    
$cadbusca="SELECT *  FROM `rugs_carpets` WHERE MATCH(products) AGAINST ('".$busqueda."') or MATCH(products) AGAINST ('".$busqueda."') ORDER BY Score DESC LIMIT 50";
  }
echo 
$cadbusca;
$result=mysql_query($cadbusca); 
while(
$row=mysql_fetch_array($result)){
    
$referencia=$row[id];
    
$titulo=$row[subcategory];
    echo 
$referencia." - ".$titulo."<br>";
  } 
de verdad si no te funciona ahorita me pego un tiro (lirteralmente hablando) a mi me correo total y absolutamente bien...
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #42 (permalink)  
Antiguo 04/05/2007, 09:26
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

Cirujano, adivina?
.
.
.

.
.
.
.
.
.
Nada....sigue el mismo error. Cuando busco una palabra si funciona, pero cuando digito 2 nada..

Qué puedo estar haciendo mal...?

Saludos.

.
  #43 (permalink)  
Antiguo 04/05/2007, 09:28
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

jajaja DIOOOOOOOOOOSSSS!!!! no puede ser, si supieras que me estoy muriendo de la risa.... que version de MySQL tienes? yo lo estoy corriendo en MySQL 4.0.26 y funciona al pelo!!!!
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #44 (permalink)  
Antiguo 04/05/2007, 09:29
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

haz un:

$numero=count($trozos);
echo $cadbusca;

y dime que sale
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #45 (permalink)  
Antiguo 04/05/2007, 09:38
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

cuales campos alterastes para que fueran FULLTEXT?
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #46 (permalink)  
Antiguo 04/05/2007, 09:41
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

creo que la version del phpmyadmin es 2.9.0.2
  #47 (permalink)  
Antiguo 04/05/2007, 09:43
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

verifica que sean fulltext los campos products y subcategory.... ese es el error, falta un campo por covertir a fulltext...

saludos, me voy a McDonalds a comer, (tengo hambre) jajajaja
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
  #48 (permalink)  
Antiguo 04/05/2007, 09:49
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: Problemas con buscador

Estos son los campos:


Keyname --Type --Cardinality - --Field
PRIMARY -- PRIMARY --226 -- id
products --FULLTEXT --1 -- products
subcategory -- FULLTEXT --1 -- subcategory
  #49 (permalink)  
Antiguo 04/05/2007, 10:17
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Problemas con buscador

Cita:
SELECT * FROM rugs_carpets WHERE MATCH(products) AGAINST('wall decor') or MATCH(subcategory) AGAINST('wall decor') ORDER BY Score DESC LIMIT 50
Hola de nuevo hna_no pues si no me equivoco el error es por "Score", pues como te dije en el post anterior "Score" era un alias.

Para tal caso tienes q ordenar por algun campo de tu tabla.

Saludos.
__________________

  #50 (permalink)  
Antiguo 04/05/2007, 11:30
Avatar de el cirujano  
Fecha de Ingreso: mayo-2003
Ubicación: Frente al PC
Mensajes: 609
Antigüedad: 21 años
Puntos: 3
Re: Problemas con buscador

Volve, Hna_no que paso verificastes lo que te dije?
__________________
CSS2 + AJAX + PHP + MySQL, una mezcla sin competencia!!!!!!
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 18:59.