1

我正在尝试像这样在 php 中回显一个 iframe。

echo
"<li><iframe src=\"http://localhost/ptb1/includes/mod_uploads/profile_pics/index.php" width="188" height="258" scrolling="no" style="overflow:hidden; margin-top:-4px; margin-left:-4px; border:none;\"></iframe></li>";

无论我在做什么,它都不起作用。有人可以告诉我在 php 中写这个的正确方法吗?

4

3 回答 3

6

您没有正确转义双引号。您只能在位之前和最后一直逃避它http://,而不是介于两者之间(这也是必要的)。如果将 HTML 封装在单引号之间,则不必转义所有双引号。试试这样:

echo '<li><iframe src="http://localhost/ptb1/includes/mod_uploads/profile_pics/index.php" width="188" height="258" scrolling="no" style="overflow:hidden; margin-top:-4px; margin-left:-4px; border:none;"></iframe></li>';

虽然,您没有在字符串中使用任何变量,因此您也可以暂时“退出”PHP 并使用纯 HTML,例如:

<?php
// Your code starts here somehwere, now close the PHP tag
?>
<li><iframe src="http://localhost/ptb1/includes/mod_uploads/profile_pics/index.php" width="188" height="258" scrolling="no" style="overflow:hidden; margin-top:-4px; margin-left:-4px; border:none;"></iframe></li>
<?php
// ... and continue right here
于 2012-12-17T19:05:10.550 回答
1

是不是因为你只是在引用之后src=border:none;不是每一个都转义?

编辑:@Oldskool 打败了我 xD

于 2012-12-17T19:06:49.583 回答
0

如果你想显示双引号,试试这个

<?php    
echo "<li><iframe src=\"http://localhost/ptb1/includes/mod_uploads/profile_pics/index.php\" width=\"188\" height=\"258\" scrolling=\"no\" style=\"overflow:hidden; margin-top:-4px; margin-left:-4px; border:none;\"></iframe></li>";
?>
于 2012-12-17T19:30:57.477 回答