Version complète: sur le forum Webmaster Hub : Password?
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > SQL
Bourinho
Bonjour à tous,

mon niveau est plutot faible en HTML, PHP et SQL (je pense que vous allez vous en rendre compte dans la suite laugh.gif ).

Voilà ce qui m'est arrivé : j'ai téléchargé EasyPHP et je l'ai installe et tout allait bien. J'ai voulu tester la commande de type mysql_query et donc je commence mon fichier php par:

mysql_connect("localhost"‚ "root","");
mysql_select_db("bdd");

car je n'ai pas mis de password sur ma base donnees. Et hop, ça marche pas...

Bon, bah je me dis, mets un password bidon sur ta base sql et tu mets le même (pas completement bête quand meme le garçon...) et puis ca devrait marcher...

Et bam, ça marche pas... Donc déjà, première question : Pourquoi????

Et là, seconde question (la chute arrive... laugh.gif ) : Quand j'essais d'accéder à ma base de données, j'ai un message d'erreur qui est le suivant :

MySQL a répondu:Documentation
#1045 - Accés refusé pour l'utilisateur: 'root'@'@localhost' (mot de passe: OUI)

Comment puis-je retrouver mon accès à ma base de données???

Voilà, du coup, j'ai plus grand chose pour l'instant!!! biggrin.gif

Si quelqu'un avait les réponses à mes questions, je lui serait très reconnaissant d'avoir pitié d'un noob qu'essaie de se faire les dents (et qui vient de se les péter du coup... biggrin.gif )

Par avance, merci...

PS : Si y a un post ou y a une situation plus ridicule que celle là, pourriez vous me la donner pour satisfaire mon ego... laugh.gif
destroyedlolo
Peux etre une question con (ben ouai, je n'utilise que PostgreSQL ou Oracle) mais ... est-ce que le user Root existe dans ta database ?
Portekoi
Bonjour,

Par défaut,Root n'a pas de mot de passe car Easyphp est un environnement de test et non de production.


Portekoi
Bourinho
En fait, en cherchant un peu, il m'a dit d'aller dans config.inc.php

et je lis ça:

CITATION
$cfg['Servers'][$i]['host']          = 'localhost'; // MySQL hostname or IP address
$cfg['Servers'][$i]['port']          = '';          // MySQL port - leave blank for default port
$cfg['Servers'][$i]['socket']        = '';          // Path to the socket - leave blank for default socket
$cfg['Servers'][$i]['connect_type']  = 'tcp';      // How to connect to MySQL server ('tcp' or 'socket')
$cfg['Servers'][$i]['extension']    = 'mysql';    // The php MySQL extension to use ('mysql' or 'mysqli')
$cfg['Servers'][$i]['compress']      = FALSE;      // Use compressed protocol for the MySQL connection
                                                    // (requires PHP >= 4.3.0)
$cfg['Servers'][$i]['controluser']  = '';          // MySQL control user settings
                                                    // (this user must have read-only
$cfg['Servers'][$i]['controlpass']  = '';          // access to the "mysql/user"
                                                    // and "mysql/db" tables).
                                                    // The controluser is also
                                                    // used for all relational
                                                    // features (pmadb)
$cfg['Servers'][$i]['auth_type']    = 'config';    // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user']          = 'root';      // MySQL user
$cfg['Servers'][$i]['password']      = "123";          // MySQL password (only needed..)

Oui, bon, le password, pour l'instant, c'est 123... laugh.gif .mais ça veut pas marcher quand même...
Bref, c'est le fichier de base ou j'ai changé 'password'
Bourinho
D'accord Portekoi...mais je fais comment moi maintenant??? laugh.gif

Sinon, c'est pas très grave pour la base de données si elle est perdue...mais tu veux dire quon peut pas accéder à la base de données sur EasyPHP???

Merci pour vos réponse pour le moins rapides tongue.gif
xpatval
CITATION(Bourinho @ mercredi 17 mai 2006, 12h26)
Sinon, c'est pas très grave pour la base de données si elle est perdue...mais tu veux dire quon peut pas accéder à la base de données sur EasyPHP???
*

Si bien sur, et heureusement, sinon à quoi servirait Easyphp...

En local et par défaut, il n'y a pas de password, la connexion à la base se fait sans !, et cela fonctionne très bien ainsi.

Essaie avec cela....:
CODE
<?php
# Connect to the database
$dbhost = "localhost";
$dbuname = "root";
$dbpass = "";
$dbname = "nom-de-la-base";

    $GLOBALS["db_connexion"]=@mysql_connect($dbhost,$dbuname,$dbpass) or die ("CONNEXION IMPOSSIBLE");
    $GLOBALS["db"]=@mysql_select_db($dbname, $GLOBALS["db_connexion"]);
?>


Et j'utilise Easyphp depuis quelques années...

xpatval
captain_torche
Normalement, avec root et sans mdp, ça fonctionne (par défaut).
Tu dois avoir une erreur ailleurs dans ton script de connexion.
Notamment à cet endroit :
mysql_select_db("bdd");

Tu avais bien une base de données du nom bdd ?
Bourinho
CaptainTorche : bdd existait et existe toujours...mais je peux plus y accéder... wacko.gif

Donc maintenant, j'ai des solutions pour accéder à ma base de donnée depuis EasyPHP...mais maintenant qu'il y a un code, c'est foutu??? Même avec PhpMyAdmin???

Si c'est possible, j'aimerais bien la récupérer... unsure.gif

Et puis ça m'oblige à réinstaller EasyPHP maintenant, non? blink.gif
Portekoi
Redémarre EasyPhp....
Bourinho
J'ai essayé et ça marche pas... unsure.gif

Je vais le réinstaller je viens de retrouver une sauvegarde de ma base de données... biggrin.gif

Je pense que je ne referais pas la même erreur plus tard...et je vois qu'il me reste pas mal de truc à connaitre dans le domaine!!!!

Merci et à une prochaine (bourde... laugh.gif )
captain_torche
Sinon, ce qu'il faut(fallait) faire, c'est modifier les fichiers de conf de PhpMyAdmin, pour qu'ils renseignent le bon mdp, se connecter à MySQL, et re-modifier le mot de passe.
Bourinho
Salut,

je suis l'auteur de ce post et j'avance pas a pas... et je pense que pas mal de webmasters en herbe (pour ne pas dire en mousse... laugh.gif ) comme moi doivent suivre a peu près le même chemin que moi...

J'ai utilsé la méthode citée plus haut:

CITATION
<?php
# Connect to the database
$dbhost = "localhost";
$dbuname = "root";
$dbpass = "";
$dbname = "nom-de-la-base";

$GLOBALS["db_connexion"]=@mysql_connect($dbhost,$dbuname,$dbpass) or die ("CONNEXION IMPOSSIBLE");
$GLOBALS["db"]=@mysql_select_db($dbname, $GLOBALS["db_connexion"]);
?>



Alors, y a des trucs que je pige pas...
1)Pourquoi mettre des @ devant mysql_connect et mysql_select_db?
2)Pourquoi mettre le resultat de ces fonctions dans des variables globales?
3)Quelles sont les valeurs attendues de $GLOBALS["db_connexion"] et $GLOBALS["db"] ??? Pour moi, ça donne "Resource id #2" et "1", c'est bon signe???
4)Et enfin, quand je mets :

