Coucou,
tu ne peux pas interagir directement avec MySQL "comme ça".
il faut se connecter. C'est la première étape, tu dois spécifier :
- un nom d'hôte (souvent localhost)
- un utilisateur
- un mot de passe.
C'est par défaut ce que tu fais sur PHPMyAdmin ou n'importe quel script PHP, et si ton PHPMyAdmin "démarre tout seul", c'est qu'il sous-entend que tu te connectes avec "root" et sans mot de passe (ce qui ne me parait pas *forcément* aberrant pour un laboratoire de test, mais impensable sur un vrai serveur, bien entendu !)
L'hôte peut être soit localhost ou 127.0.0.1 qui signifie "le serveur MySQL s'exécute sur la même machine physique ou virtuelle que là où j'exécute cette instruction", soit un autre nom ou une autre adresse IP. C'est le cas par exemple chez OVH, quand tu mets mysql5.ovh.net c'est le serveur n°5 chez eux.
Tu remarqueras dans tes captures le signe % qui signifie tout serveur, pour toi en local cela importe peu. C'est surtout utile lorsque tu as un serveur maître et X serveurs "esclaves" par exemple et que tu veux que ton utilisateur puisse se connecter exclusivement sur un des esclaves ou sur n'importe lequel des serveurs.
Une fois que tu es connecté, tu récupères (de manière invisible, c'est MySQL qui s'en charge) des "privilèges". Les privilèges sont de 2 niveaux :
- des privilèges au niveau du serveur
- des privilèges au niveau d'une base (ou de X bases)
au niveau serveur, ce sont des privilèges qui te permettent, par exemple, de créer un nouvel utilisateur MySQL ou une nouvelle base.
Au niveau de la base, c'est pour lire / supprimer / mettre à jour des enregistrement, mais aussi faire des requêtes un peu spéciales.
Si tu fais :
<?php
CREATE DATABASE machin;
?>
ça ne marchera absolument pas, vu que PHP attend des instructions PHP et là il ne voir qu'une simple suite de lettres et se dit "c'est pas une variable, c'est pas une fonction ... mais qu'est-ce

"
Et il te sort un vieux parse error.
Ceci est déjà largement mieux :
<?php
$query = "CREATE DATABASE machin;";
mysql_query($query);
?>
là vu que tu es toujours en PHP, tu as une variable que tu crées ($query) et une fonction que tu exécutes (mysql_query) donc il va te l'exécuter.
Attention, je ne l'ai pas mis, mais de manière sous-entendue, il y a un mysql_connect juste avant

comme ceci :
<?php
$conn = mysql_connect('localhost', 'Laurent', 'Azerty123');
?>
[/php]
là dans ton $conn tu récupères un pointeur sur une connexion.
ça veut juste dire qu'il y a un lien qui s'est établi entre le serveur Apache (PHP) et MySQL avec les identifiants fournis.
(et avec les privilèges en conséquence).
Après pour la connexion précédemment établie, en règle générale tu dois te placer sur une table.
En SQL pur et dur, ça donne :
[code]USE DATABASE machin;
et en PHP l'équivalent :
<?php
$conn = mysql_connect('localhost', 'Laurent', 'Azerty123');
mysql_select_db('machin', $conn);
?>
après cette ligne, tu seras en train de travailler sur la table "machin" avec les pouvoirs de l'utilisateur Laurent.
Depuis MySQL5, il y a une table qui s'appelle "information_schema" qui recence les utilisateurs et les droits.
Pour ton warning en rouge, ça veut juste dire que le root est sans mot de passe, si ton but n'est que de faire des bêtes SELECT, sur ton PC en local je considère (mais ça n'engage p-ê que moi

) que ce n'est pas "grave".
Sur mon PC, mon root MySQL est aussi sans mot de passe depuis toujours ...
L'intérêt c'est que sur ton "vrai" serveur, le root soit avec mot de passe, bien sûr, et que tu crées un compte limité pour travailler sur ta base (et dans l'idéal, ce compte n'a de droits qu'en localhost sur une seule base pour limiter les dégâts en cas de vol du mot de passe). Même mieux, tu peux lui interdire de supprimer la base ou des tables ...[/code]