html5 php 视频上传与展示-如何对特定上传添加评论
html5 php video upload and display - how to add comments to specific upload
我正在建立一个网站,用户可以在其中上传视频,并对已上传的视频发表评论。我有一个上传视频的工作 php 功能,但现在我想在视频下方添加一个 link 来引用该特定视频以添加评论。
这是我的 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
}
?>
和 'View/Add Comments' link 到以下模态:
<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 添加到我的评论数据库 table,并使用评论的 v_id 更新 comments.php 文件,所以任何关于入门的建议都会很棒!
如果您有任何问题或需要查看更多代码,请告诉我!
谢谢!
必须扩展您的 $sql="SELECT * FROM comments";
以将查询限制为特定的 v_id。请参阅 http://dev.mysql.com/doc/refman/5.7/en/select.html 关于 SELECT 的 WHERE 参数。
请注意 SQL 查询 的任何值都应该 使用占位符传递。将值直接插入查询是非常危险的,因为它通常会导致 SQL 注入漏洞*。询问 Google 关于 SQL 注入 的更多信息。
您的 mysqli_query 可能不适用于占位符。有关详细信息,请参阅 http://php.net/manual/de/pdo.prepared-statements.php。
PS:*即使在查询中使用值,有经验的开发人员也可以避免这种情况,但简单安全的解决方案是:始终(!)使用占位符。
我正在建立一个网站,用户可以在其中上传视频,并对已上传的视频发表评论。我有一个上传视频的工作 php 功能,但现在我想在视频下方添加一个 link 来引用该特定视频以添加评论。
这是我的 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
}
?>
和 'View/Add Comments' link 到以下模态:
<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 添加到我的评论数据库 table,并使用评论的 v_id 更新 comments.php 文件,所以任何关于入门的建议都会很棒!
如果您有任何问题或需要查看更多代码,请告诉我!
谢谢!
必须扩展您的 $sql="SELECT * FROM comments";
以将查询限制为特定的 v_id。请参阅 http://dev.mysql.com/doc/refman/5.7/en/select.html 关于 SELECT 的 WHERE 参数。
请注意 SQL 查询 的任何值都应该 使用占位符传递。将值直接插入查询是非常危险的,因为它通常会导致 SQL 注入漏洞*。询问 Google 关于 SQL 注入 的更多信息。
您的 mysqli_query 可能不适用于占位符。有关详细信息,请参阅 http://php.net/manual/de/pdo.prepared-statements.php。
PS:*即使在查询中使用值,有经验的开发人员也可以避免这种情况,但简单安全的解决方案是:始终(!)使用占位符。