Rumah > rangka kerja php > ThinkPHP > Apa yang perlu dilakukan jika thinkphp tidak menapis tag html

Apa yang perlu dilakukan jika thinkphp tidak menapis tag html

藏色散人
Lepaskan: 2022-12-05 10:11:10
asal
2238 orang telah melayarinya

Penyelesaian untuk thinkphp tidak menapis tag html: 1. Buka fail tp yang sepadan 2. Gunakan kaedah "strip_tags(htmlspecialchars_decode($data['post']['post_content'])); kaedah untuk The converted entiti boleh diterbalikkan.

Apa yang perlu dilakukan jika thinkphp tidak menapis tag html

Persekitaran pengendalian tutorial ini: sistem Windows 7, ThinkPHP versi 5, komputer Dell G3.

Apakah yang perlu saya lakukan jika thinkphp tidak menapis tag html?

TP5 Penyelesaian untuk menggunakan strip_tags untuk menapis tag html tidak berfungsi

Penyelesaian untuk menggunakan strip_tags untuk menapis tag html dalam ThinkPHP5 tidak berfungsi

Dalam proses menyimpan artikel, anda perlu mendapatkan teks dalam kandungan html yang disunting oleh editor Uediter di hujung hadapan Idea asasnya ialah menggunakan fungsi PHP sendiri strip_tags() untuk menapis terus

Jadi edit terus seperti berikut:

$data   = $this->request->param();
$data['post']['content'] = strip_tags($data['post']['post_content']);
 
echo  $data['post']['post_content'];
echo  $data['post']['content'];
Salin selepas log masuk

Kandungan output adalah seperti berikut, fungsi strip_tags() tidak berfungsi:

<p>RWERWERWhgj<strong>ghhfhgn</strong>bfghgh</p>
<p>RWERWERWhgj<strong>ghhfhgn</strong>bfghgh</p>
Salin selepas log masuk

Lihat manual TP5 - Bab pembolehubah input - Pembolehubah Melalui penapisan, kita boleh mendapati bahawa TP5 menggunakan htmlspecialchars untuk menukar rentetan yang dihantar dari hujung hadapan kepada entiti HTML secara lalai, penyelesaian saya adalah untuk membalikkan entiti yang ditukar. Ini boleh dicapai dengan menggunakan fungsi htmlspecialchars_decode():

$data   = $this->request->param();
$data[&#39;post&#39;][&#39;content&#39;] = strip_tags(htmlspecialchars_decode($data[&#39;post&#39;][&#39;post_content&#39;]));
 
echo  $data[&#39;post&#39;][&#39;post_content&#39;];
echo  $data[&#39;post&#39;][&#39;content&#39;];
Salin selepas log masuk

Output adalah seperti berikut, penukaran berjaya:

<p>RWERWERWhgj<strong>ghhfhgn</strong>bfghgh</p>
RWERWERWhgjghhfhgnbfghgh
Salin selepas log masuk

Pembelajaran yang disyorkan: "Tutorial Video thinkPHP"

Atas ialah kandungan terperinci Apa yang perlu dilakukan jika thinkphp tidak menapis tag html. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan