在mysql的同一行中存储两个同名但id不同的字段

eqoofvh9  于 2023-06-04  发布在  Mysql
关注(0)|答案(1)|浏览(125)

我有一个项目,客户可以选择复选框和输入的价格基础上都有相同的名称,我想如果我选择复选框,而不是输入,我可以存储在数据库中的复选框,如果我选择,输入,只能存储输入的值。这是我的代码

<ul class="donate-now">[enter image description here](https://i.stack.imgur.com/EyU7O.png)
                  <li>
                    <input type="radio" class="form-control btn-default target" id="a100" name="amount" value="100"/>
                    <label for="a25">100€/mois</label>
                  </li>
                  <li>
                    <input type="radio" class="form-control btn-default target" id="a200" name="amount" value="200" />
                    <label for="a50">200€/mois</label>
                  </li>
                  <li>
                    <input type="radio" class="form-control btn-default target" id="a300" name="amount" value="300" checked/>
                    <label for="a75">300€/mois</label>
                  </li>
                 
                </ul>
                </div>
              
            
                
                <div class="container form-control-lg" id="montant-libre">
                  <span class="input-symbol-euro"><input type="text" class="form-control form-control-md" style="color: #d34607;" id="montantlibre" onclick="clearRadio()"  placeholder="Montant libre" name="amount" min="1"/></span>
                  
                </div>

我应该改变我的mysql的东西,因为我总是得到错误
我应该改变我的mysql的东西,因为我总是得到错误

fae0ux8s

fae0ux8s1#

<form id="donate">
   <ul class="donate-now">
      <li>
         <input type="radio" class="form-control btn-default target" id="a100" name="amount" value="100"/>
         <label for="a25">100€/mois</label>
      </li>
      <li>
         <input type="radio" class="form-control btn-default target" id="a200" name="amount" value="200" />
         <label for="a50">200€/mois</label>
      </li>
      <li>
         <input type="radio" class="form-control btn-default target" id="a300" name="amount" value="300" checked/>
         <label for="a75">300€/mois</label>
      </li>
   </ul>
   <div class="container form-control-lg" id="montant-libre">
      <span class="input-symbol-euro">
      <input type="text" class="form-control form-control-md" style="color: #d34607;" id="montantlibre" onclick="clearRadio()"  placeholder="Montant libre" name="amount" min="1"/>
      </span>
   </div>
</form>
<script>
   // Get the form element
   var form = document.getElementById("donate");
   if (form) {
   // Add a submit event listener to the form
   form.addEventListener("submit", function(event) {
     // Get the selected radio button
     var selectedRadio = document.querySelector('input[name="amount"]:checked');
   
     // Get the input field
     var inputField = document.getElementById("montantlibre");
     var amount = selectedRadio.value;
     // Check if the input field has a value
     if (!Number(inputField.value) !== true) {
       // new value
        amount = inputField.value;
     }
   
     console.log(amount);
     // Prevent the default form submission
     event.preventDefault();
   });
   }
</script>

详细内容:
1-使用document.getElementById("donate")获取表单元素。
2-使用form.addEventListener("submit", function(event) { ... });向表单添加提交事件侦听器。
3-在事件侦听器函数中,使用document.querySelector('input[name="amount"]:checked')获取选定的单选按钮。
4-使用document.getElementById("montantlibre")获取输入字段。
5-使用if (!Number(inputField.value) !== true) { ... }检查输入字段是否有值。
6-如果输入字段有一个值,将该值存储在amount变量中。否则,将所选单选按钮的值存储在amount变量中。
7-使用event.preventDefault()阻止默认表单提交。

相关问题