【发布时间】:2026-01-01 22:50:01
【问题描述】:
我对代码点火器的会话有疑问。首先,我想建立一个高级搜索功能。高级搜索功能将允许用户使用多个类别进行搜索。用户搜索某物并成功返回结果后,左侧边栏会显示搜索键和一个“编辑按钮”。编辑按钮将允许用户转到上一页并更改他们的搜索键。这就是为什么,我需要使用会话来存储搜索键。但是在我设置会话并尝试检索值之后,出现了问题。
这是工作流程。 - 在 a.php 上设置会话 - 在 b.php 上的函数中获取会话值 - Ajax 到 b.php 以接收会话值并显示它。
关于信息,我在服务器端使用 php 和 code igniter。
这是代码:
一个.php
if (!empty($params['modelname'])){
$modelid = "";
for($i = 0; $i < count($params['modelname']); $i++)
{
$modelid .= $params['modelname'][$i];
if($i+1 < count($params['modelname']))
{
$modelid .= ", ";
}
}
$data = array(
"modelname" => $modelid
);
$this->session->set_userdata($data);
?>
<span id="model"><strong><?php echo $modelid; ?><?php echo form_button('btnsearchmodel', 'Edit','class="btnsearchkata" id="btnsearchmodel"')?></strong></span>
<div class="clear"></div>
<?php }
b.php
public function getselectedmodel()
{
$data = $this->session->userdata('modelname');
echo $data;
}
c.php
function getCariModel()
{
var brandname = ""
$(".brand").each(function(){
if ($(this).is(':checked') ){
brandname += $(this).val()+',';
}
});
if(brandname != "")
{
$.ajax({
type: "POST",
url: '<?php echo site_url("ajax_data/getselectedmodel"); ?>',
dataType: 'json',
data: {c: "ambilmodel"},
success: function(data) {
alert(data);
}
});
}
}
问题是:当我没有收到数据时。当我尝试提醒数据时,警报根本不起作用。好像请求不成功
我想问题出在我设置会话时。但我真的不知道我的代码有什么问题。任何人都可以帮助我吗?谢谢
【问题讨论】:
-
a problem has occurred.究竟是什么问题? -
我无法接收数据,当我尝试提醒数据时,提醒不起作用,好像ajax没有成功。
-
为什么不直接在 ajax 控制器中使用会话数据来从 javascript 发布?
-
我试过了,但是它需要刷新页面来更新会话值。例如,会话值已更新,然后当我尝试显示它时,该值将是旧数据。
标签: php codeigniter session