- Accueil
- » Forum
- » Serveurs
- » Probleme Mysql
Pages : 1
#1 Le 07/06/2007, à 00:07
- Dr3aMs
Probleme Mysql
Bonjour a tous, je dispose d'un server tournant sous feisty server j'ai installer apache2/mysql/proftpd,
je gère les utilisateurs de proftpd avec mysql et créer aussi le répertoir automatiquement dans le www de apache, je souhaiterai aussi qu'il créer automatiquement l'user mysql et ca table et ce serai la que jaurai besoin de vous
puisque j'obtien l'erreur suivante :
Ftp activé pour l'utilisateur mouarf Erreur SQL !CREATE USER mouarf IDENTIFIED BY momo
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'momo' at line 1
<?php
// On commence par récupérer les champs
if(isset($_POST['id'])) $id=$_POST['id'];
else $id="";
if(isset($_POST['userid'])) $userid=$_POST['userid'];
else $userid="";
if(isset($_POST['passwd'])) $passwd=$_POST['passwd'];
else $passwd="";
if(isset($_POST['uid'])) $uid=$_POST['uid'];
else $uid="";
if(isset($_POST['gid'])) $gid=$_POST['gid'];
else $gid="";
// On vérifie si les champs sont vides
if(empty($id) OR empty($userid) OR empty($passwd) )
{
echo '<font color="red">Attention, seul le certain champs peuvent rester vide !</font>';
}
// Aucun champ n'est vide, on peut enregistrer dans la table
else
{
// connexion à la base
$db = mysql_connect('127.0.0.1','***','****') or die('Erreur de connexion '.mysql_error());
// sélection de la base
mysql_select_db('proftpd',$db) or die('Erreur de selection '.mysql_error());
// on écrit la requête sql
$sql = "INSERT INTO ftpuser (id,userid,passwd,uid,gid,homedir,shell,LoginAllowed) VALUES ('$id', '$userid', ENCRYPT('$passwd'), '$uid', '$gid', '/var/www/$userid', '/bin/false','true' )";
// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
echo 'Ftp activé pour l\'utilisateur:'.$userid;
$sql2 = "CREATE USER $userid IDENTIFIED BY $passwd";
mysql_query($sql2) or die ('Erreur SQL !'.$sql2.'<br>'.mysql_error()); //requette pour afficher
echo 'Utilisateur MySQL activé pour'.$userid;
$sql3 = "CREATE DATABASE $userid";
mysql_query($sql3) or die ('Erreur SQL !'.$sql3.'<br>'.mysql_error()); //requette pour afficher
echo 'Table MySQL activé pour'.$userid;// on affiche le résultat pour ;le visiteur
mysql_close(); // on ferme la connexion
}
?>
Merci de votre aide
Amicalement Dr3aM's
#2 Le 07/06/2007, à 09:34
- dexinou
Re : Probleme Mysql
Essai ceci:
CREATE USER 'mouarf'@ '127.0.0.1' IDENTIFIED BY 'momo';
Dernière modification par dexinou (Le 07/06/2007, à 09:34)
Ubuntu 9.10 64bits ext4 ® Core 2 Duo
Unix..... il y a moins bien mais c'est plus cher.
Si t'as pas compris la réponse, pose mieux ta question.
Tutoriaux Linux, apache, pure-ftpd, bind, mysql, qmail...
Hors ligne
#3 Le 07/06/2007, à 11:35
- Dr3aMs
Re : Probleme Mysql
Mercu de ta réponse dexinou mais cela marche tjs pas peut etres a cause des variable $userid et $passwd ??
$sql2 = "CREATE USER '$userid' @ 'localhost' IDENTIFIED BY '$passwd'";
mysql_query($sql2) or die ('Erreur SQL !'.$sql2.'<br>'.mysql_error()); //requette pour afficher
echo 'Utilisateur MySQL activé pour'.$userid;
$sql3 = "CREATE DATABASE $userid";
mysql_query($sql3) or die ('Erreur SQL !'.$sql3.'<br>'.mysql_error()); //requette pour afficher
....
Ce que je comprend pas c'est l'erreur qu'il me sort: par exemple la javais rentré maxou comme login et maxime comme mot de passe et l'erreur sorti:
Ftp activé pour l'utilisateur:maxouErreur SQL !CREATE USER 'maxou' @ 'localhost' IDENTIFIED BY 'maxime'
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''localhost' IDENTIFIED BY 'maxime'' at line 1
dont les variables sont bien prise en compte mais la creation de la base de donneé et du compte utilisateur ne ce fait pas ...
Si quelqu'un a une idée ce serait sympatoche
Amicalement Dr3aM's
Hors ligne
#4 Le 07/06/2007, à 11:50
- dexinou
Re : Probleme Mysql
Essai de crée l'utilisateur via phpmyadmin et fait "créer source php" comme ça tu auras la bonne syntaxe.
CREATE USER 'toto'@'localhost' IDENTIFIED BY '********';
GRANT USAGE ON *.* TO 'toto'@'localhost' IDENTIFIED BY '********'WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
Dernière modification par dexinou (Le 07/06/2007, à 11:54)
Ubuntu 9.10 64bits ext4 ® Core 2 Duo
Unix..... il y a moins bien mais c'est plus cher.
Si t'as pas compris la réponse, pose mieux ta question.
Tutoriaux Linux, apache, pure-ftpd, bind, mysql, qmail...
Hors ligne
#5 Le 07/06/2007, à 12:28
- Dr3aMs
Re : Probleme Mysql
Bah dis donc j'ai pas trop chance, je m'explique lorsuqe je fait comme tu dis je créer un utilisateur by phpmyadmin... il créer bien l'utilisateur ainsi que ca table mais lorsque je fai afficher code source php paf erreur la meme que j'ai sous php avec mon script
le probleme pourrai venir de ma configuration apache2/php5/mysql ???
Hors ligne
#6 Le 09/06/2007, à 01:10
- Dr3aMs
Re : Probleme Mysql
personne n'a une idée??
Hors ligne
#7 Le 20/06/2007, à 14:12
- Dr3aMs
Re : Probleme Mysql
Salut
Personnes n'a toujours pas une tite idée??:rolleyes:
Amicalement.
Hors ligne
#8 Le 22/06/2007, à 14:18
- povtux
Re : Probleme Mysql
Salut,
juste au cas ou, as tu donné le droit GRANT à ton utilisateur qui crée les utilisateurs? (sans oublier le 'flush privileges' pour activer le compte fraichement créé ou modifié)
Hors ligne
#9 Le 24/06/2007, à 00:07
- Dr3aMs
Re : Probleme Mysql
l'utilisateur servant a créer les users et le root donc il a bien tout les droit me semble t'il.:rolleyes:
Hors ligne
#10 Le 24/06/2007, à 16:33
- kidrek
Re : Probleme Mysql
Salut,
comme l'as dit dexinou, as tu testé la requête à travers phpMyAdmin ??
Et sinon petit conseil aussi, rajoutes un ; à la fin de ta requête !! Mysql est assez chiant pour ca !!
Dernière modification par kidrek (Le 24/06/2007, à 16:34)
- Kidrek ~ Administrateur Système -
http://kidrek.fr/blog/
- Un gros Bisous à mes bébés, que j'aime à la folie -
Hors ligne
#11 Le 26/06/2007, à 14:27
- povtux
Re : Probleme Mysql
Salut,
après test dans phpMyAdmin, ton problème est sur les quotes:
$sql2 = "CREATE USER '$userid' IDENTIFIED BY '$passwd'";
chez moi, même erreur que toi sans les quotes, pas d'erreur avec...
Hors ligne
#12 Le 11/01/2008, à 00:44
- freretuc
Re : Probleme Mysql
l'espace avant le @ est une erreur aussi.
Hors ligne
Pages : 1