buscador en php... q no funciona. AYUDA POR FAVOR

Iniciado por miguelangelss4, 24 Abril 2009, 09:56 AM

0 Miembros y 1 Visitante están viendo este tema.

miguelangelss4

Bueno, tengo el siguiente código que sería para buscar libros de la BBDD (MySQL) de una biblioteca, pero no hace nada, no devuelve error ni nada...:
<?php
//RECOGIDA DE DATOS**************************************************************************************************************
$titulo $_POST["titulo"]; $autor $_POST["autor"]; $tema $_POST["tema"]; $idioma $_POST["idioma"];
$isbn $_POST["isbn"];
//CONEXION BBDD******************************************************************************************************************
$server_link mysql_connect("servidor""user""pass");
$bd_selected mysql_select_db("bbdd"$server_link);
//BUSQUEDA***********************************************************************************************************************
$sqlbuscar="SELECT *" 
    
" FROM tabla_libro a INNER JOIN tabla_autor b on a.id_autor = b.id_autor " .
"  INNER JOIN tabla_tema c on a.id_tema = c.id_tema" .
"  INNER JOIN tabla_idioma d on a.id_idioma = d.id_idioma" .
  " WHERE a.titulo like '%" $titulo 
" %' AND b.nom_autor like '%" $autor 
" %' AND c.nom_tema like '%" $tema 
" %' AND d.nom_idioma like '%" $idioma 
" %' AND a.isbn like '%" $isbn "%' ";

//MIS PRUEBAS********************************************************************************************************************
echo("SQLBUSCAR____________________________<b>".$sqlbuscar."</b>.");
echo('<br><br><br>');
//CUENTA RESULTADOS**************************************************************************************************************
$cuenta_resultados "select count(*) as num from tabla_libro where titulo like '%".$titulo."%'";
$resultado mysql_query($cuenta_resultados);
$n_resultados mysql_fetch_array($resultado);
echo("Se han encontrado <b>".$n_resultados["num"]."</b> resultados para su b&uacute;squeda.");
echo('<br><br><br>');
//INICIO BUCLE*******************************************************************************************************************
$query mysql_query($sqlbuscar) or die(mysql_error()); 
while ($busqueda mysql_fetch_array($query))
{
$contador=1;
//SALIDA DE DATOS****************************************************************************************************************
echo("<table border='1'>");
echo("<tr>");
echo("<td rowspan='5'>".$contador."</td>");
echo("</tr>");
echo("<tr>");
echo("<td><a href='libro.php'>".$busqueda['titulo']."</a></td>");
echo("</tr>");
echo("<tr>");
echo("<td>".$busqueda['nom_autor']."</td>");
echo("</tr>");
echo("<tr>");
echo("<td>".$busqueda['tema']."</td>");
echo("</tr>");
echo("<tr>");
echo("<td>".$busqueda['idioma']."</td>");
echo("</tr>");
echo("<tr>");
echo("<td>".$busqueda['isbn']."</td>");
echo("</tr>");
echo("<tr>");
echo("<td colspan='2'><a href='buscar.php'>Volver a buscar</a></td>");
echo("</tr>");
echo("</table>");
$contador++;
    }
mysql_close($server_link); 
?>

Espero que me podais ayudar. Un saludo.

:ohk<any>

Primero que nada, tienes la base de datos para esta busqueda?
Segundo, estas seguro que estas mandando los datos "titulo", "autor", etc de forma correcta y con el nombre que te los pide?
Tercero, los datos de conexion deben ser los mismos de tu base de datos y tu base de datos debe llamarse "bbdd" en caso de que la consulta corra como la muestras.

Si todo eso esta bien, revisaremos la consulta  :P
Y es que a veces pienso que si no estuviera loco no podría salir adelante.
Lo que no se es capaz de dar, en realidad no se posee, uno es poseído por ello.

miguelangelss4

esas tres cosas ya las he revisado como 5 o 6 veces... y sí, todo esta correcto... lo raro esque no me devuelve nada, ni errores, ni datos ni nada...

estoy haciendo un script de prueba por partes y va tomando forma, poco a poco...

дٳŦ٭

Prueba con ini_set('display_errors', 1); al principio de tu pagina, haz un print_r($_request); print_r($_post);

En las lineas cambia:

Código (php) [Seleccionar]

$server_link = mysql_connect("servidor", "user", "pass") die('No se pudo conectar: ' . mysql_error());
$bd_selected = mysql_select_db("bbdd", $server_link) die('No conectado: ' . mysql_error());


Y platicanos que pasa.  ;)


Con sangre andaluza :)


miguelangelss4

Cita de: MI PAGINATITULO: AUTOR: TEMA: IDIOMA: ISBN:

select * from libro a inner join autor b on a.id_autor=b.id_autor where titulo like '%%'
, Se han encontrado 1 resultados para su búsqueda.


Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /homez.165/dosesi/www/virtualiga/CESMA/buscar.php on line 51

lo único que me importa es el warning, porque lo de arriba lo he puesto yo.
la línea 51 contiene lo siguiente:
while ($busqueda = mysql_fetch_array($query))