Could not connect to database: Access denied for user....
16 réponses
Maminirina Hasina RAKOTONINDRAINY
Bonjour,
Je suis bloqu=E9 sur une erreur depuis quelques jour.
Je me connecte =E0 une base de donn=E9es mysql. J'ai le message d'erreur
suivant :
"DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access
denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/
perl.pl line 207
Could not connect to database: Access denied for user
''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line
207."
En faisant un diagnostic du programme, la ligne 30 ne retourne pas de
r=E9sultat.
Quelqu'un pourrait-il me filer un coup de main?
Merci.
Voici le code source :
{{
1 #!/usr/bin/perl -w
2
3 use strict;
4 use warnings;
5 use DBI;
6 use DBD::mysql;
7 use Text::CSV;
8 use CGI;
9 use Text::Iconv;
10 use Env;
11 use LWP::Simple;
12 use LWP::UserAgent;
13 use HTTP::Request;
14 use HTTP::Response;
15 use HTML::LinkExtor;
16
17 my $url=3D new CGI;
18 my $filename =3D $url->param("le_csv");
19 my $upload_filehandle =3D $url->upload("le_csv");
20 my $hostname=3D$ENV{SERVER_NAME};
21
22
23 #my $repertoire=3D"/home/articom-web/public_html/";
24
25 print $url->header();
26
27 $hostname =3D~ s/^www\.//g;
28
29 #IP du SERVEUR
30 my $ip =3D $ENV{'SERVER_ADDR'};
31 my $host =3D "ns366702.ovh.net";
32 my $database =3D "articom";
33 my $user =3D "articom";
34 my $password =3D "";
35
36 if($ip eq "192.168.0.7") # adresse IP phenom
37 {
38 $host =3D "localhost";
39 $database =3D "articom";
40 $user =3D "articom";
41 $password =3D "";
42 }
43 elsif($ip eq "91.121.99.97") # Serveur 1 qui se connecte au serveur
2
44 {
45 $host =3D "ns366702.ovh.net";
46 $database =3D "articom";
47 $user =3D "articom";
48 $password =3D "";
49 }
50
51
52 elsif($ip eq "94.23.19.58") # Serveur 2 IP 1
53 {
54 $host =3D "localhost";
55 $database =3D "articom_un";
56 $user =3D "articom";
57 $password =3D "";
58 }
59 elsif($ip eq "91.121.62.106") # Serveur 2 IP 2
60 {
61 $host =3D "localhost";
62 $database =3D "articom_deux";
63 $user =3D "articom";
64 $password =3D "";
65 }
66 elsif($ip eq "87.98.221.158") # Serveur 2 IP 3
67 {
68 $host =3D "localhost";
69 $database =3D "articom_trois";
70 $user =3D "articom";
71 $password =3D "";
72 }
73 elsif($ip eq "87.98.131.220") # Serveur 2 IP 4
74 {
75 $host =3D "localhost";
76 $database =3D "articom_quatre";
77 $user =3D "articom";
78 $password =3D "";
79 }
80 if($filename ne '')
81 {
82 my $table_gratuits =3D "fiche_champs_gratuits";
83 my $table_payants =3D "fiche_champs_payants";
84 my $table_portail =3D "portails";
85
86 my $connect =3D DBI->connect ("DBI:mysql:$database;$host",$user,
$password);
87 my $changed =3D Text::CSV->new({sep_char =3D> ';', binary =3D> 1});
88 my $converter =3D Text::Iconv->new("iso-8859-1", "utf-8");
89
90 my $sql_portail=3D"SELECT id FROM $table_portail WHERE
nom_domaine =3D '$hostname'";
91 my $query_portail =3D $connect->prepare($sql_portail);
92 $query_portail->execute;
93 my $portail;
94
95 $query_portail->bind_columns(\$portail);
96 $query_portail->fetch;
97 $query_portail->finish();
98
99
100 ## Supprimer les fiches de ce portail
101 my $sql_delete_fiv_payants=3D"DELETE FROM fiche_champs_payants
102 WHERE fiche_champs_payants.id
103 IN (SELECT `fiche_champs_gratuits`.id FROM
`fiche_champs_gratuits`
104 WHERE `fiche_champs_gratuits`.id_portail =3D
$portail)";
105 my $delete_fiv_payants =3D $connect->prepare
($sql_delete_fiv_payants);
106 $delete_fiv_payants->execute;
107 $delete_fiv_payants->finish();
108
109 my $sql_delete_fiv_gratuits=3D"DELETE FROM fiche_champs_gratuits
WHERE id_portail =3D $portail";
110 my $delete_fiv_gratuits =3D $connect->prepare
($sql_delete_fiv_gratuits);
111 $delete_fiv_gratuits->execute;
112 $delete_fiv_gratuits->finish();
113
114
115 my $tel_portable=3D'';
116 my $tel_fixe=3D '';
117
118 my $zero=3D0;
119
120 #############################################
121 # fonction traitant les caract=E8res sp=E9ciaux #
122 #############################################
123 sub treatspecialCaracter($){
124 my $x=3Dshift;
125 $x =3D~ s/\'/ /g;
126 $x =3D~ s/\"/ /g;
127 $x =3D~ s/\',\)/\'\)/g;
128 return $x;
129 }
130 #############################################
131
132 while (<$upload_filehandle>)
133 {
134 if ($zero=3D=3D0)
135 {$zero ++;}
136 else
137 {
138 my $converted=3D$converter->convert($_);
139 if ($changed->parse($converted))
140 {
141 my @columns =3D $changed->fields();
142
143 # Dans la colonne Telephone
144 # je remplace les espaces et les points
145 $columns[5]=3D~ s/ //g;
146 $columns[5]=3D~ s/\.//g; # le point doit etre echape
147
148 if($columns[5] =3D~ /^06.+/)
149 {
150 $tel_portable =3D $columns[5];
151 $tel_fixe =3D '';
152 }
153 else
154 {
155 $tel_fixe =3D $columns[5];
156 $tel_portable=3D'';
157 }
158
159 ###############################################
160 # Insertion dans la table fiche champ gratuit #
161 ###############################################
162 my $tmp =3D "INSERT INTO $table_gratuits VALUES
(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
163 my $query =3D $connect->prepare($tmp);
164 my $res =3D $query->execute('',
165 &treatspecialCaracter
( $columns[0]),
166 &treatspecialCaracter
( $portail),
167 &treatspecialCaracter
( $tel_fixe),
168 '',
169 &treatspecialCaracter
( $tel_portable),
170 &treatspecialCaracter
( $columns[7]),
171 &treatspecialCaracter
( $columns[2]),
172 &treatspecialCaracter
( $columns[3]),
173 &treatspecialCaracter
( $columns[4]),
174 '',
175 '',
176 '',
177 '',
178 '',
179 ''
180 );
181 $query->finish();
182
183 ##############################################
184 # Insertion dans la table fiche champ payant #
185 ##############################################
186 if ($res=3D=3D1) # si l'insertion dans table fiche
champ gratuit a =E9t=E9 r=E9alis=E9 avec succ=E9s #
187 {
188 my $query_2 =3D $connect->prepare("INSERT INTO
$table_payants VALUES('', '', '', '', '')");
189 $query_2->execute;
190 $query_2->finish();
191 }
192 else # echec de l'insertion dasn table fiche champ
gratuit #
193 {
194 print "Erreur lors du charegement du fichier
CSV";
195 }
196 ##############################################
197
198 }
199 }
200 }
201 $connect->disconnect();
202 }
203
204 my $repertoire=3D"../";
205 my $destination_table =3D "towns";
206 my %hash_town =3D ();
207 my $destination_connect =3D DBI->connect ("DBI:mysql:$database;
$host","articom","")
208 || die "Could not connect to database: "
209 . DBI-> errstr;
210
211 my $town_query =3D $destination_connect->prepare(" SELECT
code_postal, departement.nom_departement as nom_departement
212 FROM
fiche_champs_gratuits
213 JOIN departement
214 ON
departement.num_departement =3D ROUND((code_postal - (code_postal %
1000)) /1000)
215 ");
216
217
218 my($code_postal_0,$nom_departement);
219 $town_query->execute();
220 $town_query->bind_columns(undef, \$code_postal_0,\
$nom_departement);
221
222
223 while($town_query->fetch())
224 {
225 $hash_town{$code_postal_0}=3D$nom_departement;
226 }
227 $town_query->finish();
228
229 # purge les nom de fichiers FIV
230 my $purge_query =3D $destination_connect->prepare("UPDATE
fiche_champs_gratuits SET fichier =3D NULL");
231 $purge_query->execute;
232 $purge_query->finish();
233
234 my $destination_query =3D $destination_connect->prepare("SELECT
id,nom,ville,code_postal
235 FROM
fiche_champs_gratuits
236 ");
237 my($id,$nom, $ville,$code_postal);
238 $destination_query->execute();
239 $destination_query->bind_columns(undef, \$id,\$nom,\$ville,\
$code_postal);
240
241 my $update_query =3D $destination_connect->prepare("UPDATE
fiche_champs_gratuits SET fichier =3D ? WHERE id =3D ?");
242
243 my $contenu =3D "";
244
245 open(F, ">", "../map.txt");
246
247 while($destination_query->fetch())
248 {
249 my $nom_fichier =3D $hash_town{$code_postal}." ".$ville." ".
$nom;
250 $nom_fichier =3D~ s/[^\w]/-/g;
251 $nom_fichier =3D~ s/(-)+$//g;
252 $nom_fichier =3D~ s/(-)+/-/g;
253 $nom_fichier =3D~ tr/A-Z/a-z/;
254 print F $nom_fichier.".php php/fiches-
virtuelles.php?id=3D$id "."\n";
255 $update_query->execute($nom_fichier,$id);
256 $update_query->finish();
257 }
258 $destination_query->finish();
259
260 # purge noms fichiers ARTICLES
261 my $purge_articles=3D$destination_connect->prepare("UPDATE
article_libre SET fichier=3D NULL");
262 $purge_articles->execute;
263 $purge_articles->finish();
264
265 my $update_article=3D$destination_connect->prepare("UPDATE
article_libre SET fichier =3D ? WHERE id_article =3D ?");
266
267 my $articles_select=3D$destination_connect->prepare("SELECT
id_article, titre_gauche FROM article_libre");
268 my ($id_article, $titre_gauche);
269 $articles_select->execute();
270 $articles_select->bind_columns(undef, \$id_article, \
$titre_gauche);
271 while($articles_select->fetch())
272 {
273 my $nom_article=3D$titre_gauche;
274 $nom_article=3D~ s/[^\w]/-/g;
275 $nom_article=3D~ s/(-)+$//g;
276 $nom_article=3D~ s/(-)+/-/g;
277 $nom_article=3D~ tr/A-Z/a-z/;
278 print F $nom_article.".php php/article.php?id=3D
$id_article "."\n";
279 $update_article->execute($nom_article,$id_article);
280 $update_article->finish();
281 }
282
283 $articles_select->finish();
284
285 close(F);
286
287 $destination_connect->disconnect();
288
289 if($filename eq '')
290 {
291 print "<html><head></head><body><a href=3D\"http://$hostname/
\">Revenir</a></body></html>";
292 }
293 else
294 {
295 print "<html><head></head><body><a href=3D\"http://$hostname/
backoffice/php/ajouter_csv.php\">Revenir</a></body></html>";
296 }
}}
Maminirina Hasina RAKOTONINDRAINY wrote in message :
Je suis bloqué sur une erreur depuis quelques jour. Je me connecte à une base de données mysql. J'ai le message d'erreur suivant :
Simplifie ton programme de manière à ce qu'il ne fasse plus que quelques lignes mais fasse toujours l'erreur.
jl_morel
Dans l'article <3c79472b-eb98-4e0a-9e39- , a dit...
Je suis bloqué sur une erreur depuis quelques jour. Je me connecte à une base de données mysql. J'ai le message d'erreur suivant :
"DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/ perl.pl line 207 Could not connect to database: Access denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line 207."
En faisant un diagnostic du programme, la ligne 30 ne retourne pas de résultat.
La variable d'environnement SERVER_ADDR n'est pas toujours définie; ça dépend du serveur.
Essayez plutôt
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
en rajoutant un
use Socket;
en haut du script.
HTH
-- J-L.M. http://www.bribes.org/perl
Dans l'article <3c79472b-eb98-4e0a-9e39-
773b326c92cd@y7g2000yqa.googlegroups.com>, hrakotonindrainy@gmail.com a dit...
Je suis bloqué sur une erreur depuis quelques jour.
Je me connecte à une base de données mysql. J'ai le message d'erreur
suivant :
"DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access
denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/
perl.pl line 207
Could not connect to database: Access denied for user
''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line
207."
En faisant un diagnostic du programme, la ligne 30 ne retourne pas de
résultat.
La variable d'environnement SERVER_ADDR n'est pas toujours définie; ça
dépend du serveur.
Essayez plutôt
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
Dans l'article <3c79472b-eb98-4e0a-9e39- , a dit...
Je suis bloqué sur une erreur depuis quelques jour. Je me connecte à une base de données mysql. J'ai le message d'erreur suivant :
"DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/ perl.pl line 207 Could not connect to database: Access denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line 207."
En faisant un diagnostic du programme, la ligne 30 ne retourne pas de résultat.
La variable d'environnement SERVER_ADDR n'est pas toujours définie; ça dépend du serveur.
Essayez plutôt
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
en rajoutant un
use Socket;
en haut du script.
HTH
-- J-L.M. http://www.bribes.org/perl
Nicolas George
Jean-Louis MOREL wrote in message <4a660c6f$0$429$:
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
gethostbyname est obsolète. Il faut utiliser getaddrinfo dans le code récent. L'API de perl est un peu à la traîne de ce point de vue.
Jean-Louis MOREL wrote in message
<4a660c6f$0$429$426a74cc@news.free.fr>:
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
gethostbyname est obsolète. Il faut utiliser getaddrinfo dans le code
récent. L'API de perl est un peu à la traîne de ce point de vue.
Jean-Louis MOREL wrote in message <4a660c6f$0$429$:
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
gethostbyname est obsolète. Il faut utiliser getaddrinfo dans le code récent. L'API de perl est un peu à la traîne de ce point de vue.
Denis Dordoigne
Bonjour,
En faisant un diagnostic du programme, la ligne 30 ne retourne pas de résultat.
C'est normal, comme le dit perldoc dbi : If the connect fails (see below), it returns undef and sets both $DBI::err and $DBI::errstr. (It does not explicitly set $!.) You should generally test the return status of connect and print $DBI::errstr if it has failed.
Un petit "print $DBI::errstr;" devrait préciser l'erreur
-- Denis Dordoigne Membre de l'April - promouvoir et défendre le logiciel libre - april.org Rejoignez maintenant plus de 5 000 personnes, associations, entreprises et collectivités qui soutiennent notre action
Bonjour,
En faisant un diagnostic du programme, la ligne 30 ne retourne pas de
résultat.
C'est normal, comme le dit perldoc dbi :
If the connect fails (see below), it returns undef and sets both $DBI::err
and $DBI::errstr. (It does not explicitly set $!.) You should generally test
the return status of connect and print $DBI::errstr if it has failed.
Un petit "print $DBI::errstr;" devrait préciser l'erreur
--
Denis Dordoigne
Membre de l'April - promouvoir et défendre le logiciel libre - april.org
Rejoignez maintenant plus de 5 000 personnes, associations,
entreprises et collectivités qui soutiennent notre action
En faisant un diagnostic du programme, la ligne 30 ne retourne pas de résultat.
C'est normal, comme le dit perldoc dbi : If the connect fails (see below), it returns undef and sets both $DBI::err and $DBI::errstr. (It does not explicitly set $!.) You should generally test the return status of connect and print $DBI::errstr if it has failed.
Un petit "print $DBI::errstr;" devrait préciser l'erreur
-- Denis Dordoigne Membre de l'April - promouvoir et défendre le logiciel libre - april.org Rejoignez maintenant plus de 5 000 personnes, associations, entreprises et collectivités qui soutiennent notre action
espie
In article <4a661844$0$434$, Nicolas George <nicolas$ wrote:
Jean-Louis MOREL wrote in message <4a660c6f$0$429$:
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
gethostbyname est obsolète. Il faut utiliser getaddrinfo dans le code récent. L'API de perl est un peu à la traîne de ce point de vue.
tu y vas un peu fort. c'est vrai que c'est mieux d'utiliser getaddrinfo, mais dire que gethostbyname est obsolete, ca fait zelote Ipv6...
In article <4a661844$0$434$426a74cc@news.free.fr>,
Nicolas George <nicolas$george@salle-s.org> wrote:
Jean-Louis MOREL wrote in message
<4a660c6f$0$429$426a74cc@news.free.fr>:
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
gethostbyname est obsolète. Il faut utiliser getaddrinfo dans le code
récent. L'API de perl est un peu à la traîne de ce point de vue.
tu y vas un peu fort. c'est vrai que c'est mieux d'utiliser getaddrinfo,
mais dire que gethostbyname est obsolete, ca fait zelote Ipv6...
In article <4a661844$0$434$, Nicolas George <nicolas$ wrote:
Jean-Louis MOREL wrote in message <4a660c6f$0$429$:
my $ip = inet_ntoa scalar gethostbyname($ENV{SERVER_NAME});
gethostbyname est obsolète. Il faut utiliser getaddrinfo dans le code récent. L'API de perl est un peu à la traîne de ce point de vue.
tu y vas un peu fort. c'est vrai que c'est mieux d'utiliser getaddrinfo, mais dire que gethostbyname est obsolete, ca fait zelote Ipv6...
Yves Pointin
Maminirina Hasina RAKOTONINDRAINY a écrit :
Bonjour,
Bonjour,
Je suis bloqué sur une erreur depuis quelques jour. Je me connecte à une base de données mysql. J'ai le message d'erreur suivant :
"DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/ perl.pl line 207 Could not connect to database: Access denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line 207."
Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette base. .......
85 86 my $connect = DBI->connect ("DBI:mysql:$database;$host",$user, $password);
Moi, je fais my $base="pdd" ; my $machine="192.168.0.1" ; my $data_source="DBI:mysql:database=".$base.";host=".$machine ; ^^^^^^^^^^ ^^^^^ my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError => 1, AutoCommit => 0}) or die $DBI::errstr;
HTH
Cordialement, -- Dr. POINTIN Yves B. perl -e "$_='';1 while s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Maminirina Hasina RAKOTONINDRAINY a écrit :
Bonjour,
Bonjour,
Je suis bloqué sur une erreur depuis quelques jour.
Je me connecte à une base de données mysql. J'ai le message d'erreur
suivant :
"DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access
denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/
perl.pl line 207
Could not connect to database: Access denied for user
''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line
207."
Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette base.
.......
85
86 my $connect = DBI->connect ("DBI:mysql:$database;$host",$user,
$password);
Moi, je fais
my $base="pdd" ;
my $machine="192.168.0.1" ;
my $data_source="DBI:mysql:database=".$base.";host=".$machine ;
^^^^^^^^^^ ^^^^^
my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError =>
1, AutoCommit => 0})
or die $DBI::errstr;
HTH
Cordialement,
--
Dr. POINTIN Yves B.
perl -e "$_='.frontermpclv-bunigc.@optinoinY.P';1 while
s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Je suis bloqué sur une erreur depuis quelques jour. Je me connecte à une base de données mysql. J'ai le message d'erreur suivant :
"DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/ perl.pl line 207 Could not connect to database: Access denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line 207."
Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette base. .......
85 86 my $connect = DBI->connect ("DBI:mysql:$database;$host",$user, $password);
Moi, je fais my $base="pdd" ; my $machine="192.168.0.1" ; my $data_source="DBI:mysql:database=".$base.";host=".$machine ; ^^^^^^^^^^ ^^^^^ my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError => 1, AutoCommit => 0}) or die $DBI::errstr;
HTH
Cordialement, -- Dr. POINTIN Yves B. perl -e "$_='';1 while s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Maminirina Hasina RAKOTONINDRAINY
On 22 juil, 09:52, Yves Pointin wrote:
Maminirina Hasina RAKOTONINDRAINY a écrit :> Bonjour,
Bonjour,
> Je suis bloqué sur une erreur depuis quelques jour. > Je me connecte à une base de données mysql. J'ai le message d'erreu r > suivant :
> "DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access > denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/ > perl.pl line 207 > Could not connect to database: Access denied for user > ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line > 207."
Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette b ase. .......
Moi, je fais my $base="pdd" ; my $machine="192.168.0.1" ; my $data_source="DBI:mysql:database=".$base.";host=".$machine ; ^^^^^^^^^^ ^^^^^ my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError => 1, AutoCommit => 0}) or die $DBI::errstr;
HTH
Cordialement, -- Dr. POINTIN Yves B. perl -e "$_='';1 while s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Mon diagnostic me donne que les variables $ENV ne retournent aucun résultat(Ligne 20, 30 ...). Je ne sais pas si il y a une mauvaise configuration ou pas.
On 22 juil, 09:52, Yves Pointin <annelaure.poin...@free.fr> wrote:
Maminirina Hasina RAKOTONINDRAINY a écrit :> Bonjour,
Bonjour,
> Je suis bloqué sur une erreur depuis quelques jour.
> Je me connecte à une base de données mysql. J'ai le message d'erreu r
> suivant :
> "DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access
> denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/
> perl.pl line 207
> Could not connect to database: Access denied for user
> ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line
> 207."
Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette b ase.
.......
Moi, je fais
my $base="pdd" ;
my $machine="192.168.0.1" ;
my $data_source="DBI:mysql:database=".$base.";host=".$machine ;
^^^^^^^^^^ ^^^^^
my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError =>
1, AutoCommit => 0})
or die $DBI::errstr;
HTH
Cordialement,
--
Dr. POINTIN Yves B.
perl -e "$_='.frontermpclv-buni...@optinoinY.P';1 while
s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Mon diagnostic me donne que les variables $ENV ne retournent aucun
résultat(Ligne 20, 30 ...).
Je ne sais pas si il y a une mauvaise configuration ou pas.
Maminirina Hasina RAKOTONINDRAINY a écrit :> Bonjour,
Bonjour,
> Je suis bloqué sur une erreur depuis quelques jour. > Je me connecte à une base de données mysql. J'ai le message d'erreu r > suivant :
> "DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access > denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/ > perl.pl line 207 > Could not connect to database: Access denied for user > ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line > 207."
Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette b ase. .......
Moi, je fais my $base="pdd" ; my $machine="192.168.0.1" ; my $data_source="DBI:mysql:database=".$base.";host=".$machine ; ^^^^^^^^^^ ^^^^^ my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError => 1, AutoCommit => 0}) or die $DBI::errstr;
HTH
Cordialement, -- Dr. POINTIN Yves B. perl -e "$_='';1 while s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Mon diagnostic me donne que les variables $ENV ne retournent aucun résultat(Ligne 20, 30 ...). Je ne sais pas si il y a une mauvaise configuration ou pas.
Maminirina Hasina RAKOTONINDRAINY
On 22 juil, 16:41, Maminirina Hasina RAKOTONINDRAINY wrote:
On 22 juil, 09:52, Yves Pointin wrote:
> Maminirina Hasina RAKOTONINDRAINY a écrit :> Bonjour,
> Bonjour,
> > Je suis bloqué sur une erreur depuis quelques jour. > > Je me connecte à une base de données mysql. J'ai le message d'err eur > > suivant :
> > "DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access > > denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bi n/ > > perl.pl line 207 > > Could not connect to database: Access denied for user > > ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line > > 207."
> Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette base. > .......
> Moi, je fais > my $base="pdd" ; > my $machine="192.168.0.1" ; > my $data_source="DBI:mysql:database=".$base.";host=".$machine ; > ^^^^^^^^^^ ^^^^^ > my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError => > 1, AutoCommit => 0}) > or die $DBI::errstr;
> HTH
> Cordialement, > -- > Dr. POINTIN Yves B. > perl -e "$_='';1 while > s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Mon diagnostic me donne que les variables $ENV ne retournent aucun résultat(Ligne 20, 30 ...). Je ne sais pas si il y a une mauvaise configuration ou pas.
Le problème de conection à la base est résolu. J'ai fait un GRANT PRIVILEGES. Mais le programme ne marche pas encore. Les variables $ENV ne renvoient aucun résultat.
On 22 juil, 16:41, Maminirina Hasina RAKOTONINDRAINY
<hrakotonindra...@gmail.com> wrote:
On 22 juil, 09:52, Yves Pointin <annelaure.poin...@free.fr> wrote:
> Maminirina Hasina RAKOTONINDRAINY a écrit :> Bonjour,
> Bonjour,
> > Je suis bloqué sur une erreur depuis quelques jour.
> > Je me connecte à une base de données mysql. J'ai le message d'err eur
> > suivant :
> > "DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access
> > denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bi n/
> > perl.pl line 207
> > Could not connect to database: Access denied for user
> > ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line
> > 207."
> Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette base.
> .......
> Moi, je fais
> my $base="pdd" ;
> my $machine="192.168.0.1" ;
> my $data_source="DBI:mysql:database=".$base.";host=".$machine ;
> ^^^^^^^^^^ ^^^^^
> my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError =>
> 1, AutoCommit => 0})
> or die $DBI::errstr;
> HTH
> Cordialement,
> --
> Dr. POINTIN Yves B.
> perl -e "$_='.frontermpclv-buni...@optinoinY.P';1 while
> s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Mon diagnostic me donne que les variables $ENV ne retournent aucun
résultat(Ligne 20, 30 ...).
Je ne sais pas si il y a une mauvaise configuration ou pas.
Le problème de conection à la base est résolu. J'ai fait un GRANT
PRIVILEGES. Mais le programme ne marche pas encore.
Les variables $ENV ne renvoient aucun résultat.
On 22 juil, 16:41, Maminirina Hasina RAKOTONINDRAINY wrote:
On 22 juil, 09:52, Yves Pointin wrote:
> Maminirina Hasina RAKOTONINDRAINY a écrit :> Bonjour,
> Bonjour,
> > Je suis bloqué sur une erreur depuis quelques jour. > > Je me connecte à une base de données mysql. J'ai le message d'err eur > > suivant :
> > "DBI connect('articom;ns366702.ovh.net','articom',...) failed: Access > > denied for user ''@'ns366702.ovh.net' to database 'articom' at cgi-bi n/ > > perl.pl line 207 > > Could not connect to database: Access denied for user > > ''@'ns366702.ovh.net' to database 'articom' at cgi-bin/perl.pl line > > 207."
> Cela me semble dire que l'utilisateur '' n'est pas autorisé sur cette base. > .......
> Moi, je fais > my $base="pdd" ; > my $machine="192.168.0.1" ; > my $data_source="DBI:mysql:database=".$base.";host=".$machine ; > ^^^^^^^^^^ ^^^^^ > my $dbh = DBI->connect($data_source,$nomutilisateur,$pass,{RaiseError => > 1, AutoCommit => 0}) > or die $DBI::errstr;
> HTH
> Cordialement, > -- > Dr. POINTIN Yves B. > perl -e "$_='';1 while > s/(.{3})(.{3})?/$_{$2}=$1,$2/e; ; print while $_=$_{$_};"
Mon diagnostic me donne que les variables $ENV ne retournent aucun résultat(Ligne 20, 30 ...). Je ne sais pas si il y a une mauvaise configuration ou pas.
Le problème de conection à la base est résolu. J'ai fait un GRANT PRIVILEGES. Mais le programme ne marche pas encore. Les variables $ENV ne renvoient aucun résultat.
Denis Dordoigne
Bonjour,
Les variables $ENV ne renvoient aucun résultat.
Si module Env est utilisé ("Use Env") il ne faut plus passer par %ENV pour récupérer l'environnement, mais les variables du même nom directement ($SERVER_NAME par exemple) Cf. http://search.cpan.org/~nwclark/perl-5.8.9/lib/Env.pm
Mais d'un point de vue sécurité je ne suis pas convaincu que le module Env soit recommandé dans un environnement web.
Bonne continuation,
-- Denis Dordoigne Membre de l'April - promouvoir et défendre le logiciel libre - april.org Rejoignez maintenant plus de 5 000 personnes, associations, entreprises et collectivités qui soutiennent notre action
Bonjour,
Les variables $ENV ne renvoient aucun résultat.
Si module Env est utilisé ("Use Env") il ne faut plus passer par %ENV
pour récupérer l'environnement, mais les variables du même nom
directement ($SERVER_NAME par exemple) Cf.
http://search.cpan.org/~nwclark/perl-5.8.9/lib/Env.pm
Mais d'un point de vue sécurité je ne suis pas convaincu que le module
Env soit recommandé dans un environnement web.
Bonne continuation,
--
Denis Dordoigne
Membre de l'April - promouvoir et défendre le logiciel libre - april.org
Rejoignez maintenant plus de 5 000 personnes, associations,
entreprises et collectivités qui soutiennent notre action
Si module Env est utilisé ("Use Env") il ne faut plus passer par %ENV pour récupérer l'environnement, mais les variables du même nom directement ($SERVER_NAME par exemple) Cf. http://search.cpan.org/~nwclark/perl-5.8.9/lib/Env.pm
Mais d'un point de vue sécurité je ne suis pas convaincu que le module Env soit recommandé dans un environnement web.
Bonne continuation,
-- Denis Dordoigne Membre de l'April - promouvoir et défendre le logiciel libre - april.org Rejoignez maintenant plus de 5 000 personnes, associations, entreprises et collectivités qui soutiennent notre action
La variable $ENV est certainement indéfinie puisqu'elle ne joue aucun rôle particulier en Perl... En revanche, la table de hachage %ENV existe toujours et contient les associations nom=>valeur pour chaque variable d'environnement du processus courant.
Par exemple, $ENV{PATH} doit retourner la liste des chemins d'accès aux exécutable. $ENV{SERVER_ADDR} n'existe généralement pas par défaut mais peut-être définie par un serveur Web qui fait appel à un programme via CGI.
Si module Env est utilisé ("Use Env") il ne faut plus passer par %ENV pour récupérer l'environnement, mais les variables du même nom directement ($SERVER_NAME par exemple)
La table de hachage %ENV existe toujours même si on peut aussi accéder aux variables d'environnement via leur nom.
Mais d'un point de vue sécurité je ne suis pas convaincu que le module Env soit recommandé dans un environnement web.
D'un point de vue sécurité, le module 'Env' suppose qu'on fait confiance à celui qui a accès à l'environnement dans lequel s'exécute le script (et en particulier aux noms de variables d'environnement utilisées). Je ne connais aucun serveur Web qui permet à un utilisateur distant de modifier le nom des variables d'environnement transmises à un script CGI.
-- Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/> Perl en français - <http://perl.mines-albi.fr/>
La variable $ENV est certainement indéfinie puisqu'elle ne joue aucun
rôle particulier en Perl... En revanche, la table de hachage %ENV
existe toujours et contient les associations nom=>valeur pour chaque
variable d'environnement du processus courant.
Par exemple, $ENV{PATH} doit retourner la liste des chemins d'accès
aux exécutable. $ENV{SERVER_ADDR} n'existe généralement pas par défaut
mais peut-être définie par un serveur Web qui fait appel à un
programme via CGI.
Si module Env est utilisé ("Use Env") il ne faut plus passer par %ENV
pour récupérer l'environnement, mais les variables du même nom
directement ($SERVER_NAME par exemple)
La table de hachage %ENV existe toujours même si on peut aussi accéder
aux variables d'environnement via leur nom.
Mais d'un point de vue sécurité je ne suis pas convaincu que le module
Env soit recommandé dans un environnement web.
D'un point de vue sécurité, le module 'Env' suppose qu'on fait
confiance à celui qui a accès à l'environnement dans lequel s'exécute
le script (et en particulier aux noms de variables d'environnement
utilisées). Je ne connais aucun serveur Web qui permet à un
utilisateur distant de modifier le nom des variables d'environnement
transmises à un script CGI.
--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
La variable $ENV est certainement indéfinie puisqu'elle ne joue aucun rôle particulier en Perl... En revanche, la table de hachage %ENV existe toujours et contient les associations nom=>valeur pour chaque variable d'environnement du processus courant.
Par exemple, $ENV{PATH} doit retourner la liste des chemins d'accès aux exécutable. $ENV{SERVER_ADDR} n'existe généralement pas par défaut mais peut-être définie par un serveur Web qui fait appel à un programme via CGI.
Si module Env est utilisé ("Use Env") il ne faut plus passer par %ENV pour récupérer l'environnement, mais les variables du même nom directement ($SERVER_NAME par exemple)
La table de hachage %ENV existe toujours même si on peut aussi accéder aux variables d'environnement via leur nom.
Mais d'un point de vue sécurité je ne suis pas convaincu que le module Env soit recommandé dans un environnement web.
D'un point de vue sécurité, le module 'Env' suppose qu'on fait confiance à celui qui a accès à l'environnement dans lequel s'exécute le script (et en particulier aux noms de variables d'environnement utilisées). Je ne connais aucun serveur Web qui permet à un utilisateur distant de modifier le nom des variables d'environnement transmises à un script CGI.
-- Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/> Perl en français - <http://perl.mines-albi.fr/>