Bonjour,

J'aimerais pouvoir créer une table avec PDO.
Pour se faire, j'utilise la fonction suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
	try
	{
	  $ptPDO =new PDO('mysql:host='.$this->host.';dbname='.$this->nomBDD, $this->login, $this->mdp,array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
	  echo '<br/>PDO:'.$sql.'<br/>';
	  $prep = $ptPDO->prepare($sql);
 
	  if(startswith($sql,'CREATE'))
	  {
	    echo '<br/>CREATE<br/>';
	    if($prep === FALSE)
	      echo 'Probleme PDO : ' . $prep->errorInfo();
	    else
	      echo 'Table creee';
	  }
	  else
	  {
	    if(sizeof($_tWhere)>0)
	    {
	      $prep->execute($_tWhere);
	    }
	    else
	      $prep->execute();
 
	    if(startswith($sql, 'SELECT'))
	    {
	      $result = $prep->fetchAll();
	      self::traitementRes($result);
	    }
	  }
	}
	catch (PDOException $e)
	{
	  echo 'Probleme PDO : ' . $e->getMessage();
	  echo 'N : '.$e->getCode();
	  echo 'N : '.$e->getLine();
	  die();
	}
Les select, insert fonctionne bien, mais j'ai un soucis pour un create table.
Ma requete est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
CREATE TABLE IF NOT EXISTS contact ( ID varchar(255) NOT NULL, nom varchar(255) NOT NULL, PRIMARY KEY (ID));
Lors de l'execution, j'ai bien un "Table creee"; mais rien en BDD.

Bonne journée