• Publicidad

Consulta mysql con variables individuales

Todo lo relacionado con el desarrollo Web con Perl: desde CGI hasta Mojolicious

Consulta mysql con variables individuales

Notapor Gonzalojimenezroldan » 2008-09-23 10:17 @470

Buenos días, podrían ayudarme, la consulta no me trae datos.
La consulta es la siguiente:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl
use CGI::Carp qw(fatalsToBrowser);
use strict;
use DBI;
my $identif = " ";
my $nombre = " ";
my $pruser = "GJR";
my $dbuser = "maest_gonzalo";
my $dbpass = "gjr";
my $dbhost = "localhost";
my $dbname = "maest_ME3REGIS";
my $dbh = DBI->connect("DBI:mysql:$dbname:$dbhost",$dbuser,$dbpass)|| die('No se puede conectar a la base de datos...');
my $query = $dbh->prepare( "SELECT nombre,identif FROM ME3REG WHERE identif = '$pruser'" );
$query->bind_columns(\$nombre, \$identif);
$query->execute();
while( $query->fetch() ) {
       print "$nombre   $identif\n";
     }
$query->finish();
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


De antemano agradezco su ayuda.

Cordial Saludo,

Gonzalo.
Gonzalojimenezroldan
Perlero nuevo
Perlero nuevo
 
Mensajes: 14
Registrado: 2008-09-17 11:49 @534

Publicidad

Notapor explorer » 2008-09-23 10:31 @479

Pero... si esto es un CGI... ¿cuándo envías las cabeceras?

¿O lo estás ejecutando directamente desde la línea de comandos?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Gonzalojimenezroldan » 2008-09-23 10:39 @485

Lo estoy ejecutando de esta manera:

http://www.xxxxxxxxxx.com/cgi-bin/conec.cgi

Esto es temporal mientras corrijo los errores, posteriormente lo ejecuto desde una página, que llama este CGI.

Este CGI me funciona, lo único que cambié es la utilización de variables independientes para recibir la consulta.
Gonzalojimenezroldan
Perlero nuevo
Perlero nuevo
 
Mensajes: 14
Registrado: 2008-09-17 11:49 @534

Notapor monoswim » 2008-09-23 11:32 @522

Es verdad, coloca al principio un

print "Content-type: text/html \n\n";

¿Te tira algún error?

Saludos
MonoSwim
Perl Programming Language
Avatar de Usuario
monoswim
Perlero nuevo
Perlero nuevo
 
Mensajes: 452
Registrado: 2003-11-18 16:13 @717
Ubicación: Buenos Aires

Notapor explorer » 2008-09-23 11:57 @540

Ya encontré el posible error.

Según la documentación de DBI:
For maximum portability between drivers, bind_columns() should be called after execute() and not before.
que quiere decir que debes poner la línea del bind_columns() después del execute().

Prueba a ver...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Gonzalojimenezroldan » 2008-09-23 12:19 @555

:D Excelente, funcionó... con la recomendación.

De nuevo Gracias...
Gonzalojimenezroldan
Perlero nuevo
Perlero nuevo
 
Mensajes: 14
Registrado: 2008-09-17 11:49 @534


Volver a Web

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados