繁体   English   中英

PHP表单提交后转义html字段

[英]PHP form escapes html field after submit

我有以下问题。

我正在使用一种表单提交包含HTML标签的文本区域。

<div style="width:100%;display:block;float:left;">
   <p>Name: <strong>test</strong><br />
   Address: <strong>address</strong><br />
   Date:<strong> 09/12/2014</strong></p>
</div>

但是,当我通过POST提交表单时,会得到以下结果:

   div style=width:100;display:block;float:left; pName: strongΓΕΩΡΓΙΑ ΙΩΑΝΝΗΣ ΓΕΩΡΓΙΑΔΗ/strongbr / Address: strongΟΔΟΣ ΠΕΝΤΕΛΗΣ 110 , 15231 ΜΑΡΟΥΣΙ, Greece/strongbr / Date:strong 09/12/2014/strong/p /div

PHP魔术引号已关闭

当我在开发机器上尝试该程序时,它工作正常,但是现在将其移至专用服务器上时,它无法正常工作。

你能帮忙吗?

您可以尝试以下方法:

使用htmlspecialchars($_POST['html'], ENT_QUOTES) ,当您再次从数据库中回显它时,使用htmlspecialchars_decode($result['html'])

http://php.net/manual/zh/function.htmlspecialchars.php

如果我使用:

<?php
if(isset($_POST['send'])){
    $html = htmlspecialchars($_POST['html']);
    echo $html;
    echo htmlspecialchars_decode($html);
}
?>
<form method="POST">
    <textarea name="html">

    </textarea>
    <input type="submit" name="send" value="Send" />
</form>

它可以工作,所以也许与您的数据库有关?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM