2012-02-23 27 views
0

CodeIgniterでファイルアップロードクラスを使用するのが初めてです。私はサンプルスクリプトを動作させることができませんでした。彼らが指示したように私はuploadsフォルダのパーミッションを755に設定しました。私は$ _POSTをエコーし​​てもファイルを選択しなかったというエラーが出てくる。ここに私のコードです。助けてもらえますか?でCodeIgniter:ファイルがアップロードされません。

$config['upload_path'] = './uploads'; 
    $config['allowed_types'] = 'gif|jpg|png'; 
    $config['max_size'] = '10000'; 
    //$config['max_width'] = '1024'; 
    //$config['max_height'] = '768'; 

    $file = $this->input->post('file'); 

    //echo 'file = ' . $file; 

    $this->load->library('upload', $config); 

    if (!$this->upload->do_upload($file)) 
    { 
     $error = array('error' => $this->upload->display_errors()); 
     echo '<pre>'; print_r($error); echo '</pre>'; 
    } 
    else 
    { 
     $data = array('upload_data' => $this->upload->data()); 
     $this->load->view('upload_success', $data); 
    } 

答えて

1

$this->upload->do_uploadアップロードinputないファイルのポストの値の名前を指定する必要があります。したがって、以下の入力に対して。

<input type="file" name="upload" /> 

あなたは働いていたこと、

$this->upload->do_upload("upload"); 
+0

まあを置くだろうが、今私は、ファイルのアップロードのための無効なパスを取得しています。私は完全なパスが正しいと777に今のアクセス許可を設定します。まだ私はエラーが表示されます。思考? – sehummel

+0

@ shummel7845これは通常、私が '$ config ['upload_path'] = $ _SERVER ['DOCUMENT_ROOT']を設定する方法です。" uploads ";' doc rootの呼び出しにより、htmlディレクトリのベースに移動しますちょうどそれを保存する場所を指定する必要があります – Henesnarfel

+0

私はuploadsフォルダに関するすべてのフォルダが書き込み可能でなければならない方法について何かを読んでいましたが、私はpublic_htmlフォルダにそれをしたときに、私は今完全なhttp://パスとしてパスを持っています。私はvar_dumpを試みました(is_dir( '/ upload /'));私は偽になる。権限を正しく取得するためには何が必要ですか?ターミナル? – sehummel

関連する問題