如何使用jQuery将链接ID发送到sql查询?

时间:2010-07-27 18:45:41

标签: php jquery mysql filter

我正在尝试将链接ID发送到sql查询以过滤数据。

当我点击下面的链接时,我想将链接的id发送到sql查询,如下所示:

实施例: 链接(点击):

<p>Fitler Results</p>
<a href="#" class="category" id="marketing">Marketing</a>

<a href="#" class="category" id="automotive">Automotive</a>

(未点击):

<a href="#" class="category" id="sports">Sports</a>

sql查询 - 我硬编码了id,但我想让它在有人点击链接时自动执行,在这种情况下营销和汽车,我希望id使用jquery自动插入但不知道如何正确执行它:

$query1 = "SELECT * FROM explore WHERE category IN ('marketing', 'automotive',) ORDER BY category LIMIT $start, $limit";

2 个答案:

答案 0 :(得分:1)

只需返回一个返回false的jquery ajax帖子,然后捕获结果。

$('a').click(function(){
  $.post("querypage.php", { id: "$(this).attr('id')"},
     function(data){
       dosomethingwithdata(data);
  });
 //return false to insure the page doesn't refresh
 return false;
});

然后在你的php页面(= querypage.php)中执行:

$query1 = "SELECT * FROM explore WHERE".$_POST["id"]."IN ('marketing', 'automotive',) ORDER BY category LIMIT $start, $limit";

offcourse你现在必须执行查询并返回你想要的结果。

我希望这有帮助,如果有任何问题请评论我

答案 1 :(得分:0)

$('a').click(function(){
var id = $(this).attr('id');
//do something with id
});

我希望您不依赖于javascript来包含实际的SQL查询。更好的方法是在执行适当的清理后,将AJAX id放到某个位置,并在其中插入id。地狱,你可能只想将视图和ajax响应器绑定在一起,在同一个固定的id列表上运行。如果您收到的内容不在预先批准的列表中(可能以某种方式用于生成HTML页面),则拒绝查询。