IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Connexion à une base [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 93
    Points : 51
    Points
    51
    Par défaut Connexion à une base
    Bonjour,

    Je travaille sur un projet web et je n'ai pas les droits d'administration sur la base.

    Je tente, dans mon code php de me connecter à la base de donnée que l'on m'a fournie.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $connexion = mysql_connect("$ip_serveur","monuser@127.0.0.1","$mot_de_passe","$nom_base")or die ("Impossible de se connecter: ".mysqli_error($connexion));
    Hors, j'ai ce message d'erreur :
    Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'monuser@127.0.0'@'192.168.100.254' (using password: YES) in /mapage.php on line 21
    Suivie de :

    Warning: mysqli_error() expects parameter 1 to be mysqli, boolean given in /mapage.php on line 21
    Impossible de se connecter:
    Je ne comprends pas pourquoi il tronque mon USER !

    En fait, je ne comprends même pas pourquoi je dois ajouter 127.0.0.1 à mon User...
    La personne en charge du serveur et de la base m'a dit : "Comme ça l’appli est pas lié à une machine". Mais je n'ai jamais fait ça avant.

    Si vous pouviez m'aider à comprendre pourquoi je n'arrive pas à me connecter à ma base de données ce serait vraiment gentil, je m'arrache les cheveux dessus depuis hier et je ne trouve rien via Google...

  2. #2
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Vatican

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2004
    Messages : 144
    Points : 238
    Points
    238
    Par défaut
    enlève le @127.0.0.1
    .
    . . Savoir, savoir faire, faire , faire savoir...

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    En fait, je ne comprends même pas pourquoi je dois ajouter 127.0.0.1 à mon User...
    C'est plutôt à la personne qui t'a dit de le mettre qu'il aurait fallu demander et si ça te choque tu aurais pu essayé sans (durée du test : 10s).

    Plus sérieusement je pense plutôt que l'accès à été donné à "user" depuis l'adresse IP 127.0.0.1 (c'est à dire depuis le serveur lui même) et que "@127.0.0.1" ne fait pas partie du login.

    Au passage ne met pas des guillemets pour rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $connexion = mysql_connect("$ip_serveur","monuser@127.0.0.1",$mot_de_passe,$nom_base)
    et l'extension mysql est obsolète, utilise PDO.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 93
    Points : 51
    Points
    51
    Par défaut
    Merci de prendre le temps de me répondre.

    J'ai évidement déjà tester sans le 127.0.0.1, c'est à partir de là que j'ai eu un message d'erreur, j'ai donc demander à l'admin et c'est là qu'il m'a dit de mettre user@127.0.0.1

    Entre temps, j'ai tester :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // Connexion à la base de données
    try
    {
        $bdd = new PDO('mysql:host=monhost;dbname=mabase', 'monuser', 'monmdp');
    }
    catch(Exception $e)
    {
        die('Erreur : '.$e->getMessage());
    }
    Et l'erreur :
    Erreur : SQLSTATE[28000] [1045] Access denied for user 'monuser'@'192.168.100.254' (using password: YES)
    Et si je tente :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // Connexion à la base de données
    try
    {
        $bdd = new PDO('mysql:host=mon host;dbname=mabase', 'monuser@127.0.0.1', 'monmdp');
    }
    catch(Exception $e)
    {
        die('Erreur : '.$e->getMessage());
    }
    J’obtiens :
    Erreur : SQLSTATE[28000] [1045] Access denied for user 'monuser@127.0.0'@'192.168.100.254' (using password: YES)
    Je m'excuse pour les guillemets mal placés, c'est juste que j'ai modifier les valeurs pour la mise sur le forum.

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    "mon host" devrait être "localhost".
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 93
    Points : 51
    Points
    51
    Par défaut
    En faisant ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // Connexion à la base de données
    try
    {
        $bdd = new PDO('mysql:host=localhost;dbname=mabase', 'monuser', 'monmdp');
    }
    catch(Exception $e)
    {
        die('Erreur : '.$e->getMessage());
    }
    J'ai :

    Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /mapage.php on line 43

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /mapage.php on line 43

    Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /mapage.php on line 46

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /mapage.php on line 46

    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /mapage.php on line 47

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    mysql_query() concerne l'ancienne extension mysql.
    Si tu te connectes en PDO, il faut faire tes requêtes avec PDO.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 93
    Points : 51
    Points
    51
    Par défaut
    Merci à tous les deux, j'ai fini par trouvé...

    Je fais mes premiers pas en PDO justement

    Du coup, pour ceux que ça pourrait aider, le bon code pour me connecter était bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     try
        {
            $bdd = new PDO('mysql:host=localhost;dbname=mabase', 'monuser', 'monmdp');
        }
    
        catch(Exception $e)
        {
            die('Erreur : '.$e->getMessage());
        }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [RMAN] Connexion à une base sur un autre serveur
    Par alxkid dans le forum Oracle
    Réponses: 2
    Dernier message: 23/08/2004, 11h47
  2. Problème de connexion à une base access
    Par caco19 dans le forum ASP
    Réponses: 4
    Dernier message: 13/08/2004, 16h19
  3. [JSP] Connexion à une base mysql
    Par Jovial dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 20/04/2004, 14h04
  4. Réponses: 3
    Dernier message: 29/03/2004, 18h02
  5. Connexion à une base SQL_Serve via Internet
    Par Yoann_D dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 22/07/2003, 15h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo