Probleme avec un select name
Résolu
delavega470
Messages postés
298
Date d'inscription
Statut
Membre
Dernière intervention
-
delavega470 Messages postés 298 Date d'inscription Statut Membre Dernière intervention -
delavega470 Messages postés 298 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous j’ai un souci j’ai fait un select affichant les données depuis la base de donnée ça marche mais je veux faire afficher le montant qui correspond a un element du select qui se trouve dans la base de donnée mais je n’arrive pas pourrai je avoir un coup de main svp
<?php
require_once('bdconnexion.php');
$req="select * from module";
$rs=mysql_query($req) or die(mysql_error());
?>
<form method="post"action="#">
<select name="module" id="module">
<option><?php while ($SET=mysql_fetch_assoc($rs)) {?>
<?php echo ($SET['nom_module']) ?>
<option> <?php } ?>
<br>
</option>
</select><br>
<label for="montant">Montant</label>
<input id="montant" name="montant"
Value=//je veux afficher le motant en fonction du choix dans le select
</form><br>
A voir également:
- Probleme avec un select name
- Reboot and select proper boot device asus - Forum Matériel & Système
- Display name c'est quoi - Forum Mobile
- Cannot find required map name - Forum BIOS
- Resource '$(string.VerMgmtAuditModeEnable)' referenced in attrib ✓ - Forum Windows
- Wan connected name repeated - Forum D-Link
6 réponses
Bonjour,
Places le montant dans l'attribut VALUE de tes OPTIONS
De plus... ta boucle n'était pas bien placée...
Teste ceci : (en changeant si nécessaire la variable $SET['montant'] par le nom du champ dans ta BDD correspondant au "montant"
Cordialement,
Jordane
Places le montant dans l'attribut VALUE de tes OPTIONS
De plus... ta boucle n'était pas bien placée...
Teste ceci : (en changeant si nécessaire la variable $SET['montant'] par le nom du champ dans ta BDD correspondant au "montant"
<select name="module" id="module"> <?php while ($SET=mysql_fetch_assoc($rs)) { echo "<option value='".$SET['montant']."'>".$SET['nom_module']."</option>"; } ?> </select>
Cordialement,
Jordane
j'ai changé la boucle mais quand je choix un module dans le select le montant ne s'affiche pas dans la partie montant. je veux selectionner un module et le montant s'affiche automatique dans la patie montant pas de select dans le montant
Il faut modifier cette ligne :
par :
Par contre ... ça ne se fera qu'après le SUBMIT de ton formulaire....
Si tu veux le faire en automatique sans avoir à faire de submit ...là ... il faudra le faire en javascript !
<input id="montant" name="montant" Value=//je veux afficher le motant en fonction du choix dans le select
par :
<?php $module = !empty($_POST['module']) ? $_POST['module'] : 0; ?> <input id="montant" name="montant" Value='<?php echo $module ; ?>' >
Par contre ... ça ne se fera qu'après le SUBMIT de ton formulaire....
Si tu veux le faire en automatique sans avoir à faire de submit ...là ... il faudra le faire en javascript !
ha ok mais en javascript cela me donnera quoi svp!
Et bien...
Mettre un ONCHANGE sur ton SELECT qui appelle un script JAVASCRIPT.
Ce script lit la valeur selectionnée dans le SELECT et rempli ton INPUT.
En gros :
Et dans ta page tu ajoutes le code javascript suivant :
Mettre un ONCHANGE sur ton SELECT qui appelle un script JAVASCRIPT.
Ce script lit la valeur selectionnée dans le SELECT et rempli ton INPUT.
En gros :
<select name="module" id="module" onchange='remplirInput(this);'>
Et dans ta page tu ajoutes le code javascript suivant :
<script type='text/javascript'> function remplirInput(elm){ //valeur selectionnée var valSel = elm.value; //remplissage de l'input var input_montant = document.getElementById('montant'); input_montant.value = varSel; } </script>
<form method="post"action="#"> <select name="module" id="module" onchange='remplirInput(this);'> <?php while ($SET=mysql_fetch_assoc($rs)) { echo "<option value='".$SET['cout_module']."'>".$SET['nom_module']."</option>"; } ?> </select> <br> </option> </select><br> <label for="montant">Montant<em>*</em></label> <script type='text/javascript'> function remplirInput(elm){ //valeur selectionnée var valSel = elm.value; //remplissage de l'input var input_montant = document.getElementById('montant'); input_montant.value = varSel; } </script> <input id="montant" name="montant"> </form>cela ne s'affiche toujours pas !!
les modules s'affiche dans le select mais quand je choisi un module le montant ne sort pas dans le inpunt ,le module et le montant sont stocké dans une table appele module
Pettie erreur de copier/coller dans le script.
Tiens, voici le "bon"
Par contre... dans TON code ... peux tu m'expliquer ce que viennent faire les lignes
qui.... si tu regardes bien.... sont en "trop" !
Il faut que tu les retire.
Tiens, voici le "bon"
function remplirInput(elm){ //valeur selectionnée var valSel = elm.value; //remplissage de l'input var input_montant = document.getElementById('montant'); input_montant.value = valSel; }
Par contre... dans TON code ... peux tu m'expliquer ce que viennent faire les lignes
</option> </select><br>
qui.... si tu regardes bien.... sont en "trop" !
Il faut que tu les retire.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
maintenant j'ai un autre souci en fonction de ce montant je veux appliquer une reduction je reflechis mais je trouve pas la bonne conbinaison
<label for="reduction">Réduction </label> <select name="Reduction" id="reduction"> <option value="pas">pas</option> <option value="5">5%</option> <option value="10">10%</option> <option value="15"> 15%</option> <option value="20">20%</option> <option value="25">25%</option> <option value="30">30%</option> <option value="35">35%</option> <option value="40">40%</option> <option value="45">45%</option> <option value="50">50%</option> </select><br> <label for="montant">Montant fin</label> <input id="montantf" name="montantf" value=//montant final><br>
maintenant j'ai un autre souci
Autre question... = Nouvelle Discussion.
Pour faciliter la recherche sur le forum... il est préférable de ne poser qu' UNE seule question par discussion.
Donc merci de bien bouloir mettre en résolu cette discussion et en ouvrir une autre pour exposer ta nouvelle question;
PS: Je peux déjà te dire que la réponse passera là encore par du javascript....