Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/09/2004, 14:28
Avatar de Agripado
Agripado
 
Fecha de Ingreso: mayo-2001
Ubicación: En mi casa
Mensajes: 441
Antigüedad: 23 años, 10 meses
Puntos: 1
Agregar más campos

Hola tengo un script en cgi que me encontré por ahí ue lo que hace es leer datos contenidos en un txt y son mostrados cuando son consultados por un formulario de búsqueda:

Digamos que los datos del txt son de esta manera

Calle Luis Alfredo;[email protected];
Calle Renteria Eddy Martin - Exa - Piu - 200529;[email protected];
Calle Riofrio Paola;[email protected];
Camacho Gutierrez Julio - Piu - 990419;[email protected];

Bien el código del CGI es este


#!/usr/bin/perl -- -*-perl-*-
print ("Content-Type: text/html \n\n");
print <<"ENCABEZADO";

ENCABEZADO


# ------------------------------------------------------------------------------------------------
#
# Modificado para no afectar el archivo original (= no traducir minusculas en mayusculas)
#
# ------------------------------------------------------------------------------------------------

# -------------------------------
# Acceso a los datos transmitidos
# -------------------------------

read (STDIN, $save_string, $ENV{CONTENT_LENGTH});
@prompts=split(/&/, $save_string);
foreach (@prompts) {
($name, $value)=split(/=/, $_);
$name =~ s/\%(..)/pack("c", hex($1))/ge;
$value=~ s/\%(..)/pack("c", hex($1))/ge;
}

# ------------------
# PROGRAMA PRINCIPAL
# ------------------

open(IN, "externos.txt");

# ------------------------
# Extraccion de los campos
# ------------------------
$linea=<IN>;
@NombreCampo=split(";", $linea);
$encontrados=0;

while($linea=<IN>) {

@FLD=split(";", $linea);

# -----------------------------
# Copia de la linea del archivo
# -----------------------------
$busqueda=$linea; # Copiar para no afectar original
$busqueda=~ tr/a-z/A-Z/;

# --------------------
# Criterio de busqueda
# --------------------
$criterio=$value; # Cadena ingresado por el usuario
$criterio=~ tr/a-z/A-Z/; # Convertir minusculas en mayusculas

$i=0;
if ($busqueda=~ /$criterio/) { # Igual a busqueda ?
foreach(@FLD) {
$dato=$_;
if ($linea=~ /""/) {
$dato="No se indico"
}

# -------------------------------------
# Resultados de busqueda en codigo HTML
# -------------------------------------


print <<"TABLA";
<center>
<table border="0" width="400" cellspacing="0" cellpadding="2">
TABLA

if (($dato ne /""/)) {



#------------------------------------------------------------------


En esta parte de acá quiero que sea utilizada en lugar de usar la de abajo ya que muestra todo en una sola fila y dos columnas, ya que en la primera columna muestra Nombre e Email, y en la segunda muestra los datos encontrados en el txt la verdad que espero que me entiendan lo que quiero, porqué me enriendo mucho, y disculpenm si los confundo!

print "<tr>";
print "<td width=\"23%\">td>";
print "<td width=\"77%\"></td>";
print "</tr>";
print "<tr>";
print "<td></td>";
print "<td>&nbsp;</td>";
print "</tr>";
print "<tr>";
print "<td></td>";
print "<td>&nbsp;</td>";
print "</tr>";
print "<tr>";
print "<td></td>";
print "<td>&nbsp;</td>";
print "</tr>";
#------------------------------------------------------------------------

print "<tr>";
print "<td width=\"15%\" bgcolor=\"#003366\"><font face=\"Tahoma\" size=\"-1\" color=white></b></font></td>";
print "<td width=\"85%\"><font face=\"Tahoma\" size=\"-1\" color=black>";
if ((@NombreCampo[$i] eq "Email")) {
print "<a href=\"mailto:$dato\"><font face=\"Tahoma\" size=\"-1\" color=\"blue\"><u>";
}
print $dato;
if ((@NombreCampo[$i] eq "PAGINA")) {
print "</u></font></a>";
}
print "</td></tr>";
}

print <<"TABLA";
</table>
</center>
TABLA
$i=$i+1; # Numero de coincidencias por linea
}
# ----------------------
# Cantidad de resultados
# ----------------------
$encontrados=$encontrados+1;
print "<p>"
}
}



# -------------------------------------------
# Con este comando estoy completando la tabla
# -------------------------------------------


print <<"CIERRATABLA";

CIERRATABLA

close (IN);
__________________
El mundo es un mercado donde se compra honores, voluntad y conciencia
Samuel