如果 url 存储在 mySQL 中,则显示 youtube iframe

Display youtube iframe if url stored in mySQL

我创建了一个表单,我们可以在其中注册 youtube embed url post。 我只想在 url 已为此 post.

注册时显示 iframe

我写了这段代码来显示报告信息:

<?php

$req = $db->query('SELECT id, title, author, category, date_event, country, city, content, tag, youtube FROM report ORDER BY date_creation DESC LIMIT 0, 10');

while ($data = $req->fetch())
{
?>

<div class="news">
      <h3><?php echo htmlspecialchars($data['title']); ?></h3>
      <p>Author: <?php echo htmlspecialchars($data['author']); ?></p>
            <p>Category : <?php echo htmlspecialchars($data['category']); ?></p>
            <p>Date of the event : <?php echo htmlspecialchars($data['date_event']); ?></p>
            <p>Country : <?php echo htmlspecialchars($data['country']); ?></p>
            <p>City : <?php echo htmlspecialchars($data['city']); ?></p>
            <p class="display_list"><?php echo html_entity_decode($data['content'], ENT_HTML5 , 'UTF-8'); ?></p>
            <p>Tag : <?php echo htmlspecialchars($data['tag']); ?></p>
        <p>Youtube : <?php echo htmlspecialchars($data['youtube']); ?></p>
        <p>
            <?php
            $youtube=$data['youtube'];

            if($youtube==1){
                echo "<p>display iframe</p>";
            }else{
            {
                    echo "<p>don't display iframe</p>";
                }
            }        
            ?>
        </p>

显示 url 的请求工作正常。如果行中包含 url,则会显示它们。

然而,条件代码对所有 post 显示相同的答案:"don't display iframe"。

$youtube 变量的条件语句当然不对,但我想不通。

you have assigned $youtube=1; instead of $youtube=$data['youtube']; in the code

try this 

<?php

$req = $db->query('SELECT id, title, author, category, date_event, country, city, content, tag, youtube FROM report ORDER BY date_creation DESC LIMIT 0, 10');

while ($data = $req->fetch())
{
?>

<div class="news">
      <h3><?php echo htmlspecialchars($data['title']); ?></h3>
      <p>Author: <?php echo htmlspecialchars($data['author']); ?></p>
            <p>Category : <?php echo htmlspecialchars($data['category']); ?></p>
            <p>Date of the event : <?php echo htmlspecialchars($data['date_event']); ?></p>
            <p>Country : <?php echo htmlspecialchars($data['country']); ?></p>
            <p>City : <?php echo htmlspecialchars($data['city']); ?></p>
            <p class="display_list"><?php echo html_entity_decode($data['content'], ENT_HTML5 , 'UTF-8'); ?></p>
            <p>Tag : <?php echo htmlspecialchars($data['tag']); ?></p>
            <p>

            <?php
$youtube=$data['youtube'];

if($youtube==1){
    echo "<p>display iframe</p>";
}else{
{
        echo "<p>don't display iframe</p>";
    }
}        
?>
</p>