0

画像アップロード用のスクリプトがいくつかあり、フォーム検証で使用しています。これはコードです:

$this->form_validation->set_rules('name','Name','required|max_length[30]|xss_clean');
$this->form_validation->set_rules('desc','Description','required|xss_clean');

if ($this->form_validation->run() == TRUE)
{
    $config = array(
        'allowed_types' => 'jpg|jpeg|png|gif',
        'upload_path' => path/to/folder,
        'max_size' => 3000,
        'max_height' => 1024,
        'max_width' => 1024,
        'remove_spaces' => TRUE
    );
    $this->load->library('upload', $config);

    if ($this->upload->do_upload())
    {
        //code for insert this data into database
    }
    else
    {
        //code for FALSE the form validation and error message with flashdata
    }

画像のアップロードでエラーが発生した場合は、フォームを偽りたいと思います。いくつかのフィールドのエラーのように(空の場合)、ポスト変数のデータを取得したい(フィールドのコンテンツ用)。

それを行う最善の方法は何ですか?

4

1 に答える 1

0

とのelse状態は似$this->form_validation->run()$this->upload->do_upload()いるはずです。

フォームの検証:

$data['error_message'] = validation_errors();
$this->load->view('form', $data);

ファイルのアップロード:

$data['error_message'] = $this->upload->display_errors();
$this->load->view('form', $data);

「フォーム」ビューは、最初にロードされたものです。この種の div を持つことができます:

<div class="error_message">
   <?php if ($error_message) {
      echo $error_message;
   } ?>
</div>
于 2012-04-29T17:52:47.420 に答える