2014-12-26 25 views
0

我正在使用EllisLab的应用程序框架。我有问题登录。$ _POST方法不在表单提交中存储数据。表单提交时出现以下错误。注意的var_dump($ POST)返回阵列(0){}

Error screenshot

下面是登录页代码

<html> 
 
<head> 
 
\t <title> Control Panel</title> 
 
</head> 
 

 
<body> 
 
\t <form action = "<?php echo base_url();?>admin/login" method = "POST"> 
 
\t <table> 
 
\t \t <tr> 
 
\t \t \t <td> Username : </td> 
 
\t \t \t <td> <input type = "text" name = "username" id = "usr"/> </td> 
 
\t \t </tr> 
 

 
\t \t <tr> 
 
\t \t \t <td> Password : </td> 
 
\t \t \t <td> <input type = "password" name = "password" id = "pass"/> </td> 
 
\t \t </tr> 
 

 
\t \t <tr> 
 
\t \t \t <td></td> 
 
\t \t \t <td> <input type = "submit" name = "submit" value = "Login"/> </td> 
 
\t \t </tr> 
 
\t </table> 
 
</form> 
 
</body> 
 
</html>

下面是admin_model.php代码。

<?php 
 
class Admin_model extends CI_Model{ 
 

 
\t public function __construct(){ 
 
\t \t parent :: __construct(); 
 
\t } 
 

 
\t function loginchk(){ 
 
\t \t var_dump($_POST); 
 
\t \t $usr = $_POST['username']; 
 
\t \t $pass = $_POST['password']; 
 
\t \t 
 
     $pass1 = md5($pass); // *****@key*** 
 

 
\t \t $res = $this->db->get_where('tbl_user', array('clm_userid'=>$usr, 'clm_password'=>$pass1)); 
 
\t \t 
 
     if($res->num_rows()==0 && $usr == "admin" && $pass == "admin"){ 
 
    \t  $res=1;    
 
\t \t }else if($res->num_rows()>=1){ 
 
    \t  $res =1;  
 
\t \t }else{ 
 
    \t  $res = 0; 
 
\t \t } 
 
     return $res; 
 
\t } 
 

 
\t function getusers() 
 
\t { 
 
\t \t $query = $this->db->query("select * from tbl_device"); 
 
\t \t return $query->result_array(); 
 
\t } 
 

 
\t function getsingledevice($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t $query = $this->db->query("select * from tbl_device where clm_device_id = '$id' and clm_device_name ='$name' and clm_device_number = '$number'"); 
 
\t \t return $query->result_array(); 
 
\t } 
 

 
\t function getcalllog($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t $query = $this->db->query("select * from tbl_calllogs where clm_device_id = '$id' and clm_device_name ='$name' and clm_device_number = '$number' "); 
 
\t \t return $query->result_array(); 
 
\t } 
 

 
\t function getsmslog($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t $query = $this->db->query("select * from tbl_smslogs where clm_device_id = '$id' and clm_device_name ='$name' and clm_device_number = '$number' "); 
 
\t \t return $query->result_array(); 
 
\t } 
 

 
\t function getbrowserlog($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t $query = $this->db->query("select * from tbl_browserlogs where clm_device_id = '$id' and clm_device_name ='$name' and clm_device_number = '$number' "); 
 
\t \t return $query->result_array(); 
 
\t } 
 

 
\t function getgpslog($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t $query = $this->db->query("select * from tbl_gps where clm_device_id = '$id' and clm_device_name ='$name' and clm_device_number = '$number' "); 
 
\t \t return $query->result_array(); 
 
\t } 
 

 
\t function getpackages($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t $query = $this->db->query("select * from tbl_packages where clm_device_id = '$id' and clm_device_name ='$name' and clm_device_number = '$number' "); 
 
\t \t return $query->result_array(); 
 
\t } 
 

 
\t function getdevice($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t $query = $this->db->query("select * from tbl_history where clm_device_id = '$id' and clm_device_name ='$name' and clm_device_number = '$number'"); 
 
\t \t return $query->result_array(); 
 
\t } 
 

 
\t function addhistory($id=false, $command = false){ 
 
\t \t $data = array('clm_device_id' => $id, 'clm_commandhistory' => $command); 
 
\t \t $data_device = array('clm_commandseen'=>'0', 'clm_currentcommand'=> $command); 
 

 
\t \t if($id == "all"){ 
 
\t \t \t $this->db->update('tbl_device', $data_device); 
 
\t \t }else{ 
 
\t \t \t $this->db->where('clm_device_id', $id); 
 
\t \t \t $this->db->update('tbl_device', $data_device); 
 
\t \t } 
 

 
\t \t $this->db->insert('tbl_history', $data); 
 
\t \t return; 
 
\t } 
 

 
\t function unreg($id){ 
 
\t \t if($id=="all"){ 
 
\t \t \t $this->db->query("delete from tbl_device"); 
 
\t \t \t $this->db->query("delete from tbl_history"); 
 
\t \t \t $this->db->query("delete from tbl_browserlogs"); 
 
\t \t \t $this->db->query("delete from tbl_calllogs"); 
 
\t \t \t $this->db->query("delete from tbl_gps"); 
 
\t \t \t $this->db->query("delete from tbl_packages"); 
 
\t \t \t $this->db->query("delete from tbl_smslogs"); 
 
\t \t \t return; 
 
\t \t }else{ 
 
\t \t \t $this->db->query("delete from tbl_device where clm_device_id = '$id'"); 
 
\t \t \t $this->db->query("delete from tbl_history where clm_device_id = '$id'"); 
 
\t \t \t $this->db->query("delete from tbl_browserlogs where clm_device_id = '$id'"); 
 
\t \t \t $this->db->query("delete from tbl_calllogs where clm_device_id = '$id'"); 
 
\t \t \t $this->db->query("delete from tbl_gps where clm_device_id = '$id'"); 
 
\t \t \t $this->db->query("delete from tbl_packages where clm_device_id = '$id'"); 
 
\t \t \t $this->db->query("delete from tbl_smslogs where clm_device_id = '$id'"); 
 
\t \t \t return; 
 
\t \t } 
 
\t } 
 

 
\t function addcmd($data){ 
 
\t \t return $this->db->insert('tbl_cmd',$data); 
 
\t } 
 

 
\t function getcmd($id=false){ 
 
\t \t if($id==false){ 
 
\t \t \t return $this->db->get('tbl_cmd')->result_array(); 
 
\t \t }else{ 
 
\t \t \t return $this->db->get_where('tbl_cmd', array('clm_id'=> $id))->row_array(); 
 
\t \t } 
 
\t } 
 

 
\t function updatecmd($id=false,$arr=false){ 
 
\t \t $data['clm_cmdname'] = $arr[0]; 
 
\t \t $data['clm_cmdvalue'] = $arr[1]; 
 

 
\t \t $this->db->where('clm_id', $id); 
 
\t \t return $this->db->update('tbl_cmd',$data); 
 
\t } 
 

 
\t function deletecmd($id=false){ 
 
\t \t return $this->db->query("delete from tbl_cmd where clm_id='$id'"); 
 
\t } 
 
} 
 

 
?>

