POSTのときにcodeigniterを使用したマルチパートフォームに問題があります。フォームには、テキストフィールドとファイルアップロードの8フィールドが含まれています。問題は、ファイルがエラーなしで正常にアップロードされますが、テキストのフィールドがコントローラで空であることです。コードインジケータPOSTデータが空です
POSTデータをprint_rしようとしましたが、空の配列を取得しようとしました。しかし、時にはGoogle Chromeを使用しているときに問題はありません。
POSTのときにcodeigniterを使用したマルチパートフォームに問題があります。フォームには、テキストフィールドとファイルアップロードの8フィールドが含まれています。問題は、ファイルがエラーなしで正常にアップロードされますが、テキストのフィールドがコントローラで空であることです。コードインジケータPOSTデータが空です
POSTデータをprint_rしようとしましたが、空の配列を取得しようとしました。しかし、時にはGoogle Chromeを使用しているときに問題はありません。
<form name="form" action="some action page.php" method="post" enctype="multipart/form-data">
<input type="text" name="inputfieldvalue" value="Input Field">
<input type="file" name="uploadedfile" id="uploadedfile">
<input type="submit" value="Submit" >
</form>
//テキストフィールドの値
<?php echo $_POST['inputfieldvalue']; ?>
//あなたは$ _POST [お名前のフィールド値]に与えられているものは何でも、name属性を渡すチェックするために、あなたのフォームは、上記のように、このようなものですと仮定します。このように
完全な例が有効であるはずです。
My_controller
コントローラのフォームのターゲットアクションはmy_form
です。名前を入力してみないようWTF
は
<form name="form" action="my_controller/my_form" method="post" enctype="multipart/form-data">
<input type="text" name="WTF" value="Input Field">
<input type="submit" value="Submit" >
</form>
My_controller.php
ファイル(CIコントローラフォルダ)でのごcotrollerアクションは、これは
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class My_controller extends CI_Controller {
function __construct() {
parent::__construct();
}
public function index(){
/* do something for page my_controller if you want */
} // end of index
function my_form() { // = my_controller/my_form
$here_is_it = $this->input->post('WTF'); // call value of input with name WTF
/* test it */
print_r($here_is_it);
}
エクストラ、必ずすべてのものを作るために、それは大丈夫ですルになります。 Codeigniterで自動ロード機能を有効にすることができます。 follow this tutorial
私はしばらくそれをチェックし、問題はphpまたは私のHTMLフォームコードにありません。しかし、問題は私のphp.iniの設定です。アップロードの最大ファイルサイズを大きくすると、問題が解決します。私はフォームがいつかうまく動作し、時には空の値を与えるため、前に混乱しました。
ありがとうございます。
名前の属性フィールドを設定するのを忘れていたと思われます。質問とポストフォームとコントローラコードを編集します。 – Tpojka