La panne de mon pressoir a orange doit etre à l'origine de mon probleme pour
lequel la solution va etre tellement evidente que qd je serai reveillé je
trouverai la solution meme sans regarder.
for (1..4) { print @table$_[1]; ## produit invariablement une erreur 500 }
une idée ?
Bonjour,
Vous pouvez utiliser un eval : print eval("$table$_" . '[1]') . "n" for (1..4);
-- Régis Caspar
Nicolas George
"Fabrice L." wrote in message <420b371e$0$6593$:
print @table1[1]; ##<== no pb ici
Si, problème.
Scalar value @table1[1] better written as $table1[1]
Toujours utiliser use warnings.
print @table$_[1]; ## produit invariablement une erreur 500
Ma boule de cristal me montre que « erreur 500 » veut dire que c'est un CGI ou similaire. Un des résultats est que les messages d'erreur utiles de perl partent quelque part dans les logs. Où il faut aller les chercher.
Ici, un perl -c aurait fait l'affaire :
Scalar found where operator expected at - line 1, near "@table$_" (Missing operator before $_?)
Traduction : il y a un identificateur, @table, il y a un autre identificateur, $_, et rien entre les deux, ça ne veut rien dire.
une idée ?
Lire les messages d'erreur. Lire perlreftut. Utiliser un un tableau de tableaux.
"Fabrice L." wrote in message
<420b371e$0$6593$8fcfb975@news.wanadoo.fr>:
print @table1[1]; ##<== no pb ici
Si, problème.
Scalar value @table1[1] better written as $table1[1]
Toujours utiliser use warnings.
print @table$_[1]; ## produit invariablement une erreur 500
Ma boule de cristal me montre que « erreur 500 » veut dire que c'est un CGI
ou similaire. Un des résultats est que les messages d'erreur utiles de perl
partent quelque part dans les logs. Où il faut aller les chercher.
Ici, un perl -c aurait fait l'affaire :
Scalar found where operator expected at - line 1, near "@table$_"
(Missing operator before $_?)
Traduction : il y a un identificateur, @table, il y a un autre
identificateur, $_, et rien entre les deux, ça ne veut rien dire.
une idée ?
Lire les messages d'erreur. Lire perlreftut. Utiliser un un tableau de
tableaux.
Scalar value @table1[1] better written as $table1[1]
Toujours utiliser use warnings.
print @table$_[1]; ## produit invariablement une erreur 500
Ma boule de cristal me montre que « erreur 500 » veut dire que c'est un CGI ou similaire. Un des résultats est que les messages d'erreur utiles de perl partent quelque part dans les logs. Où il faut aller les chercher.
Ici, un perl -c aurait fait l'affaire :
Scalar found where operator expected at - line 1, near "@table$_" (Missing operator before $_?)
Traduction : il y a un identificateur, @table, il y a un autre identificateur, $_, et rien entre les deux, ça ne veut rien dire.
une idée ?
Lire les messages d'erreur. Lire perlreftut. Utiliser un un tableau de tableaux.
Paul Gaborit
À (at) Thu, 10 Feb 2005 11:31:42 +0100, "Fabrice L." écrivait (wrote):
for (1..4) { print @table$_[1]; ## produit invariablement une erreur 500 }
La "mauvaise" solution :
for (1..4) { print ${"table$_"}[1]; }
("mauvaise" solution car elle n'est pas autorisée si on utilise "use strict;" et parce que personne ne devrait faire de script conséquent sans utiliser "use strict;".)
Une solution propre (en conservant les mêmes tableaux):
-- Paul Gaborit - <http://www.enstimac.fr/~gaborit/> Perl en français - <http://www.enstimac.fr/Perl/>
À (at) Thu, 10 Feb 2005 11:31:42 +0100,
"Fabrice L." <rafale@altern.org> écrivait (wrote):
for (1..4) {
print @table$_[1]; ## produit invariablement une erreur 500
}
La "mauvaise" solution :
for (1..4) {
print ${"table$_"}[1];
}
("mauvaise" solution car elle n'est pas autorisée si on utilise "use strict;"
et parce que personne ne devrait faire de script conséquent sans utiliser "use
strict;".)
Une solution propre (en conservant les mêmes tableaux):
À (at) Thu, 10 Feb 2005 11:31:42 +0100, "Fabrice L." écrivait (wrote):
for (1..4) { print @table$_[1]; ## produit invariablement une erreur 500 }
La "mauvaise" solution :
for (1..4) { print ${"table$_"}[1]; }
("mauvaise" solution car elle n'est pas autorisée si on utilise "use strict;" et parce que personne ne devrait faire de script conséquent sans utiliser "use strict;".)
Une solution propre (en conservant les mêmes tableaux):