use CGI; use DBI; use Encode; my $q = CGI->new; my $fecha= $q->param('theDate'); my $orden= $q->param('orden'); print $q->header, $q->start_html(-lang=>'es-SP',-title=> 'Reservas CPA'), $q->h2({-align=>'CENTER'},decode("utf-8","Reservas para el día: ")."$fecha ordenadas por $orden\n\n"); my $dbh = DBI->connect("dbi:SQLite:dbname=cpa-simple.db", "", "", {RaiseError =>1 } ); my $sth = $dbh->prepare( q ( select id_reserva,activo,tipo_reserva,entidad_nombre_reserva,nombre,apellidos,telefono,inicio_reserva, fin_reserva,periodicidad,horai, horaf,nombre_admin from reserva,activos,nombre,administ where reserva.activos_reserva_id=activos.id_activos and reserva.nombre_reserva_id=nombre.id_dni and reserva.administ_reserva_id=administ.id_administ and julianday( ? ) between julianday ( inicio_reserva ) and julianday ( fin_reserva ) order by ?)) or die "No puedo preparar la sentencia: " .$dbh->errstr; my @data; $sth->execute("$fecha","$orden") or die "Algo está pasando... ¡Llama a los bomberos!: " . $sth->errstr; my @datautf8; print $q->start_table({-border=>'1', -align=>'center',-cellpadding=>'6'}),"\n\n", $q->start_Tr, map ({$q->td({align=>'center'},$q->b(decode("utf-8",$_))) . "\n"} qw|Núm. Material Carácter Entidad Nombre Apellidos Teléfono |,"Inicio de reserva","Fin de reserva", "Periódica","Hora inicio","Hora finalización","Administrador" ), $q->end_Tr,"\n"; while ( @data = $sth->fetchrow_array()){ print $q->start_Tr,"\n", # This '\n' is useful only in case someone reads the HTML source map ({ $q->td({-align=>'left'},decode("utf-8",$_) )."\n" } @data), $q->end_Tr,"\n"; } print $q->end_table,"\n", $q->end_html,"\n"; $sth->finish; $dbh->disconnect; exit 0; #### \test>perl dbtest.pl theDate=2011-12-25 orden=id_reserva Content-Type: text/html; charset=ISO-8859-1 Reservas CPA Wide character in print at dbtest.pl line 11.

Reservas para el d�a: 2011-12-25 ordenadas por id_reserva

Wide character in print at dbtest.pl line 33. .... 8< snip --- 8<---- ....
39 CANON FS-2 particular DGA David Divo 111222336< 2011-12-21 2012-03-04 7 8 21 Alberto