Problème de création de table Mysql

perig Messages postés 358 Date d'inscription vendredi 1 novembre 2002 Statut Membre Dernière intervention 5 septembre 2006 - 3 déc. 2003 à 11:36
perig Messages postés 358 Date d'inscription vendredi 1 novembre 2002 Statut Membre Dernière intervention 5 septembre 2006 - 3 déc. 2003 à 19:04
Bonjour :)

Voilà je cherche à créer une table dans ma base Mysql (je suis chez free).
Mon programme fonctionne (je consulte tous les codes d’erreur et tout est ok) mais je ne comprends pas pourquoi, quand je vais voir ma base sous phpMyAdmin la nouvelle table n’apparaît pas.
De même, je cherche à recréer cette même table avec le même script php et la, il me sort que la table existe déjà (alors que sous phpMyAdmin elle n’y est pas).
J’ai cru comprendre que chez free il fallait ajouter un @ devant toutes les commandes Mysql mais je n’ai trouvé aucune info là dessus.

Voici mes sources

Fichier Mysql_Fonc.php3
<?php
function Executer($Requete)
{
/*----------------------------------*/
/* Executer */
/* Adressage d'une requete a MYSQL */
/*----------------------------------*/

Global $AFF;
if($AFF) print"Requete:".$Requete."
";
if($Res=MYSQL_QUERY($Requete))
{
if($AFF) print"Requete réussie
";
return $Res;
}
else
{
if($AFF) print"Erreur n°:".MYSQL_ERRNO().":".MYSQL_ERROR()."
";
return FALSE;
}
}

function Connexion($Afficher=FALSE)
{
/*----------------------------------*/
/* Connexion */
/* Connection a la base MYSQL */
/*----------------------------------*/
define ("NOM","");
define ("PASSE","");
define ("SERVEUR","sql.free.fr");
define ("BASE","");

if($Db=MYSQL_CONNECT(SERVEUR,NOM,PASSE))
{
if($Afficher)
{
print"Connexion au serveur réussie
";
}
}
else
{
if($Afficher)
{
print"Echec de la connexion au serveur
";
}
}
//ce qui suit est en commentaire car je n’ai qu’une base sur free
/*if(mysql_select_db(BASE,$Db))
{
if($Afficher)
{
print"Connexion a la base réussie
";
}
}
else
{
if($Afficher)
{
print"Echec de la connexion a la base
";
}
}*/
}
?>

Fichier pour l’installation de la base
<?php
include("Mysql_Fonc.php3");
$AFF=TRUE;
Connexion ($AFF);
$Requete="CREATE TABLE Comment_Photos(No INT AUTO_INCREMENT NOT NULL,Catt1 VARCHAR(30),Catt2 VARCHAR(30),Photo INT,Pseudo VARCHAR(50),Date DATE,Comment VARCHAR(255),Email VARCHAR(50),Site VARCHAR(50),PRIMARY KEY (No));";
if(Executer($Requete))
{
if(AFF) print "création de la table réussie
";
}
else
{
if(AFF) print "Erreur n°".MYSQL_ERRNO().":".MYSQL_error()."
";
}
?>

a la 1er exécution j’ai les messages suivants :
Connexion au serveur réussie
Requete:CREATE TABLE Essai(No INT AUTO_INCREMENT NOT NULL,Catt1 VARCHAR(30),Catt2 VARCHAR(30),Photo INT,Pseudo VARCHAR(50),Date DATE,Comment VARCHAR(255),Email VARCHAR(50),Site VARCHAR(50),PRIMARY KEY (No));
Requete réussie
création de la table réussie

Et a la 2e
Connexion au serveur réussie
Requete:CREATE TABLE Essai(No INT AUTO_INCREMENT NOT NULL,Catt1 VARCHAR(30),Catt2 VARCHAR(30),Photo INT,Pseudo VARCHAR(50),Date DATE,Comment VARCHAR(255),Email VARCHAR(50),Site VARCHAR(50),PRIMARY KEY (No));
Erreur n°:1050:Table 'Essai' already exists
Erreur n°1050:Table 'Essai' already exists

merci :)
---Perig---
Pour vous servir 8-)

4 réponses

floflotz Messages postés 240 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 6 janvier 2006
3 déc. 2003 à 12:43
l'histoire du @ chez free est n'importe koi !!!
le @ sert à annuler un message d'erreu^r
par exemple, quand tu fais mysql_connect(...), si la connexion à la base de données n'est pas possible, tu auras un warning qui s'affichera sur ta page ! si tu mets @mysql_connect(..) (et c'est valable pour toutes les autres fonctions) rien ne s'affichera même si il se produit une erreur !!
0
microdevweb Messages postés 9 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 10 décembre 2003
3 déc. 2003 à 12:54
Je ne saurais pas vraiment t'aider. Mais je te conseille de mêtre tous les nom de tables en miniscule. Mois j'ai déjà des blagues avec ça
0
perig Messages postés 358 Date d'inscription vendredi 1 novembre 2002 Statut Membre Dernière intervention 5 septembre 2006
3 déc. 2003 à 14:58
ok merci
J'oubli pour le moment les @ (mais ça peut servir )
et je vais essayer avec des variables en minuscules

---Perig---
Pour vous servir 8-)
0
perig Messages postés 358 Date d'inscription vendredi 1 novembre 2002 Statut Membre Dernière intervention 5 septembre 2006
3 déc. 2003 à 19:04
Bon finalement j'ai trouvé le problème.
J'avais mes fichiers php sur lycos et ma base sur free et dans ce cas on peut consulter la base mais pas la modifier ce qui explique mes problèmes.
:big) désolé pour le dérangement

---Perig---
Pour vous servir 8-)
0
Rejoignez-nous