簡體   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