8791 sujets

Développement web côté serveur, CMS

Bonjour,

Je souhaiterai permettre à l'utilisateur de sélectionner les annonces qui l'intéressent en les mettant dans une sorte de panier. j'ai pensé à utiliser le même code que pour ma recherche multicritère ci dessous et d'ajouter un formulaire qui cherche l'ID de l'annonce sélectionné. Mais je ne sais pas comment faire pour cumuler les annonces dans le panier?


if(!empty($_SESSION['choixtypedebien']))
{
	$tabsearchtype = explode(",", $_SESSION['choixtypedebien']);
	$listsearchtype = "";
	$fsearchtype = 1;
	

	foreach($tabsearchtype as $searchtype)
	{

		if($fsearchtype){$listsearchtype .= "'".trim($searchtype)."'"; $fsearchtype = 0;}

		else{$listsearchtype .= ",'".trim($searchtype)."'";}
	}
	

	$whereReq .= "searchtype IN(".$listsearchtype.") ";
	$fLig = 0;
}


Ma requete:

$sel = "SELECT *, date_format(date_annonce, '%d/%m/%Y') as date_fr FROM $tables WHERE $whereReq ORDER BY $orderby LIMIT ".$start.",".$nb_results_p_page;



if($total)
	{					
		while($row = mysql_fetch_array($result))
		{
			echo '<div>affichage annonces</div>';
		}
	}
salut

un array_push sur le tableau de session, comme par exemple :

array_push($_SESSION['panier'], $ajout);


ou $ajout correspond au contenu de l'annonce défini par le name d'un textarea, par exemple, une checkbox permet de selectionner l'annonce.

il reste à récupérer le tout et à l'insérer avec array_push, si besoin répété.

maintenant pour ne récupérer que l'id, une variable get suffit si il s'agit d'un simple ajout, pour les multiplier, post et checkbox.ensuite le principe est le même, array_push ou $_SESSION['id'] = $id ou encore $_SESSION['choixtypedebien']['id'] = $id

voilà, c'est le principe.
Bonjour keran Smiley biggrin ,

je n'avais pas vu ta réponse, merci. Je m'étais déjà lancé mais sur une mauvaise piste. je ne sais pas encore me servir des fonctions que tu me propose, je vais voir quelques tutos sur les array...
Sinon pour conserver les annonces comme je le souhaite ne faudrait il pas que j'utilise les cookies sinon à la fin de la session elle seront effacées...

A+