我在codeigniter中有以下类型的错误,我无法解决任何人知道这个错误的原因是什么。
A PHP Error was encountered
Severity: Warning
Message: Cannot modify header information - headers already sent by (output started at /home/samples1/public_html/venture-test/application/controllers/admin/admin_notifications.php:158)
Filename: helpers/url_helper.php
Line Number: 540
我使用了两种方法,它们都在下面的控制器中。
<?php
public function approve_recent_user() {
$user_id = $this->uri->segment(4);
$notification_id = $this->uri->segment(5);
$status = 1;
if($this->admin_notification_db->user_approve_flag($user_id,$status) == true) {
redirect('admin/admin_notifications/unapproved_users');
}
else {
redirect('admin/admin_home');
}
} ?>
执行此函数后,我将重定向另一个方法,如下所述。
<?php
public function unapproved_users() {
$result = $this->admin_notification_db->get_unapproved_users();
$data['users'] = $result;
$this->load->view('admin/recent_users', $data);
} ?>
答案 0 :(得分:4)
Message: Cannot modify header information - headers already sent by (output started at /home/samples1/public_html/venture-test/application/controllers/admin/admin_notifications.php:158)
如果在PHP代码中的头重定向之前开始输出任何内容,则会发生错误。 例如,在PHP标记之前或之前检查任何空格,在启动PHP标记之前打印HTML标记,或者在重定向功能之前检查任何输出或调试。
如果您仍然遇到问题,请进一步告诉我。
答案 1 :(得分:-1)
使用此代替重定向。 echo'window.location =“'。base_url()。'your-page-name”;';