• Publicidad

DBI::MySql

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

DBI::MySql

Notapor fido » 2006-06-29 14:04 @628

Hola.

Quiero que alguien me de una mano, porque contraté un hosting en Dattatec.com y no logro conectarme a la base de datos MYSQL.
Pedí ayuda al soporte de dattatec pero sólo saben programar en PHP,
Con PHP logro conectarme pero yo tengo todo en Perl, así que quiero conectarme con DBI.

El servidor tiene instalado el módulo DBI y el MySQL, pero me da error al conectar.

El código que uso es el siguiente:
Código: Seleccionar todo
use DBI;

$data_source = "DBI:mysql:nombredb;host=localhost";
$dbh = DBI->connect($data_source, 'usuario', 'clave');

El servidor es localhost.

¿Hay diferencias de conexión en las distintas versiones de DBI?
¿Cómo puedo saber la versión de DBI que está instalada en mi hosting?

¡¡Saludos!!
fido
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2006-06-29 13:47 @616

Publicidad

Notapor kidd » 2006-06-29 14:49 @659

Hola:

En el sitio hay un tutorial que te muestra lo básico para conectarte a tu dabatase con Perl:
http://perlenespanol.com/archives-tut/000045.html

Saludos
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México

Notapor explorer » 2006-06-29 15:48 @700

¿Qué error sale?

Para saber la versión puedes sacar el valor de la variable VERSION:
Código: Seleccionar todo
#!/usr/bin/perl
use DBI;
use CGI ':standar';
print header, start_html, p($DBI::VERSION),end_html;
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 fido » 2006-07-05 15:27 @686

el unico error que puedo ver es el que sale por el browser, porque el log del servidor no esta.
hay alguna forma con perl de capturar los errores y mostrarlos por el browser?

el error es este pero siempre que tengo algun error con perl es el mismo

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

es muy complicado saber donde esta el error.

sigo sin poder conectarme con DBI.

muchas gracias.
fido
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2006-06-29 13:47 @616

Notapor explorer » 2006-07-05 15:45 @698

Para sacar los errores a la página web, pon
Código: Seleccionar todo
use CGI::Carp qw(fatalsToBrowser);

después del use CGI;
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 fido » 2006-07-05 16:18 @721

esa linea manda todos los errores al la web pero el de la conncecion no sale.

que puedo estar haciendo mal, la version de DBI es 1.50
Código: Seleccionar todo
#!/usr/bin/perl

use DBI;
use CGI;
use CGI::Carp qw(fatalsToBrowser);

$user = 'admin';
$password = 'xxxx';
$database = 'prueba';
$dsn = "dbi:mysql:database=$database";
$dbh = DBI->connect($dsn,$user,$password) || die "\nError al abrir la base datos: $DBI::errstr\n";
fido
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2006-06-29 13:47 @616

Notapor explorer » 2006-07-05 17:33 @773

¿Pero qué errores salen???

Si sale el 404 es muy posible que el servidor web no sepa encontrar ese cgi. Pregunta a tu administrador del servidor web cuál es el camino (PATH) para los cgi-bin de los usuarios.
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 fido » 2006-07-07 08:52 @411

Si sale el 404, pero si comento la linea $dbh = DBI->connect($dsn,$user,$password), el CGI se ejecuta bien.
el path es public_html/cgi-bin/
fido
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2006-06-29 13:47 @616

Notapor explorer » 2006-07-07 09:20 @430

Prueba así:
Código: Seleccionar todo
#!/usr/bin/perl

use DBI;
use CGI;
use CGI::Carp qw(fatalsToBrowser);

$|++;
print header, start_html("Prueba de conexión");

$user = 'admin';
$password = 'xxxx';
$database = 'prueba';
$dsn = "DBI:mysql:database=$database;host=localhost";

$dbh = DBI->connect($dsn,$user,$password)
    or print "ERROR al abrir la base datos: $DBI::errstr\n";

print p("Conectado!"), end_html;
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


Volver a Intermedio

¿Quién está conectado?

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