包含iframe的POST变量导致错误

时间:2018-08-27 15:43:05

标签: php google-maps post iframe http-status-code-403

我在用PHP将YouTube视频或Google地图的嵌入代码保存在MySql表上时遇到了问题,但是发现它与MySql本身无关。然后,将输入了嵌入代码(包含在iframe构造中)的textarea变量作为POST变量传递到处理数据的脚本时,就会出现问题。这将在我的ISP的服务器上生成403错误,并在我的PC上的xampp服务器上生成以下错误:

“此页面无法正常运行; Chrome浏览器在此页面上检测到异常代码,并将其阻止以保护您的个人信息(例如密码,电话号码和信用卡)'。

我为此编写了一个小型测试程序(testtube.php):

<?php
$tube = '<br>Nothing';
if (isset($_POST['tube']) && $_POST['tube'] != "") {
   $tube = $_POST['tube'];
}
echo '<h3>Google Maps coding test</h3>';

echo '<form action="testtube.php" method="post">';
echo '<textarea rows=10 cols=60 name="tube" id="tube" maxlength="500" >'.$tube.'</textarea><br>';
echo '<input type="submit" name="btnSave" value="Save Changes" ></input>';

echo '</form>';

echo $tube;

?>

运行此命令并将以下内容(嵌入Google Maps)作为数据放入时,出现上述错误:

<iframe frameborder="0" height="300" src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2841.3623430231114!2d-79.42574484859621!3d44.5896138789977!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x4d2aa95c6ce069d5%3A0x3011d3eec41f73ee!2s400+Memorial+Ave%2C+Orillia%2C+ON+L3V+6H1!5e0!3m2!1sen!2sca!4v1459776754785" style="border:0" width="400"></iframe></p>

我尝试在一开始添加它:

header("X-XSS-Protection: 0")

这使它可以在使用xampp的PC上正常工作,但不能在ISP的服务器上工作。 在过去的几个月中,我一直在寻找解决方法,但尚未找到答案。有人可以帮忙吗?

0 个答案:

没有答案