Aller au contenu

Checkbox ne reste pas cochée changement de page


Sujets conseillés

Posté

Bonjour à tous,

J'ai un moteur de recherche interne à mon site auquel j'ai appliqué plusieurs filtres pour trier les résultats. Tout marche correctement sauf que lorsque l'utilisateur clique sur la page suivante des résultats retournés, les checkbox se decochent et le filtre n'est plus appliqué dès la deuxième page.

Je voudrais que lorsque l'utilisateur choisi une checkbox avant de lancer la recherche, celle-ci reste cochée pour toutes les pages suivantes sans que l'utilisateur est a recliqué dessus.

<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="get">Rechercher dans : 
<input type="checkbox" name="check1" value="FR" />Filtre0
<input type="checkbox" name="check2" value="US" />Filtre1
<input type="checkbox" name="check2" value="ES" />Filtre2
<input type="checkbox" name="check4" value="D" />Filtre3
</form>

Si quelqu'un a une idée ca serai cool de m'en faire part!

Merci

Posté

Pour chacune de tes checkbox, tu fais un test pour vérifier si elle est présente en _GET ou _POST, puis tu ajoutes l'attribut checked="checked".

par exemple, pour la première :

<?php
$check = '';
if(isset($_GET['check1']))
$check = ' checked="checked"';
echo '<input type="checkbox" name="check1" value="FR"'.$check.' />Filtre0';
?>

Posté

Ah ok, effectivement ton code marche bien lorsqu'on le place dans le <form> seulement mon lien vers la page suivante n'est pas dans ce <form>, la page est recharger entièrement ainsi que le form qui se réinitialise et je ne capte pas comment faire!

Posté

Dans ce cas, il faut que ton lien "page suivante" mentionne comme paramètres les différentes cases cochées.

Si je coche la case "FR" et "ES", il doit être sous la forme suivante :

moteur?php?page=2&check1=FR&check3=ES

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...