根据Select DropDown使用PHP变量

时间:2013-09-03 14:22:48

标签: php jquery forms onchange

我正在尝试根据Select Dropdown选择更改要使用的php变量。 我知道如何使用jQuery .change更改值,但在这种情况下因为我使用变量和php在页面加载时运行并且与jquery无关所以我使用两个变量但不知道如何使用,请帮忙。

以下是两个php变量:

$str201 = '21|'.$paygate_id.'|'.$name.'|'.$amount.'|'.$currency.'|'.$return_url.'|'.$transaction_date.'|'.$start_date.'|'.$end_date.'|201|NO||'.$key;
$str202 = '21|'.$paygate_id.'|'.$name.'|'.$amount.'|'.$currency.'|'.$return_url.'|'.$transaction_date.'|'.$start_date.'|'.$end_date.'|202|NO||'.$key;

选择DropDown

<select name="selectFrequency" id="selectFrequency">
  <option value="">- Select -</option>
  <option value="201">1</option>
  <option value="202">2</option>
</select>

隐藏输入我需要在选择更改时更改php变量:

<input type="hidden" name="CHECKSUM" value="'.md5($str).'">

3 个答案:

答案 0 :(得分:1)

在选项中添加数据,包含需要通过CHECKSUM传递的变量的MD5哈希值。

<select name="selectFrequency" id="selectFrequency">
  <option value="">- Select -</option>
  <option value="201" data-checksum="'. md5($str201). '">1</option>
  <option value="202" data-checksum="'. md5($str202). '">2</option>
</select>

在选择更改时,只需使用此值

更新隐藏的输入

编辑:

更新:

$('#selectFrequency').change(function() {

 $('input[name=CHECKSUM]').val($('#selectFrequency :selected').data('checksum'));

});

答案 1 :(得分:0)

要与服务器端代码进行交互,您需要进行AJAX调用。因此,将更改事件附加到您的选择,并激活AJAX:

$("#selectFrequency").change(function() {
    var selectedValue = this.value;
    $.ajax({
        url: "yourPHP.php", //Leave this out to call the same page
        type: "POST", //is this actually a post?
        data: {yourData : selectedValue} //Send your data in a key/val object
        success: function(data) {
            console.log(data); //your PHP response
        }
    });
});

答案 2 :(得分:0)

以下是ajax调用的简单演示。您可以修改它以供您使用。我想你可以在服务器端PHP

中使用md5()

HTML&amp; SCRIPT:

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#selectFrequency").change(function() {
    var selected = $(this).val();
    $.ajax({
        url: "script.php", 
        type: "POST", 
        data: {selected : selected},
        success: function(data) {
           alert(data); 
        }
    });
});
});
</script>

<select name="selectFrequency" id="selectFrequency">
  <option value="">- Select -</option>
  <option value="201">1</option>
  <option value="202">2</option>
</select>

的script.php

<?php
echo $_POST['selected'];
?>