我的wordpress网站上有一个自己编辑的编辑器。问题是:如果我在“SOURCE CODE”字段中输入html标签,并提交表单,我会收到404:not found错误。但是,如果我输入纯文本或将字段留空,一切正常。有什么我错了吗?您可以在此处查看:http://www.naijaprogrammer.com/tryit/
有两个文件:tryview_sc.php和index.php:tryview_sc.php中的代码是:
if(isset($_POST['code']))
{
echo $_POST['code'];
exit;
}
else if(isset($_GET['id']))
{
$dash=mysql_real_escape_string($_GET['id']);
$file_query=mysql_query("SELECT code FROM editor WHERE id='$dash'");
$count=mysql_num_rows($file_query);
if($count==0)
{
return;
}
else{
$file=mysql_fetch_array($file_query);
echo $file['code'];
}
}
else
{
return;
}
您对index.php文件感兴趣的代码是:
<form action="tryview_sc.php" method="post" target="view" id="tryitform" name="tryitform">
<textarea class="code_input" id="pre_code" wrap="logical"><?php echo $output; ?></textarea>
<input type="hidden" name="code" id="code" />
<input type="hidden" id="bt" name="bt" />
</form>
和这个iframe:<iframe style="background-color:#fff;" class="result_output" frameborder="0" name="view" src="tryview_sc.php">
答案 0 :(得分:0)
您的代码适用于某些HTML代码(例如&lt; b&gt; test&lt; / b&gt;正常工作)。
您的javascript代码将“源代码”存储在隐藏表单元素的值中。这对源代码中的某些字符不起作用,特别是“
您需要使用encodeURIComponent()在Javascript中对源代码进行编码,然后使用rawurldecode()在PHP脚本中对其进行解码。
有关详细信息,请参阅此处:encodeURIComponent(),rawurldecode()