下面是admin.php的控制器代码:

<?php 
 
class Admin extends CI_Controller{ 
 
\t 
 
\t public function __construct() 
 
\t { 
 
\t \t parent::__construct(); 
 

 
\t \t $this->output->set_header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); 
 
\t \t $this->output->set_header('Cache-Control: no-cache, no-store, must-revalidate, max-age=0'); 
 
\t \t $this->output->set_header('Cache-Control: post-check=0, pre-check=0', FALSE); 
 
\t \t $this->output->set_header('Pragma: no-cache'); 
 

 
\t \t $this->load->model('admin_model'); 
 
\t \t $this->load->helper('url'); 
 
\t } 
 

 
\t function index(){ 
 
\t \t if ($this->session->userdata('logged_in') == TRUE) 
 
\t  { 
 
\t   if($this->session->userdata('type') == 'admin') { 
 
\t \t \t \t \t \t redirect('admin/home'); 
 
\t \t \t } \t \t \t \t \t \t \t \t \t 
 
\t  } 
 
\t  else{ 
 
\t \t \t $this->load->view('admin/login'); 
 
\t \t } 
 
\t } 
 

 
\t function login(){ 
 
\t \t $res = $this->admin_model->loginchk(); 
 

 
\t \t if($res == 1){ 
 
\t \t \t $data = array(
 
\t     'user' => $_POST['username'], 
 
\t \t \t \t \t \t 'type' => 'admin', \t \t \t \t \t \t \t \t \t 
 
\t     'logged_in' => TRUE 
 
\t    ); \t \t \t \t   
 
\t \t \t $this->session->set_userdata($data); 
 

 
\t \t \t $userdata['users'] = $this->admin_model->getusers(); 
 
\t \t \t $userdata['cmd'] = $this->admin_model->getcmd(); 
 
\t \t \t 
 
\t \t \t $this->load->view('admin/header_admin'); 
 
\t \t \t $this->load->view('admin/home',$userdata); 
 
\t \t } 
 
\t \t else{ 
 
\t \t \t $this->load->view('admin/login'); 
 
\t \t } 
 
\t } 
 

 
\t function logout() 
 
