Bonjour à tous,
voila c’est mon premier exercice en php5.
J’ai trouvé ce code exécutable.
Aide moi à trouver la solution la plus efficace.

table utiliser user(id,name)
comment je peux affiché le contenu de la table user dans un tableau en utilisant une méthode de classe UserTable ?

contenu de fichier "class_MyPDO.php"

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
<?php
class MyPDO extends PDO
{
      public function __construct($dsn, $user=NULL, $password=NULL)
      {
            parent::__construct($dsn, $user, $password);
            $this->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
      }
      public function prepare($sql, $options=NULL)
      {
            $statement = parent::prepare($sql);
            if(strpos(strtoupper($sql), 'SELECT') === 0) //requête "SELECT"
            {
                  $statement->setFetchMode(PDO::FETCH_ASSOC);
            }
            return $statement;
      }
}
?>
contenu de fichier "class_UserTable.php"

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
<?php
class UserTable
{
 
      private $selectAll;
      private $insert;
 
 
 
      public function __construct($db)
      {
            $this->selectAll = $db->prepare(
            "SELECT id, name FROM user ORDER BY name, id");
 
            $this->insert = $db->prepare(
            "INSERT INTO user (name, password) VALUES (:name, :password)");
 
      }
      public function insert($name, $password)
      {
            $this->insert->execute(
            array(':name' => $name, ':password' => $password));
            return $this->insert->rowCount();
      }
      public function selectAll()
      {
            $this->selectAll->execute();
            return $this->selectAll->fetchAll();
      }
 
}
?>
contenu de fichier "main.php"
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
 
<?php
require_once 'class_UserTable.php';
require_once 'class_MyPDO.php';
 
$db = new MyPDO('mysql:host=localhost;dbname=developpez', 'root', '');
 
  $userTable = new UserTable($db);
 
  $userTable->insert('Yogui', '4321');
  $userTable->insert('mathieu', '4321');
  $userTable->insert('BrYs', '4321');
 
  ?><pre><?php
 
  print_r($userTable->selectAll());
?>

Merci…