Premier affichage dans un tableau
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:
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:
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:
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());
?> |
:ccool:
Merci…
Premier affichage dans un tableau
Merci pour votre réponse, voilà l’affichage, mais je veux utiliser une méthode de la classe UserTable pour obtenir le même résultat
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <?php
mysql_connect('localhost', 'root, '');
mysql_select_db('developpez');
$sql = 'SELECT id,name
FROM user
ORDER BY id';
$db_messages = mysql_query($sql);
echo"<table border=1><tr><td>id</td><td>name</td></tr>";
while($tab= mysql_fetch_array($db_messages))
{
echo"<tr><td>". $tab['id'] ."</td><td>". $tab['name'] ."</td></tr>";
}
echo"</table> |
8O