javascript - JQUERY onchange() 获取选定的选项并传递给要插入到 Mysql 数据库中的变量

标签 javascript php jquery mysql

我试图从下拉菜单中获取选定的值,根据选择创建一个值作为变量,并将该变量的值插入到 MYSQL 表中。

这是我当前的代码:

HTML/PHP

<select id="customer_country" name="customer_country"
class="validate[required] input_styling target"
style="background: #FFFFFF;">
                <option value="">Please Select a Country</option>
                <option value="Afghanistan">Afghanistan</option>
                <option value="Åland Islands">Åland Islands</option>
                <option value="Albania">Albania</option>
                <option value="Algeria">Algeria</option>
                <option value="American Samoa">American Samoa</option>
                <option value="Andorra" selected>Andorra</option>
...

</select>

<?PHP 

$shipping = */ post javascript variable here */

$sql = mysql_query('UPDATE orders
SET shipping=$shipping
WHERE order_id='$r[order_id']');

?>

<div class="overlay-bg">
      <div class="overlay-content">
          <p>You have selected a country of residence outside of the United Kingdom.</p>
          <p>Please note we only accept credit card payments from UK customers.</p>
          <p>If you are a customer from outside the UK, please click the
          Paypal icon to be taken through to Paypal checkout to complete your order.</p>
          <td width="185" align="center" valign="middle">
            <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
            <input type="hidden" name="cmd" value="_xclick" />
            <input type="hidden" name="business" value="" />
            <input type="hidden" name="item_name" value="" />
            <input type="hidden" name="return" value="" />
            <input type="hidden" name="currency_code" value="GBP" />
            <input type="hidden" name="image_url" value="" />
            <input type="hidden" name="item_name" value="<?=$r['order_title_1']?>" />
            <input type="hidden" name="item_name" value="<?=$r['order_title_2']?>" />
            <input type="hidden" name="item_name" value="<?=$r['order_title_3']?>" />
            <input type="hidden" name="shipping" value="<?=$shipping?>" />
            <input type="hidden" name="amount" value="<?=$r['order_total']?>" />
            <input type="image" src=""
                   name="submit" alt="Make payments with PayPal - it's fast, free and secure!" />
            </form>
          <p>However, if you are a UK customer and simply made an error,
          please click below to return to the checkout page.</p>
          <p>Thank you</p>
          <button class="close-btn">Close</button>
        </div>
        </div>

JQUERY

$(document).ready(function(){
    // show popup when selecting a country from the drop-down
    $( ".target" ).change(function() {
     if($(this).val() != "United Kingdom") {
        var docHeight = $(document).height();
        var scrollTop = $(window).scrollTop(); 
        $('.overlay-bg').show().css({'height' : docHeight}); 
        $('.overlay-content').css({'top': scrollTop+20+'px'});
     }
    });

代码将执行以下操作:

  • 获取所选选项的值
  • 如果选项不是英国 - 将应用以下两个条件之一

条件一

如果选择的选项是阿尔巴尼亚、 Algolia 、阿富汗 - 将创建一个值为 £15.00 的变量

条件二

如果选择的选项是美属萨摩亚、奥兰群岛 - 将创建一个值为 £10.00 的变量

  • 然后根据给定的 order_id 使用 UPDATE 语句将该值输入到 MYSQL 表中。

编辑

是否可以回显 javascript 值然后由服务器存储为 PHP 变量?

如有任何帮助,我们将不胜感激。

最佳答案

将价格存储在数据属性中,根据价格可以得到柜台的钱

HTML

<select id="customer_country" name="customer_country" class="validate[required] input_styling target" style="background: #FFFFFF;">
    <option value="" data-price="0">Please Select a Country</option>
    <option value="Afghanistan" data-price="15">Afghanistan</option>
    <option value="Åland Islands" data-price="10">Åland Islands</option>
    <option value="Albania" data-price="15">Albania</option>
    <option value="Algeria" data-price="15">Algeria</option>
    <option value="American Samoa" data-price="10">American Samoa</option>
    <option value="Andorra" data-price="0" selected>Andorra</option>
</select>

JS

var money = 0;
$(".target").change(function () {
  // this.value; to get the selected country value
    var optionSelected = $("option:selected", this);
    money = optionSelected.data("price");
    alert(money);
});

DEMO

关于javascript - JQUERY onchange() 获取选定的选项并传递给要插入到 Mysql 数据库中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24699059/

相关文章:

javascript - 学习 Javascript/JQuery + 解析日期

javascript - 单击窗口聊天框中的“X 关闭”按钮时事件的本地存储?

php - 未从 PHP 中的 MySQL 表中获取数据

jquery - 造型 Telerik :RadSpell

javascript - 无限循环到 JS 驱动的文本缩放动画

php - 如何将 <div> 处理为表单 &lt;input&gt;

javascript - 将一个元素的颜色值链接到另一个元素

asp.net - 如何防止用户拥有同一 Web 应用程序的多个实例

php - Laravel laravel-echo-server未收到消息(聊天)

php - 在同一台服务器上调用 cURL 会导致问题