Portalmana ya lo he hecho aunque el código que me pones en tu respuesta me da un ERROR de sintaxis, pero no pasa nada lo he cambiado por:
$criterio = isset($_GET["criterio"])? $_GET["criterio"]: '';
tanbien he hecho lo mismo con la variable: $txt_criterio y ya no me indican ningún error.
No obstante en la Linea 63 me da el siguiente error y este no he podido quitarlo te pongo todo el código, la linea la he separado por asteriscos para que la localices el error que me da es:
Notice: Undefined index: criterio in C:\wamp\www\Actividades\Hosteleria\PruebaLocal.php on line 63
Codigo:
Código PHP:
<?php
$conexion = mysql_connect('localhost', 'root', '');
mysql_select_db('general');
?>
<?php
$criterio = isset($_GET["criterio"])? $_GET["criterio"]: '';
$txt_criterio=isset($_GET["txt_criterio"])? $_GET["txt_criterio"]: '';
//Limito la busqueda
$TAMANO_PAGINA = 10;
//examino la página a mostrar y el inicio del registro a mostrar
$pagina = isset($_GET["pagina"])? $_GET["pagina"]: ''; // La he cambiado y ya no me da error
if (!$pagina) {
$inicio = 0;
$pagina=1;
}
else {
$inicio = ($pagina - 1) * $TAMANO_PAGINA;
}
//miro a ver el número total de campos que hay en la tabla con esa búsqueda
$ssql = "select * from Actividades " . $criterio;
$rs = mysql_query($ssql,$conexion);
$num_total_registros = mysql_num_rows($rs);
//calculo el total de páginas
$total_paginas = ceil($num_total_registros / $TAMANO_PAGINA);
//pongo el número de registros total, el tamaño de página y la página que se muestra
echo "Número de registros encontrados: " . $num_total_registros . "<br>";
echo "Se muestran páginas de " . $TAMANO_PAGINA . " registros cada una<br>";
echo "Mostrando la página " . $pagina . " de " . $total_paginas . "<p>";
//construyo la sentencia SQL
$ssql = "select * from actividades " . $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
$rs = mysql_query($ssql);
while ($fila = mysql_fetch_object($rs)){
echo $fila->NombreComer . "<br>";
}
//cerramos el conjunto de resultado y la conexión con la base de datos
mysql_free_result($rs);
mysql_close($conexion);
//muestro los distintos índices de las páginas, si es que hay varias páginas
if ($total_paginas > 1){
for ($i=1;$i<=$total_paginas;$i++){
if ($pagina == $i)
//si muestro el índice de la página actual, no coloco enlace
echo $pagina . " ";
else
//si el índice no corresponde con la página mostrada actualmente, coloco el enlace para ir a esa página
echo "<a href='PruebaLocal.php?pagina=" . $i . "&criterio=" . $txt_criterio . "'>" . $i . "</a> ";
}
}
//inicializo el criterio y recibo cualquier cadena que se desee buscar
$criterio = "";
// *****************************************************************************************************************
if ($_GET["criterio"]!=""){
// *****************************************************************************************************************
$txt_criterio = $_GET["criterio"];
$criterio = " where NombreComer like '%" . $txt_criterio . "%'";
}
?>
<form action="PruebaLocal.php" method="get">
Criterio de búsqueda:
<input type="text" name="criterio" size="22" maxlength="150">
<input type="submit" value="Buscar">
</form>