Bonjour,
une idée comme ça, mes souvenirs sql datent...
Si cette requete fonctionne:
select image categorie ,max(telechargement)
from images
group by categorie
public function find($req = array()){
$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.' as '.get_class($this).' ';
// Liaison
if(isset($req'join'])){
foreach($req'join'] as $k=>$v){
$sql .= 'LEFT JOIN '.$k.' ON '.$v.' ';
}
}
// 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 BY '.$req'order'];
}
if(isset($req'limit'])){
$sql .= ' LIMIT '.$req'limit'];
}
if(isset($req'group'])){
$sql .= ' GROUP BY '.$req'group'];
}
$pre = $this->db->prepare($sql);
$pre->execute();
return $pre->fetchAll(PDO::FETCH_OBJ);
}
D'où
find(array(
'fields' => array('image','categorie','MAX(Telechargement'),
'group' => 'categorie'
));
Bien cordialement
ps: Absolument sur de rien du tout sur ce post XD... désolé si ça foire totalement...