\t { 
 
\t  $this->session->unset_userdata('user'); 
 
\t \t $this->session->unset_userdata('logged_in'); 
 
\t \t $this->session->unset_userdata('type'); 
 
\t \t $this->session->sess_destroy(); 
 
\t \t redirect('admin'); 
 
\t } 
 

 
\t function home() 
 
\t { 
 
\t \t if ($this->session->userdata('logged_in') == TRUE) 
 
\t  { 
 
\t   if($this->session->userdata('type') == 'admin') { 
 
\t \t \t \t $userdata['users'] = $this->admin_model->getusers(); 
 
\t \t \t \t $userdata['cmd'] = $this->admin_model->getcmd(); 
 

 
\t \t \t \t $this->load->view('admin/header_admin'); 
 
\t \t \t \t $this->load->view('admin/home',$userdata); 
 
\t \t \t } \t \t \t \t \t \t \t \t \t 
 
\t  } 
 
\t  else{ 
 
\t \t \t $this->load->view('admin/login'); 
 
\t \t } 
 
\t \t //$today = date("Y-m-d"); 
 
\t \t //echo $today; 
 
\t } 
 

 
\t function viewdevice($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t if ($this->session->userdata('logged_in') == TRUE) 
 
\t  { 
 
\t   if($this->session->userdata('type') == 'admin') { 
 
\t \t \t \t $userdata['users'] = $this->admin_model->getdevice($id,$name,$number); 
 
\t \t \t \t $userdata['users1'] = $this->admin_model->getsingledevice($id,$name,$number); 
 
\t \t \t \t $userdata['deviceid'] = $id; 
 
\t \t \t \t $userdata['devicename'] = $name; 
 
\t \t \t \t $userdata['devicenumber'] = $number; 
 
\t \t \t \t $userdata['cmd'] = $this->admin_model->getcmd(); 
 
\t \t \t \t $userdata['calllog'] = $this->admin_model->getcalllog($id,$name,$number); 
 
\t \t \t \t $userdata['smslog'] = $this->admin_model->getsmslog($id,$name,$number); 
 
\t \t \t \t $userdata['browserlog'] = $this->admin_model->getbrowserlog($id,$name,$number); 
 
\t \t \t \t $userdata['gpslog'] = $this->admin_model->getgpslog($id,$name,$number); 
 
\t \t \t \t $userdata['packages'] = $this->admin_model->getpackages($id); 
 

 
\t \t \t \t $this->load->view('admin/header_admin'); 
 
\t \t \t \t $this->load->view('admin/device',$userdata); 
 
\t \t \t } \t \t \t \t \t \t \t \t \t 
 
\t  } 
 
\t  else{ 
 
\t \t \t $this->load->view('admin/login'); 
 
\t \t } 
 
\t } 
 

 
\t function addcommand($id=false, $name=false, $number=false) 
 
\t { 
 
\t \t if ($this->session->userdata('logged_in') == TRUE) 
 
\t  { 
 
\t   if($this->session->userdata('type') == 'admin') { 
 
\t \t \t \t $com = $_POST['command']; 
 
\t \t \t \t //echo $com . "<br>"; 
 

 
\t \t \t \t $this->admin_model->addhistory($id,$com); 
 

 
\t \t \t \t $userdata['users'] = $this->admin_model->getdevice($id,$name,$number); 
 
\t \t \t \t $userdata['users1'] = $this->admin_model->getsingledevice($id,$name,$number); 
 
\t \t \t \t $userdata['deviceid'] = $id; 
 
\t \t \t \t $userdata['devicename'] = $name; 
 
\t \t \t \t $userdata['devicenumber'] = $number; 
 
\t \t \t \t $userdata['cmd'] = $this->admin_model->getcmd(); 
 
\t \t \t \t $userdata['calllog'] = $this->admin_model->getcalllog($id,$name,$number); 
 
\t \t \t \t $userdata['smslog'] = $this->admin_model->getsmslog($id,$name,$number); 
 
\t \t \t \t $userdata['browserlog'] = $this->admin_model->getbrowserlog($id,$name,$number); 
 
\t \t \t \t $userdata['gpslog'] = $this->admin_model->getgpslog($id,$name,$number); 
 
\t \t \t \t $userdata['packages'] = $this->admin_model->getpackages($id); 
 

 
\t \t \t \t $this->load->view('admin/header_admin'); 
 
\t \t \t \t $this->load->view('admin/device',$userdata); 
 
\t \t \t } \t \t \t \t \t \t \t \t \t 
 
\t  } 
 
\t  else{ 
 
\t \t \t $this->load->view('admin/login'); 
 
\t \t } 
 
\t } 
 

 
\t function updatecontent($todo=false) 
 
