我想通过类archive
获取我页面上所有div的id,并将它们放入MySQL查询中以检查并查看id是否存档在数据库中。
基本上我想知道如何做到这一点:$div = $(this).attr('id');
然后我会把它扔到循环中检查:
$matches = mysql_query("SELECT * FROM content WHERE `div` = '$div'");
while ($post = mysql_fetch_assoc($matches))
{
if (mysql_num_rows($matches) > 0)
{
//DO THIS
}
}
更新
我现在有这个代码用于AJAX:
$('div.heriyah').each(function() {
var curID = $(this).attr('id');
$.post("admin/btnCheck.php", { div : curID }, function(data) {
if (data == "yes") {
$('#' + curID).html('<div class=\"add\"><div id=\"add_button_container\"><div id=\"add_button\" class=\"edit_links\"> + Add Element</div></div></div><div class=\"clear\"></div></div>');
} else {
$('#' + curID).html('<div class=\"add\"><div id=\"add_button_container\"><div id=\"add_button\" class=\"edit_links\"> + Set As Editable Region</div></div></div><div class=\"clear\"></div></div>');
}
});
});
我的PHP:
$matches = mysql_query("SELECT * FROM content WHERE `div` = '".$_POST['div']."'");
if (mysql_num_rows($matches) > 0)
{
echo "yes";
} else {
echo "no";
}
我做错了什么?
答案 0 :(得分:2)
你不能像这样将javascript变量抛出到PHP脚本中。您必须向页面发送ajax请求
$div = $(this).attr('id');
$.post("yourquerypage.php", { divid : $div }, function(data) {
// Something to do when the php runs successfully
});
接下来,配置查询以从$ _POST()
获取变量$matches = mysql_query("SELECT * FROM content WHERE `div` = '".$_POST['divid']."'");
当然,你必须采取注射措施。
答案 1 :(得分:0)
这是简单的语法错误。删除else
之后的条件,你应该没事。
else (data == "yes") { // remove (data == "yes")
// snip
}