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

Langage PHP Discussion :

[Tableaux] Premiere base de données


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut [Tableaux] Premiere base de données
    Bonjour ,

    Je viens de me mettre au PHP et bien entendu je n'ai pas resiste a creer une base de données et a essayer de la manipuler avec du code PHP.

    Dans phpMyAdmin je creer une nouvelle base de données mysql . Je la nomme infos .

    Je créer un petit code pour y ajouter un element et voici ce que l'on me repond :

    "Erreur de selection Base 'infos' inconnue"

    Non mais quelle culot !!!!!!

    La base existe bien , que s'est il passé ? et que dois je faire pour que cela fonctionne ?????

    Merci bien pour votre aide .

    a+

  2. #2
    Membre éprouvé
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Par défaut
    Tu parles "table" ou vraiment "base"?

    Pour selectionner la base: mysql_select_db('infos', $connection);

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut
    Notice: Undefined variable: connection in c:\program files\easyphp1-8\www\mysql\add.php on line 34

    Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in c:\program files\easyphp1-8\www\mysql\add.php on line 34
    Erreur de selection


    Voili ce qui m'arrive !!!!!

    Help , a l'aide !!!!

    Merci de ton aide et si tu as une autre idée ou un tutoriel bien fait pour m'indiquer comment utiliser php et les bases de données ...


    Merco encore

  4. #4
    Membre éclairé Avatar de renaudjuif
    Inscrit en
    Avril 2006
    Messages
    325
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 325
    Par défaut
    Avant le mysql_select_db, tu établis une connection : mysql_connect qui retourne un identifiant de cnx...
    es-tu sur que les paramètres passés à la fonction de connexion sont les bons ?
    Il semble que mysql_connect échoue
    Pour + d'infos : http://fr2.php.net/mysql_select_db

  5. #5
    Membre Expert
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Par défaut
    Salut!

    Je vais donner ma méthode, je prend les choses du début pour que tout soit clair (je vais essayer ) :

    • Déjà, la 1ère chose à faire est de télécharger un éditeur PHP avec coloration syntaxique si tu ne l'as pas déjà fait. Il en existe beaucoups.

    • Tu crées un fichier nommé config.php contenant le login d'accès et le nom de ta base et le de la table éventuellement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $cfg['db_server']  = 'localhost';         // Nom du serveur
    $cfg['db_name']    = 'mabase';            // Nom de la base
    $cfg['db_table']   = 'matable';           // Nom de la table
    $cfg['db_login']   = 'root';              // Le login d'accès de la base
    $cfg['db_pass']    = '';                  // Le mot de passe de la base
    $cfg['linkid']     = '';                  // Handle de la connection 
    ?>
    • Tu crées un script nommé bdd.php qui contient les fonctions chargées d'ouvrir et de fermer la base :
    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
    <?php
    
    Require_Once('config.php');
    
    //======================================================== 
    //  CREATION & CONNECTION DE LA BASE & TABLE
    //========================================================
    function OpenBase(){
      global $cfg;
    
      if(!empty($cfg['linkid'])) return true;
    
      if(!$cfg['linkid']=@mysql_connect(
        $cfg['db_server'],
        $cfg['db_login'],
        $cfg['db_pass']))
        die('Impossible d\'accéder au serveur de données.<br/>'.@mysql_error());
    
      if(!@mysql_select_db($cfg['db_name'], $cfg['linkid']))
        die('Impossible d\'accéder à la base de données.<br/>'.@mysql_error());
    
    }
    
    
    //========================================================
    //  DECONNECTION
    //========================================================
    function CloseBase(){
      global $cfg;
      @mysql_close($cfg['linkid']);
      unset($cfg['linkid']);
    }
    
    
    ?>
    • Voici maintenant un script d'exemple nommé test1.php qui liste toutes les tables de la base "mabase" avec le nombre d'enregistrements contenus dans chaque table :
    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
    <?php
    
    Require_Once('bdd.php');
    
    //========================================================
    // Ouverture de la base de données
    //========================================================
    OpenBase();
    
    //========================================================
    // Exécution de la requête
    //========================================================
    $sql="SHOW TABLES FROM `".$cfg['db_name']."`";
    $res=@mysql_query($sql);
    if(!$res) die('Erreur : Listing de la base «'.$cfg['db_name'].'» impossible.<br/>'.@mysql_error());
    $num=@mysql_num_rows($res);
    if($num<=0) die('Erreur : Aucune table n\'a été trouvée dans la base «'.$cfg['db_name'].'».<br/>');
    
    //========================================================
    // Envoi du nom des tables de la base
    //========================================================
    echo 'Liste des tables de la base «'.$cfg['db_name'].'» :<br/><br/>';
    while($row=@mysql_fetch_array($res)){
        echo $row[0];
        
        //--------------------------------------------------------
        // Envoi du nombre d'enregistrement dans la table
        //--------------------------------------------------------
        $sql="SELECT * FROM `".$row[0]."`";
        $res2=@mysql_query($sql);
        echo ' ('.@mysql_num_rows($res2).')<br/>';
      }
    
    //========================================================
    // Fermeture de la base de données
    //========================================================
    CloseBase();  
    
    ?>
    • Voici un 2ème script nommé test2.php listant le contenu de la table "matable" :
    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
    <?php
    
    Require_Once('bdd.php');
    
    //========================================================
    // Ouverture de la base de données
    //========================================================
    OpenBase();
    
    //========================================================
    // Exécution de la requête
    //========================================================
    $sql="SHOW FIELDS FROM `".$cfg['db_table']."`";
    $res=@mysql_query($sql);
    if(!$res) die('Erreur : Impossible de lister la table «'.$cfg['db_table'].'».<br/>'.@mysql_error());
    
    //========================================================
    // Envoi des champs de la table "matable"
    //========================================================
    echo 'Liste des champs de la table «'.$cfg['db_table'].'» :<br/><br/>';
    while($row=@mysql_fetch_array($res)){
        echo $row['Field'].' ('.$row['Type'].')<br/>';
    }
    
    //========================================================
    // Fermeture de la base de données
    //========================================================
    CloseBase();  
    
    ?>
    • Il existe d'autres méthodes pour accéder aux bdds, comme l'utilisation des classes par exemple ou Pear...

    Bon courage, à+

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut OOOUUUFFFF ... j'ai compris
    Merci d'abord a chacun de vous pour votre aide precieuse ......

    J'ai enfin compris pourquoi cela ne marchais pas et j'ai reussi a faire tourner ma premiere base de donnée avec mySQL et PHP !!!!!!

    D'abord merci Anduriel , quand tu ecrivais :

    "Tu parles "table" ou vraiment "base"?"

    Intuitivemebnt tu avais compris la nature du probleme . En fait a gauche de phpMyAdmin 2.6.1 ( quand on ouvre dans "Easyphp" , "Configuration" , "phpmyadm" ), je croyais qu'il y avait ule liste de base de donnée .... erreur ... il s'agissait des tables de la base mysql .......

    Forcement en essayant de me connecter a la base "infos" cela ne pouvais pas marcher !!!!

    Voili ....

    Merci a toi renaudjuif et a toi subO , je vais potasser ce que vous m'avez apporter .....

    trop cooollll php ....

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

Discussions similaires

  1. Premiere base de données
    Par killerjo dans le forum Modélisation
    Réponses: 7
    Dernier message: 10/11/2011, 21h17
  2. les tableaux et base de données
    Par ashley dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 16/08/2010, 12h18
  3. Ma premiere base de données avec tomcat
    Par argon dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 03/12/2008, 11h11
  4. [Débutant] Ma premiere Base de Données.
    Par Paulinho dans le forum Débuter
    Réponses: 7
    Dernier message: 08/12/2005, 16h30
  5. tableaux et base de données
    Par leeloo076 dans le forum ASP
    Réponses: 14
    Dernier message: 24/03/2004, 11h29

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