Problèmes de condition (if)

Résolu/Fermé
Psore Messages postés 107 Date d'inscription lundi 30 septembre 2013 Statut Membre Dernière intervention 1 décembre 2015 - 12 nov. 2014 à 15:17
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 12 nov. 2014 à 17:03
Bonjour à tous!

J'ai un petit problème de condition,

J'ai pu ce matin mettre en place un tableau de session qui me garde les derniers articles visités et me les affiches.

Le problème étant que si je repasse sur un article que j'ai déjà visité il me le mes en double donc en gros la condition serai :

Si mon article existe déjà dans ma session alors je ne l'affiche pas voici mon code :



<?php
if(!isset($_SESSION['articlesDejavue'])){

$_SESSION['articlesDejavue'] = array();

$_SESSION['articlesDejavue']['titre'] = array();
$_SESSION['articlesDejavue']['image'] = array();

}

$select = array();
$select["titre"] = $article -> articles -> titre;
$select["image"] = $article -> articles -> image;


ajout($select);
?>
<div id="containerArticleDejaVue">
<div class="contentArticlesDejaVue">
<h1><i class="fa fa-th-large"></i> Vos derniers articles consultés</h1>

<?php for ($i=0; $i < count($_SESSION['articlesDejavue']['titre']) ; $i++) { ?>
<div class="ArticleDejaVue">
<a href="articleMobilier.php?id=<?php echo $article -> id ?>&categorie=<?php echo $article -> categorie ?>">
<h3><?php echo $_SESSION['articlesDejavue']['titre'][$i]?></h3>
<img src="images/imagesArticles/<?php echo $_SESSION['articlesDejavue']['image'][$i] ; ?>">
</a>
</div>
<?php } ?>

</div>
</div>
<?php } ?>




et voici le code de ma fonction ajout() :



<?php
function ajout($select){

array_push($_SESSION['articlesDejavue']['titre'],$select["titre"]);
array_push($_SESSION['articlesDejavue']['image'],$select["image"]);
}
?>


Merci d'avance pour votre aide et merci les forums!!!

1 réponse

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
Modifié par Pitet le 12/11/2014 à 17:04
Salut,

Tu peux essayer quelque chose comme ceci :
function ajout($select){
    if (!in_array($select["titre"], $_SESSION['articlesDejavue']['titre'])) {
        array_push($_SESSION['articlesDejavue']['titre'],$select["titre"]);
        array_push($_SESSION['articlesDejavue']['image'],$select["image"]);
    }
}
0