2016-11-09 3 views
0

У меня есть эта ошибка только на сервере, localhost в порядке. Я не понимаю, в чем проблема. я даже пробовал много решений, никто не работает.session_start(): Не удается отправить ограничитель кеша сеанса - заголовки уже отправлены на моем сервере

это мой взгляд

<form action="<?php echo base_url().'index.php/Quickaccess/index'?>" method="post" id="myform">        
         <li> 
           Select the page 
           <select id="Pages" name="Pages" class ="form-control input-sm "style="width:210px"> 
           <option value="1">Client</option> 
           <option value="2">Employee</option> 
           <option value="3">Project</option> 
           <option value="4">Task</option> 
           </select> 
           Numeric Value 

           <input type="text" name="PageID" style="width:210px" class ="form-control input-sm" id="text1" /> 
           <span id="error" style="color: Red; display: none">* Input digits (0 - 9)</span> 
           <button type="Submit" value="btnSearch" id="btnSearch" name="operation" class="btn btn-info btn-small btn-3d" > 
           <i class="fa fa-share"></i> &nbsp GO 
           </button> 



         </li> 
</form> 

это контроллер

class Quickaccess extends CI_Controller { 
public function __construct() { 
    parent::__construct(); 

} 
public function index() 
{ 

    $this->load->library('user_agent'); 

    $Pages=$this->input->post('Pages'); 
    $PageID=$this->input->post('PageID'); 
    $EmployeeID=$this->db->query("select max(EmployeeID) as EmployeeID from HREmployees;"); 
    $Employee=$EmployeeID->row('EmployeeID'); 
    $ClientID=$this->db->query("select max(ClientID) as ClientID from CRMClients;"); 
    $Client=$ClientID->row('ClientID'); 
    $ProjectID=$this->db->query("select max(ProjectID) as ProjectID from OPProjects;"); 
    $Project=$ProjectID->row('ProjectID'); 
    $ProjectTaskID=$this->db->query("select max(ProjectPlanTaskID) as ProjectPlanTaskID from OPProjectPlanTasks"); 
    $ProjectTask=$ProjectTaskID->row('ProjectTaskID'); 

    if($Pages==NULL||$PageID==NULL) 
    { 

     redirect($this->agent->referrer()); 

    } 
    else 
    { 
     if($Pages ==1 && $PageID<=$Client) 
     { 
      redirect(base_url('/Clients/ClientFullDetails/' . $PageID)); 
     } 
     elseif ($Pages ==2 && $PageID<=$Employee) 
     { 
      redirect(base_url('/Employees/Employeefulldetails/' . $PageID)); 
     } 
     elseif ($Pages ==3 && $PageID<=$Project) 
     { 
      redirect(base_url('/Projects/ProjectFullDetails/' . $PageID)); 
     } 
     elseif ($Pages ==4 && $PageID<=$ProjectTask) 
     { 
      $ProjectID=$this->db->query("Select ProjectID from OPProjectPlanTasks where ProjectPlanTaskID=".$PageID); 
      $Project=$ProjectID->row('ProjectID'); 
      redirect(base_url('/Projects/TaskFullDetails/'.$Project.'?PtID='. $PageID)); 

     } 
     else 
     { 

      redirect($this->agent->referrer()); 
     } 

    } 
} 

пожалуйста скажите мне решение в ближайшее время

+0

Похоже, что вы используете 'session_start()' даже СЕССИЯ уже запущена. – Irvin

ответ

0

«Заголовки уже отправленное» означает, что ваш PHP скрипт уже послал HTTP заголовки, и поэтому они не могут вносить в них изменения сейчас.

Убедитесь, что вы не отправляете ЛЮБОЙ контент перед вызовом session_start. просто сделайте session_start первое, что вы делаете в своем PHP-файле .Put session_start в абсолютном начале, перед всем HTML.

Смежные вопросы

 Смежные вопросы