Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Débuter
Débuter Forum d'entraide pour débuter avec MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/08/2007, 13h33   #1
Membre régulier
 
Inscription : août 2006
Messages : 169
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 169
Points : 82
Points : 82
Par défaut pb de login

Bonjour,

voici mon fichier index.php :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<?php
session_start();
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Elite - Gestion des accès</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="inc/style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
<!--
//-->
</script>
</head>
 
<body>
 
<div id="body_menu"> 
  <TABLE border="0" cellpadding="10">
    <tr> 
      <td align="left" valign="top"> 
        <IMG SRC="images/menu/CNES_fond.png" ALT="CNES">
      </td>
    </tr>
    <tr> 
      <td align="center" valign="top"> 
	<IMG SRC="images/menu/Logo_ALTEN.png" ALT="ASO">
      </td>
    </tr>
  </table>
</div>
 
<div id="body_page">
<BR><BR><BR><BR>
 
 
<?php
 
 include ('inc/function.php');
 
IF (isset($_GET['option'])) $option = $_GET['option'];
else $option = "";
 
 
IF (strcmp($option, "") == 0)
{
  // <!------------------ formulaire d'identification ------------------>
  echo "<CENTER><h1>Identification</h1>";
  echo "<FORM NAME='entre' ACTION='index.php?option=verif' METHOD='POST'>";
  echo "
    <table>
      <tr> 
        <td class='police_right_12_black' align='right' valign='top'>
          Votre Pseudo : <br>
          <br>
          Votre Password : <br>
        </td>
        <td align='left' valign='top'> 
   	  <input type='text' name='nom' size='20' MAXLENGTH='40'><br>
   	  <br>
   	  <input type='password' name='pass' size='20' MAXLENGTH='40'>
        </td>
      </tr> 
    </table><br>
    <INPUT TYPE='submit' VALUE=' Valider '>";
 
  echo "</FORM></CENTER><BR><BR>";
}
 
elseif (strcmp($option, "verif") == 0)
{
  IF (isset($_POST['nom']))
  {
    $nom = $_POST['nom'];
    $_SESSION['nom'] = $nom;
  }
  IF (isset($_POST['pass']))
  {
    $pass = $_POST['pass'];
    $_SESSION['pass'] = $pass;
  }
 
  $_SESSION['droit_admin'] = "init";
  $i = 0;
 
  $tbnm= array();
  $tbps= array();
  $delite= array();
 
  // Entrez, suivant les modeles ci-dessous, les noms, mots de passe, et type de droit
  // connexion bdd
  $mysql_link = mysql_connect(_DBHOST, _DBUSER, _DBPASS);
  mysql_selectdb(_DBNAME) OR die("Connexion impossible");
 
  // requete sql
  $res=mysql_query("SELECT * FROM `membre` WHERE 1;");
  while($ligne=mysql_fetch_row($res))
  {
    $tbnm[$i] = $ligne[2];
    $tbps[$i] = $ligne[3];
    $delite[$i] = $ligne[4];
    $i++;
  }
  @mysql_close();
 
  $szn= sizeof( $tbnm );
  $szp= sizeof( $tbps );
  $szg= sizeof( $delite );
 
  IF ($szn != $szp || $szn != $szg || $szg != $szp)
  {
    echo "<FONT COLOR='red'>Erreur de cohérence de données... Veuillez contacter le WebMaster";
    echo "<SCRIPT LANGUAGE='JavaScript'>window.setTimeout('window.location = \"index.php?option=erreur\"', 5000)</SCRIPT>";
    exit;
  }
 
 
  FOR ($i = 0; $i < $szn; $i++)
  {
    IF ($nom == $tbnm[$i] && $pass == $tbps[$i])
    {
      $_SESSION['droit_admin'] = $delite[$i];
 
      echo '<script type="text/javascript">location.replace("depart.php")</script>';
      exit;
    }
  }
 
  echo "<SCRIPT LANGUAGE='JavaScript'>window.setTimeout('window.location = \"index.php?option=pas_trouve\"', 1)</SCRIPT>";
}
 
