私は CodeIgniter を使用しており、編集フォームでデータベースからデータを取得しています。このデータには、アポストロフィ、アンパサンドなどが含まれることがあります。
CI でこれを解析せずに HTML バージョンに変更して、エンド ユーザーが編集できるようにするにはどうすればよいでしょうか。
これは編集フォームの画像です。このテキスト フィールドには、データベースから取り込まれたデータが入力テキスト フィールドに取り込まれています。下の 2 番目の画像でわかるように、データには特別な文字は含まれていません。
これは、テーブルでデータがどのように表示されるかのスクリーンショットです。右端の列からのみ取得していることに注意してください。4列目ではありません:
ご覧のとおり、データは html に変換されて保存されていませんが、CI はまだデータを変換しています。
上記のテキスト フィールドのスニペットを次に示します。
<?php
/**
* Form Field attribute settings
* @author Mike DeVita
*/
$companyname = array(
'name' => 'companyname',
'placeholder' => 'Enter Your Companies Name',
'id' => 'companyname',
'value' => set_value('', $points['pointFields']['companyname']->uf_fieldvalue),
'maxlength' => 80,
'size' => 30
);
<div class="_100">
<p><?php echo form_label('Company Name', $companyname['id']); ?><?php echo form_input($companyname); ?></p>
<?php echo form_error($companyname['id']); ?>
</div>
データベースへの挿入のスニペットを次に示します。
function addUserFieldHtml($compiledHtml){
foreach ($compiledHtml as $cHK => $cHV){
$data = array (
'pointid' => $cHV['pointId'],
'timestamp' => time(),
'html' => $cHV['html'],
'fieldid' => $cHV['fieldId'],
'fieldvalue' => $cHV['fieldValue']
);
$this->db->insert('userfields', $data);
}
}#end addUserFieldHtml() function
ありがとう