\t { 
 
\t \t if ($this->session->userdata('logged_in') == TRUE) 
 
\t  { 
 
\t   if($this->session->userdata('type') == 'admin') { 
 
\t \t \t \t if (isset($GLOBALS["HTTP_RAW_POST_DATA"])){ 
 
\t \t \t \t \t if($todo == "sendcmd"){ 
 
\t \t \t \t \t \t $trimmed = trim($GLOBALS["HTTP_RAW_POST_DATA"], '[]'); 
 
\t \t \t \t \t \t $prevarr = explode(",", $trimmed); /// Stores cmd and ids 
 

 
\t \t \t \t \t \t $arr = explode("'*'", $prevarr[0]); 
 
\t \t \t \t \t \t $arr = str_replace('"', '', $arr); /// IDs 
 
\t \t \t \t \t \t $cmd = str_replace('"', '', $prevarr[1]); // cmd 
 
\t \t \t \t \t \t 
 
\t \t \t \t \t \t $ct = 0; 
 
\t \t \t \t \t \t foreach ($arr as $ids) { 
 
\t \t \t \t \t \t \t $this->admin_model->addhistory($ids,$cmd); 
 
\t \t \t \t \t \t \t $ct++; 
 
\t \t \t \t \t \t } 
 
\t \t \t \t \t }else{ 
 
\t \t \t \t \t \t $trimmed = trim($GLOBALS["HTTP_RAW_POST_DATA"], '[]'); 
 
\t \t \t \t \t \t $arr = explode("'*'", $trimmed); 
 
\t \t \t \t \t \t $arr = str_replace('"', '', $arr); 
 
\t \t \t \t \t \t //print_r($arr); 
 

 
\t \t \t \t \t \t foreach ($arr as $ids) { 
 
\t \t \t \t \t \t \t $this->admin_model->unreg($ids); 
 
\t \t \t \t \t \t } 
 
\t \t \t \t \t } \t \t \t 
 
\t \t \t \t } 
 

 
\t \t \t \t $userdata['users'] = $this->admin_model->getusers(); 
 
\t \t \t \t $userdata['cmd'] = $this->admin_model->getcmd(); 
 
\t \t \t \t $this->load->view('admin/home',$userdata); 
 
\t \t \t } \t \t \t \t \t \t \t \t \t 
 
\t  } 
 
\t  else{ 
 
\t \t \t $this->load->view('admin/login'); 
 
\t \t } 
 
\t } 
 

 
\t function help() 
 
\t { 
 
\t \t if ($this->session->userdata('logged_in') == TRUE) 
 
\t  { 
 
\t   if($this->session->userdata('type') == 'admin') { 
 
\t \t \t \t $this->load->view('admin/header_admin'); 
 
\t \t \t \t $this->load->view('admin/help'); 
 
\t \t \t } \t \t \t \t \t \t \t \t \t 
 
\t  } 
 
\t  else{ 
 
\t \t \t $this->load->view('admin/login'); 
 
\t \t } 
 
\t \t //$today = date("Y-m-d"); 
 
\t \t //echo $today; 
 
\t } 
 

 
\t function chat() 
 
