Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Web » Insertar REMOTE_ADDR en DB ORACLE Responder al tema
Nuevo tema


Página 1 de 1  [ 4 mensajes ] 
 
Nota 2006-08-31 16:04 @711

Perlero Nuevo
Registrado: 2006-08-31 15:33 @690
Mensajes: 5
Insertar REMOTE_ADDR en DB ORACLE
Hola,

Hice este script:

Syntax: [ Download ] [ Hide ]
Using perl Syntax Highlighting
#!/usr/local/bin/perl

use DBI;
use Oraperl;
$ENV{"ORACLE_HOME"} = "/opt/oracle/product/9.2.0";

$dbh = DBI-> connect("dbi:Oracle:host=algunhost;sid=algunsid", "schema", "secreto");
DBI-> errstr;

my $var =$ENV{"REMOTE_ADDR"};

$statement = "insert into some_table(column) values($var)";

$sth = $dbh->prepare($statement);
$rv = $sth->execute;

$sth->finish;

$dbh->disconnect;


Pero me larga un error:

Código:
DBD::Oracle::st execute failed: ORA-00936: missing expression (DBD ERROR: OCIStmtExecute) at line.......


El tema es que no se que puede ser. Lo que yo quiero es tomar el valor de la variable $var y guardarlo en la base.

Por favor, ayudenme.
Gracias de antemano.

Diego


Nota 2006-08-31 19:34 @857
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10261
Según la web de fallos de Oracle, a la expresión la falla algo. Sospecho que la variable $var no tiene un valor válido cuando llega a la expresión prepare y column requiere que sea no nulo.


Nota 2006-09-01 08:10 @382

Perlero Nuevo
Registrado: 2006-08-31 15:33 @690
Mensajes: 5
Enteoria, tendria que tomar el valor de la variable REMOTE_ADDR que supuestamente es la direccion ip de quien visita la pagina. El lugar donde se guardaria esa variable (o sea, $var) en la base de datos, es un campo varchar, por lo que $var tiene que ser un string. No sera que hay que decirle que var es de tpo string?.
Quiero saber si esta bien la declaracion de $var, porque vi en varios lados declaraciones distintas para tomar el valor de la IP. Creo que la declaracion del insert esta bien.
Por favor, ayudenme.
Gracias.


Nota 2006-09-01 08:14 @385

Perlero Nuevo
Registrado: 2006-08-31 15:33 @690
Mensajes: 5
Amigos,

Ya lo arregle: le faltaba las comillas simples a $var en la declaracion del insert, tiene que ser values ('$var').

Jeje, ahora que manejo perl con la base no me para nadie.


Responder al tema  [ 4 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO