"use strict" et "require"
Bonjour à tous,
j'ai une petite question à vous poser. Jusqu'à présent, je codais mes scripts sans utiliser "use strict" qui me collait des erreurs chaque fois que je l'utilisais et ça m'agaçait. Mais je sais que c'est pas bien ! ;)
Maintenant que mes scripts sont écrits et que le plus gros du travail est terminé, j'aimerais faire les choses proprement, c'est-à-dire éviter d'avoir des centaines de lignes comme la suivante dans le fichier error_logs :
Citation:
[Thu Jul 20 12:15:48 2006] [error] Name "main::img_logo2" used only once: possible typo at /usr/local/apache/cgi-bin/recup_CatConf.pl line 25 (#1), referer:
http://clpi02/cgi-bin/recup_form.pl
Pour ça, il me semble que ça vient du fait que "use strict" n'est pas utilisé. Mon problème est le suivant. Pour mes scripts, je fais appel à un fichier dans lequel j'ai stocké toutes mes variables qui ne changent pas, de manière à ne pas avoir à les déclarer à chaque fois (vu que j'ai une cinquantaine de pages qui font appel à ce fichier).
Code:
1 2 3 4 5 6
| #!/usr/sbin/perl
use diagnostics;
use CGI qw/:standard :html3/;
use DBI;
require "./library.pl"; |
et après j'appelle ma base de données :
Code:
$dbh = DBI->connect("DBI:mysql:$bdd:$server",$log,$pass);
Sachant que toutes mes variables sont définies dans le fichier library.pl ($bdd,$server,$log,$pass), comment faire pour que "use strict" fonctionne dans le script en cours ? :?
Parce que si je les définis pas dans mon script directement ca marche plus...
Citation:
][Thu Jul 20 12:15:48 2006] [error] Global Symbol "$bdd" requires explicit package name
J'espère avoir été claire, c'est pas super évident à expliquer...
Merci à ceux qui auront des idées.