CI难学啊,各种奇怪的问题。哎
我有一个登陆的判断,登陆成功之后做页面跳转,怎么样都没办法实现。<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Login extends CI_Controller{
/*构造函数
*
*
*/
/*
* 登陆界面
*/
function index(){
$data = array();
$this->load->view('_login',$data);
}
function check(){
if ($_POST)
{
if (is_ajax() === TRUE)
{
//echo print_r($_POST);
$username = $this->input->post('username');
$password = $this->input->post('password');
// 把数据提交给模型
$this->load->model('admin_user_model');
$this->admin_user_model->username = $username;
$this->admin_user_model->password = $password;
$users = $this->admin_user_model->check();
if($users)
{
$this->session->set_userdata('logged', true);
$this->session->set_userdata('username', $this->input->post('username'));
$this->session->set_userdata($users);
echo "登陆OK";
//redirect('welcome');
redirect('blog');
}
else {
echo "is faild";
}
}
else {
echo 'Ajax失败';
}
}
else
{
}
$this->db->last_query();
}
}
$(document).ready(function() {
var $body = $('body'),
$content = $('#content'),
$form = $content.find('#loginform');
var username = $("#username").val();
var password = $("#password").val();
//IE doen't like that fadein
if(!$.browser.msie) $body.fadeTo(0,0.0).delay(500).fadeTo(1000, 1);
$("input").uniform();
function beforeSubmit()
{
$(':input.x-form-required').trigger('blur');
var numWarnings = $('.x-form-invalid').length;
if (numWarnings) {
return false;
}
return true;
};
$('#loginform').submit(function(){
var username = $("#username").val();
var password = $("#password").val();
$.ajax({
type: 'post',
dataType: 'json',
cache: false,
url: "http://localhost/shakeponadmin/index.php/login/check",
data: 'username=' + username + '&password=' + password,
success:function(result){
console.log(result);
},
failure:function (result) {
alert('Failed');
}
});
return false;
});
});
最后在firefox的firebug下面能显示出来
<html><head><title>欢迎进入 http://codeigniter.org.cn</title><head><body>你好,欢迎进入http://codeigniter.org.cn</body></html>
可是页面还是停留在原处,没有执行跳转。
chrome://livemargins/skin/monitor-background-horizontal.png chrome://livemargins/skin/monitor-background-vertical.png chrome://livemargins/skin/monitor-play-button.png
你用 JS 做跳转吗? 用JS做跳转,我试过
$('#loginform').submit(function(){
var username = $("#username").val();
var password = $("#password").val();
$.ajax({
type: 'post',
dataType: 'json',
cache: false,
url: "http://localhost/shakeponadmin/index.php/login/check",
data: 'username=' + username + '&password=' + password,
success:function(result){
console.log(result);
location.href = "<?php echo site_url('blog')?>";
},
failure:function (result) {
alert('Failed');
}
});
return false;
});
可是FIREBUG里显示
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message:Invalid argument supplied for foreach()</p>
<p>Filename: libraries/Session.php</p>
<p>Line Number: 464</p> 用JS做的话,老是出这个错误!
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message:Invalid argument supplied for foreach()</p>
<p>Filename: libraries/Session.php</p>
<p>Line Number: 464</p>
没人能解答一下吗? admin_user_model的代码是啥?
不会用IDE Debug 一下么? 分步echo一下 ..............用var_dump();去调试一下
页:
[1]