在我的网站上,我有一些图像与其余内容存储在同一SQL单元中。当我加载包含图像的页面并且PHP回显“文章”单元时,图像会自动包含在段落标签中,这不是我想要的。有什么办法可以防止这种情况?我不确定是浏览器端还是服务器端的问题,但是它会出现在Chrome和FF中。

SQL单元格“文章”:

<img src="http://www.nasa.gov/images/content/297522main_image_1244_946-710.jpg"><p>Lorem ipsum</p>


PHP代码:

if ($pageType == 'article') {
            if($pageExists==1) {
                try {
                    $db = new PDO('pdoinfo');
                } catch(PDOException $e) {echo $e->getMessage();}

                $sql = $db->query("SELECT * FROM articles WHERE id=$pageName");
                $result = $sql->fetchAll(PDO::FETCH_OBJ);

                echo ('<div class="article"><h3>');
                echo $result[0]->title;
                echo('</h3><p>');
                echo $result[0]->article;
                echo('<span class="article-data">Geplaatst op <span class="article-date">');
                echo date('d-m-Y', strtotime($result[0]->postdate));
                echo ('</span> door <span class="article-author">');
                echo $result[0]->author;
                echo ('</span><span class="article-broadcast"><span class="st_twitter_hcount" displayText="Tweet"></span><span class="st_facebook_hcount" displayText="Facebook"></span>');
                echo ('</span></span></div>');
            }
            else {
                include('pages/404.php');
            }
        }


输出HTML:

[...]<p><img src="http://www.nasa.gov/images/content/297522main_image_1244_946-710.jpg"><p>Lorem ipsum</p>[...]


我自己编写所有代码,因此不涉及CMS。
当我自己用p标签封装图像时,在该段之前插入了一个多余的空p标签。

最佳答案

您在此行<p>上有一个打开的echo('</h3><p>');,它永远不会关闭,所以我怀疑您是否看到了。

也不需要所有回声

echo '
<div class="article">
    <h3>'.$result[0]->title.'</h3>
    '.$result[0]->article.'
    <span class="article-data">
        Geplaatst op <span class="article-date">'.date('d-m-Y', strtotime($result[0]->postdate)).'</span> door
        <span class="article-author">'.$result[0]->author.'</span>
        <span class="article-broadcast">
            <span class="st_twitter_hcount" displayText="Tweet"></span>
            <span class="st_facebook_hcount" displayText="Facebook"></span>
        </span>
    </span>
</div>';

关于php - 用<p>包围<img>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12535291/

10-12 14:23
查看更多