朝、
データベースに情報を保存する小さなフォームを作成しました。
サーバーで magic_quotes_gpc をオフにしています。
ボックスに a"
または£
記号を入力すると、心配することなくデータベースに保存されます。
PHPでエコーバックすると表示されますが、入力フォームフィールドで値を使用すると、値フィールドが"
閉じます。
<input type="text" name="variable" value="<?php echo $row[variable]; ?>" />
入力値の周りに htmlspecialchars を使用しましたが、機能します。
<input type="text" name="variable" value="<?php echo htmlspecialchars($row[variable]); ?>" />
しかし、私は参照としてオープンカートのソースを見てきました.htmlspecialcharsを使用していませんが、データを別の方法で保存しています.
彼らが使用したurlencodesメソッドを使用してみました:
urlencode(html_entity_decode($_POST[variable],ENT_QUOTES, 'UTF-8'));
しかし、これは正しく表示されなかった多くの数字と + 記号として保存されているようです。
私が使用している方法を使用する代わりに、更新データベースをエンコードしたいと思いますhtmlspecialschars
。
しかし、どの方法が最適かよくわかりませんか?
ありがとうございました