elseif (strcmp($option, "erreur") == 0)
{
  echo "<CENTER>Utilisateur inconnu, ou erreur de saisie.</CENTER>";
}
 
else
{
  echo "<CENTER>Vous n'&ecirc;tes pas inscrit dans la base de donn&eacute;e, veuillez vous y inscrire aupr&egrave;s du Webmaster</CENTER>";
}
 
?>
</div>
 
</BODY>
</HTML>
j'arrive à regarder le contenu de la base (est-ce la bonne ? je ne sais pas..il y en a 4 différentes dont mysql..où regarde-t-on si Web Local fait bien référence à la bonne base ???), la table membre contient bien le login et mdp que je saisis dans index.php.

Et voici l'erreur que j'obtiens :
Warning: mysql_connect(): Accès refusé pour l'utilisateur: 'elite'@'@localhost' (mot de passe: OUI) in c:\program files\easyphp1-8\www\index.php on line 93

Warning: mysql_selectdb(): Accès refusé pour l'utilisateur: 'ODBC'@'@localhost' (mot de passe: NON) in c:\program files\easyphp1-8\www\index.php on line 94

Warning: mysql_selectdb(): A link to the server could not be established in c:\program files\easyphp1-8\www\index.php on line 94
Connexion impossible


La ligne 93 correspond à $mysql_link = mysql_connect(_DBHOST, _DBUSER, _DBPASS);

Je précise que je reprends le code de qq'1 qui est parti en vacances donc je suis un peu paumé..surtout que je connais pas trop mysql..Ca fonctionnait hier mais aujourd'hui j'avais une erreur d'easyphp alors j'ai fait une réinstall de easyphp en recopiant les bons fichiers qu'il faut dans le répertoire www d'EasyPHP.
j'espère que qq'1 pourra m'aider

Merci
ninikkhuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 10h59   #2
Membre régulier
 
Inscription : août 2006
Messages : 169
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 169
Points : 82
Points : 82
J'ai délaissé mon problème pendant un moment mais c'est toujours pareil..en fait je viens de me rendre compte que lorsque je vais dans Panneau d'Administration / Outils d'administration / Sources de données (ODBC), mon test ne fonctionne même pas et j'obtiens la même erreur dans la partie Diagnostics...Le truc c'est que je n'arrive pas à comprendre dans quelle base et dans quelle table ça va chercher les logins et mdp si quelqu'un pouvait m'expliquer ....

Merci
ninikkhuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 11h13   #3
Membre actif
 
Inscription : juillet 2007
Messages : 179
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : juillet 2007
Messages : 179
Points : 159
Points : 159
as tu bien vérifié tes privilèges après la réinstallation?
ou vérifie si tu n'as pas "@localhost" dans DBHOST
tu devrais avoir: (j'ai wamp donc c'est un peu différent)

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'elite'@'localhost' (using password: YES)
sebdu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 11h16   #4
Membre actif
 
Inscription : juillet 2007
Messages : 179
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : juillet 2007
Messages : 179
Points : 159
Points : 159
tu trouves les utilisateurs de phpmyadmin dans la partie privilèges (administration bd->privilèges)
sebdu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 11h27   #5
Membre régulier
 
Inscription : août 2006
Messages : 169
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 169
Points : 82
Points : 82
Citation:
Envoyé par sebdu Voir le message
ou vérifie si tu n'as pas "@localhost" dans DBHOST
dans DBHOST j'ai 127.0.0.1
ninikkhuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 11h29   #6
Membre régulier
 
Inscription : août 2006
Messages : 169
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 169
Points : 82
Points : 82
Citation:
Envoyé par sebdu Voir le message
tu trouves les utilisateurs de phpmyadmin dans la partie privilèges (administration bd->privilèges)
ah..eh bien là déjà je n'ai que ce qu'il y a par défaut : utilisateur root, serveur localhost et pas de mot de passe
ninikkhuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 11h34   #7
Membre actif
 
Inscription : juillet 2007
Messages : 179
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : juillet 2007
Messages : 179
Points : 159
Points : 159
ajoute ton utilisateur elite et ça devrait marcher
sebdu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 11h52   #8
Membre régulier
 
