在我的代码中,我让PHP将变量写入文本文件。
$stringData = '<p class="blogcontent">' . $content . '</p>';
fwrite($fh, $stringData);
变量$content
包含此<img src="bpictures/blue.jpg" width="200" />
但是当变量写入文本文件时,会将其写入其中。
<img src=\"bpictures/blue.jpg\" width=\"200\" />
这会导致图像在返回html时无法正常工作。我已经尝试使用echo stripslashes($content);
,但这不起作用,有没有什么方法可以写入文本文件只是我在变量中的直接代码?我无法在Google上找到答案。
如何制作内容。
<span class="addblog">Content (Include img tags from below):</span> <textarea cols="90" rows="50" name="bcontent"> </textarea> <br />
提交。
$content = $_POST["bcontent"];
代码还有很多,但这大部分都会影响内容。
答案 0 :(得分:3)
问题是您已启用magic_quotes。
如果你无法在 php.ini 上禁用它们,你可以使用我之前在stackoverflow上找到的这个函数,在运行时禁用它:
<?php
if (get_magic_quotes_gpc()) {
function stripslashes_gpc(&$value)
{
$value = stripslashes($value);
}
array_walk_recursive($_GET, 'stripslashes_gpc');
array_walk_recursive($_POST, 'stripslashes_gpc');
array_walk_recursive($_COOKIE, 'stripslashes_gpc');
array_walk_recursive($_REQUEST, 'stripslashes_gpc');
}
?>
找到与此主题相关的原始帖子here!
还有其他解决方案,但这是我用过的解决方案。
从上面的链接一个简单的解决方案来处理$_POST
:
if (get_magic_quotes_gpc()) {
$content = stripslashes($_POST['bcontent']);
}else{
$content = $_POST['bcontent'];
}