Base mysql, quelqu'un peut-il me dire quelle erreur(s) j'ai commise? svp. je n'a

Résolu
cs_Sator Messages postés 351 Date d'inscription samedi 7 février 2004 Statut Membre Dernière intervention 6 octobre 2010 - 19 mai 2010 à 00:30
cs_Sator Messages postés 351 Date d'inscription samedi 7 février 2004 Statut Membre Dernière intervention 6 octobre 2010 - 19 mai 2010 à 20:58
Merci pour votre réponse, et votre patience.

require_once("../connect.php");
$connexion=mysql_pconnect(SERVEUR,NOM,PASSE);
if (!$connexion){
echo "Désolé, connexion a " . SERVEUR . " impossible
\n";
exit;
}else
{
echo "connexion a " . SERVEUR . " réussie
\n";
}
/*
créer les bases
*/
if ($_POST['passeum']=="pDwVKDbmvPLo")// Gestion des droits
{
// echo BASE_1; ' ligne de contrôle
if (!mysql_select_db(BASE_1,$connexion))
{
echo "la base n'existe pas nous allons la créer
\n";
$base1 = BASE_1;
// Créer la base droits \\
//$connexion =Connexion(NOM, PASSE, BASE_1, SERVEUR);
$requete="CREATE TABLE $base1
(id int DEFAULT '0' NOT NULL auto_increment,
nom var(50) NOT NULL,
prenom var(50) NOT NULL,
email var(50) NOT NULL,
motdepasse var(15) NOT NULL,
lecookie var(2) NOT NULL,
droit_1 var(2) NOT NULL,
droit_2 var(2) NOT NULL,
droit_3 var(2) NOT NULL,
droit_4 var(2) NOT NULL,
droit_5 var(2) NOT NULL,
droit_6 var(2) NOT NULL,
droit_7 var(2) NOT NULL,
droit_8 var(2) NOT NULL,
droit_9 var(2) NOT NULL,
droit_10 var(2) NOT NULL,
droit_11 var(2) NOT NULL,
droit_12 var(2) NOT NULL,
droit_13 var(2) NOT NULL,
droit_14 var(2) NOT NULL,
droit_15 var(2) NOT NULL,
droit_16 var(2) NOT NULL,
droit_17 var(2) NOT NULL,
droit_18 var(2) NOT NULL,
PRIMARY KEY (id)
);";
//$connexion=mysql_pconnect(SERVEUR,NOM,PASSE);
mysql_query($requete,$connexion);
//@mysql_query($sql,$connexion);//
if (mysql_query($requete,$connexion))
{
echo "création de la base a réussi";
}
else
{
echo "création de la base pas réussie";
}
mysql_close();
}else
{
echo"la base existe déja!!!";
}




et là il et me réponds : création de la base pas réussie sans plus d'explication...

qu'est-ce que je fais de faux merci, j'ai besoin de la créer à la volée car, c'est pour une association et il faut que la personne qui gère les bases puisse effacé l'agenda de l'année précédente par exemple sans avoir à faire 36 manip. merci d'avance pour votre aide.

:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...

6 réponses

kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
19 mai 2010 à 20:15
Je te la refais
CREATE DATABASE base1 ...

Et ensuite tu sélectionnes cette nouvelle DB (mysql_select_db()), puis tu crées tes tables (CREATE TABLE machin ...)


// tu crées ta base de données
$requete = "CREATE DATABASE base1";
mysql_query($requete);

/* la base est créée, il faut maintenant indiquer à mySQL que l'on souhaite travailler avec
*/
mysql_select_db('base1');

/*
tu peux ensuite créer ta / tes tables
*/
CREATE TABLE taTable (
id INT AUTO_INCREMENT NOT NULL,
nom VARCHAR(50) NOT NULL, ...

Cordialement,


Kohntark -
3
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
19 mai 2010 à 01:08
Salut,

Je n'ai regardé que rapidement.
Tu devrais commencer par afficher les erreurs SQL :

else
{
echo "création de la base pas réussie";
}
=>
else
{
echo "création de la base pas réussie :
".mysql_error();
}

L'erreur t'aidera sans doute.

Tu parles de création de base alors que tu fais un "CREATE TABLE"

Et puis rappelles toi que, selon ton hébergement, tu n'auras peut être pas le droit de créer un BDD de cette façon (il peut y avoir obligation de passer par l'interface de l'hébergeur)


Cordialement,

Kohntark -
0
cs_Sator Messages postés 351 Date d'inscription samedi 7 février 2004 Statut Membre Dernière intervention 6 octobre 2010
19 mai 2010 à 16:39
merci pour ta réponse, il me réponds (fort en chocolat) No database selected

voilà si toi ça peux t'aider... moi je comprend pas pourquoi...
merci d'avance pour ton aide.

:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
19 mai 2010 à 18:38
Oui, c'est normal. Comme je te le disais tu fais un "CREATE TABLE" alors que si j'ai bien compris c'est une base de données que tu veux créer, donc :

CREATE DATABASE base1 ...

Et ensuite tu sélectionnes cette nouvelle DB (mysql_select_db()), puis tu crées tes tables (CREATE TABLE machin ...)

Mais tu as de nombreuses autres erreurs :
var => VARCHAR
Pas de "DEFAULT '0'" avec un autoincrement
...

Cordialement,

Kohntark -
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Sator Messages postés 351 Date d'inscription samedi 7 février 2004 Statut Membre Dernière intervention 6 octobre 2010
19 mai 2010 à 19:55
Merci infiniment pour ta réponse mais ça beug toujours...

mais pas pareil... et ça me .....


se serais sympat, si tu pouvais me dire...

voilà mon erreur:
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 '( id INT AUTO_INCREMENT NOT NULL, nom VARCHAR(50) NOT NULL,' at line 2


$requete="CREATE DATABASE IF NOT EXISTS ".BASE_1."
(
id INT AUTO_INCREMENT NOT NULL,
nom VARCHAR(50) NOT NULL,
prenom VARCHAR(50) NOT NULL,
email VARCHAR(50) NOT NULL,
motdepasse VARCHAR(15) NOT NULL,
lecookie VARCHAR(2) NOT NULL,
droit_1 VARCHAR(2) NOT NULL,



je te remercie pour ta patience


:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...
0
cs_Sator Messages postés 351 Date d'inscription samedi 7 février 2004 Statut Membre Dernière intervention 6 octobre 2010
19 mai 2010 à 20:58
Je te remercie infiniment pour ta patience.

@+ Sator


:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...
0
Rejoignez-nous