PHP -MySQL - SQL

Résolu
afroxav Messages postés 13 Statut Membre -  
afroxav Messages postés 13 Statut Membre -
Bonjour,
J'ai un petit probleme avec un script php qui est censé créer des tables dans une batabase mysql 5.0:

<html>

	<head>

	<title>Setup</title>
	<link rel="Stylesheet" type="text/css" href="default.css" />

	</head>

<body>

<h1>Starcartf Database Setup</h1>

<?php
// Déclaration des paramètres de connexion
$host = "localhost";
$names = array(me, meone, metwo);

// Généralement la machine est localhost
// c'est-a-dire la machine sur laquelle le script est hébergé

$user = "USERNAME_app";

$bdd = "USERNAME_starcraft";

$passwd  = "*******";

// Connexion au serveur
mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");

//mysql_select_db($bdd) or die("erreur de connexion a la base de donnees");

foreach ($names as $tbname) {
// Creation et envoi de la requete
$sql = "CREATE TABLE `USERNAME_starcraft`.`'$tbname'` (`total-win` smallint( 6 ) NOT NULL default \'0\',`total-lost` smallint( 6 ) NOT NULL default \'0\',`time-played` smallint( 6 ) NOT NULL default \'0\',`quota` smallint( 6 ) default NULL ,`code` int( 11 ) NOT NULL auto_increment ,PRIMARY KEY ( `code` )) ENGINE = MYISAM DEFAULT CHARSET = utf8 COLLATE = utf8_bin";


//$result = mysql_query($sql);

if(!mysql_query($sql)){
echo "Erreur dans la commande: <br />$sql<br /><br />\n\n";
}
else {
echo "Commande réussie: <br />$sql<br /><br />\n\n";
}



// Deconnexion de la base de donnees
mysql_close();

?>


</body>

</html> 
Configuration: Windows Vista
Firefox 2.0.0.7

6 réponses

  1. nEm3sis
     
    dsl j'ai la flemme de lire
    mais peu tu dire quel est le probleme ? un message d'erreur ? si oui lequel ?
    0
    1. gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   1 340
       
      +1

      Merci de donner des détails. On s'appelle pas madame irma... on a pas de boule de cristal...
      0
  2. Alain42
     
    Bonjour,

    Une erreur déja:

    $names = array(me, meone, metwo);


    il faut encadrer les noms donnes par des " ou des '

    $names = array("me", "meone"," metwo");
    


    et a la place de:
    //$result = mysql_query($sql);

    if(!mysql_query($sql)){
    echo "Erreur dans la commande: <br />$sql<br /><br />\n\n";
    }
    else {
    echo "Commande réussie: <br />$sql<br /><br />\n\n";
    }


    je mettrait:
    $result = mysql_query($sql) or die ("Requette impossible !".mysql_error()); // tu auras au moins les messages d'erreur de mysql
    if(!result){
    echo "Erreur dans la commande: <br />$sql<br /><br />";
    }
    else {
    echo "Commande réussie: <br />$sql<br /><br />";
    }
    0
  3. afroxav Messages postés 13 Statut Membre 10
     
    ma page sort blanche!
    0
  4. Alain42
     
    Bonjour,

    Je viens de déceler une autre erreur:

    Ta boucle foreach n'est pas refermée, il manque une }

    juste avant
    // Deconnexion de la base de donnees
    mysql_close();
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. burnedsyn Messages postés 174 Statut Membre 16
     
    salut,

    le probleme viens des ' dans ta requetes

    $sql = "CREATE TABLE ackrosbe.$tbname (total_win SMALLINT(6) NOT NULL DEFAULT 0, total_lost SMALLINT(6) NOT NULL DEFAULT 0, time_played SMALLINT(6) NOT NULL DEFAULT 0, quota SMALLINT(6) NOT NULL, code INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE = MyISAM";

    et aussi

    tu fais $sql='blabla' <<< mieux $sql="blablab"

    ensuite le mieux que tu aie a faire la prochaines fois que tu as un probleme est de

    1) indiquer clairement la requete que tu fais : echo ("$sql voici la requete <br>");
    ensuite $var=mysql_query($sql) or die (mysql_error()); afin de voir ou ca bloque et plus ou moins l'endroit dans la chaine...

    a bientot

    Tim
    0
  7. afroxav Messages postés 13 Statut Membre 10
     
    Merci!
    0