Connexion php à mysql

Résolu
akimacker Messages postés 7 Statut Membre -  
 Utilisateur anonyme -
Bonjour, s'il vous plaît, quelqu'un pourrait m'aider? La création d'une base de donnée marche bien mais quand je crée une table il fait cette erreur SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected

Voici les codes :
<? php
$server = 'localhost';
$login = 'root';
$password = '';
try{
  $connexion = new PDO('mysql:host = $server; dbname=test', $login, $password);
  $connexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $connexion->exec("CREATE TABLE utilisateur(nom varchar(50))");
  echo 'Réussi';
}
catch(PDOException $e){
  echo 'Echec de la connexion : '.$e->getMessage();
}
?>

EDIT : Ajout des balises de code

2 réponses

  1. popozz Messages postés 246 Statut Membre 177
     
    Salut. Déjà cette erreur veux dire que vous n'avez pas sélectionné de base de données. Ensuite pourquoi vous le faite en PHP ?
    0
    1. akimacker Messages postés 7 Statut Membre
       
      Oui, je sais que l'erreur a dit que je n'ai pas sélectionné une base de données mais en voyant mon code, j'ai déjà précisé dbname=test, et je crois qu'il n'y a pas d'erreur sur mes codes. Et j'aime tester la création de base de données en PHP.
      0
    2. akimacker Messages postés 7 Statut Membre
       
      Merci à vous de m'avoir répondu, ma question est résolue.
      0
  2. Utilisateur anonyme
     
    Bonjour

    Dans ta requête de connexion, tu as mis la variable $server dans une chaîne entre simples apostrophes. Mais en PHP, les variables ne sont remplacées par leur valeur quand dans les chaînes entre doubles quotes " :
    "mysql:host = $server; dbname=test"
    et non pas
    'mysql:host = $server; dbname=test'


    Entre simples apostrophes, $server, c'est la chaîne de caractères $-s-e-r-v-e-r, pas une variable.
    0
    1. akimacker Messages postés 7 Statut Membre
       
      Merci le père!
      0
      1. Utilisateur anonyme > akimacker Messages postés 7 Statut Membre
         
        De rien :-)
        0