无法让我的javascript / php onchange功能正常工作

时间:2013-02-15 23:00:32

标签: php javascript onchange

我已经在2小时前就这个问题发了一篇文章,但我真的需要尽快完成这个。

我要做的是在苏格兰创建一个包含32个不同位置的下拉容器,当选择其中一个选项时,例如,格拉斯哥它应该转到显示标题,文本等内容的URL div中的每篇文章WHERE location = Glasgow。

目前我没有每个位置的网址。

当我选择一个新选项时,我发出以下消息:“加载结果:成功||| 200 OK”

有人可以如此友善地向我提供这个令人沮丧的难题的最后一块吗?

以下是我正在使用的文件:

的header.php

<html>
<head>
<script src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $('#location').change(function(){
    //Retrieve Content from the back-end PHP page, and pass the ID selected
    var url = 'location.php?location=' + $(this).val();
    $('#txtHint').load(url, function (response, status, xhr) { alert("Load result: " + status + " ||| " + xhr.status + " " + xhr.statusText); 
    });
  });
});    
</script>

</head>
<body>
    <div id="header">
        <div class="headerLeftContent">
            <select id="location">
                    <option value="Glasgow">Glasgow</option>
                    <option value="x">x</option>
                    <option value="test">test</option>
                    <option value="Edinburgh">Edinburgh</option>
            </select>
            <div id='txtHint'></div>
        </div>          
    </div>

</body>
</html>

location.php

<?php
$connect = mysql_connect('xxx', 'xxx', 'xxx');
$select_db = mysql_select_db('xxx');

$location = $_REQUEST['location'];

$query = "SELECT * FROM podContent WHERE location = '.$location.'";

$result = mysql_query( $query, $connect );

while($row = mysql_fetch_array($result))
{
echo $row['text'];
}

?>

感谢。

2 个答案:

答案 0 :(得分:0)

纠正这个

$query = "SELECT * FROM podContent WHERE location = ".$location;

答案 1 :(得分:0)

两件事:

  1. $query = "SELECT * FROM podContent WHERE location = '.$location.'";还有两个点。它应该是$query = "SELECT * FROM podContent WHERE location = '$location'";
  2. 在使用用户的值$location之前,您应该使用mysql_real_escape_string()对其进行转义。请注意,此函数已弃用,将在未来的PHP版本中删除。你应该看一下PDO和准备好的陈述。