Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1369 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  messages vérif tables exist

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

messages vérif tables exist

n°2253540
icdk76800
On apprend tous de nos erreurs
Posté le 18-03-2015 à 14:01:41  profilanswer
 

Bonjour,  
 
Vola je bloque sur un point
Je compte faire une vérification de tables en fonction d'une input de mon formulaires
 
J'ai déjà un bout de code :

Spoiler :


$select = 'SELECT * FROM $Create';
 $result= mysqli_query ($conn, $select);
 if (@@mysqli_num_rows($result) == 0)
 { // Conditions si la table n'existe pas
  echo 'salut';
  mysqli_query ($conn, "CREATE TABLE  $Create ( DaB VARCHAR(30), DaF VARCHAR(30), SAS VARCHAR(30), Site VARCHAR(30))" );
  //mysqli_query ($conn, $sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
 
 }
 else { // Conditions si la table existe déjà en base
echo ' La table existe déjà';
 }


 
mon problème arrive quand la table existe déjà, je veux qu'il m'affiche mon echo mais rien ne ce passe, dans le cas ou cela n'existe pas il m'affiche bien le "salut" et cree la table, mais dans l'autre impossible
Je pense que cela vient de ma gestion de l'erreur mais la je bloque
 
Merci d'avance.

mood
Publicité
Posté le 18-03-2015 à 14:01:41  profilanswer
 

n°2253600
SICKofitAL​L
misanthrope
Posté le 18-03-2015 à 18:54:48  profilanswer
 

Pas besoin de faire tout ca en mysql, tu peux préciser directement dans ta requete la condition d'existence.
http://dev.mysql.com/doc/refman/5. [...] table.html
 
tu lances cette requete quelle que soit la situation et ca marche tout seul :
mysqli_query ($conn, "CREATE TABLE IF NOT EXISTS $Create ( DaB VARCHAR(30), DaF VARCHAR(30), SAS VARCHAR(30), Site VARCHAR(30))" );  
 
Pour ta question, ton if (@@mysqli_num_rows($result) == 0) avec tes deux @ n'est pas bon. D'ailleurs tu ne devrais pas cacher l'erreur. Tu peux soit la gerer au cas par cas ( http://stackoverflow.com/questions [...] sqli-query ),
soit tester l'existence d'une erreur de retour ( http://php.net/manual/fr/mysqli-stmt.errno.php)


---------------
We deserve everything that's coming...
n°2253621
icdk76800
On apprend tous de nos erreurs
Posté le 19-03-2015 à 09:49:21  profilanswer
 

Je sais gérer les erreurs :)  
 
Mais c'est au moment du traitement que je bloque.
 
en gros je voudrais que sa fasse une arborescence :
 
$select='mon select';
$query =' mysql_query $select
 
if result $query =0  
echo ' la table n'existe pas
else  
echo ' la table existe déjà'
 
mon problème survient au moment de récupérer la valeur de l'erreur je ne sais pas du tout comment faire. ya t'il un moyen de récupérer mon resultat de mysql_error, ou alors de faire mon if dans le mysql_error.
 
Je ne connais pas énormémént cet commande
 
désolé si je suis aussi débutant :sweat: :sweat: :sweat:

n°2253624
icdk76800
On apprend tous de nos erreurs
Posté le 19-03-2015 à 10:06:52  profilanswer
 

ahhh c'est bon après avoir fait joujou j'ai réussi !!!!
 
if (!mysqli_select_db( $link, "bdd01" )) {
   echo mysql_errno() . "salut: " . mysql_error(). "\n";
}
 
cela est-il bien ?  

n°2253627
SICKofitAL​L
misanthrope
Posté le 19-03-2015 à 10:38:20  profilanswer
 

tu peux faire directement
mysqli_select_db( $link, "bdd01" )
if (mysql_errno ()) // renvoit autre chose que 0 en cas d'erreur
{
   echo "salut: " . mysql_error(). "\n";
}


Message édité par SICKofitALL le 19-03-2015 à 10:38:42

---------------
We deserve everything that's coming...
n°2253656
icdk76800
On apprend tous de nos erreurs
Posté le 19-03-2015 à 15:35:48  profilanswer
 

petite question,
 
Maintenant que j'ai réussi a faire un script propre je pose une question sur un if
 
est-ce bon si je fait
 
mysqli_query ($conn, createtable )
if (mysql_errno ()){ // si la table existe déjà
   un traitement  
 
 
   
   

n°2253658
SICKofitAL​L
misanthrope
Posté le 19-03-2015 à 17:03:30  profilanswer
 

Ben check, mais c'est ce que je t'ai posté plus haut


---------------
We deserve everything that's coming...
n°2253661
icdk76800
On apprend tous de nos erreurs
Posté le 19-03-2015 à 17:18:25  profilanswer
 

oui j'ai bien lu ton lien, mais enfaite je ne sais pas si nous pouvons faire une requete dans un or die.

n°2253663
icdk76800
On apprend tous de nos erreurs
Posté le 19-03-2015 à 17:21:34  profilanswer
 

ah non c'est bon j'ai trouver comment faire


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  messages vérif tables exist

 

Sujets relatifs
Débutant BDD en général / liens entre tables[Access/SQL] Comparaison de tables
Élaboration des tablesRequete BDD sur tables multiples
Requete Mysql complexe sur 3 tablestemps d'exécution d'un programme et messages d'affichage
récupérer un login et un mot de passe dans deux tables différentesMise à jour conditionnelle et comparaison de 2 tables
Synchronisation 2 tables dans 2 DB différentesMySql mes tables sont la mais je ne les vois pas
Plus de sujets relatifs à : messages vérif tables exist


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR