[RESOLU] Comment ecrire une condition

Eléphant du PHP | 109 Messages

23 oct. 2013, 18:05

Bonjour
Je galére pour écrire une condition
-------------
Je veux que quand $cat n'est pas rempli ou défini ca m'ecrive
if (!isset($cat)||$cat==""){
	foreach (get_posts('cat=12&orderby=name&order=ASC') as $post) {
        setup_postdata( $post );
}
si c'est rempli
else{
	foreach (get_posts('cat='.$cat.'&showposts=15') as $post) {
        setup_postdata( $post );
}
Mais avec toutes ces { j'ai que des messages d'erreurs
Merci de me dire ou je bug
Nadège
Modifié en dernier par moogli le 23 oct. 2013, 18:27, modifié 1 fois.
Raison : bbcode php

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

23 oct. 2013, 18:30

salut,

dans les deux cas il te manque un }

je ferais ton code ainsi
<?php
if (empty($cat)) {
    $query = 'cat=12&orderby=name&order=ASC';
}
else {
    $query = 'cat=' . $cat . '&showposts=15';
}

foreach (get_posts($query) as $post) {
    setup_postdata($post);
}
Il en faut peu pour être heureux ......

Eléphant du PHP | 109 Messages

23 oct. 2013, 18:40

pffff vc'etait pourtant pas compliqué
j’étais pas loin ca me rassure
merci

Mammouth du PHP | 2278 Messages

23 oct. 2013, 19:46

The most simple est de commencer par écrire les paires (paires de ce qu'on veut, mais surtout accolades et parenthèses) et de les remplir ensuite:
on a moins d'erreurs.
Un ide comme Eclipse dans le genre libre est bien utile pour ça. Mais tout bidule qui fait de la coloration syntaxique est à prendre.
Il y a aussi des gens qui numérotent ou/et commentent pour s'y retrouver
// moi je parenthèse toujours maximal et je préfère rejeter les accolades, ce que je trouve plus lisible, car on voit leur alignement en indentant comme tu fais(bien)
if (!isset($cat)||($cat==""))
{//1
			//je sortirais le get_posts de la boucle
			$t =   get_posts('cat=12&orderby=name&order=ASC');    
        foreach ($t) as $post) 
        {//2 foreach
        	setup_postdata( $post );
	}//nécessairement fin de foreach
else
{
        foreach (get_posts('cat='.$cat.'&showposts=15') as $post) 
        {
                setup_postdata( $post );
}
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD