Tengo el suiguiente codigo:
Código:
Perl:
#! /usr/bin/perl -w
use strict;
use CGI::Ajax;
use CGI;
use DBI;
use HTML::Template;
my $q = new CGI;
my (%Variables);
my $buscando = sub {
my $buffer = $ENV{'QUERY_STRING'};
my @pairs = split(/&/, $buffer);
foreach my $pair (@pairs) {
my ($name, $value) = split(/=/, $pair);
$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$Variables{$name} = $value;
}
my $indice = "$Variables{'nombre'}"."%";
my $db="probando";
my $host="localhost";
my $port="3306";
my $userid="root";
my $passwd="zxcvbn";
my $connectionInfo="DBI:mysql:database=$db;$host:$port";
my $columna="*";
my $query = "SELECT * FROM opiniones WHERE (nombre LIKE '$indice') OR (mail LIKE '$indice') OR (direccion LIKE '$indice') OR (opinion LIKE '$indice')";
my $cgi = CGI->new;
my $dbh = DBI->connect($connectionInfo,$userid,$passwd) or die print "No hay conexion con la base<br>";
my $t = HTML::Template->new(filename => 'db.tmpl');
$t->param(ROWS => $dbh->selectall_arrayref($query, { Slice => {} }));
$dbh->disconnect;
print $cgi->header;
print $t->output;
};
my $Mostrar_Form = sub {
my $html = <<EOT
<HTML>
<BODY>
<form>
<input type="hidden" id="item" size="6">
<input type="hidden" id="namedItem" size="6">
<input type="text" id="nombre" size="6" value=1 ><br/>
<button onclick='jsFunc(formDump(),["out"]);return false' > Buscar </button>
<div id="out">
</div>
</form>
</BODY>
</HTML>
EOT
;
return $html;
};
my $pjx = CGI::Ajax->new( 'jsFunc' => $buscando);
print $pjx->build_html($q,$Mostrar_Form); # fin
Lo que hace este codigo es una busqueda en una base de datos y mostrarla en una tabla creada con un TMPL. El problema es que cuadno imprimo la tabla me sale
Content-Type: text/html; charset=ISO-8859-1 1 en la ultima fila de la primera columna. Probe tambien imprimnendo los resultados sin tabla ni nada, pero tambien me sale lo mismo. Que tendria que cambiarle al codigo??