Afficher resultat null dans sql

Fermé
tigre198 Messages postés 54 Date d'inscription dimanche 27 avril 2008 Statut Membre Dernière intervention 13 août 2012 - 12 août 2008 à 13:52
medoc13 Messages postés 65 Date d'inscription jeudi 7 août 2008 Statut Membre Dernière intervention 12 août 2008 - 12 août 2008 à 23:23
Bonjour,

je suis dans derniere etape de mon projet
reste une chose tres importante mùais peut etre la solution est facile et que j'ai passé a coté. j'utilise zend mais bien sur j'ai pas trouvé probleme avec zend mais juste je cherche a corriger un petit beug sql

je parcours table ou je calcul somme des nombre de commandes et je les tri par semaine
d'ou dans ma classe principal j'ai fonction suivante:

Code:
public function calcul()
{

$select = $this->select()
->from(array('p' => 'table),
array('id' => 'id','somme'=>'Round(sum(total),2)','semaine' =>'week(date,1)'))
->group('week(date,1)')
->order('week(date,1) ASC');
$r= $this->fetchAll($select);
return ($r);
}


dans class controller j'appelle cette fonction

Code:
function indexAction()
{

$this->view->title = "some total";
$calcul= new calcul();

$this->view->calcul=
$calcul->calcul();


et dans fichier index.html j'utilise boucle foreach

<?php foreach($this->calculas $calcul : ?>

<php echo 'semaine: ' .$this->escape($calcul->somme ;?>

endforeach;
<?php

bien sur la requete marche mais juste avec petit souci. car la j'ai reultat suivante:

semaine1: 5555
semaine5: 2222


ce que je cherche si c'est possible d'améliorer sql ou ajouter autre boucle avec foreach et d'afficher 0 dans les semaine des dates ou y'a pas eu des comandes. c'est a dire :

semaine1 :5555
semaine2 :0
semaine3:0
semaine4 :0
semaine5: 2222

merçi d'avance
A voir également:

1 réponse

medoc13 Messages postés 65 Date d'inscription jeudi 7 août 2008 Statut Membre Dernière intervention 12 août 2008 21
12 août 2008 à 23:23
il faut que tu testes ta variable avant la sortie,ex:
$var=$this->escape($calcul->somme);
if(isset($var) && $var!="" && $var!=0){ echo 'semaine: ' .$this->escape($calcul->somme);}
else{
echo 'semaine: 0';
}
0

Discussions similaires