[英]Yii ajax call and session handling
我陷在Yii中,并使用Ajax称为“ bug”。 问题是,我必须按复选框进行搜索,点击搜索按钮后,这些存储在SESSION中。
在此之后,关键字将插入SESSION中,我想将其打印在标签云中。 (在角落有一个十字架->删除此标签)。 这些标记的删除由ajax调用处理:
$(".tags a").click(function(e) {
e.preventDefault();
var class1 = $(this).attr("class");
var id = $(this).attr("id");
$("#checkbox__"+id).removeAttr("checked");
jQuery.ajax({
url: "recipe/removeFromSession",
type: "POST",
data: "id=" + class1+"&rcp="+id,
dataType: "json",
"success": function(data){
location.reload();
},
"error": function(xhr, status, error) {
var err = xhr.responseText;
alert(xhr.status);
},
"cache" : false,
});
});
它调用removeFromSession操作:
public function actionRemoveFromSession() {
$remove = intval($_POST['id']);
unset($_SESSION['searchItems']['category'][$remove]);
unset($_SESSION['recipeSearch']['category'][$_POST['rcp']]);
echo json_encode($_SESSION);
}
问题在于它不会取消设置值。 它仍在会议中。 任何想法? (对不起语法错误)
谢谢
您可以尝试以下方法:
设置会话:
Yii::app()->session['searchItems']['category'][$keyword] = "Any string";
取消会话设置:
unset(Yii::app()->session['searchItems']['category'][$remove]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.