encore un probleme de selected

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : encore un probleme de selected

Re: encore un probleme de selected

par graffx » 14 juil. 2010, 19:49

Pour garder justement les valeurs plus facilement, non?

Re: encore un probleme de selected

par AB » 14 juil. 2010, 17:09

Une remarque, pour simplifier la récupération des variables de ton formulaire pourquoi ne pas avoir employé la méthode post plutôt que get ?

Re: encore un probleme de selected

par graffx » 14 juil. 2010, 14:38

c' est pas ce qu ej' ai fait? :p
        <option value="wld" <?php if(isset($v) && $v ==  "wld"){ echo  'selected="selected"'; } ?>>Dans le monde</option>
                                        <option value="fr" <?php if(isset($v) && $v == "fr"){ echo  'selected="selected"'; } ?>>En France</option>
                                        <option value="ttc" <?php if(isset($v) && $v == "ttc"){ echo  'selected="selected"'; } ?>>Toutes les

Re: encore un probleme de selected

par Ryle » 14 juil. 2010, 09:55

J'ai pas tout relu, mais à priori il y a beaucoup plus simple :)
Je ne vois aucune explication logique pour que quand je clique sur le lien d' accueil et sur "toute l" actualité", la liste reste bien sur "dans votre commun"
if (!isset($_GET['v']) && ...) // si v n'est pas défini dans l'url
A partir de là tu peux tester si l'option est "dans votre commune" et que v n'est pas définie pour afficher un selected, ou tester si v est définie, en fonction de sa valeur, sélectionner la bonne option :)

Re: encore un probleme de selected

par graffx » 13 juil. 2010, 21:42

En fait c' est la synthaxe qui est pas bonne, je trouve pas la bonne facon de l' ecrire!

ben ca me donne mes deux variables v et c si les deux sont declarées :/

Re: encore un probleme de selected

par stealth35 » 13 juil. 2010, 20:23

le problème viens de ton "action" non ?
si tu fais un print_r($_GET) ca donne quoi ?

Re: encore un probleme de selected

par graffx » 13 juil. 2010, 20:18

Des tableaux? Donc faudrait que je parte sur un array?

parce que je pensai modifier cette partie:
					      <?php
						  $l2 = mysql_query('SELECT distinct * FROM villes ORDER BY ville ASC')or die(mysql_error());
						  while ($l = mysql_fetch_array($l2))
						  {
						  $selected=($l["ville"]==$_GET["v"])?" selected":"" ;
						  
						  echo '<option '.$selected.'>'.$l["ville"].'</option>';
					      }
					      ?>
mais si je fais un :
$selected="c="$c"&"($l["ville"]==$_GET["v"])?" selected":"" ;
Ben il aime pas du tout, je continue mes recherches!

Re: encore un probleme de selected

par stealth35 » 13 juil. 2010, 20:11

tu peux passé des tableaux via les paramètres ;)

genre :
action['c']=bla&action['v']=truc

Re: encore un probleme de selected

par graffx » 13 juil. 2010, 20:07

Hooo j' ai enfin trouvé! que d' effort!!!!!!

probleme de logique, le resultat est la pourtant!!!

bon et bien voila, ha oui! dernier souci un peu plus compliqué et je ne vous embete plus!!!

quand je veux passer dans le formulaire une url comme ca:

action="c=bla&v"

je me retrouve au final avec des caracteres speciaux dans l' url, je suis piegé!

j' ai essayé rawurldecode urldecode avec encode aussi, je crois qu' il n' y a plus de solution.

Bon ben tant pis, je vais reflechir sur une facon de tricher, merci pour votre aide les amis , je vous tiens au courant, on sait jamais, ca peut servir a quelqu'un!

Re: encore un probleme de selected

par graffx » 13 juil. 2010, 19:32

Bon ben voila, je pete un cable. Je ne vois aucune explication logique pour que quand je clique sur le lien d' accueil et sur "toute l" actualité", la liste reste bien sur "dans votre commun", par contre quand je clique sur faits d'hiver (fd), divertissement (d) ou sports (sp), la liste change pour se metre sur "dans le monde". Je craque, je ne trouve pas d' explication logique. La seule difference et que dans les liens posant problemes envers la liste, l' url rajoute la variable v= qui reste NULL si on n' a pas choisi de ville. Mais ca ne devrait pas poser souci! HAAAAAAAA!!!!

