返回结果从ajax后
问题描述:
我正在建立一个收藏夹工具,用户可以创建组的收藏夹。您可以通过复选框向群组添加收藏夹。这一切都正常,但我想添加的一件事是当你创建一个新的组时,新的组出现在现有的列表中,并且取消选中复选框。返回结果从ajax后
使用jQuery,返回用户添加到组表中的最后一条记录作为POST回调的最佳方法是什么?
的JS:
$('.add_new_group').click(function(){
//var $add_new_group = $(this);
var user_id = $(document.body).attr('data-user-id');
var new_group = $('.new_group').val();
var data = {
'user_id' : user_id,
'new_group' : new_group
}
var url = "/wp-content/themes/testheme/action/new-group.php";
$.ajax({
type: "POST",
url: url,
data: data,
success: function(data) {
$('#new_group_container').html();
}
});
});
新group.php
include('inc_db.php');
$user_id = $_POST['user_id'];
$new_group = $_POST['new_group'];
$check_records=mysql_query("SELECT user_id FROM tpl_groups WHERE user_id='$user_id' AND group_name='$new_group'");
$num_rows=mysql_num_rows($check_records);
if($num_rows < 1){
$query="INSERT INTO tpl_groups (user_id, group_name) VALUES ('$user_id', '$new_group')";
mysql_query($query) or DIE (mysql_error());
}
mysql_close();
答
首先,我会小心暴露后端这样。你可以编辑对这个问题不重要的任何内容。
如果这是使用脚本创建的组的名称,是否有一个原因是您不仅仅在成功方法中使用new_group值?像这样:
success: function(data) {
$('#yourtable').append('<tr><input type="checkbox">' + new_group + '</tr>');
}
如果您想要从脚本中获取该数据,您可以打印可用于成功功能的数据。例如,
<?php
echo $new_group;
?>
然而,前者可能更直接。
有一张表包含组名和用户标识,并且一张表包含组标识和最爱标识。所以要添加一个喜爱的组,我需要一个组ID。我可以使用组名而不是id,但我更喜欢与数字关联。 – ok1ha 2014-10-10 13:25:24
您需要使用相关的组名查询该组ID以找到它(在new-group.php中)。一旦你有了这个ID,你可以像我的帖子中的第二个例子那样打印。 – colonelsanders 2014-10-12 03:01:57