Résolu Calcule Automatiser JS /PHP

Statut
N'est pas ouverte pour d'autres réponses.

Kwik_94

Nouveau membre
Bonjour, je suis bloqué, je cherche a créer un devis automatiser. Et, j'effectue plusieurs test pour les calculs, pour une ligne imput j'arrive a effectuer le calcule. Mais lorsque j'intègre une boucle php pou afficher une succession de ligne d'imput . Je n'arrive pas à faire le simple calcul sur aucune des lignes. Pourriez vous m'aider svp, après une succession de test , sa comment a m'exaspérer.

voici mon script:
PHP:
<script type="text/javascript">
   function calculer()
   {
      
       document.form1.MT.value = (document.form1.MF.value * document.form1.TP.value)/100;
 }
</script>

la première ligne 
<tr>
          <td align='center'><input type='text' class = 'in' name = 'designation' size='25' onkeydown="calculer()"></td>
         <td align='center'><input type='text' class = 'in' name = 'MF' size='25' onkeydown="calculer()"></td>
          
          <td><select name='TP' size='1' onkeydown="calculer()">
                           <option value='a' selected> </option>
                           <option value='15'>Tx0</option>
                           <option value='20'>Tx1</option>
                           <option value='25'>Tx2</option>
                           </select></td>

          <td align='center'><input type='text' class = 'in' name = 'MT' size='25'onkeydown="calculer()"></td>
</tr>

 <input type="button" name="Actualiser" onclick="calculer()" value="Actualiser" /> 

et le code quand j'utilise php pour afficher 22 lignes

<?php
for($i=1;$i<=22;$i++)
{
?>
<tr>
          <td align='center'><input type='text' class = 'in' name = 'designation' size='25' onkeydown="calculer()"></td>
         <td align='center'><input type='text' class = 'in' name = 'MF' size='25' onkeydown="calculer()"></td>
          
          <td><select name='TP' size='1' onkeydown="calculer()">
                           <option value='a' selected> </option>
                           <option value='15'>Tx0</option>
                           <option value='20'>Tx1</option>
                           <option value='25'>Tx2</option>
                           </select></td>

          <td align='center'><input type='text' class = 'in' name = 'MT' size='25'onkeydown="calculer()"></td>
</tr>

                  
<?php
}
?>
 

VaderFR

Grand Maître
Meilleure réponse
Bonjour,

c'est normal, tu as plusieurs fois les mêmes identifiants de champs, comment veux-tu qu'il s'y retrouve ?
ajoute ton $i dans la déclaration + calculer, et utilise ensuite GetElementByID pour récupérer les champs. Ou alors GetElementsByTag puis une boucle sur les éléments du tableau renvoyé, ou nextChild ...

vu que la variable PHP se retrouve dans les lignes générées, j'ai mis un echo.
j'ai aussi ajouté les fermetures de balises INPUT (W3C)
et pour avoir le code formaté sur le forum, utilise les balises [ code ] et [ / code ] (sans espaces)

Code:
<script type="text/javascript">
function calculer(numligne)
{
document.getElementById("MT"+numligne).value = (document.getElementById("MF"+numligne).value * document.getElementById("TP"+numligne).value)/100;
}
</script>
<table>
<form name="form1">
<?php
for($i=1;$i<=22;$i++)
{

echo "<tr>
<td align='center'><input type='text' class = 'in' name = 'designation' size='25' value='designation$i' onkeydown=\"calculer($i)\"/></td>
<td align='center'><input type='text' class = 'in' id='MF$i' name = 'MF$i' size='25' onkeydown=\"calculer($i)\"/></td>

<td><select name='TP$i' id='TP$i' size='1' onkeydown=\"calculer()\">
<option value='0' selected> </option>
<option value='15'>Tx0</option>
<option value='20'>Tx1</option>
<option value='25'>Tx2</option>
</select></td>

<td align='center'><input type='text' class = 'in' id='MT$i' name = 'MT$i' size='25'onkeydown=\"calculer($i)\"/></td>
</tr>";
}
?>
 

EricDEV

Nouveau membre
Bonjour j'aurais besoin d'aide. J'aimerais que quand je choisisse un nombre dans ma liste sa me mette automatiquement le prix total en dessous.
Vous devez être connecté pour voir les pièces jointes.

voici le code :

