Voici mon code pour la fonction fin:
public function find($req){
$sql = 'SELECT * FROM '.$this->table.' as '.get_class($this).' ';
if(isset($req'conditions'])){
$sql .='WHERE '.$req'conditions'];
}
$pre = $this->db->prepare($sql);
$pre->execute();
return $pre->fetchAll(PDO::FETCH_OBJ);
}
function view($id){
$this->loadModel('Post');
$posts = $this->Post->find(array(
'conditions' =>'id=1'
));
print_r($posts);
}
Le problème est que ce code m'affiche ceci:
Array ( )
Comme ci que la fonction find ne renvoyer rien, je pense que c'est une erreur d'inattention de ma part.
Mais si j’enlève toute la balise if j'ai bien toutes mes informations c'est a dire que ça m'affiche ceci:
Array ( [0] => stdClass Object ( [idPost] => 1 [name] => Ma premi?re page [content] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent at tempus risus. Nunc eleifend dictum orci, ac volutpat metus lobortis non. Cras id tellus id dui laoreet tempus. Vestibulum tempor faucibus eros, nec venenatis velit malesuada eu. Quisque a orci est, et hendrerit ipsum. [created] => 2012-04-11 00:00:00 [online] => 1 [type] => page [slug] => ma-premi?re-page [user_id] => 0 ) )
Voila et si possible vous pouvez me dire comment afficher les caractère spéciaux sans avoir à insérer un code spécial à leurs places.
Merci à ceux qui voudrons bien m'aider.
Je ne suis pas sur de moi, mais je pense que ton soucis vient plutot de la structure de la base de donnée, tu n'aurais pas mis "idPost" en clé primaire?? si oui, dans ta condition tu demande de filtrer avec une "id".
Pour le problème avec les caractères spéciaux, le problème est résolue dans le tuto vers 28min pour ce qui on le même.
Mon problème principale n'est toujours pas résolue bien que j'ai refait mes fonctions une bonne vingtaine de fois.