Page 1 sur 1

champ SELECT

Posté : 15 janv. 2012, 00:50
par zerodegre
Bonsoir a tous ;

voila j'ai un champs qui se nomme INFORMATION de la table USERS

Je reussi à ecrire dans la BDD le choix selectionné ci dessous mais j'arrive pas le recuperer en bidouillant avec ==> selected="selected"

c'est a dire que je voudrais lors de l'acces à l'espace membre que le selecteur se positionne par rapport a ce qui est renseigné dans le champ INFORMATION


pour mon HTML j'ai ceci :
<select name="info">
		
	    <option value="" >veuillez selectionner</option>
	    <option value="teste1">teste1</option>
	    <option value="teste2">teste2</option>
	    <option value="teste3">teste3</option>


Re: champ SELECT

Posté : 15 janv. 2012, 01:03
par moogli
salut

et qu'elle est ton code ?

le principe est simple il s'agit d'un simple if.

@+

Re: champ SELECT

Posté : 15 janv. 2012, 07:22
par zerodegre
j'ai essayer ceci mais marche pas il recupere bien l'info mais c'est toujours la derniere => teste3:

Je pense qu'il faut faire une comparaison entre la valeur du champ et de l'input select mais j'arrive pas à la faire fonctionner
 // lancement de la requete
    $sql = 'SELECT information from users where id="'.mysql_real_escape_string($_SESSION['userid']).'"';
    // on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
    $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());  
     
    // on recupere le resultat sous forme d'un tableau
    $data = mysql_fetch_array($req);  
     
    // on libère l'espace mémoire alloué pour cette interrogation de la base
    mysql_free_result ($req);  
    mysql_close ();

<?php
	if ($data[information] == $_POST[information])
{
    $selected_1 = "selected='selected'";
}
else
{
      $selected_1 = "";
}
?> 
<select name="information">
               
            <option value=""  >veuillez selectionner</option>
            <option value="teste1"<?php echo $selected_1; ?>>teste1</option>
            <option value="teste2"<?php echo $selected_1; ?>>teste2</option>
            <option value="teste3"<?php echo $selected_1; ?>>teste3</option></select>

 

Re: champ SELECT

Posté : 15 janv. 2012, 09:12
par sirakawa
oeuf corse:
il faut définir :
$selected_1 ="selected ='selected'";
$selected_2 ="selected =''";
$selected_3 ="selected =''";
ou
$selected_2 ="selected ='selected'";
$selected_1 ="selected =''";
$selected_3 ="selected =''";
ou
$selected_3 ="selected ='selected'";
$selected_2 ="selected =''";
$selected_1 ="selected =''";
suivant la valeur de $POST['information']

Re: champ SELECT

Posté : 15 janv. 2012, 10:21
par zerodegre
comment mettrais tu les balise la dedans moi jai mit la meme sur chaque ligne est ce bon ou pas ==>

<select name="information">

<option value="" >veuillez selectionner</option>
<option value="teste1"<?php echo $selected_1; ?>>teste1</option>
<option value="teste2"<?php echo $selected_1; ?>>teste2</option>
<option value="teste3"<?php echo $selected_1; ?>>teste3</option></select>

Re: champ SELECT

Posté : 15 janv. 2012, 10:34
par xTG
Si tu mets la même à chaque fois cela n'a pas de sens.
Faut la 1, la 2 et la 3. ;)

Re: champ SELECT

Posté : 15 janv. 2012, 10:35
par Ryle
Ce qu'il faut c'est générer le code html qui va bien (et jamais perdre cette notion de vue).

Dans ton cas, il faut qu'il y ait écrit "selected" dans l'option qui doit être sélectionnée et uniquement dans celle là. Il faut donc tester pour chaque option si sa valeur est celle qui doit être sélectionnée. Si oui tu ajoutes l'attribut, si non, tu ne l'ajoutes pas.

Si tu utilises $selected_1 dans chaque option, tu auras soit un selected dans chaque option, soit rien dans chaque option... :)

Re: champ SELECT

Posté : 15 janv. 2012, 11:04
par zerodegre
donc mettree un select different sur chaque ligne c'est ça ???? comme :
<select name="information">

<option value="" >veuillez selectionner</option>
<option value="teste1"<?php echo $selected_1; ?>>teste1</option>
<option value="teste2"<?php echo $selected_2; ?>>teste2</option>
<option value="teste3"<?php echo $selected_3; ?>>teste3</option></select>

Et en PHP ça donnera quoi avec l'exemple ci-dessus ?

<?php
	if ($data[information] == $_POST[information])
{
    ????????????????
}
else
{
????????????????
}
?> 

Je ne sais pas trop quoi mettre par rapport au HTML ci dessus