Récupérer valeurs PDO
Brandon1993
Messages postés
17
Statut
Membre
-
Brandon1993 Messages postés 17 Statut Membre -
Brandon1993 Messages postés 17 Statut Membre -
Bonjour,
Je tente d'apprendre PDO/POO car je remarque l'utilisation fréquente de cette programmation.
J'ai donc mis en place un système de panier, sur base d'un tuto, et je voudrai aller plus loin que le système établi.
De niveau simple, j'en ai conscience, mais je débute comme tout personne qui a dû commencer par le commencement.
Je souhaiterai pour commencer pouvoir extraire des informations.
db.class.php
Dans un autre fichier, j'ai inclus au début
Et puis j'ai tenté ...
J'ai également fait d'autres essais, mais je ne suis pas parvenu à obtenir mes informations.
Quelqu'un aurait une petite idée ?
Je tente d'apprendre PDO/POO car je remarque l'utilisation fréquente de cette programmation.
J'ai donc mis en place un système de panier, sur base d'un tuto, et je voudrai aller plus loin que le système établi.
De niveau simple, j'en ai conscience, mais je débute comme tout personne qui a dû commencer par le commencement.
Je souhaiterai pour commencer pouvoir extraire des informations.
db.class.php
<?php
class DB{
private $host = 'localhost';
private $username = 'root';
private $password = '';
private $database = 'essai';
private $db;
public function __construct($host = null, $username = null, $password = null, $database = null){
if($host != null){
$this->host = $host;
$this->username = $username;
$this->password = $password;
$this->database = $database;
}
try{
$this->db = new PDO('mysql:host='.$this->host.';dbname='.$this->database, $this->username,
$this->password, array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8',
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING
));
}catch(PDOException $e){
die('Impossible de se connecter a la base de donnée');
}
}
public function query($sql, $data = array()){
$req=$this->db->prepare($sql);
$req->execute($data);
return $req->fetchAll(PDO::FETCH_OBJ);
}
}
?>
Dans un autre fichier, j'ai inclus au début
require 'db.class.php';
$DB = new DB('');
Et puis j'ai tenté ...
$sql = "SELECT * FROM products"; $req = $DB->query($sql); $d = $req->fetch(); echo $d;
J'ai également fait d'autres essais, mais je ne suis pas parvenu à obtenir mes informations.
Quelqu'un aurait une petite idée ?
A voir également:
- Récupérer valeurs PDO
- Recuperer message whatsapp supprimé - Guide
- Récupérer mon compte facebook désactivé - Guide
- Comment recuperer une video sur youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
- Impossible de récupérer mon compte gmail - Guide
1 réponse
Bonjour,
Ton code est correct (hormis quelques erreurs comme le fetch que tu fais...alors que tu en as déjà un dans ta fonction... et le ECHO qui ne peut afficher un array ....)
Dans ta class DB .. évite de nommer une fonction "query" alors que c'est utilisé pour une instruction en php......
A la limite :
Par contre.. quitte à faire des requêtes... autant les mettre dans des CLASS (comme pour la class DB) ...
Par exemple.. une class products.class.php
et donc dans ta page principale tu aurais quelque chose du genre :
Cordialement,
Jordane
Ton code est correct (hormis quelques erreurs comme le fetch que tu fais...alors que tu en as déjà un dans ta fonction... et le ECHO qui ne peut afficher un array ....)
Dans ta class DB .. évite de nommer une fonction "query" alors que c'est utilisé pour une instruction en php......
A la limite :
public function sqlquery($sql, $data = array()){
$req=$this->db->prepare($sql);
$req->execute($data);
return $req->fetchAll(PDO::FETCH_OBJ);
}
require 'db.class.php';f $DB = new DB(); $sql = "SELECT * FROM products"; $d= $DB->query($sql); print_r($d);
Par contre.. quitte à faire des requêtes... autant les mettre dans des CLASS (comme pour la class DB) ...
Par exemple.. une class products.class.php
class products Extends DB{
public function __construct(){
parent::__construct();
}
public function getListProducts(){
$sql = "SELECT * FROM products";
$req = parent::sqlquery($sql);
return $req;
}
}
et donc dans ta page principale tu aurais quelque chose du genre :
require 'db.class.php'; require 'products.class.php'; $product = new products(); $listProducts = $product ->getListProducts(); // Affichage : Print_r($listProducts );
Cordialement,
Jordane
Si maintenant je veux récupérer une valeur de ma bdd, comment dois-je m'y prendre ?
n'est pas correct ?