html5 php视频上传和显示 - 如何为特定上传添加评论

时间:2016-04-23 12:52:20

标签: php mysql html5 video comments

我正在建立一个网站,用户可以在其中上传视频,并对已上传的视频发表评论。我有一个工作的PHP函数上传视频,但现在我想在视频下方添加一个链接,引用该特定视频来添加评论。

这是我显示视频的PHP代码:

    <?php


    $sql="SELECT * FROM video";
    $result=mysqli_query($db,$sql);
    $rows=$result->fetch_all(MYSQLI_ASSOC);



    foreach ($rows as $row) {

    ?>

                <div class="col-md-4">
                <div class="service">
                        <video id="<?= $row["v_id"] ?>" width="350" height="315" controls="controls">
                        <source src="uploads/<?= $row["video_name"] ?>" type="video/mp4">
                        Your browser does not support HTML5 video.
                        </video>
                        <a href="#" data-toggle="modal" data-target="#comments">View/Add Comments</a>
                    </div>
                    </div>

    <?php

    }

    ?>

&#39;查看/添加评论&#39;链接到以下模式:

    <div class="modal fade" id="comments" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
        <div class="modal-dialog">
            <div class="text-center">
            <div class="modal-content modal-popup2">
                <h3 class="grey">Comments</h3>
                <?php

                $sql="SELECT * FROM comments";
                $result=mysqli_query($db,$sql);
                $rows=$result->fetch_all(MYSQLI_ASSOC);



                foreach ($rows as $row) {

                ?>

                <div class="bold black">
                <?php echo $row["author"] ?> says:
                <p>
                <?php echo $row["comment"] ?>
                </p>
                </div>
                <?php
                }
                ?>

                <h3 class="grey">Write a comment</h3>
                <form method="post" action="comments.php">
                    <fieldset>
                        <input id="author" name="author" type="text" class="form-control form-grey" placeholder="Enter name">
                    <textarea id="comment" name="comment" class="form-control form-grey" placeholder="Enter comment" cols="30" rows="3"></textarea>
                    <button type="submit" value="Submit" class="btn btn-submit">Submit</button>
                    </fieldset>
                </form>
            </div>
        </div>
    </div>
</div>

这将显示数据库中的注释,并允许用户添加自己的注释。但是,这对于所有视频都是通用的,并不是针对单个v_id的。我不知道从哪里开始,对php来说是新手!

我知道我需要使用v_id添加到我的评论数据库表中,并使用评论的v_id更新comments.php文件,因此任何有关入门的建议都会很棒!

如果您有任何疑问或需要查看更多代码,请与我们联系!

谢谢!

1 个答案:

答案 0 :(得分:1)

必须扩展您的$sql="SELECT * FROM comments";以将查询限制为特定的v_id。有关SELECT的 WHERE 参数,请参阅http://dev.mysql.com/doc/refman/5.7/en/select.html

请注意,使用占位符传递SQL查询的任何值应该。直接将值插入查询是非常危险的,因为它通常会导致SQL注入漏洞*。向Google询问 SQL注入以获取更多信息。

您的 mysqli_query 可能无法与占位符一起使用。有关详细信息,请参阅http://php.net/manual/de/pdo.prepared-statements.php

PS:*有经验的开发人员甚至可以使用查询中的值来避免这种情况,但简单安全的解决方案是:始终(!)使用占位符。