Foros del Web » Programación para mayores de 30 ;) » Programación General »

Problemas actualizando bases de datos con perl

Estas en el tema de Problemas actualizando bases de datos con perl en el foro de Programación General en Foros del Web. Es la primera vez que toco algo de perl y tengo que reparar una página en la que se actualizan dominio, pero el problema es ...
  #1 (permalink)  
Antiguo 09/05/2007, 05:06
 
Fecha de Ingreso: abril-2007
Mensajes: 75
Antigüedad: 17 años
Puntos: 0
Problemas actualizando bases de datos con perl

Es la primera vez que toco algo de perl y tengo que reparar una página en la que se actualizan dominio, pero el problema es que no guarda en la base de datos la nueva fecha de expiración.

El archivo para conectarse a la base de datos dice esto

Cita:
#!/usr/bin/perl -w
package ConectarDB;
use strict;
use DBI;

# variables a editar
my $db_user = "xxxxxx";
my $db_pass = "1234";
my $host_name = "xxxxx";
my $db_name = "1234";
my $db_name2 = "xxxxx";
my $db_name3 = "1234";

my $q_string = "DBI:mysql:host=$host_name;database=$db_name";
my $q_string2 = "DBI:mysql:host=$host_name;database=$db_name2" ;
my $q_string3 = "DBI:mysql:host=$host_name;database=$db_name3" ;

sub connect{
return (DBI->connect ($q_string, $db_user, $db_pass,
{PrintError => 0, RaiseError => 1}));
}

sub connect2{
return (DBI->connect ($q_string2, $db_user, $db_pass,
{PrintError => 0, RaiseError => 1}));
}

sub connect3{
return (DBI->connect ($q_string3, $db_user, $db_pass,
{PrintError => 0, RaiseError => 1}));
}

1;
y donde debe estar el problema es en este archivo .pl que se encarga de ello

Cita:
# Actualizamos la nueva fecha de vencimiento
$dbh = ConectarDB->connect2();
$sth = $dbh->prepare('UPDATE $var SET c1=? WHERE c2=? AND c3=?');
$sth->execute($v1,$v2,$v3);
antes de esta parte tambien se conecta a la base de datos con connect y no se cierra la conexion con la base de datos hasta el final.

Es probable que no me entendais porque es la primera vez que trabajo con este lenguaje y encima tengo qeu buscar un error.

gracias por la ayuda.

Última edición por chelusan; 14/05/2007 a las 05:18
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:00.