Mis conocimientos en php de momento son muy básicos, así que a ver si me podéis echar una mano.
Tengo un array con varios campos, asi que tengo un input donde escribo un texto y me hace la búsqueda en el campo nombre $valor[1] y tengo unos enlaces en donde al pinchar me tiene que hacer la búsqueda en el campo cargo $valor[0] así que he puesto este if
Código PHP :
if ($t == $_POST['TxtBuscar']) { $cadena = $valor[1]; } else if ($t == $_GET['cargo']) { $cadena = $valor[0]; }
para que cadena tenga un valor u otro en función de que la variable $t venga del input o de los enlaces y la búsqueda la hace bien pero el problema está en la paginación, porque al paginar pierde la variable $t y me dice que no se han encontrado resultados, aquí os pongo el código completo
index.php
Código PHP :
<?php include_once 'array.php'; include_once 'paginar.php'; if (isset($_GET['p'])) $p = $_GET['p']; else $p=1; $t = ''; if (isset($_GET['t'])) $t = $_GET['t']; else if(isset($_POST['TxtBuscar'])) $t = $_POST['TxtBuscar']; else if(isset($_GET['cargo'])) $t = $_GET['cargo']; ?>
Código HTML :
<form action="index.php" method="post"> <input type="text" name="TxtBuscar" size="22" maxlength="150"> <input type="submit" value="Buscar"> </form>
Código PHP :
<?php if (isset($t) && !empty($t)) { $coincidencias = array(); foreach($datos as $valor) { if ($t == $_POST['TxtBuscar']) { $cadena = $valor[1]; } else if ($t == $_GET['cargo']) { $cadena = $valor[0]; } if($t !== false){ $coincidencias[] = $valor; } } } else $coincidencias = $datos; $d = (count($datos)); ?> <?php //Aqui pongo el número de elementos que quiero que aparezca por página, en este caso 3 paginar($coincidencias, 3, $p, $t, $d); ?>
El código de paginación está en otro archivo paginacion.php