用的一个图片上传插件:uploadify,由于在IE和火狐下上传302错误,我在前端传了当前会话名称session_name()
给后台,重新建立会话,但是我做了如下,后台能收到session_name()
的传参,但是重新建立会话的时候,就是不成功,请问如何解决?
前台:
1 2 3 4 5 6 7 | <code>
'formData' : {
'timestamp' : '<?php echo $timestamp;?>' ,
'token' : '<?php echo md5(' unique_salt ' . $timestamp);?>' ,
'<?php echo session_name();?>' : '<?php echo session_id();?>' ,
},</code>
|
Copier après la connexion
Copier après la connexion
后端:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <code>
function __construct() {
parent::__construct();
$session_name = session_name();
$post_session_name = $this ->input->post( $session_name );
if (isset( $post_session_name )) {
session_id( $post_session_name );
session_start();
}
if ( ! $this ->session->valid_user() ){
redirect( module_url( 'common/login' ) );
}
}
</code>
|
Copier après la connexion
Copier après la connexion
回复内容:
用的一个图片上传插件:uploadify,由于在IE和火狐下上传302错误,我在前端传了当前会话名称session_name()
给后台,重新建立会话,但是我做了如下,后台能收到session_name()
的传参,但是重新建立会话的时候,就是不成功,请问如何解决?
前台:
1 2 3 4 5 6 7 | <code>
'formData' : {
'timestamp' : '<?php echo $timestamp;?>' ,
'token' : '<?php echo md5(' unique_salt ' . $timestamp);?>' ,
'<?php echo session_name();?>' : '<?php echo session_id();?>' ,
},</code>
|
Copier après la connexion
Copier après la connexion
后端:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <code>
function __construct() {
parent::__construct();
$session_name = session_name();
$post_session_name = $this ->input->post( $session_name );
if (isset( $post_session_name )) {
session_id( $post_session_name );
session_start();
}
if ( ! $this ->session->valid_user() ){
redirect( module_url( 'common/login' ) );
}
}
</code>
|
Copier après la connexion
Copier après la connexion
看看日志有没有报错的信息呢?session_id
必须要在会话开始前设置,是不是在这个控制器的__construct()调用之前就已经有其他地方开启了session? 试试在session_id那行前面加个session_abort()
呢?
默认是通过 cookie 存 session_id 你看看cookie有没有禁用或者清空