Select avec variables - reporter une variable enregistrée en table

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 : Select avec variables - reporter une variable enregistrée en table

par guilt92 » 29 juil. 2008, 16:09

Si tu connais la valeur de activité pour cette enregistrement il faut que tu testes et que tu joues avec l'attribut "selected='selected'".

Exemple
<SELECT name="activite"> 
<?php 
$activite = "Activité de mon enregistrement";
$requete = ("SELECT * FROM activite ORDER BY activite"); 
$req = mysql_query($requete) or die(mysql_error()); 

while($res = mysql_fetch_array($req)) { 
             
?> 
                <OPTION VALUE="<?=$res['activite']; ?>" <?php if($res['activite']==$activite) echo "selected='selected'"; ?>><?= ($res['activite']); ?></OPTION> 
<?php  
}

Select avec variables - reporter une variable enregistrée en

par bandenklap » 29 juil. 2008, 00:46

Bonjour à tous,

j'ai un léger souci avec un select qui refuse de reporter par défaut la valeur que j'ai enregistré en table. Ci dessous mon code :
<SELECT name="activite">
<?php $requete = ("SELECT * FROM activite ORDER BY activite");
$req = mysql_query($requete) or die(mysql_error());

while($res = mysql_fetch_array($req)) {
			
?>
				<OPTION VALUE="<?=$res['activite']; ?>"><?= ($res['activite']); ?></OPTION>
<?php 
}
?>
En gros, j'enregistre lors de la création de mon entrée sur la table la valeur "activité".
il et possible de modifier les valeurs via un formulaire qui reprend les valeurs enregistrées en base. Le problème se pose au niveau de mon select qui est censé reporter la valeur activite enregistrée en base (dans ma table activite), mais qui me remonte par défaut la première valeur de cette table.

Si quelqu'un a la solution, cela me rendrait un énorme service.

Merci par avance et bonne soirée.