繁体   English   中英

通过Ajax通过变量将多个变量传递给PHP无法正常工作

[英]Pass multiple variables via Ajax through variable to PHP not working

我想使用Ajax通过URL传递三个变量,一个是常量,另一个是来自日期选择器的两个变量。 可以很好地传递常量,但是日期变量只是作为变量名传递。

下面是日期选择器的代码:

        <tr>
            <td>
                <input type="text" id="range1" size="10" data-datepick="rangeSelect: true, minDate: 'new Date()'"/>
            </td>
            <td>
                <input type="text" id="range2" size="10" data-datepick="rangeSelect: true, minDate: 'new Date()'"/>
            </td>
            <td>
                <button type="button" onclick="dateRangeFunction()">Go</button>
            </td>   
        </tr>

变量range1和range2包含要传递的日期,用于创建URL和传递变量的函数如下:

        function dateRangeFunction() {
            var range1 = document.getElementById('range1').value;
            var range2 = document.getElementById('range2').value;

            if(range1 == null || range1=="") {
                alert("Please Select A Date To Search From");
                return;
            }
                $.ajax({
                    type: 'GET',
                    url: 'daterangedetails.php?pt=7&rngstrt=" + range1 + "&rngfin=" + range2',
                    success: function (data) {
                    document.getElementById('rangeDetails').innerHTML = data;
                    }
                });
            }           
</script>

对这两个变量进行警报会显示所选的正确日期,但是当通过URL传递并使用$ _GET在daterangedetails.php中的rngstrt和rngfin上回显结果变量时,仅给出变量名称为“ range1”和“ range2 。pt值正确传递。

用于回显变量的代码是:

<?php
session_start();

include 'dbconnect.php';

$dateFrom = $_GET['rngstrt'];
$dateTo = $_GET['rngfin'];
$rangeType = $_GET['pt1'];

echo "Date From: ".$_GET['rngstrt']."<br/>";
echo "Date To: ".$dateTo."<br/>";
echo "Date: ".$criteriaDate."<br/>";
echo "Type: ".$rangeType;
?>

任何帮助将不胜感激,我在想也许我必须将变量放入数组中? 但是如果那是我应该采取的方式,我不确定该怎么做。

function dateRangeFunction() {
        var range1 = $('range1').val;
        var range2 = $('range2').val;

        if(range1 == null || range1=="") {
            alert("Please Select A Date To Search From");
            return;
        }
            $.ajax({
               type  : 'GET',
                url  : 'daterangedetails.php',
                data : {pt:'7',rngstrt:range1, rngfin:range2},
                success: function (data) {
                document.getElementById('rangeDetails').innerHTML = data;
                }
            });
        }           

url: 'daterangedetails.php?pt=7&rngstrt=" + range1 + "&rngfin=" + range2',

应该

url: 'daterangedetails.php?pt=7&rngstrt=' + range1 + '&rngfin=' + range2,

xhttp.open("GET", "url?parameter_name="+value + "&parameter_name="+value, true);
xhttp.send();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM