昨日は一日中警告エラーが出ていて、降りられません。何が起こっているのかわからない。1行目のproperty_model.phpでリダイレクトを実行する前に出力が送信されたと不平を言っています。私はそこに行き、すべてをチェックしましたが、運がありませんでした。空白もチェックしました。エラーとコードを貼り付けます。
PHP エラーが発生しました
重大度: 警告
メッセージ: ヘッダー情報を変更できません - ヘッダーは既に送信されています (出力は /home/sddhd/public_html/rsw/application/models/property_model.php:1 で開始)
ファイル名: helpers/url_helper.php
ライン番号: 542
上記のモデルのコードは次のとおりです。
<? class Property_model extends CI_Model {
function __construct()
{
parent::__construct();
}
function insert_property($propertyID)
{
$this->property_id = $propertyID;
$this->type = $_POST['property_type'];
$this->city = $_POST['property_city'];
$this->address = $_POST['property_address'];
$this->description = $_POST['property_description'];
$this->owner = $_POST['property_owner'];
$this->date_added = date("Y-m-d");
$this->price = $_POST['property_price'];
$this->offer_type = $_POST['property_offer'];
$this->contact = $_POST['property_contact'];
$this->db->insert('property', $this);
}
function insert_image_details($id, $url, $extension)
{
$current->property_id = $id;
$current->extension = $extension;
$current->url = $url;
$this->db->insert('photos', $current);
}
}
?>
およびリダイレクト呼び出しの使用 (モデルへの呼び出しを行うコントローラー呼び出し全体を含む):
<?php
class Property extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->helper('form');
$this->load->helper('url');
$this->load->model('property_model', 'propertymodel');
$this->load->database();
}
public function index() {
$this->load->view('home');
}
public function new_property()
{
$this->load->view('new_property', array('error' => '' ));
}
public function create_property()
{
//Pass the posted data to model for insertion
$propertyID = uniqid();
$this->propertymodel->insert_property($propertyID);
$this->do_upload($propertyID);
redirect('/home');
}
public function do_upload($propertyId)
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png|jpeg';
$config['max_size'] = '1000';
$config['max_width'] = '1024';
$config['max_height'] = '768';
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload())
{
$error = array('error' => $this->upload->display_errors());
$this->load->view('create_property', $error);
}
else
{
$data = array('upload_data' => $this->upload->data());
//array to access all the file uploaded attributes
$image_data = $this->upload->data();
//parameters to be passed to model:
$imgUrl = "../.".$config['upload_path'].$image_data['file_name'];
//$imgTitle = $image_data['file_name'];
$fileExtension = $image_data['file_ext'];
$this->propertymodel->insert_image_details($propertyId, $imgUrl, $fileExtension);
}
}//end of function
}
?>
どんな助けでも大歓迎です