Ajax経由でファイルをアップロードできるようにCodeigniterアプリケーションをセットアップしました。私はこのチュートリアルに従いましたhttp://net.tutsplus.com/tutorials/javascript-ajax/how-to-upload-files-with-codeigniter-and-ajax/
私の元のフォームは、ajaxリクエストが呼び出されたかどうかを確認しました。呼び出されなかった場合は、代わりにフォールバックCIフォームの検証/エラーメッセージが表示されました。
私はこれを使用してチェックしました-$this->input->is_ajax_request()
私のコードは次のようになりました:
if($this->input->is_ajax_request()){
// process ajax form data
} else {
if($this->form_validation->run() == FALSE) {
$data['success'] = 0;
$data['errors'] = validation_errors();
} else {
$data['success'] = 1;
}
$this->load->view('form', $data);
}
調査を行った結果、実際にはajaxリクエストではないため、同じ手法を適用できないことがわかりました。そのため、このアプローチをどのように使用できるかわかりません。誰かが私を正しい方向に向けることができれば、それは素晴らしいことです。私はそれがajaxに完全に依存しているのは好きではありません。フォールバックオプションがあるのが好きです。コメントで、誰かがajaxfileupload.jsにCSFR cookieを設定していることに気づきましたが、正直言って、私はjsにあまり熱心ではないので、どこから始めればよいのかわかりません。前もって感謝します。