人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

smartyのテンプレートでPHP側で取得した
文字を反映させるて、さらにクロスサイト対策として、escapeをパイプでつけて
出力すると、PHP側で、HTMLタグをつけたままの変数の場所がタグごと出力されてしまいます。これにいい対処法などはあるのでしょうか?それともこういう部分はescape処理が出来ないという認識でいいのでしょうか?
名前A<BR>名前BとPHP側で$NAMEに格納して
それをSMARTY側のテンプレでforeach文を使用して$data.name|escapeとしてしまうとそのまま名前A<BR>名前Bと<BR>タグが表示されてしまう。

●質問者: hopefully
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:HTML name PHP Smarty クロス
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ●
●60ポイント

出力結果をどうしたいのでしょうか。

タグ(に見える部分)を削除したいということでしょうか。

おそらく、escapeを行っているので、既にタグとしては無効になっていると思います。

HTMLのタグ部分ごと削除したいのであれば、strip_tagsを使えば良いです。

Smartyはあまり得意ではないので、PHP側でやるべきか、Smarty側でやるべきかは分かりませんが、どちらでも実装可能です。

参考になれば幸いです。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