Foros del Web » Programando para Internet » PHP »

Error php busqueda mysql

Estas en el tema de Error php busqueda mysql en el foro de PHP en Foros del Web. Tengo este codigo y me tira error en la parte: while ($row = mysql_fetch_array($result)){ Código: <?php require('conexion.php'); $busqueda=$_POST['busqueda']; // DEBO PREPARAR LOS TEXTOS QUE VOY ...
  #1 (permalink)  
Antiguo 01/12/2009, 12:07
 
Fecha de Ingreso: julio-2009
Mensajes: 32
Antigüedad: 15 años, 4 meses
Puntos: 0
Error php busqueda mysql

Tengo este codigo y me tira error en la parte: while ($row = mysql_fetch_array($result)){

Código:
<?php
require('conexion.php');

$busqueda=$_POST['busqueda'];
// DEBO PREPARAR LOS TEXTOS QUE VOY A BUSCAR si la cadena existe
if ($busqueda<>''){
	//CUENTA EL NUMERO DE PALABRAS
	$trozos=explode(" ",$busqueda);
	$numero=count($trozos);
	if ($numero==1) {
		//SI SOLO HAY UNA PALABRA DE BUSQUEDA SE ESTABLECE UNA INSTRUCION CON LIKE
		$cadbusca="SELECT * FROM reparaciones WHERE APARATO LIKE '%$busqueda%' OR APELLIDOYNOMBRE LIKE '%$busqueda%' LIMIT 10;";
	} elseif ($numero>1) {
		//SI HAY UNA FRASE SE UTILIZA EL ALGORTIMO DE BUSQUEDA AVANZADO DE MATCH AGAINST
		//busqueda de frases con mas de una palabra y un algoritmo especializado
		$cadbusca="SELECT * , MATCH ( APELLIDOYNOMBRE, APARATO ) AGAINST ( '$busqueda' ) AS Score FROM reparaciones WHERE MATCH ( APELLIDOYNOMBRE, APARATO ) AGAINST ( '$busqueda' ) ORDER BY Score DESC LIMIT 50;";
	}
	
	function limitarPalabras($cadena, $longitud, $elipsis = "..."){
		$palabras = explode(' ', $cadena);
		if (count($palabras) > $longitud)
			return implode(' ', array_slice($palabras, 0, $longitud)) . $elipsis;
		else
			return $cadena;
	}
?>
	
	
<?php
	$result=mysql_query($cadbusca, $con);
	$i=1;
	while ($row = mysql_fetch_array($result)){
		
		echo '<div id="tabcontent1"><tr><td>'.$row['apellidoynombre'].'</td></tr></div>';
	       
		   echo '<div id="tabcontent2"><tr><td>'.limitarPalabras($row['aparato'],20).'</td></tr></div>';
			
echo '<div id="tabcontent3"><tr><td>'.$row['estado'].'</td></tr></div>';
				
				
			
				

		$i++;
	}
}
?>
este es el error que me tira la web :


Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/a3119064/public_html/busqueda.php on line 32
  #2 (permalink)  
Antiguo 01/12/2009, 12:14
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Error php busqueda mysql

revisa la sql por separado para descartar error de sintaxis en la consulta, si no es la conexion
  #3 (permalink)  
Antiguo 01/12/2009, 12:20
 
Fecha de Ingreso: julio-2009
Mensajes: 32
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Error php busqueda mysql

mira esta es la web electrans.com.ar fijate que cuando buscas con una palabra por ejemplo juan si anda, pero cuando buscas juan perez no anda

si o si busca con juan y juan perez


no me deja buscar por 2 palabras
  #4 (permalink)  
Antiguo 01/12/2009, 12:40
 
Fecha de Ingreso: julio-2009
Mensajes: 32
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Error php busqueda mysql

o tendria que dividir el nombre, el apellido en sql?
  #5 (permalink)  
Antiguo 01/12/2009, 15:31
 
Fecha de Ingreso: mayo-2005
Mensajes: 121
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: Error php busqueda mysql

trata de crear una consulta mas simple y ve probando, y le vas agregando ............ ese error es de consulta sql
  #6 (permalink)  
Antiguo 01/12/2009, 15:42
Avatar de gigoz  
Fecha de Ingreso: noviembre-2009
Mensajes: 106
Antigüedad: 15 años
Puntos: 1
Respuesta: Error php busqueda mysql

Si necesitas crear un buscador. Genera un SQL simple solo con un LIKE

select NOMBRE, APARATO from reparaciones where NOMBRE LIKE '%$nombre%'
  #7 (permalink)  
Antiguo 01/12/2009, 19:10
 
Fecha de Ingreso: julio-2009
Mensajes: 32
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Error php busqueda mysql

voy a probar
  #8 (permalink)  
Antiguo 01/12/2009, 19:33
 
Fecha de Ingreso: julio-2009
Mensajes: 32
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Error php busqueda mysql

no puedo hacerlo, no me pasarian el codigo
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 13:08.