Mysql
 sql >> Base de données >  >> RDS >> Mysql

php se connecter à la base de données mysql dans le cloud 9 ?

D'accord, donc aucune des réponses ci-dessus n'avait fonctionné pour moi, mais heureusement, j'ai pu configurer une base de données et la mettre en place et la faire fonctionner à ma façon et je peux maintenant faire des requêtes et les exécuter avec succès, donc je vais partager ma méthode avec vous dans l'espoir que quiconque parcourant Internet puisse tomber dessus et ne pas avoir à se gratter la tête comme moi.

Si vous souhaitez un aperçu rapide, faites simplement défiler jusqu'à Étape 3 et lisez la suite à partir de là. Si vous êtes un débutant complet, continuez à lire car je vous expliquerai en détail.

Quelques éléments à mentionner :

  • Vous devrez configurer une base de données via un terminal dans Cloud 9. Je n'avais aucune expérience dans ce domaine, mais c'est très simple à apprendre.
  • Vous ne pouvez pas utiliser mysql fonctions, vous devez utiliser mysqli , depuis mysql les fonctions sont obsolètes et Cloud 9 ne les exécutera pas.

Étape 1  :Configurer MySQL sur Cloud 9 (dans Terminal)

Dans votre projet, ouvrez un nouveau terminal (cliquez sur l'onglet signe plus au-dessus de l'espace de l'éditeur de texte, sélectionnez "Nouveau terminal"). Dans le terminal, tapez mysql-ctl start et appuyez sur Entrée. MySQL démarrera à l'arrière, mais vous n'obtiendrez aucune réponse dans le terminal.

Ensuite, tapez mysql-ctl cli et appuyez sur Entrée. Vous devriez voir un texte commençant par Welcome to the MySQL monitor... . Félicitations, vous avez configuré MySQL sur votre projet Cloud 9.

Étape 2 :Créer une base de données de test (dans Terminal)

Vous pouvez en fait continuer et créer votre base de données officielle si vous le souhaitez, mais pour cela, je vais simplement créer une base de données contenant une table contenant un identifiant et un nom d'utilisateur. Voici donc les étapes pour configurer une base de données et une table. Si vous avez déjà utilisé MySQL et des bases de données, cela devrait être un jeu d'enfant, mais je vais l'expliquer en détail pour ceux qui pourraient ne pas bien comprendre MySQL.

  1. Tapez SHOW DATABASES; et appuyez sur Entrée. Cela affichera une liste des bases de données actuelles dans votre projet. Vous pouvez entrer ceci chaque fois que vous voulez voir une liste de vos bases de données sur le projet en cours.
  2. Tapez CREATE DATABASE sample_db; et appuyez sur Entrée. Vous devriez obtenir un Query OK, 1 Row affected. ce qui signifie que la requête a réussi. Vous pouvez nommer la base de données comme bon vous semble, mais pour cette petite présentation, je l'ai nommée sample_db .
  3. Tapez USE sample_db; et appuyez sur Entrée. Cela sélectionne sample_db de la liste des bases de données.
  4. Tapez CREATE TABLE users (id INT(11), username VARCHAR(20)); , et appuyez sur Entrée. Cela crée une table nommée users avec deux colonnes :id et username . Le nombre entre parenthèses représente la limite de caractères que la colonne stockera dans la base de données. Dans ce cas par exemple, username ne contiendra pas une chaîne de plus de 20 caractères.
  5. Tapez INSERT INTO users (id, username) VALUES (1, "graham12"); , et appuyez sur Entrée. Cela ajoutera l'identifiant de 1 et un nom d'utilisateur graham12 dans la table. Depuis le id la colonne est un INT , nous ne l'entourons pas de guillemets.
  6. Tapez SELECT * FROM users; , et appuyez sur Entrée. Cela affichera tout ce qui se trouve dans les users table. La seule entrée devrait être ce que nous avons inséré à partir de la dernière étape que nous venons de faire.

Étape 3 :obtenez les informations d'identification dont vous aurez besoin pour vous connecter à la base de données à partir de PHP. (dans Terminal)

Nous avons maintenant des données dans notre table que nous pouvons tester notre mysqli connexion avec. Mais d'abord, nous devons obtenir les informations d'identification dont nous aurons besoin pour nous connecter à la base de données en PHP. Dans Cloud 9, nous aurons besoin de 5 identifiants pour nous connecter :

  1. Nom d'hôte
  2. Nom d'utilisateur
  3. Mot de passe
  4. Nom de la base de données
  5. Numéro de port

Le nom d'utilisateur, le mot de passe, le nom de la base de données et le numéro de port vous sont pratiquement déjà connus. Je vais vous expliquer :

  1. Nom d'hôte - Tapez SHOW VARIABLES WHERE Variable_name = 'hostname'; , et appuyez sur Entrée. Vous obtiendrez un tableau à 2 colonnes :Variable_name et Value . Dans la Value colonne, vous devriez voir quelque chose comme yourUsername-yourProjectName-XXXXXXX , où le X 's sont un nombre à 7 chiffres. Notez ce numéro ou enregistrez-le quelque part. Ceci est votre nom d'hôte. (Si vous obtenez un aperçu rapide de cette procédure pas à pas, démarrez simplement un nouveau terminal et démarrez votre mysql et sélectionnez la base de données que vous souhaitez utiliser, puis tapez SHOW VARIABLES WHERE Variable_name = 'hostname'; . Relisez cette étape depuis le début si vous êtes confus.)
  2. Nom d'utilisateur - Votre nom d'utilisateur que vous utilisez pour vous connecter à Cloud 9.
  3. Mot de passe - Il n'y a NON mot de passe pour votre base de données dans Cloud 9.
  4. Nom de la base de données - Ce serait sample_db ou quel que soit le nom que vous avez donné à votre base de données ;
  5. Numéro de port - est 3306 . Dans Cloud 9, tous vos projets sont reliés au 3306 . C'est une constante universelle du Cloud 9. Ce ne sera rien d'autre. Écrivez ceci comme vous le feriez pour un entier, pas sous forme de chaîne. mysqli_connect() interprétera le numéro de port comme un long type de données.

Dernière étape :Connectez-vous à la base de données avec PHP ! (en PHP)

Ouvrez un fichier PHP et nommez-le comme vous le souhaitez.

Je vais prétendre que mon nom d'hôte est graham12-sample_db-1234567 pour cet exemple et que c'est ce que mon les données ressemblent à :

  • Nom d'hôte :"graham12-sample_db-1234567"
  • Nom d'utilisateur :"graham12"
  • Mot de passe :""
  • Nom de la base de données :"sample_db"
  • N° de port :3306

Donc en PHP , insérez votre informations d'identification en conséquence :

<?php

    //Connect to the database
    $host = "grahamsutt12-sample_db-1234567";   //See Step 3 about how to get host name
    $user = "grahamsutt12";                     //Your Cloud 9 username
    $pass = "";                                 //Remember, there is NO password!
    $db = "sample_db";                          //Your database name you want to connect to
    $port = 3306;                               //The port #. It is always 3306

    $connection = mysqli_connect($host, $user, $pass, $db, $port)or die(mysql_error());



    //And now to perform a simple query to make sure it's working
    $query = "SELECT * FROM users";
    $result = mysqli_query($connection, $query);

    while ($row = mysqli_fetch_assoc($result)) {
        echo "The ID is: " . $row['id'] . " and the Username is: " . $row['username'];
    }

?>

Si vous obtenez un résultat et aucune erreur, vous avez réussi à configurer une base de données et à établir une connexion avec PHP dans Cloud 9. Vous devriez maintenant pouvoir effectuer toutes les requêtes que vous pouvez normalement effectuer.

Remarque :j'ai démontré la dernière partie sans utiliser de requêtes paramétrées par souci de simplicité. Vous devez toujours utiliser des requêtes paramétrées lorsque vous travaillez avec de vraies applications Web. Vous pouvez obtenir plus d'informations à ce sujet ici :Instructions préparées MySQL .