Les cuento que estoy realizando un buscador tipo directorio telefonico para la empresa en donde trabajo, el buscador realiza una busqueda dentro de un archivo de texto separados por comas con este formato
Código:
el codigo php del buscador es el siguiente:IDEMPRESA; FERNANDO NICOLAS [email protected]=INTERNO= CODIGOSECTOR; [email protected]; Perez, Fernado Nicolas; LEGAJO;TELEFONO; CODIGOSECTOR;
Código PHP:
<?php
# Flag que se recibe desde el form para iniciar la busqueda
if (isset ($_GET["buscar"])) # verifico si el flag buscar esta definido
{
if ($_GET["idpadron"] == NULL)
{
# si no se ingresa dato a buscar
$Resultado = " <img src='img/bullet_red.gif' width='11' height='13'> <span class='textoerror'> Atención: Debe ingresar dato a buscar</span>"."<br><br>";
}
else
{
# si se ingreso dato a buscar
$Resultado = " <img src='img/bullet.gif' width='11' height='13'> <span class='textopag'> Resultado de la busqueda:</span>"."<br><br>";
}
# Recibo el patron de busqueda y lo convierto a mayusculas
@ $idBuscado = strtoupper($_GET ["idpadron"]);
$idBuscado = strtr($idBuscado, "ñÜÖÁÉÍÓÚüöáéíóú", "ÑUOAEIOUUOAEIOU");
# Valor de empresa seleccionado en la lista de valores del formulario (%,PM,BA,IF,IA,FA,FU)
@ $idEmpresa = $_GET ["empresa"];
if ($idEmpresa == "%"){
$Todas = 1; # busca en todas las empresa
}
else{
$Todas = 0; # busca en la empresa seleccionada
}
echo $Resultado; # Muestra resultado o da mensaje de error en pantalla
# Abre el archivo cvs ubicado en /home/www/sistemas/nu0_temail_te.txt
$archivo = @ fopen("nu0_temail_te.txt","r") or
die ("<span class='textoerror'>Error: La apertura de archivo "nu0_temail_te.txt" ha fallado, informe al administrador del sistema al Int 3741/43.</span>");
# fgetcsv lee archivo csv / 250 es el tamaño max de caracteres x linea / ";" separador /
while (($data = fgetcsv($archivo, 250, ";")) !== FALSE)
{
$posicion = @ strpos ($data[1], $idBuscado);
if ($posicion === FALSE){
$NoFound = 0;
}
else if ($posicion !== FALSE)
{
$NoFound = 1;
if ($Todas == 0 ) # busca en la empresa seleccionada
{
$posicion = @ strpos ($data[0], $idEmpresa);
if ($posicion === FALSE)
{
# echo "No encontré la empresa";
}
elseif ($posicion == 0)
{
# echo "Se encontro la persona y Tambien se encontró la empresa";
echo "<table width='100%' border='1' cellspacing='1' cellpadding='1' bordercolor='#FFFFFF' bgcolor='#E1EBF7'>";
echo "<tr>
<td bordercolor='#E1EBF7' bgcolor='#E1EBF7' width='5%' align='absmiddle'class='texto_normal'> $data[4] </td>
<td bordercolor='#FFFFFF' bgcolor='#FFFFFF' width='28%' align='absmiddle'class='texto_gris'> $data[3] </td>
<td bordercolor='#E1EBF7' bgcolor='#E1EBF7' width='14%' align='absmiddle' class='texto_gris'> $data[7] </td>
<td bordercolor='#FFFFFF' bgcolor='#FFFFFF' width='12%' align='absmiddle' class='textoresaltado'> <img src='img/icon_tel.gif' align='absmiddle'> $data[5]</td>
<td bordercolor='#E1EBF7' bgcolor='#E1EBF7' width='13%' align='absmiddle'class='texto_gris'><img src='img/icon_tel.gif' align='absmiddle'> $data[6] </td>
<td bordercolor='#E1EBF7' bgcolor='#FFFFFF' width='28%'align='absmiddle'> <img src='img/icono_mail.gif' align='absmiddle'> <a href='mailto:$data[2]' class='mails_link'>$data[2]</a></td>
</tr>";
echo "</table>";
$encontrado = 1;
}
}
else
{
echo "<table width='100%' border='1' cellspacing='1' cellpadding='1' bordercolor='#FFFFFF' bgcolor='#E1EBF7'>";
echo "<tr>
<td bordercolor='#E1EBF7' bgcolor='#E1EBF7' width='5%' align='absmiddle'class='texto_normal'> $data[4] </td>
<td bordercolor='#FFFFFF' bgcolor='#FFFFFF' width='28%' align='absmiddle' class='texto_gris'> $data[3] </td>
<td bordercolor='#E1EBF7' bgcolor='#E1EBF7' width='14%'align='absmiddle' class='texto_gris'> $data[7]</td>
<td bordercolor='#FFFFFF' bgcolor='#FFFFFF' width='12%'align='absmiddle' class='textoresaltado'> <img src='img/icon_tel.gif' align='absmiddle'> $data[5]</td>
<td bordercolor='#E1EBF7' bgcolor='#E1EBF7' width='13%'align='absmiddle'class='texto_gris'><img src='img/icon_tel.gif' align='absmiddle'> $data[6] </td>
<td bordercolor='#E1EBF7' bgcolor='#FFFFFF' width='27%'align='absmiddle'> <img src='img/icono_mail.gif' align='absmiddle'> <a href='mailto:$data[2]' class='mails_link'>$data[2]</a></td>
</tr>";
echo "</table>";
$encontrado = 1;
}
}
}
fclose($archivo);
if (@$encontrado == 0){
echo "<table width='500' border='1' cellpadding='0' cellspacing='0' bordercolor='#8DB3E0' bgcolor='#E1EBF7' align='center'><tr>
<td colspan='2' bordercolor='#E1EBF7' class='textoresaltado'><img src='img/spacer5x8.png'width='5' height='8'></td></tr><tr>
<td width='67' bordercolor='#E1EBF7' class='textoresaltado'> <center><img src='img/warning.gif' width='32' height='32'> </center></td><td width='427' bordercolor='#E1EBF7' class='textoresaltado'><b>Atención:</b> Su búsqueda: <b>".@$idBuscado."</b> - no produjo resultados<br><br>Asegúrese de que la palabra este escrita correctamente.</td></tr>
<tr><td colspan='2' bordercolor='#E1EBF7' class='textoresaltado'><img src='img/spacer5x8.png' width='5' height='8'></td></tr></table>";
}
# borro la variable resultado
unset ($Resultado);
}
?>
saludos.