Redirection suivant un choix liste déroulante

Mammouth du PHP | 643 Messages

17 sept. 2016, 16:46

Salut à tous.
Voilà je viens vers vous car j'ai un petit problème comme vous vous en doutez.
Un pote ma donné un coup demain sur un projet bien sympa à lui à l'époque mais le hic c'est que tout marche bien mais l'utilisateur reste toujours sur la même url et je souhaite qu'il soit redirigé en fonction des choix de la liste déroulante ( car actuellement il y a du PHP et de l'AJAX ) Mais ajax coté référencement ce n'est pas le top selon moi.

Donc voilà j'un formulaire avec des liste déroulante département et type d'activité:
<form id="choice" name="liste deroulante" method="POST" action="<?php echo $_SERVER['REQUEST_URI']; ?>">        

            				<div class="col-md-3 col-sm-3 max">
                            <?php // Gestion des variables des départements
                            $region = !empty($_SESSION['membre']['id_region']) ? simplification($aRegion[$_SESSION['membre']['id_region']]) :NULL;
                            $region = !empty($_REQUEST['region']) ? $_REQUEST['region'] : $region; /* Si la region est renseigné dans l'url il est prioritaire */
                            $departement = !empty($_SESSION['membre']['id_departements']) ? $_SESSION['membre']['id_departements'] : NULL;
                            $departement = !empty($_REQUEST['departement']) ? $_REQUEST['departement'] : $departement; /* Si le departemebt est renseigné dans l'url il est prioritaire */
                            ?>
                            
                            <select name="departement" id="departement" class="selectpicker max" data-region="<?php echo $region; ?>">
                            <option value="">Votre département</option>
                            <?php echo aRegionDepartement($region, $departement); ?>
                            </select>      
                   			 </div>  
                    
      
                    		<div class="col-md-3 col-sm-3 max">
                            <select name="loisir" id="loisir" class="selectpicker max">
                            <option value=""> Toutes les sorties</option>
                            <?php
							asort($aLoisirs);
							foreach($aLoisirs as $k => $v) {
                            $selected = !empty($_REQUEST['loisir']) && ($_REQUEST['loisir'] == $k) ? ' selected="selected"' : NULL;
                            echo '<option value="'.$v.'"'.$selected.'>'.$v.'</option>'."\n";
                            } ?>
                            </select>
                            <?php echo !empty($region) ? '<input type="hidden" name="region" value="'.$region.'" />' : NULL; ?>
                    		</div>
                    
                             <div class="col-md-3 col-sm-3 max">
                                 <input type="submit" autofocus id="btn_select" class="find" onFocus="this.blur();" value="Rechercher">
                             </div> 
        			</form>
et le petit bout de js en question permet de filtrer selon les choix
$.ajax({
        type: 'POST',
        url: 'include/rechercheAjax.php',
        data: 'du='+du+'&au='+au+'&page='+page+'&departement='+dep+'&region='+region+'&loisir='+loisir+'&ville='+vil+'&date='+datetimepicker2,
        processData: true,
        async: false,
Donc ok ca marche mais je souhaite qu'il soit redirigé selon ces choix exemple par defaut je suis sur la page :
http://127.0.0.1/first/toutes-les-actu- ... alpes.html je choisi le département isère alors je dois être redirigé sur http://127.0.0.1/first/toutes-les-actu- ... isere.html

L'url rewrting je peut gérer mais c'est vraiment le principe de redirection ou de liens avec les liste déroulante ou je bloque.
Grand merci à ceux qui pourront m'aider ;)

EDIT:
Du coup je me demandé si il fallait vérifié qu'il y ai une activité de selectionné ou un département et faire un simple header location ?
Je suis un peut perdu pour le coup la

Par exemple:
<?php 
		  // Si il y a un département de selectionné
		  if (!empty($_REQUEST['departement']) && empty($_REQUEST['loisir'])) {
			  header('Location: http://127.0.0.1/first/toutes-les-sorties-en-region-rhone-alpes.html-du-departement-'.$_REQUEST['departement'].'');
			  } 
		  
		  else if (!empty($_REQUEST['departement']) && !empty($_REQUEST['loisir'])) {
			  echo $_REQUEST['departement'].' - '.$aLoisirs[$_REQUEST['loisir']];
			  }	  
			  
		  else if (empty($_REQUEST['departement']) && !empty($_REQUEST['loisir'])) {
			  echo $aLoisirs[$_REQUEST['loisir']];
			  }	  
			 ;?>
Peut etre pas terrible nan ?

Mammouth du PHP | 2703 Messages

17 sept. 2016, 22:42

un moteur ne va pas soumettre une formulaire en post, donc le fait que l'url appelée à la soumission du formulaire n'est pas jolie n'a pas d'incidence.
ce qu'il faut pour les moteurs, ce sont des liens vers les différentes pages afin que ces pages puissent sortir dans les résultats.

Mammouth du PHP | 643 Messages

17 sept. 2016, 23:25

Donc selon que dois je faire procéder avec des location ...
mais du coup pas de lien réel après je peu créer une sidebar avec des liens ça se fait facilement

Que ferais tu toi ?