0


0

コードイグナイターPOST変数

私はCode Igniterを初めて使用していますが、ドキュメントでこれを行う方法を見つけることができないようです、通常のPHPでは、このようにPOST変数全体の内容を取得できます

$ _POST = $ postedVars

しかし、私はこれを同じ方法で行うものを見つけることができないようです、私は試しました

$ arr = $ this→ input→ post;

and

$ arr = $ this→ input→ post();

運がない! これはCIで可能ですか? 前もって感謝します!

3 Answer


3


最初に、変数を設定するフォームまたは何かが必要です。次に、それらを取得します。

_ $ this→ input→ post( 'first_name')。 _

変数の名前がありません!

登録フォーム:

echo form_open('CHome/signup');
$data=array('name'=>'first_name', 'id'=>'first_name','size'=>40,'value'=>set_value('first_name'));
echo "First Name ";
echo form_input($data);
echo form_submit('submit','Make Account');

モデル:

 function addUser(){
    //you should use $this->input->post('first_name')
            $data=array(
                'first_name'=>db_clean(ucfirst($_POST['first_name'])), //db_clean is a custom func
                'last_name'=>db_clean(ucfirst($_POST['last_name'])),
                'email'=>db_clean($_POST['email']),
                'username'=>db_clean($_POST['username']),
                'password'=>db_clean(sha1($_POST['password1'])),
                'type'=>db_clean('user'),
            );

            $this->db->insert('users',$data);
        }

CodeigniterはセッションをCookieに保存しますが、それはすべて奇妙です。 $ _SESSION ['first_name']などのPHPのネイティブセッションを使用することをお勧めします。 必ず「session_start();」と記述してください。セッションを使用できるように、コントローラー/モデルで!! (通常はコンストラクターで行います)


0


まず、フォームフィールドに変数を入力するフォームと、フォームフィールドから変数を送信する送信ボタンが必要です。

      'form-horizontal', 'id' =>
    'myform',    'role'=>'form');
      echo form_open('Iris/login_in', $attributes); ?>





                            Email Address







                            Password


0


そのようにデータ配列を投稿配列に設定できます。 多くのフィールドがある場合、これは非常に便利です。 入力フィールド名がデータベースフィールド名と一致することを確認してください。

$data = $_POST;

投稿配列にデータベースに追加されない追加要素(送信ボタン、非表示フィールドなど)がある場合は、挿入を実行する前にそれらを削除します。

unset($data['SubmitButton']);
unset($data['HiddenField1']);

$this->db->insert('users',$data);