Site de A à Z - Jour 3 _ afficher les posts grouper par la même date

Par enima, il y a 13 ans


Merci pour ces tutoriel !
j'essaye de faire cette affichage de news en me basons sur ce tutoriel jy arrive pas

23 septembre:
news A
news B
news C

22 septembre:
news A
news B
... etc

merci de m'aider

9 réponses

Hugo38, il y a 13 ans

Bonsoir,

Donne nous le code de ta requête pour que nous puissions t'aider.

enima, il y a 13 ans

sur model.php:
public function find(req){ $sql = 'SELECT '; if (isset(req'fields'])) {
if (is_array(req'fields'])) { $sql .= implode(', ',req'fields']);
}else{
sql .= $req'fields']; } }else{ $sql.='\*'; } $sql .= ' FROM '.this->table.' ';

//construction de la condition
if (isset(req'conditions'])) { $sql .= 'WHERE '; if (!is\_array(req'conditions'])) {
sql .= $req'conditions']; }else{ $cond = array(); foreach (req'conditions'] as k => $v) { if(!is\_numeric(v)){
v = '"'.mysql\_escape\_string(v).'"';
}
cond]= "k=v"; } $sql .= implode(' AND ',cond);
}
}
if (isset(req'order'])) { $sql .= ' ORDER '.req'order'];
}

if (isset(req'limit'])) { $sql .= ' LIMIT '.req'limit'];
}

if (isset(req'group'])) { $sql .= ' GROUP '.req'group'];
}
pre = $this->db->prepare(sql);$pre->execute();return $pre->fetchAll(PDO::FETCH_OBJ);

dans mon Postscontroller.php :
function index(){
this->LoadModel('Post'); $condition2= array('type' => 'phys'); $d'post'] =this->Post->find(array(
'conditions' =>condition2, 'fields' => 'name,created', 'order'=>' BY created ' )); $this->set(d);

}

Merci

Djiins, il y a 13 ans
'order'=>' BY created '

il te faut un ASC ou DESC sur ton order

Comme ca

'order'=>' BY created DESC'
enima, il y a 13 ans

sa donne sa :
2012-09-29
tuug

2012-09-29
phys

2012-09-27
vnxx

moi je veux comme ca :

2012-09-29
tuug
phys

2012-09-27
vnxx

merci

Djiins, il y a 13 ans

rajoute un group by date

enima, il y a 13 ans

j'ai déjà essayé sa donne ca

2012-09-29
tuug

2012-09-27
vnxx

sur la date 2012-09-29 ne s'affiche qu'un seul post, alors que dans ma base j'ai 2 posts dans cette même date.

merci

PuLSor24, il y a 13 ans

On ne peut pas faire ça avec une requête SQL ?

enima, il y a 13 ans

sur la page view.php j'ai mis

<?php

foreach ($post as $k => $v) :?>
<h3><?php echo $v->created;?></h3>
<p><?php echo $v->name;?></p>
<?php
endforeach;

?>

enima, il y a 13 ans

s'il vous plait
aider moi !