Code:
<div class="sg-row">
                    <div class="sg-col-20-of-24 sg-col-28-of-32 sg-col-16-of-20 sg-col sg-col-32-of-36 sg-col-8-of-12 sg-col-12-of-16 sg-col-24-of-28">
                            <p style="
                                        font-weight: bold;
                                        font-size: 25px;
                                     ">
                                Kit Minage
                            </p>
                        <div class="sg-col-inner">
                            <p style="
                                      font-weight: bold;
                                      font-size: 20px;
                                      color: red;

                                     ">
                                <span id="price_inside_buybox" class="a-size-medium a-color-price">
                                    85.000&nbsp;$
                                </span>
                            </p>
                                <select name="quantity" autocomplete="off" id="quantity" tabindex="0" class="a-native-dropdown">
                                    <option value="1" selected="">1
                                    </option>
                                    <option value="2">2
                                    </option>
                                </select>
                                <span tabindex="-1" class="a-button a-button-dropdown a-button-small" id="a-autoid-0" aria-hidden="true" style="min-width: 0%;">
                                    <span class="a-button-inner">
                                        <span class="a-button-text a-declarative" data-action="a-dropdown-button" role="button" aria-hidden="true" id="a-autoid-0-announce">
                                            <span class="a-dropdown-label">
                                                Quantité :
                                            </span>
                                            <span class="a-dropdown-prompt">
                                                1
                                            </span>
                                        </span>
                                        <i class="a-icon a-icon-dropdown"></i>
                                    </span>
                                </span>

                                <div id="quantityAwarePriceRelocate_feature_div" class="feature" data-feature-name="quantityAwarePriceRelocate" data-cel-widget="quantityAwarePriceRelocate_feature_div">
                                </div>

                                <div id="soldByThirdPartyRelocate_feature_div" class="feature" data-feature-name="soldByThirdPartyRelocate" data-cel-widget="soldByThirdPartyRelocate_feature_div">
                                    <div id="soldByThirdParty" class="a-section a-spacing-small a-text-left">
                                        <span class="a-color-price price3P" dir="ltr">
                                            $ 85.000
                                        </span>
                                    </div>

                                </div>

                        </div>
                    </div>
                </div>

J'aimerais que quand la quantité augmente le deuxième 85.000$ se multiplie par la quantité choisi ...

Il me faudrait juste un code script normalement ...
 

svoglimacci

check memory failed but no bug detected
Salut :)
Bonjour j'aurais besoin d'aide. J'aimerais que quand je choisisse un nombre dans ma liste sa me mette automatiquement le prix total en dessous.
Vous devez être connecté pour voir les pièces jointes.

voici le code :

Code:
<div class="sg-row">
                    <div class="sg-col-20-of-24 sg-col-28-of-32 sg-col-16-of-20 sg-col sg-col-32-of-36 sg-col-8-of-12 sg-col-12-of-16 sg-col-24-of-28">
                            <p style="
                                        font-weight: bold;
                                        font-size: 25px;
                                     ">
                                Kit Minage
                            </p>
                        <div class="sg-col-inner">
                            <p style="
                                      font-weight: bold;
                                      font-size: 20px;
                                      color: red;

                                     ">
                                <span id="price_inside_buybox" class="a-size-medium a-color-price">
                                    85.000&nbsp;$
                                </span>
                            </p>
                                <select name="quantity" autocomplete="off" id="quantity" tabindex="0" class="a-native-dropdown">
                                    <option value="1" selected="">1
                                    </option>
                                    <option value="2">2
                                    </option>
                                </select>
                                <span tabindex="-1" class="a-button a-button-dropdown a-button-small" id="a-autoid-0" aria-hidden="true" style="min-width: 0%;">
                                    <span class="a-button-inner">
                                        <span class="a-button-text a-declarative" data-action="a-dropdown-button" role="button" aria-hidden="true" id="a-autoid-0-announce">
                                            <span class="a-dropdown-label">
                                                Quantité :
                                            </span>
                                            <span class="a-dropdown-prompt">
                                                1
                                            </span>
                                        </span>
                                        <i class="a-icon a-icon-dropdown"></i>
                                    </span>
                                </span>

                                <div id="quantityAwarePriceRelocate_feature_div" class="feature" data-feature-name="quantityAwarePriceRelocate" data-cel-widget="quantityAwarePriceRelocate_feature_div">
                                </div>

                                <div id="soldByThirdPartyRelocate_feature_div" class="feature" data-feature-name="soldByThirdPartyRelocate" data-cel-widget="soldByThirdPartyRelocate_feature_div">
                                    <div id="soldByThirdParty" class="a-section a-spacing-small a-text-left">
                                        <span class="a-color-price price3P" dir="ltr">
                                            $ 85.000
                                        </span>
                                    </div>

                                </div>

                        </div>
                    </div>
                </div>

J'aimerais que quand la quantité augmente le deuxième 85.000$ se multiplie par la quantité choisi ...

Il me faudrait juste un code script normalement ...
Salut :)
Ce topic date de 2016, tu devrais en créer un nouveau juste pour toi :)

P.S. Tu l'as déjà fait, impeccable.
 

mezigo

Modo démodé
Staff
Alors pour éviter un autre déterrage… clic-clac !
 
Statut
N'est pas ouverte pour d'autres réponses.
Derniers messages publiés
Statistiques globales
Discussions
730 098
Messages
6 717 069
Membres
1 586 286
Dernier membre
petitangebleu1977
Partager cette page
Haut