私は大きなフォームを持っており、ユーザーが画像をアップロードできるようにファイル入力を追加したところです。Codeigniter:画像アップロード
は、ここで新しいHTMLです:
<input type="file" name="file_1" />
<input type="text" name="image_description_1" class="text-input"/>
は、ここで新しい_submit機能です:
if($this->CI->input->post('file_1')){
$config['overwrite'] = TRUE;
$config['allowed_types'] = 'jpg|jpeg|gif|png';
$config['max_size'] = 2000;
$config['upload_path'] = realpath(APPPATH . '../assets/uploads/avatars');
$this->CI->load->library('upload', $config);
$this->CI->upload->do_upload();
$image_data = $this->CI->upload->data();
$image['description'] = $this->CI->input->post('image_description_1');
$image['user_id'] = $id;
$image['image'] = $image_data['file_name'];
$this->CI->db->insert('report_images',$image);
}
説明とUSER_IDは正しく提出取得されますが、ファイルが失われます。
私は別の何かをするべきですか?何がうまくいかないのか分かりません。あなたはこのようなあなたのコード内で指定しない限り
ああ!私はあなたがアップロードするファイルを選択していないと思っています...私は 'form_open'と' form_open_multipart'の両方でこれを試しました。ここでも、db値が入力されています。アップロードしないだけです。私のファイルパスと関係がありますか? –
まず第一に**コースの**あなたは 'form_open_multipart'を使う必要があります!また、あなたの資産フォルダはどこですか?システムフォルダの外にありますか?あなたのフォルダ構造は何ですか? – ifaour
アプリケーション、アセット、およびシステムがルートにあります。 –