Le 27.9.2026
Pour lancer le serveur, tapez depuis un Terminal :  sudo systemctl start apache2
Pour re-lancer le serveur, tapez depuis un Terminal : sudo systemctl restart apache2
Pour arrêter le serveur, tapez depuis un Terminal : sudo systemctl stop apache2
Pour recharger sans redémarrer complètement le serveur : sudo systemctl reload apache2
Pour allez sur la page principale : http://localhost/website
Pour relier un dossier à la racine de localhost :
sudo unlink /var/www/html/website && sudo ln -s $HOME/website /var/www/html/website

Pour démarrer, aller sur une des pages Web :
file:///home/bg/website/php_mysql/quiz01/index_local.html

Serveur = VOTRE_NOM_DE_SERVEUR
Nom de la base de données = NOM_DE_LA_BASE_DE_DONNE   peut être identique ou différent du nom de la base en local, lorsque l'ordinateur sert de serveur.
Utilisateur = VOTRE_NOM_UTILISATEUR
passe = MOT_DE_PASSE_DE_VOTRE_NOM_UTILISATEUR
Ouverture de la base de données :
  if (gethostbyaddr($_SERVER['REMOTE_ADDR']) == 'localhost') {
    $bdd = new PDO('mysql:host=localhost;dbname=NOM_DE_LA_BASE_DE_DONNE_LOCAL;charset=utf8', 'root', '');   // Pas de mot de passe en local
    }
  else {
    $bdd = new PDO('mysql:host=VOTRE_NOM_DE_SERVEUR;dbname=NOM_DE_LA_BASE_DE_DONNE;charset=utf8', 'VOTRE_NOM_UTILISATEUR', 'MOT_DE_PASSE_DE_VOTRE_NOM_UTILISATEUR');
    }
// Le mot de passe est stocké dans le fichier .php qui se trouve sur le serveur, 
// mais il n'est pas accessible sur le Web.
// Il est accessible aux personnes ayant un accès directe à l'ordinateur servant de serveur.

c.f. :
https://www.homeandlearn.co.uk/php/php12p3.html
https://www.virendrachandak.com/techtalk/mysql-int11-what-does-it-means/

int = int(11) est un nombre entier entre 0 et 2^32 -1 = 4'294'967'295
11 signifie la largeur de l'affichage.

Il n'y a qu'une seule table : "reponses"
Avec 14 colonnes.

Structure de la table des réponses :
====================================
La première entrée est la liste des questions
1. id_reponse  int  : Index="PRIMARY" ; A_I=coché (Auto Increment)
2. q101 varchar(200)
3. q102 varchar(200)
...
14. q113 varchar(200)

Depuis phpMyAdmin :
===================
Après avoir créé la base de données en local, 
on peut l'exporter, dans le but de l'importer sur le serveur.
1. Cliquer sur le nom de la base de données : "NOM_DE_LA_BASE_DE_DONNE"
2. Cliquer sur "Exporter"
3. Cliquer sur "Exécuter"
4. Donner le nom du fichier .sql qui sera créé. C'est un fichier texte.

Création de la base de données sur le Web, chez Infomaniak pour moi.
====================================================================
Depuis la page : https://manager.infomaniak.com/v3/107436/ng/home
Hébergement > gisinb.ch
Base de données
AJOUTER : NOM_DE_LA_BASE_DE_DONNE
  Cocher : Créer un utilisateur associé
  Nom de l'utilisateur : VOTRE_NOM_UTILISATEUR
  Mot de passe : MOT_DE_PASSE_DE_VOTRE_NOM_UTILISATEUR
  Dans le mot de passe, il faut un chiffre, un caractère spécial, minuscule, Majuscule, mais pas de virgule.
Personne d'autre n'a de permission
VALIDER
-> La base de donnée est créée. Elle est vide.
Cliquer sur les ... à droite, pour se connecter à phpMyAdmin
serveur = VOTRE_NOM_DE_SERVEUR
Utilisateur = VOTRE_NOM_UTILISATEUR
Mot de passe = MOT_DE_PASSE_DE_VOTRE_NOM_UTILISATEUR

Cliquer sur importer > Parcourir > quiz_oiseaux_20231214.sql
Exécuter
J'ai eu une fois une erreur, j'ai donc sélectionné la base de donnée, puis la table "reponses" et je l'ai supprimée.
J'ai corrigé le fichier : quiz_oiseaux_20231214.sql ,  puis je l'ai importé de nouveau
J'ai la première entrée, qui est la liste des questions.
J'ai des réponses de testes que j'ai effectués.
Normalement, il ne devrait pas avoir d'erreurs.

J'ai testé, ça marche sur le Web.

-----------------------------------------------
On aurait pu cliquer sur IMPORTER.
Il demande le nom de la nouvelle base de données...  Je n'ai pas fait la suite
C'est probablement une manière plus simple de faire.

Serveur = VOTRE_NOM_DE_SERVEUR
Nom de la base de données en local = NOM_DE_LA_BASE_DE_DONNE_LOCAL
Nom de la base de données sur le Web = NOM_DE_LA_BASE_DE_DONNE_SERVEUR
Utilisateur = VOTRE_NOM_UTILISATEUR
Pass de  VOTRE_NOM_UTILISATEUR = passe de la base de données = MOT_DE_PASSE_DE_VOTRE_NOM_UTILISATEUR
Ouverture de la base de données :
  if (gethostbyaddr($_SERVER['REMOTE_ADDR']) == 'localhost') {
    $bdd = new PDO('mysql:host=localhost;dbname=NOM_DE_LA_BASE_DE_DONNE_LOCAL;charset=utf8', 'root', '');
    }
  else {
    $bdd = new PDO('mysql:host=VOTRE_NOM_DE_SERVEUR;dbname=NOM_DE_LA_BASE_DE_DONNE_SERVEUR;charset=utf8', 'VOTRE_NOM_UTILISATEUR ', 'MOT_DE_PASSE_DE_VOTRE_NOM_UTILISATEUR');
    }

Fichiers de gestion de la base de données en local :
http://localhost/web/php_mysql/quiz01/quiz01.html   et
http://localhost/web/php_mysql/quiz01/quiz01_reponses.html

Fichiers de gestion de la base de données sur le Web :
https://www.gisinb.ch/gisin/quiz01/quiz01.html
https://www.gisinb.ch/gisin/quiz01/quiz01_reponses.html