Inscription : août 2006
Messages : 169
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 169
Points : 82
Points : 82
Citation:
Envoyé par sebdu Voir le message
ajoute ton utilisateur elite et ça devrait marcher
ça change rien du tout, toujours la même erreur
ninikkhuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 12h18   #9
Membre actif
 
Inscription : juillet 2007
Messages : 179
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : juillet 2007
Messages : 179
Points : 159
Points : 159
alors je vois pas, à part le
'elite'@'@localhost'
qui a un @ de trop
tu peux chercher de ce côté :
par exemple essayer de mettre localhost au lieu de 127.0.0.1 dans dbhost je pense pas que ça change grand chose mais faut tout tester.....des fois c'est le petit truc auquel on croit même pas

sinon espère que quelqu'un qui s'y connaisse vraiment vienne te donner un coup de main
bon courage
sebdu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 12h49   #10
Membre régulier
 
Inscription : août 2006
Messages : 169
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 169
Points : 82
Points : 82
j'y comprends rien, dans mon fichier conf.php que j'inclus dans function.php qui est lui-même inclus dans index.php j'ai bien:
<?php

define("_DBHOST","127.0.0.1"); //serveur
define("_DBUSER","elite"); //user
define("_DBPASS","elite"); //password
define("_DBNAME","elite"); //nom de la base

?>
et dans ma table user de mysql, j'ai bien la ligne Host=localhost, User=elite, Password=elite..
je vais pêter un plomb là
ninikkhuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 14h15   #11
Membre actif
 
Inscription : juillet 2007
Messages : 179
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : juillet 2007
Messages : 179
Points : 159
Points : 159
Citation:
Envoyé par ninikkhuet Voir le message
j'y comprends rien, dans mon fichier conf.php que j'inclus dans function.php qui est lui-même inclus dans index.php j'ai bien:
<?php

define("_DBHOST","127.0.0.1"); //serveur
define("_DBUSER","elite"); //user
define("_DBPASS","elite"); //password
define("_DBNAME","elite"); //nom de la base

?>
et dans ma table user de mysql, j'ai bien la ligne Host=localhost, User=elite, Password=elite..
je vais pêter un plomb là
essaie
Code :
define("_DBHOST","localhost");
pour voir
sebdu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 14h59   #12
Membre régulier
 
Inscription : août 2006
Messages : 169
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 169
Points : 82
Points : 82
le fait de mettre localhost ou 127.0.0.1 ne change rien du tout..mais j'ai du nouveau : lorsque je change conf.php en mettant
Code :
1
2
define("_DBUSER","root");			//user
define("_DBPASS","");                            // mdp
ça fonctionne.. je me suis peut-être plantée en rajoutant la ligne dans la table user de Mysql..ya une manière particulière de rajouter un user ?
ninikkhuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 15h48   #13
Membre régulier
 
Inscription : août 2006
Messages : 169
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 169
Points : 82
Points : 82
enfin enfin j'ai résolu le problème, bon j'ai pas très bien compris pourquoi il faut faire comme ça mais ça fonctionne
Pour ceux qui passeraient par là et qui se poseraient la question :

1- dans le fichier conf.inc.php situé dans le répertoire phpmyadmin, j'ai modifié les 3 lignes suivantes :
Code :
1
2
3
4
 
$cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http OR cookie based)?
$cfg['Servers'][$i]['user'] = 'elite'; // MySQL user
$cfg['Servers'][$i]['password'] = 'elite';
2- ensuite, dans la table user de la base mysql, j'ai fait un update pour modifier le mot de passe :
Code :
UPDATE user SET password=PASSWORD('elite') WHERE user='elite';
aussi peu à changer pour tant de recherches !...
ninikkhuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/08/2007, 00h46   #14
Membre actif
 
Inscription : juillet 2007
Messages : 179
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : juillet 2007
Messages : 179
Points : 159
Points : 159
merci,

comme je l'ai dit plus haut, j'avais eu (presque) le même problème et étant nouveau en php j'ai cherché et j'ai pu trouver des trucs intéressants là dessus
sebdu est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h38.


 
 
 
 
Partenaires

Hébergement Web