Ver Mensaje Individual
  #18 (permalink)  
Antiguo 30/06/2003, 17:07
Avatar de Manoloweb
Manoloweb
 
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 24 años, 9 meses
Puntos: 5
Lo mismo, solo que coloreado para su más fácil interpretación...

Código PHP:
<?
/***$criterio_txt sera el termino de busqueda, la inicializamos a vacia***/
$criterio_txt=''; if (isset($_POST['buscar'])) { // si existe el campo del formulario, lo usamos como termino de busqueda
$criterio_txt=$_POST['buscar'];
} elseif (isset(
$_GET['criterio'])) { // si no existe el formulario, pero si existe en la URL, usamos este
$criterio_txt=$_GET['criterio'];
}
// en este punto, $criterio_txt tiene el valor de $_POST['buscar'] o el de $_GET['criterio'] o '' (vacio)
$opcionbusca_txt=''; // $criterio_txt sera el termino de busqueda, la inicializamos a vacia
if (isset($_POST['opcionbusca'])) { // si existe el campo del formulario, lo usamos como termino de busqueda
$opcionbusca_txt=$_POST['opcionbusca'];}
elseif (isset(
$_GET['criterio2'])) { // si no existe el formulario, pero si existe en la URL, usamos este
$opcionbusca_txt=$_GET['criterio2'];}
// aqui hariamos lo mismo con todos los parametros que puedan venir por formulario o por URL

// comienza el codigo que tienes
// a partir de aqui, no deberiamos usar ningun $_POST o $_GET
if (empty ($criterio_txt)){ 

echo 
"<p>Debe especificar una cadena a buscar</p> \n";
echo 
"<p><a href='javascript:history.go(-1)' class='linkDerecho'>Volver</p> \n"; }
elseif (
strlen($criterio_txt) > 1) {


/******************* Realizamos la conexion con el servidor ********************/

$conexion = mysql_connect("localhost", "usuario", "contraseña")
or die(
"<b>Problema en MySQL:</b> Error al conectar con la base de datos");


/****************Realizamos la conexion con la base de datos en la que queremos actuar *****************/


$basedatos = mysql_select_db('Nombre_Base_Datos', $conexion)
or die(
"<b>Problema en MySQL:</b> Error al conectar con la base de datos");

/*************** Consulta SQL ***********************/
if ($opcionbusca_txt == 'vias'){
$sql = "SELECT * FROM Tabla WHERE Nombre LIKE '%$criterio_txt%'";}
else {
$sql= "SELECT * FROM Tabla WHERE Grado LIKE '%$criterio_txt'";}


/******************* Realizamos la consulta sobre la base de datos *********************/

$consulta = mysql_query($sql, $conexion);



/*****************Comprobamos las filas afectadas por la consulta *****************/

$filas = mysql_num_rows($consulta);


//Limito la busqueda
$TAMANO_PAGINA = 20;
//calculo el total de páginas

$total_paginas = ceil($filas / $TAMANO_PAGINA);

//examino la página a mostrar y el inicio del registro a mostrar
$pagina = $_GET["pagina"];
if (!
$pagina) {
$inicio = 0;
$pagina=1;
}
else {
$inicio = ($pagina - 1) * $TAMANO_PAGINA;
}

/*************** Consulta SQL reconstruida ***********************/
if ($opcionbusca_txt == 'vias'){
$ssql = "SELECT * FROM Todas WHERE Nombre LIKE '%$criterio_txt%' ORDER BY Escuela, Sector, Nombre LIMIT " . $inicio ."," .$TAMANO_PAGINA;}
else {
$ssql= "SELECT * FROM Todas WHERE Grado LIKE '%$criterio_txt' ORDER BY Escuela, Sector, Nombre LIMIT " . $inicio ."," .$TAMANO_PAGINA;}
/***********Mostramos los resultados por pantalla *************************/

/*********reconstruimos la consulta *****************/

$consulta2 = mysql_query($ssql);

/*****************Comprobamos las filas afectadas por la consulta *****************/

$ffilas = mysql_num_rows($consulta2); 


if (
$ffilas > 0) {
echo 
"<table width='430'> \n"; 
//Mostramos los nombres de las tablas 

echo "<tr> \n";
echo 
"<td align='left' colspan='4'> \n";
echo 
"<font face='arial narrow' size='2' color='#336699'>Número de registros encontrados: " . $filas . "<br> </font> \n";
echo 
"<font face='arial narrow' size='2' color='#336699'>Mostrando pagina: " . $pagina . " de " . $total_paginas . "<p> </font> \n";
echo 
"</td> \n";
echo 
"<tr> \n";
echo 
"<td width='180'><font face='Arial' size='2' color='#336699'><b> Nombre </b> </font></td>\n";
echo 
"<td width='50' align='center'><font face='Arial' size='2' color='#336699'><b> Grado </b> </font></td>\n";
echo 
"<td width='100' align='center'><font face='Arial' size='2' color='#336699'><b> Sector </b> </font></td>\n";
echo 
"<td width='100' align='center'><font face='Arial' size='2' color='#336699'><b> Escuelas </b> </font></td>\n";
echo 
"</tr> \n";
while (
$ffilas = mysql_fetch_array($consulta2)) {
echo 
"<tr> \n";
echo 
"<td><font face='arial' size='1' color='#336699'>".$ffilas["Nombre"]."</font> </td> \n";
echo 
"<td align='center'><font face='arial' size='1' color='#336699'>".$ffilas["Grado"]."</font> </td> \n";
echo 
"<td align='center'><font face='arial' size='1' color='#336699'>".$ffilas["Sector"]."</font> </td> \n";
echo 
"<td align='center'><font face='arial' size='1' color='#336699'>".$ffilas["Escuela"]."</font> </td> \n";
echo 
"</tr> \n"; 
echo 
"<tr> \n";
}
echo 
"<td height='40' align='center' valign='bottom' colspan='4'> \n"; 
//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='buscador.php?pagina=" . $i . "&criterio=" . $criterio_txt ."&criterio2=".$opcionbusca_txt."' class='linkDerecho'>" . $i . "</a> ";
}
}

echo 
"</td> \n";
echo 
"</tr> \n";
echo 
"</table> \n"; 
echo 
"</div>";
echo 
"<p><a href='javascript:history.go(-1)' class='linkDerecho'>Volver</p> \n"; 
}

else { 
echo 
"<p>¡No se ha encontrado ningún registro!</p>\n"; 
echo 
"<p><a href='javascript:history.go(-1)' class='linkDerecho'>Volver</p> \n"; 
} 
}
else {

echo 
"<p>El patron de busqueda debe ser al menos de 2 caracteres</p> \n";
echo 
"<p><a href='javascript:history.go(-1)' class='linkDerecho'>Volver</p> \n"; 
}

?>
__________________
Manoloweb