在新页面上运行AJAX

时间:2014-01-20 18:34:56

标签: php mysql ajax

我有2个单独的页面,显示不同的信息集。在一个页面(页面A)上,我创建了一个JS函数,它生成一个AJAX查询(它引入一个运行sql的PHP文件),并在选择该页面上的选项时对表进行排序。此页面上的所有内容都正常运行。对于第二页(页面B),我希望能够创建一个链接,单击该链接后,用户将转到页面A并单击运行JS功能。由于我正在转移到新页面,我不确定如何继续使用该功能。
有关如何进行此操作的任何想法?

这是JS。当用户从页面B的下拉列表中选择一个项目时,我运行showUser:

function showUser(){
var url = getURLSTring();
console.log(url);
$.ajax({
    type: "GET",
    url: "includes/list-process-availabilities.php?"+url,
    datatype: "jsonp",
    success: function(x){
        $('.list-view-table').html(x);
    }
});

};

list-process -availablebilities.php文件是基于页面下拉菜单中选择的选项运行的SQL查询列表。

我想在页面B上完成的是让用户进入页面A,并根据第A页上的链接为特定的SQL查询运行showUser函数。

PHP如下:

$s=$_GET["s"]; // Get Square Footage
$n=$_GET["n"]; // Get Neighborhood

$sql = "SELECT "; 
$sql .= "* ";
$sql .= "FROM ";
$sql .= "availabilities ";
$sql .= "WHERE ";
$sql .= "1 ";

$availablilityQuery = array("neighborhood" =>$n);
foreach($availablilityQuery as $key => $value){
if(!is_array($value)){
    if($value != ''){
        $sql.="and ".$key."='".$value."' ";
    }
}
}


if($s == "2501")
{
$sql .=" and CONVERT(replace(sq_ft_available, ',',''),UNSIGNED INTEGER)  >2501 ";
}
else if($s != "")
{
$s_array = explode("-", $s);

$sql .=" and CONVERT(replace(sq_ft_available, ',',''),UNSIGNED INTEGER) >=".   $s_array[0]. " and  CONVERT(replace(sq_ft_available, ',',''),UNSIGNED INTEGER) <=". $s_array[1]." ";
}

这就是我在第A页上运行该功能的方法:

        <select name="square-footage" onchange="showUser()" id="selectSquareFootageAjax" class="square-footage-drop">
            <option value="">Square Footage</option>
            <option value="0-1000">0 - 1000 Sq. Ft.</option>
            <option value="1001-2500">1,001 - 2,500 Sq. Ft.</option> 
            <option value="2501">2501 or Greater Sq. Ft.</option>
        </select>

1 个答案:

答案 0 :(得分:0)

我认为你应该在第B页中创建一个带有参数的链接,排序如下:

<a href="pageB.php?runcode=true">Go to page A and run the code</a>

并且,在第A页中,您可以检测到用户来自第B页:

<?php if ($_GET['runcode']==='true') {    
   ...
   /*** put a link to the Ajax PHP file that is runs the SQL ***/ 
   ...
?>