Bueno... pues no me ha funcionado, no sé que debo hacer mal....
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?
include "conexion.php";
$db= conectarse();
$cerca=$_REQUEST['cerca']; $criteri=$_REQUEST['criteri'];
$iono=$_REQUEST['iono'];
$cerca2=$_REQUEST['cerca2']; $criteri2=$_REQUEST['criteri2'];
$tipus=$_REQUEST['tipus']; $llengua=$_REQUEST['llengua']; $nivell=$_REQUEST['nivell'];
$editorial=$_REQUEST['editorial']; $any=$_REQUEST['any'];
echo $tipus;
$cons="SELECT * FROM catàleg WHERE Registre > 0 ";
if ($cerca!="" && $criteri!=""){
if ($criteri == "tit"){
$cons = $cons."AND Títol LIKE '%$cerca%' "; //'%".$nom_proy."%
}else if ($criteri == "aut"){
$cons = $cons."AND Autors LIKE '%$cerca%' ";
}else if ($criteri == "par"){
$cons = $cons."AND MATCH (Títol, Autors, Descriptors, Resum, `camp lliure`) AGAINST ('$cerca') ";
}else if ($criteri == "mat"){
$cons = $cons."AND Descriptors LIKE '%$cerca%' ";
}else if ($criteri == "ISBN"){
$cons = $cons."AND ISBN = '$cerca' ";
}
}
if ($iono=="i"){ $cons = $cons."AND "; }
if ($iono=="o"){ $cons = $cons."OR "; }
if ($iono=="no"){
if ($criteri2 == "tit"){ $cons = $cons."AND Títol NOT LIKE '%$cerca2%' "; //'%".$nom_proy."%
}else if ($criteri2 == "aut"){ $cons = $cons."AND Autors NOT LIKE '%$cerca2%' ";
}else if ($criteri2 == "par"){ $cons = $cons."AND NOT MATCH (Títol, Autors, Descriptors, Resum, `camp lliure`) AGAINST ('$cerca2') ";
}else if ($criteri2 == "mat"){ $cons = $cons."AND Descriptors NOT LIKE '%$cerca2%' ";
}else if ($criteri == "ISBN"){ $cons = $cons."AND ISBN != '$cerca2' ";
}
}
if ($cerca2!="" && $criteri2!="" && $iono!="no"){
if ($criteri2 == "tit"){ $cons = $cons."Títol LIKE '%$cerca2%' "; //'%".$nom_proy."%
}else if ($criteri2 == "aut"){ $cons = $cons."Autors LIKE '%$cerca2%' ";
}else if ($criteri2 == "par"){ $cons = $cons."MATCH (Títol, Autors, Descriptors, Resum, `camp lliure`) AGAINST ('$cerca2') ";
}else if ($criteri2 == "mat"){ $cons = $cons."Descriptors LIKE '%$cerca2%' ";
}else if ($criteri == "ISBN"){ $cons = $cons."ISBN = '$cerca2' ";
}
}
if ($tipus != "" && $tipus !="0"){ $cons =$cons."AND Material = '$tipus' "; }
if ($llengua != "" && $llengua !="0"){ $cons=$cons."AND Llengua = '$llengua' "; }
if ($nivell != "" && $nivell !="0"){ $cons=$cons."AND Nivell = '$nivell' "; }
if ($editorial != ""){ $cons=$cons."AND Editor = '$editorial' "; }
if ($any != ""){ $cons=$cons."AND Data = '$any' "; }
echo $cons;
//Fi de la construccio de la consulta sense limits
//Inici de calculs de la paginació.
$res=mysql_query($cons,$db);
$numeroRegistros=mysql_num_rows($res); //Comptar el número de resultats
if ($numeroRegistros <=0){ //Si no hi han resultats
echo "<div align='center'>";
echo "<font face='verdana' size='-2'>No s'han trobat resultats</font>";
echo "</div>";
}else{
$tamPag=10; //número de resultats per pàgina
$pagina=$_GET['pagina'];
//pàgina actual si no esta definida y limits
if(!isset($pagina))
{
$pagina=1;
$inicio=1;
$final=$tamPag;
}
$limitInf=($pagina-1)*$tamPag;
//calculo del numero de paginas
$numPags=ceil($numeroRegistros/$tamPag);
if(!isset($pagina))
{
$pagina=1;
$inicio=1;
$final=$tamPag;
}else{
$seccionActual=intval(($pagina-1)/$tamPag);
$inicio=($seccionActual*$tamPag)+1;
if($pagina<$numPags)
{
$final=$inicio+$tamPag-1;
}else{
$final=$numPags;
}
if ($final>$numPags){
$final=$numPags;
}
}
// echo $cons;
//////////creacion de la consulta con limites
$consLIM = $cons."LIMIT ".$limitInf.",".$tamPag;
//echo $consLIM;
$result=mysql_query($consLIM,$db);
echo "<div align='center'>";
echo "<font face='verdana' size='-2'>Trobats ".$numeroRegistros." documents<br>";
echo "</font></div>";
echo "<table align='center' width='80%' border='0' cellspacing='1' cellpadding='0'>";
echo "<tr><td colspan='4'><hr noshade></td></tr>";
echo "<th bgcolor='#CCCCCC'>Seleccionar</a></th>";
echo "<th bgcolor='#CCCCCC'>Código</a></th>";
echo "<th bgcolor='#CCCCCC'>Títol</a></th>";
echo "<th bgcolor='#CCCCCC'>Autors</a></th>";
while($registre=mysql_fetch_array($result))
{
?>
<!-- tabla de resultados -->
<tr bgcolor="#CC6666" onMouseOver="this.style.backgroundColor='#FF9900';this.style.cursor='hand';" onMouseOut="this.style.backgroundColor='#CC6666'"o"];" onClick="javascript:muestra('<? echo "[".$registro["Registre"]."] ".$registro["Autors"]." - ".$registro["Títol"]; ?>');">
<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFCC"><b><input name="sel" type="checkbox" value=""></b></font></td>
<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFCC"><b><? echo $registre["Registre"]; ?></b></font></td>
<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFCC"><b><? echo $registre["Autors"]; ?></b></font></td>
<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFCC"><b><? echo $registre["Títol"]; ?></b></font></td>
</tr>
<!-- fin tabla resultados -->
<?
}//fin while
echo "</table>";
}//fin if
//////////a partir de aqui viene la paginacion
?>
<br>
<table border="0" cellspacing="0" cellpadding="0" align="center">
<tr><td align="center" valign="top">
<?
if($pagina>1)
{
echo "<a class='p' href='".$_SERVER['PHP_SELF']."?pagina=".($pagina-1)."?cerca=".$cerca."?criteri=".$criteri."?iono=".$iono."?cerca2=".$cerca2."?criteri2=".$criteri2."?tipus=".$tipus."?llengua=".$llengua."?nivell=".$nivell."?editorial=".$editorial."?any=".$any."'>";
echo "<font face='verdana' size='-2'>anterior</font>";
echo "</a> ";
}
for($i=$inicio;$i<=$final;$i++)
{
if($i==$pagina)
{
echo "<font face='verdana' size='-2'><b>".$i."</b> </font>";
}else{
echo "<a class='p' href='".$_SERVER['PHP_SELF']."?pagina=".$i."?cerca=".$cerca."?criteri=".$criteri."?iono=".$iono."?cerca2=".$cerca2."?criteri2=".$criteri2."?tipus=".$tipus."?llengua=".$llengua."?nivell=".$nivell."?editorial=".$editorial."?any=".$any."'>";
echo "<font face='verdana' size='-2'>".$i."</font></a> ";
}
}
if($pagina<$numPags)
{
echo " <a class='p' href='".$_SERVER['PHP_SELF']."?pagina=".($pagina+1)."?cerca=".$cerca."?criteri=".$criteri."?iono=".$iono."?cerca2=".$cerca2."?criteri2=".$criteri2."?tipus=".$tipus."?llengua=".$llengua."?nivell=".$nivell."?editorial=".$editorial."?any=".$any."'>";
echo "<font face='verdana' size='-2'>siguiente</font></a>"; }
//////////fin de la paginacion
mysql_close($db);
?>
</td></tr>
</table>
</body>
</html>
he intentado hacer un "echo" de lo que tienen las variables pero nunca muestran nada, ni cuando vienen de formulario ni cuando lo cgen por la URl.
Además, no siempre se llenan todos los campos de la consulta, con lo que una URL de ejemplo, si busco solo por $tipus podria ser esto:
http://localhost/cons6.php?pagina=2?...ditorial=?any=
que puedo estar haciendo mal?