【发布时间】:2017-09-10 14:18:48
【问题描述】:
我要显示url,url可以是视频或图片,我想用url显示视频或图片。
网址可以是任何东西,Facebook 视频、Instagram 视频、Facebook 图片、Instagram 图片等。
我想加载这些并显示。我尝试使用 iFrame 和视频来显示视频,但它不起作用。对于图片,我尝试在图片标签中显示,但没有成功。
网址可以像
https://www.facebook.com/facebook/videos/10154659446236729/
这是视频
https://www.instagram.com/p/BSS3dVZlgXw/
这可以用于图像。
如何显示此图像或图像的预览,并且 onClick 可以在新浏览器中打开它?同样对于视频,我们可以这样做吗?
这里是 getPosts.php,现在我在表格中显示它。
<?php
ini_set('display_errors', 1);
error_reporting(1);
ini_set('error_reporting', E_ALL);
include 'Database.php';
$database = new Database(Constants::DBHOST,Constants::DBUSER,Constants::DBPASS,Constants::DBNAME);
$dbConnection = $database->getDB();
$stmt = $dbConnection->prepare("SELECT * FROM posts");
$dbConnection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt->execute();
$results = $stmt->fetchall(PDO::FETCH_ASSOC);
$posts='';
if (count($results > 0)) {
$posts.='<table><tr><th>Title</th><th>Description</th><th>Url</th></tr>';
foreach($results as $row) {
$posts.='<tr><td>'.$row['title'].'</td> <td>'.$row['description'].'</td>';
if (strcmp($row['url_type'],"2") || strcmp($row['url_type'],"") || strcmp($row['url_type'],"5")|| strcmp($row['url_type'],"7"))
{
'<video width="320" height="240" controls>
<source src="'.$row['url'].'" type="video/mp4">
</video>';
}
}
} else {
$posts.='<tr><td>No data found</td></tr>';
}
$posts.='</table>';
echo $posts;
?>
IFrame 和视频标签的测试是这样的,但 Iframe 对一个 url 有效,而对其他和视频标签无效。:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<video width="320" height="240" controls>
<source src="https://youtu.be/GHWHrgDqTyY" type="video/youtube">
Your browser does not support the video tag.
</video>
<iframe width="420" height="345" src="https://www.facebook.com/facebook/videos/10154651089866729/">
</iframe>
<img src="https://www.facebook.com/facebook/photos/a.376995711728.190761.20531316728/10155085288566729/?type=3&theater" alt="Mountain View" style="width:304px;height:228px;">
</body>
</html>
谁能帮我解决这个问题?
【问题讨论】: