par
jojolapine » 14 sept. 2008, 00:34
Bonsoir à tous (on bonjour peut-être?)
J'ai une petite question qui me taraude...
J'ai un bout de script, qui me récupère des dates dans une table, et j'aimerais les triées par avant aujorud'hui, et après...
Sachant que j'ai un traitement de format sur la dite date, avant de l'envoyer à la vue...
Donc en gros, est-ce qu'il vaut mieux ça:
$sql= "SELECT
id_evenement,
description,
ville,
codepostal,
date_evenement,
fin_evenement
FROM
agenda
WHERE
date_evenement>NOW();";
$resultats=$connexion->query($sql);
while($date= $resultats->fetch(PDO::FETCH_ASSOC)){
if($date['fin_evenement']!=='0000-00-00 00:00:00'){
$date_format=strftime("Du %e %B %Y",strtotime($date['date_evenement']));
$date_format.=strftime(" au %e %B %Y",strtotime($date['fin_evenement']));
} else {
$date_format=strftime("Le %e %B %Y",strtotime($date['date_evenement']));
}
$dates[]=array('date'=>$date_format,'descri'=>$date['description'],'ville'=>$date['ville'],'cp'=>$date['codepostal']);
}
$sql= "SELECT
id_evenement,
description,
ville,
codepostal,
date_evenement,
fin_evenement
FROM
agenda
WHERE
date_evenement<NOW();";
$resultats=$connexion->query($sql);
while($date= $resultats->fetch(PDO::FETCH_ASSOC)){
if($date['fin_evenement']!=='0000-00-00 00:00:00'){
$date_format=strftime("Du %e %B %Y",strtotime($date['date_evenement']));
$date_format.=strftime(" au %e %B %Y",strtotime($date['fin_evenement']));
} else {
$date_format=strftime("Le %e %B %Y",strtotime($date['date_evenement']));
}
$dates_old[]=array('date'=>$date_format,'descri'=>$date['description'],'ville'=>$date['ville'],'cp'=>$date['codepostal']);
}
qui est assez long, je pense, qui appel deux fois le serveur mysql... etc ou quelque chose comme ça:
$sql= "SELECT
id_evenement,
description,
ville,
codepostal,
date_evenement,
fin_evenement
FROM
agenda";
$resultats=$connexion->query($sql);
while($date= $resultats->fetch(PDO::FETCH_ASSOC)){
if($date['fin_evenement']!=='0000-00-00 00:00:00'){
$date_format=strftime("Du %e %B %Y",strtotime($date['date_evenement']));
$date_format.=strftime(" au %e %B %Y",strtotime($date['fin_evenement']));
} else {
$date_format=strftime("Le %e %B %Y",strtotime($date['date_evenement']));
}
if(strtotime($date['date_evenement'])>time()){
$date_future[]=$dates[]=array('date'=>$date_format,'descri'=>$date['description'],'ville'=>$date['ville'],'cp'=>$date['codepostal']);
} else {
$date_passee[]=$dates[]=array('date'=>$date_format,'descri'=>$date['description'],'ville'=>$date['ville'],'cp'=>$date['codepostal']);
}
}
Donc voilà, à votre avis...
Je gère en php ou en SQL?
Merci d'avance
Bonsoir à tous (on bonjour peut-être?)
J'ai une petite question qui me taraude...
J'ai un bout de script, qui me récupère des dates dans une table, et j'aimerais les triées par avant aujorud'hui, et après...
Sachant que j'ai un traitement de format sur la dite date, avant de l'envoyer à la vue...
Donc en gros, est-ce qu'il vaut mieux ça:[php]$sql= "SELECT
id_evenement,
description,
ville,
codepostal,
date_evenement,
fin_evenement
FROM
agenda
WHERE
date_evenement>NOW();";
$resultats=$connexion->query($sql);
while($date= $resultats->fetch(PDO::FETCH_ASSOC)){
if($date['fin_evenement']!=='0000-00-00 00:00:00'){
$date_format=strftime("Du %e %B %Y",strtotime($date['date_evenement']));
$date_format.=strftime(" au %e %B %Y",strtotime($date['fin_evenement']));
} else {
$date_format=strftime("Le %e %B %Y",strtotime($date['date_evenement']));
}
$dates[]=array('date'=>$date_format,'descri'=>$date['description'],'ville'=>$date['ville'],'cp'=>$date['codepostal']);
}
$sql= "SELECT
id_evenement,
description,
ville,
codepostal,
date_evenement,
fin_evenement
FROM
agenda
WHERE
date_evenement<NOW();";
$resultats=$connexion->query($sql);
while($date= $resultats->fetch(PDO::FETCH_ASSOC)){
if($date['fin_evenement']!=='0000-00-00 00:00:00'){
$date_format=strftime("Du %e %B %Y",strtotime($date['date_evenement']));
$date_format.=strftime(" au %e %B %Y",strtotime($date['fin_evenement']));
} else {
$date_format=strftime("Le %e %B %Y",strtotime($date['date_evenement']));
}
$dates_old[]=array('date'=>$date_format,'descri'=>$date['description'],'ville'=>$date['ville'],'cp'=>$date['codepostal']);
}[/php]qui est assez long, je pense, qui appel deux fois le serveur mysql... etc ou quelque chose comme ça:
[php]$sql= "SELECT
id_evenement,
description,
ville,
codepostal,
date_evenement,
fin_evenement
FROM
agenda";
$resultats=$connexion->query($sql);
while($date= $resultats->fetch(PDO::FETCH_ASSOC)){
if($date['fin_evenement']!=='0000-00-00 00:00:00'){
$date_format=strftime("Du %e %B %Y",strtotime($date['date_evenement']));
$date_format.=strftime(" au %e %B %Y",strtotime($date['fin_evenement']));
} else {
$date_format=strftime("Le %e %B %Y",strtotime($date['date_evenement']));
}
if(strtotime($date['date_evenement'])>time()){
$date_future[]=$dates[]=array('date'=>$date_format,'descri'=>$date['description'],'ville'=>$date['ville'],'cp'=>$date['codepostal']);
} else {
$date_passee[]=$dates[]=array('date'=>$date_format,'descri'=>$date['description'],'ville'=>$date['ville'],'cp'=>$date['codepostal']);
}
}[/php]
Donc voilà, à votre avis...
Je gère en php ou en SQL?
Merci d'avance