私はフォームビルダを作っています。私はFirstname、Lastname、Email、Iagreeと呼ばれる入力フィールドを持っています。ユーザーがフォームビルダページからフィールドを選択した場合、ボタンをクリックした後、すべての要素がデータベースに格納されます。フォームビルダーからユーザーが選択した最後のフィールドをフィールド名とフィールドタイプで表示する方法は?
私のフォームビルダページからFirstname、Lastname、Email、およびIagreeという要素を選択して保存しました。データベースでは、次のように格納されます。
今度はフォームビルダを更新し、フォーム要素を変更します。下の画像のように表示されます。私は、フィールド名とを有する第2のテーブルを持っている
今
SELECT form_id,form_elements,form_builder_type, update_date FROM `form_builder` WHERE form_id=1 AND form_builder_type='example' ORDER BY update_date DESC LIMIT 1
最後に更新されたレコード上記のクエリの出力を取得しています、クエリの下に使用
フィールドタイプ
フィールドの名前と要素の型を取得するために、両方のテーブルに参加する必要があります。
これで、フォームビルダーの最後の要素をフィールド名とフィールドタイプで表示する必要がありました。私はフィールドタイプの姓と電子メールを表示することを意味します。私はCodeIgniterの、私のコントローラ
$inst_id=1;
$result['data']=$this->formbuilder_Model->check_example_form_builder_fields($inst_id);
$this->load->view('user-form',$result);//passing elements to the view page
ビュー
foreach ($data as $key) {
$exp_fields_name=$key->fields_name;
$exp_fields_type=$key->fields_type;
$exp_form_elements=$key->form_elements;
$abc=explode(',',$exp_form_elements);
foreach ($abc as $value) {
if ($exp_fields_name == $value) {?>
<div class="form-group row label-capitals">
<label class="col-sm-5 col-form-label"><?php echo $exp_fields_name;?></label>
<div class="col-sm-7">
<input type="<?php echo $exp_fields_type;?>" name="<?php echo $exp_fields_name;?>" placeholder="<?php echo $value;?>" class="form-control" />
<?php echo form_error($exp_fields_name); ?>
</div>
</div>
<?php
}}}?>
を使用しています
は私が
<label>Lastname</label>
<input type="text" name="lastname">
<label>Email</label>
<input type="email" name="email">
のような出力は、あなたがこの中で私を助ける必要がありますか?
あなたが最後の要素を得るためにそれを爆発させた後、あなたは 'end($ abc)'を使うことができます...もしそれがあなたが探しているものなら? http://php.net/end – Dale
@Dale、いいえ、入力タイプのビューに表示される要素を選択するユーザーのような出力が必要です。 –