0

CI フォーム検証、電子メール ヘルパー、およびクラスを組み込んだお問い合わせフォームを開発しました。ユーザーが情報を送信すると、クライアントはこの情報を含む HTML メールを受信します。HTML テーブル構造を持つ別のビューを既に作成しており、これはコントローラーの文字列を介して構築されています [以下のコード]。ユーザーが送信したものをこの HTML フォームに渡す方法はありますか? たとえば、私のメールには次のものがあります。

-You have received an email from $name<br>
-Message $message<br>
-You can reply to them at $email

誰かが私を導くことができれば素晴らしいことです。ガイドとしてコードの重要なスニペットを含めました。

意見:

<h1>Contact</h1>
<div id="contact">
<?php

    echo $message;
    echo validation_errors();

    echo form_open('contact/send_email');

    //Name field
    echo form_label('Name: ', 'name');
        $data = array (
            'name' => 'name',
            'id' => 'name',
            'value' => set_value('name')
        );
    echo form_input($data);

    echo form_submit('submit', 'Send');

    echo form_close();

コントローラ:

このコードの先頭には、フォームの検証と if else ステートメントがあり、検証チェックに合格すると次のようになります。

}else{
    $data['message'] = 'The email has successfully been sent';

    $html_email = $this->load->view('html_email', $data, true);

    //load the email class
    $this->load->library('email');

    $this->email->from(set_value('email'), set_value('name'));
    $this->email->to('email@hotmail.com');
    $this->email->subject('Message from Website');
    $this->email->message($html_email);

    $this->email->send();

    //if error from library will send us metadata
    echo $this->email->print_debugger();

    $data['page_title'] = 'Contact';
    $data['content'] = 'contact';   
    $this->load->view('template', $data);
}
4

3 に答える 3

0

上記の例から、追加するのは簡単でした: echo $_POST['name'] を html フォームに追加します。これが他の人の助けになることを願っています。サポートに感謝します。

于 2012-11-14T09:51:08.933 に答える
0

$this->input->post('name')代わりに使用する必要がある CodeIgniter の方法で物事を行う$_POST['name']

ビューにデータを取得するには、追加するだけです

$data['name'] = $this->input->post('name');

ビューをロードする前に。これにより$name、最初のステートメントと同様に、変数をビューに出力できます。すなわちビューで:

You have a message from <?=$name?>

コントローラーでは、 にも変更set_value('name')$this->input->post('name')ます。

于 2012-11-14T09:51:55.520 に答える
0

HTML フォーム ファイルで $_POST['name'} を使用するだけです。

于 2012-11-14T09:52:42.023 に答える