Création des users Mysql depuis une Page PHP

bonjour,

oui encore moi :slightly_smiling:
nouveau problème j’aimerai créer des utilisateur MySQL via une page PHP…
Mais lors de l’exécution de celle-ci mon user n’a pas été créer… et pourtant pas de messages d’erreur sur ma page

je ne sais pas pourquoi… Je suis en root avec tout les droits

cordialement

Vois-tu des messages d’erreur dans /var/log/apache2/error.log ?
Quel code php utilises-tu pour créer tes users (ma boule de cristal est en panne).

voici le code utilisé :slightly_smiling:

[code]<?php
$mabasededonnee=“mysql”;
$connection = mysql_connect(“localhost”,“root”,“monmdp”);
// test la connection
if ( ! $connection )
die (“connection impossible”);
// Connecte la base
mysql_select_db($mabasededonnee) or die (“pas de connection”);
$pseudo = eric ;
$nombase = mabase;
$motdepasse = ‘abcd’;
$requete=“CREATE USER ‘$pseudo’@’%’ IDENTIFIED BY ‘$motdepasse’;
GRANT USAGE ON * . * TO ‘eric’@’%’ IDENTIFIED BY ‘$motdepasse’ ;
CREATE DATABASE IF NOT EXISTS $nombase ;
GRANT ALL PRIVILEGES ON $nombase . * TO ‘$pseudo’@’%’;”; // requête
mysql_query($requete,$connection); // envoi de la requête

?>[/code]

  • Pas besoin de sélectionner la base mysql pour créer un utilisateur avec « CREATE USER » (mais ça doit fonctionner tout de même)
  • Il faut mettre « eric » et « mabase » entre guillemets ou quotes, dans l’assignation de $pseudo et $nombase
  • Je ne sais pas si il y a un moyen de mettre plusieurs requêtes avec mysql_query(), mais ceci fonctionne :
<?php
$mabasededonnee="mysql";
$connection = mysql_connect("localhost","root","monmdp");
// test la connection
if ( ! $connection )
    die ("connection impossible");
$pseudo = 'eric' ;
$nombase = 'mabase';
$motdepasse = 'abcd';
mysql_query("CREATE USER '$pseudo'@'%' IDENTIFIED BY '$motdepasse'",$connection);
mysql_query("CREATE DATABASE IF NOT EXISTS `$nombase`", $connection);
mysql_query("GRANT ALL PRIVILEGES ON `$nombase`.* TO '$pseudo'@'%'", $connection);
mysql_close($connection);
?>

(tu peux aussi remplacer $connection par $connexion pour garder des noms de variables en français :slightly_smiling: )

oui dsl erreur de ma par pour les quotes … mais avec ce que tu me proposes aucun changement

Etrange, il fonctionne chez moi (en changeant “monmdp” par mon mot de passe).

As tu un message d’erreur quand tu le lances en CLI :

?

après l’installation de php5-cli maintenant mon script marche

Encore merci pour l’aider