En effet je voudrais pouvoir afficher tous les articles lorsque ma session vaut 'all' et sinon afficher la couleur contenu dans ma session. Pareil avec le choix de la matière.
Mais impossible de faire une cancaténation dans ma requête. Pouvez-vous m'aider svp ? Ou me dire s'il n'y a pas un autre moyen plus simple de faire cette opération.
$sql_articles = $bdd->prepare('
SELECT titre, url, prix, photo
FROM articles
WHERE afficher = :afficher';
if ($_SESSION['trier']['couleur'] != 'all') { echo 'AND couleur= :couleur'; }
if ($_SESSION['trier']['matiere'] != 'all') { echo 'AND matiere= :matiere'; }
echo ' ORDER BY ordre
');
$sql_articles->execute(array(
'couleur' => $_SESSION['trier']['couleur'],
'matiere' => $_SESSION['trier']['matiere'],
'afficher' => 1
));
$sql_articles->setFetchMode(PDO::FETCH_ASSOC);