• Publicidad

Problema variables concatenadas

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Problema variables concatenadas

Notapor Azrack » 2007-09-26 11:58 @540

Hola, disculpen, tengo un problema al asignar variables. Miren: tengo este script:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl

## Asigno Las Variables
my $x = a;
my $dx = '5 AND (SELECT Count(*) FROM id WHERE id LIKE "$x"."%") > 0';
#Imprimo
print "http://web.com/page.aspx?id="."$dx";
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

El problema está en la declaración de variables porque cuando imprimo sale esto:
Sintáxis: [ Descargar ] [ Ocultar ]
Using sql Syntax Highlighting
http://web.com/page.aspx?id=5 AND (SELECT Count(*) FROM id WHERE id LIKE "$x"."%") > 0
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

O sea, la variable $x parece que no está concatenada.

A ver si alguno me ayuda con esto.
Gracias.
Azrack
Perlero nuevo
Perlero nuevo
 
Mensajes: 19
Registrado: 2007-04-14 13:42 @613

Publicidad

Notapor explorer » 2007-09-26 14:09 @631

El problema está en las comillas simples, que impiden la interpolación de las variables. Debes usar comillas dobles, escapando las ya incluidas dentro:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$dx = "5 AND (SELECT Count(*) FROM id WHERE id LIKE \"$x\".\"%\") > 0";
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


O haciéndolo por partes:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$dx = '5 AND (SELECT Count(*) FROM id WHERE id LIKE "' . $x . '"."%") > 0';
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


O usando los operadores de entrecomillado:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$dx = qq{5 AND (SELECT Count(*) FROM id WHERE id LIKE "$x"."%") > 0};
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


En fín, hay muchas formas. Lo principal es entender la diferencia entre usar comillas simples y las dobles.
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 Azrack » 2007-09-26 16:30 @729

Muchas gracias, no sé qué hubiera hecho sin tu ayuda.
Azrack
Perlero nuevo
Perlero nuevo
 
Mensajes: 19
Registrado: 2007-04-14 13:42 @613


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: Bing [Bot] y 21 invitados

cron