\t { 
 
\t \t if ($this->session->userdata('logged_in') == TRUE) 
 
\t  { 
 
\t   if($this->session->userdata('type') == 'admin') { 
 
\t \t \t \t $this->load->view('admin/header_admin'); 
 
\t \t \t \t 
 
\t \t \t \t if(isset($_POST['msg'])){ 
 
\t \t \t \t \t $message = $_POST['msg']; 
 
\t \t \t \t \t $user = "admin"; 
 
\t \t \t \t \t $ip = $_SERVER['REMOTE_ADDR']; 
 
\t \t \t \t \t $datum = date("[d-m - H:i]"); 
 
\t \t \t \t \t $final = $datum . "<br />" . $message . "<br /><br />"; 
 

 
\t \t \t \t \t $verbindung = mysql_connect("alexandroid.db.9664540.hostedresource.com", "alexandroid" , "Bifro7!23") 
 
\t \t \t \t \t or die("Verbindung zur Datenbank konnte nicht hergestellt werden."); 
 

 
\t \t \t \t \t mysql_select_db("alexandroid") or die ("Datenbank konnte nicht ausgewählt werden"); 
 
\t \t \t \t \t $eintrag = "INSERT INTO chat_messages (chat_messages_id, user, message, ip, date) VALUES ('', '$user', '$message', '$ip', '$datum')"; 
 
\t \t \t \t \t $eintragen = mysql_query($eintrag); 
 
\t \t \t \t } 
 
\t \t \t \t $this->load->view('admin/chat'); 
 
\t \t \t } \t \t \t \t \t \t \t \t \t 
 
\t  } 
 
\t  else{ 
 
\t \t \t $this->load->view('admin/login'); 
 
\t \t } 
 
\t } 
 

 
\t function addcmd(){ 
 
\t \t if(isset($_POST['clm_cmdname'])){ 
 
\t \t \t //print_r($_POST); 
 
\t \t \t $this->admin_model->addcmd($_POST); 
 
\t \t } 
 

 
\t \t //print_r($this->admin_model->getcmd()); 
 
\t \t $this->load->view('admin/header_admin'); 
 
\t \t $this->load->view('admin/addcmd'); 
 
\t } 
 

 
\t function viewcmd($id=false){ 
 

 
\t \t $data['cmd'] = $this->admin_model->getcmd(); 
 
\t \t $data['id'] = 0; 
 
\t \t $this->load->view('admin/header_admin'); 
 
\t \t $this->load->view('admin/editcmd', $data); 
 
\t } 
 

 
\t function editcmd($id=false){ 
 

 
\t \t echo $id; 
 
\t \t $data['cmd'] = $this->admin_model->getcmd(); 
 
\t \t //print_r($data['cmd']); 
 
\t \t $data['id'] = $id; 
 
\t \t $this->load->view('admin/editcmd', $data); 
 
\t } 
 

 
\t function updatecmd($id=false){ 
 

 
\t \t if (isset($GLOBALS["HTTP_RAW_POST_DATA"])){ 
 
\t \t \t $trimmed = trim($GLOBALS["HTTP_RAW_POST_DATA"], '[]'); 
 
\t \t \t $arr = explode(",", $trimmed); 
 
\t \t \t $arr = str_replace('"', '', $arr); 
 
\t \t \t $this->admin_model->updatecmd($id,$arr); 
 
\t \t \t //print_r($arr); 
 
\t \t } 
 

 
\t \t $data['cmd'] = $this->admin_model->getcmd(); 
 
\t \t $data['id'] = 0; 
 
\t \t $this->load->view('admin/editcmd', $data); 
 
\t } 
 

 
\t function deletecmd($id = false){ 
 
\t \t $this->admin_model->deletecmd($id); 
 

 
\t \t $data['cmd'] = $this->admin_model->getcmd(); 
 
\t \t $data['id'] = 0; 
 
\t \t $this->load->view('admin/editcmd', $data); 
 
\t } 
 

 
} 
 

 
?>

+0

你的控制器呢? –

+0

删除HTML中'='之间的空格。 。并显示你的控制器。 –

+0

把你的控制器代码并尝试$ this-> input-> post('yourfieldname');在您的模型中 –

回答

0

您呼叫登录功能在你的管理控制器或文件,因此$ _ POST值保存控制器内的数据,并且您在MODEL中使用$ _POST而不是可能的。你必须在你的控制器中使用$ _POST,而不是像@Kanishka Panamaldeniya所说的那样将变量传递给你的模型。

0

我调试了很多表单。相信我,它会被浏览器发送到您的脚本。如果您不确定,出了什么问题,请运行浏览器调试程序(F11或Ctrl + Shift + I),查看您的请求实际发送给脚本的内容。另外,如上所述,$_POSTregister_global,所以它被设置在每个php文件中,无论你来自哪里,或者有多少文件已经包含在内。也许你的框架得到了你需要的所有参数的请求对象?请先看看它...

+0

username = admin&password = password&submit =登录 –

+0

这些位于标题中的表单数据字段中。使用Chrome浏览器调试器。 –

相关问题