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 à la base


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 16
    Par défaut connexion à la base
    Bonjour. Je suis actuellement en pleine phase d'apprentissage de php. et plus particulièrement des formulaires sou php. Je suis en train de tester un exemple filé sur un site d'initiation. J'ai donc créé une base "infos_tbl" et un formulaire "index.php" pointe sur une page "add.php". Sur la page add.php j'ai le script suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <?php 
    // On commence par récupérer les champs 
    if(isset($_POST['nom']))      $nom=$_POST['nom'];
    else      $nom="";
     
    if(isset($_POST['prenom']))      $prenom=$_POST['prenom'];
    else      $prenom="";
     
    if(isset($_POST['email']))      $email=$_POST['email'];
    else      $email="";
     
    if(isset($_POST['icq']))      $icq=$_POST['icq'];
    else      $icq="";
     
    if(isset($_POST['titre']))      $titre=$_POST['titre'];
    else      $titre="";
     
    if(isset($_POST['url']))      $url=$_POST['url'];
    else      $url="";
     
    // On vérifie si les champs sont vides 
    if(empty($nom) OR empty($prenom) OR empty($email) OR empty($titre) OR empty($url)) 
        { 
        echo '<font color="red">Attention, seul le champs <b>ICQ</b> peut rester vide !</font>'; 
        } 
     
    // Aucun champ n'est vide, on peut enregistrer dans la table 
    else      
        { 
           // connexion à la base
    $db = mysql_connect('http://phpmyadmin.free.fr/phpMyAdmin/', 'monlogin', 'monpassword')  or die('Erreur de connexion '.mysql_error());
    // sélection de la base  
     
        mysql_select_db('nom_de_la_base',$db)  or die('Erreur de selection '.mysql_error()); 
     
        // on écrit la requête sql 
        $sql = "INSERT INTO infos_tbl(id, nom, prenom,email, icq, titre, url) VALUES('','$nom','$prenom','$email','$icq','$titre','$url')"; 
     
        // on insère les informations du formulaire dans la table 
        mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
     
        // on affiche le résultat pour le visiteur 
        echo 'Vos infos on été ajoutées.'; 
     
        mysql_close();  // on ferme la connexion 
        }  
    ?>
    Seulement ça ne fonctionne pas. Quand je mets mes pages en ligne sur free et que je teste le formulaire j'ai un message d'erreur qui me renvoit sur la ligne contenant mes login, password...

    La question est donc : quelle est la meilleur façon de rentrer ses coordonnées dans le script (genre faut-il écrire http, manque-t-il quelque chose dans mon script ?

    Merci d'avance

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    Il ne peut pas y avoir d'URL dans un adresse de base de données MySQL - essaye localhost.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 16
    Par défaut
    si je ne mets pas l'adresse de mon hébergeur dans le script comment le lien va-t-il se faire avec la base de données ?

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    En fait ton script est une application locale au serveur tout comme le serveur de bases de données.
    C'st pourquoi localhost devrait suffir.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 16
    Par défaut
    ok je viens de piger... j'essaie mais ça me renvoie ce message d'erreur

    Warning: mysql_connect(): Unknown MySQL Server Host 'http' (1) in add.php on line 31
    Erreur de connexion Unknown MySQL Server Host 'http' (1)
    Est ce que mon login et mon mot de passe free sont ceux qu'il faut que je mette ?

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    pas de http, suelement localhost

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 16
    Par défaut
    ok, on avance pas à pas... mais maintenant j'ai un nouveau message d'erreur... hé hé

    Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in add.php on line 31
    Erreur de connexion Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

  8. #8
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    remet ton code

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 16
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <?php 
    // On commence par récupérer les champs 
    if(isset($_POST['nom']))      $nom=$_POST['nom'];
    else      $nom="";
     
    if(isset($_POST['prenom']))      $prenom=$_POST['prenom'];
    else      $prenom="";
     
    if(isset($_POST['email']))      $email=$_POST['email'];
    else      $email="";
     
    if(isset($_POST['icq']))      $icq=$_POST['icq'];
    else      $icq="";
     
    if(isset($_POST['titre']))      $titre=$_POST['titre'];
    else      $titre="";
     
    if(isset($_POST['url']))      $url=$_POST['url'];
    else      $url="";
     
    // On vérifie si les champs sont vides 
    if(empty($nom) OR empty($prenom) OR empty($email) OR empty($titre) OR empty($url)) 
        { 
        echo '<font color="red">Attention, seul le champs <b>ICQ</b> peut rester vide !</font>'; 
        } 
     
    // Aucun champ n'est vide, on peut enregistrer dans la table 
    else      
        { 
           // connexion à la base
    $db = mysql_connect('localhost', 'fred', 'fredo')  or die('Erreur de connexion '.mysql_error());
    // sélection de la base  
     
        mysql_select_db('nom_de_la_base',$db)  or die('Erreur de selection '.mysql_error()); 
     
        // on écrit la requête sql 
        $sql = "INSERT INTO infos_tbl(id, nom, prenom,email, icq, titre, url) VALUES('','$nom','$prenom','$email','$icq','$titre','$url')"; 
     
        // on insère les informations du formulaire dans la table 
        mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
     
        // on affiche le résultat pour le visiteur 
        echo 'Vos infos on été ajoutées.'; 
     
        mysql_close();  // on ferme la connexion 
        }  
    ?>

  10. #10
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    en mettant 127.0.0.1 ?

  11. #11
    Membre chevronné Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Par défaut
    Bonjour,
    Visiblement tu es chez free. Tu as donc du demander un acces a une base mySQL. Quand free te la creee, ils ont du aussi te donner l'adresse de la base qui doit etre un truc du style sql.free.fr (je ne me souviens plus exactement, et n'arrivant pas a me connecter sur leur ftp, je ne peux retrouver l'info...)
    Ca te donne :
    $db = mysql_connect('sql.free.fr', 'fred', 'fredo') or die('Erreur de connexion '.mysql_error());
    // sélection de la base

    mysql_select_db('nom_de_la_base',$db) or die('Erreur de selection '.mysql_error());

    Il me semble que nom_de_la_base=ton login.

    Enfin... de memoire...
    Sohnic

  12. #12
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    8) moi qui me creuse la tête...

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 16
    Par défaut
    non, manifestement c'est pas ça :

    Warning: mysql_connect(): Can't connect to MySQL server on '127.0.0.1' (111) in add.php on line 31
    Erreur de connexion Can't connect to MySQL server on '127.0.0.1' (111)

    Quels mots de passe dois je mettre ? ceux de mon hébergeur ?

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 16
    Par défaut
    ok je vais explorer cette piste...

  15. #15
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    Tu es bien chez free ?

Discussions similaires

  1. Problème de connexion à une base access
    Par caco19 dans le forum ASP
    Réponses: 4
    Dernier message: 13/08/2004, 16h19
  2. [JSP] Connexion à une base mysql
    Par Jovial dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 20/04/2004, 14h04
  3. Réponses: 3
    Dernier message: 29/03/2004, 18h02
  4. Erreur de connexion à ma base sur serveur Debian - Apache
    Par GLDavid dans le forum Installation
    Réponses: 4
    Dernier message: 24/09/2003, 10h29
  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