CITATION
$reponse=mysql_query('SELECT COUNT(*) FROM membres WHERE Pseudo=$Pseudo');
$donnees = mysql_fetch_array($reponse);


il me renvoit :

CITATION
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\monsite\inscription.php


alors que sur le net, j'ai vu plein d'exemples ou c'est censé marcher... wacko.gif

Par avance, merci
petit-ourson
CITATION(Bourinho @ jeudi 18 mai 2006, 14h55)
J'ai utilsé la méthode citée plus haut:
Alors, y a des trucs que je pige pas...
1)Pourquoi mettre des @ devant mysql_connect et mysql_select_db?

Pour ne pas voir les message d'erreur en cas d'erreur.

CITATION(Bourinho @ jeudi 18 mai 2006, 14h55)
2)Pourquoi mettre le resultat de ces fonctions dans des variables globales?

Pour pouvoir les utiliser n'importe où dans le code peut être.

CITATION(Bourinho @ jeudi 18 mai 2006, 14h55)
3)Quelles sont les valeurs attendues de $GLOBALS["db_connexion"] et $GLOBALS["db"] ??? Pour moi, ça donne "Resource id #2" et "1", c'est bon signe???

Oui bon signe.

CITATION(Bourinho @ jeudi 18 mai 2006, 14h55)
4)il me renvoit :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\monsite\inscription.php
alors que sur le net, j'ai vu plein d'exemples ou c'est censé marcher...  wacko.gif

Il y a une erreur dans ta requête. De plus, la façon dont tu as écrit ta requête, tu recherche le pseudo qui s'appelle "$pseudo". Il faut utiliser des double quote : " dans ton cas.
xpatval
L'ecriture de ta requête devrait plutôt ressembler à cela:
CODE
$reponse=mysql_query("SELECT COUNT(*) FROM membres WHERE Pseudo = '". $Pseudo ."'");
$donnees = mysql_fetch_array($reponse);


Vive le forum... wink.gif

xpatval
captain_torche
Quand ton texte est entouré de double-quotes ", il n'est pas nécessaire d'en sortir pour spécifier une variable, elle sera évaluée automatiquement.
Bourinho
Merci à tous, j'essaierai ça ce soir...(bah oui, je suis en Nouvelle Zélande... biggrin.gif )

13 min pour une réponse complète, le hub n'était pas très en forme cette fois ci...y a pas une garantie "Réponse en moins de dix minutes ou remboursé" sur ce forum??? tongue.gif

Encore merci!
Anonymus
CITATION(Bourinho @ jeudi 18 mai 2006, 23h21)
Merci à tous, j'essaierai ça ce soir...(bah oui, je suis en Nouvelle Zélande... biggrin.gif )

13 min pour une réponse complète, le hub n'était pas très en forme cette fois ci...y a pas une garantie "Réponse en moins de dix minutes ou remboursé" sur ce forum??? tongue.gif

Encore merci!
*

Si, mais pour les personnes 'à domicile', seulement. On attendra que tu rentres, pour cela biggrin.gif

Pour le '$GLOBALS', ca permet d'utiliser les variables dans une fonction, sans avoir à spécifier, dans ses paramètres, que la bdd est ouverte smile.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.