Voici les liens:
                    <td valign="middle"><img src="images/menu/puce.png" width="10" height="10" /></td>
                    <td valign="middle"><a href="?c=fd&v=<?php echo $v; ?>">Faits divers </a></td>
                  </tr>
                  <tr align="left">
                    <td valign="middle"><img src="images/menu/puce.png" width="10" height="10" /></td>
                    <td valign="middle"><a href="?c=d&v=<?php echo $v; ?>">Divertissements</a></td>
                  </tr>
                  <tr align="left">
                    <td valign="middle"><img src="images/menu/puce.png" width="10" height="10" /></td>
                    <td valign="middle"><a href="?c=sp&v=<?php echo $v; ?>">Sports</a></td>


					<form>
                    <select name="v" method="get" action="index.php" onchange='submit()'>
					<option value="wld" <?php if(isset($v) && $v == "wld"){ echo  'selected="selected"'; } ?>>Dans le monde</option>
					<option value="fr" <?php if(isset($v) && $v == "fr"){ echo  'selected="selected"'; } ?>>En France</option>
					<option value="ttc" <?php if(isset($v) && $v == "ttc"){ echo  'selected="selected"'; } ?>>Toutes les communes</option>
					<option disabled style="background-color:#CCFFFF" <?php if(!isset($v) && ($v == "")){ echo  'selected="selected"'; } ?>>Dans votre commune</option>
					      <?php
						  $l2 = mysql_query('SELECT distinct * FROM villes ORDER BY ville ASC')or die(mysql_error());
						  while ($l = mysql_fetch_array($l2))
						  {
						  $selected=($l["ville"]==$_GET["v"])?" selected":"" ;
						  
						  echo '<option '.$selected.'>'.$l["ville"].'</option>';
					      }
					      ?>
                    </select>
                        </form> 


<?php
		if(!isset($_GET['c']))
		{
		$actu2 = mysql_query('SELECT * FROM actus ORDER BY id DESC')or die(mysql_error());	
		}
		
		
		elseif(isset($_GET['c'])&&($_GET['c'] == 'ttactu')&&(!isset($_GET['v'])))
		{
		$actu2 = mysql_query('SELECT * FROM actus ORDER BY id DESC')or die(mysql_error());	
		}
		
		
		elseif(isset($_GET['c'])&&($_GET['c'] == 'ttactu'))
		{
		$actu2 = mysql_query('SELECT * FROM actus ORDER BY id DESC')or die(mysql_error());	
		}
		
		
		elseif(isset($_GET['c'])&&($_GET['c'] == 'fd')&&(isset($_GET['v'])))
		{
		$actu2 = mysql_query('SELECT * FROM actus WHERE rubrique = "fd" AND ville = $v ORDER BY id DESC')or die(mysql_error());	
		}
		
		
		elseif(isset($_GET['c'])&&($_GET['c'] == 'd'))
		{
		$actu2 = mysql_query('SELECT * FROM actus WHERE rubrique = "d" ORDER BY id DESC')or die(mysql_error());	
		}
		
		
		elseif(isset($_GET['c'])&&($_GET['c'] == 'sp'))
		{
		$actu2 = mysql_query('SELECT * FROM actus WHERE rubrique = "sp" ORDER BY id DESC')or die(mysql_error());	
		}
		?>

Re: encore un probleme de selected

par graffx » 12 juil. 2010, 22:55

Non ca ne peut pas marche, mes liens sont de type c=infos&v=<?php echo $ville; ?>

ca permet de garder la valeur selectionnée.

Il faut que je trouve le moyen de faire comme j' ai dit, mais je suis en train de tout melanger, mais bon je vais aller me coucher on verra demain :)

Re: encore un probleme de selected

par stealth35 » 12 juil. 2010, 22:47

c'est le html qui est comme ca, si y'a rien en selected c'est le premier élément qui s'affiche c'est logique, tu peux créer un autre premier élément qu'a pas de valeur genre : "sélectionner blabla" :wink:

Re: encore un probleme de selected

par graffx » 12 juil. 2010, 22:39

Oui je suis d' accord, mais pourquoi ?

dans cette partie
                                                  $l2 =  mysql_query('SELECT distinct * FROM villes ORDER BY ville ASC')or die(mysql_error());
                                                  while ($l = mysql_fetch_array($l2))
                                                  {
                                                  $selected=($l["ville"]==$_GET["v"])?" selected":"" ;
                                                 
                                                  echo '<option '.$selected.'>'.$l["ville"].'</option>';
                                              }
il faudrait que je puisse rajouter une condition si v= rien alors "dans cette commune" sinon v= la ville selectionnée

Re: encore un probleme de selected

par stealth35 » 12 juil. 2010, 21:52

la première est sélectionné par default

encore un probleme de selected

par graffx » 12 juil. 2010, 21:50

salut a tous, alors mon probleme va vite etre expliqué:

si ma variable dans l' url ne vaut rien ,, (c=bla=v=)

alors c' est "dans le monde qui est selectionné, je comprned pas pourquoi!
					<form>
                    <select name="v" method="get" action="index.php" onchange='submit()'>
					<option value="wld" <?php if(isset($v) && $v == "wld"){ echo  'selected="selected"'; } ?>>Dans le monde</option>
					<option value="fr" <?php if(isset($v) && $v == "fr"){ echo  'selected="selected"'; } ?>>En France</option>
					<option value="ttc" <?php if(isset($v) && $v == "ttc"){ echo  'selected="selected"'; } ?>>Toutes les communes</option>
					<option disabled style="background-color:#CCFFFF" <?php if(!isset($v) && ($v == "")){ echo  'selected="selected"'; } ?>>Dans votre commune</option>
					      <?php
						  $l2 = mysql_query('SELECT distinct * FROM villes ORDER BY ville ASC')or die(mysql_error());
						  while ($l = mysql_fetch_array($l2))
						  {
						  $selected=($l["ville"]==$_GET["v"])?" selected":"" ;
						  
						  echo '<option '.$selected.'>'.$l["ville"].'</option>';
					      }
					      ?>
                    </select>
                        </form>