我试图创建一个表单,用户将其youtube代码插入到一个字段中,然后存储在mysql中。
将代码添加到此链接的末尾 - //www.youtube.com/embed/ [code here] - 它会显示视频。
我该怎么做才能在php文档中永久修复链接,并以一种打开页面时正确显示视频的方式从mysql中检索结束部分?
当你知道怎么做时非常简单,但我不会因为有人能告诉我这样做的方式而感激。
谢谢! 欧仁妮
答案 0 :(得分:0)
我在自己的项目中这样做。当有人粘贴在YouTube链接中时,会解析视频ID并将其存储起来。确保您处理所有现有的链接格式,YouTube有一些。然后,当您开始显示视频时,您可以使用数据库中的代码以任何方式设置嵌入标签。
exlode()
是您从URL解析令牌的朋友。除非你真的需要,否则使用正则表达式会很痛苦。
我会假设您足够了解实际存储和检索YouTube ID。
答案 1 :(得分:0)
尝试explode
喜欢
$segments = explode('/', $MyUrl);
$cnt = count($segments);
echo $segments[$cnt-1];
答案 2 :(得分:0)
我假设你需要存储路径的最后一部分。
<?php
$path = " //www.youtube.com/embed/filename.php";
//Show filename with file extension
echo basename($path) ."<br/>";
//Show filename without file extension
echo basename($path,".php");
?>
输出将是这样的:
filename.php
文件名
答案 3 :(得分:0)
拆分链接并获取插入代码:
$link = "http://www.youtube.com/embed/s0m3C0d3123";
$parts = explode("/", $link); // Split the URL into an array delimited by /
$code = $parts[count($parts)-1]; // Get the last value in the array
// Insert $code into database
从DB打印值,假设您已经对代码进行了查询,并将其存储在名为$ data的数组中
$link = "http://www.youtube.com/embed/" . $data["code"];
echo $link;
答案 4 :(得分:0)
最后的回答让我走上正轨。以下代码正确显示:
<?php
$host="localhost"; // Host name
$username="------"; // Mysql username
$password="-----"; // Mysql password
$db_name="----"; // Database name
$tbl_name="-------"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql = "Select * from $tbl_name";
$result = mysql_query($sql) or die(mysql_error());
while($row = mysql_fetch_array( $result )) {
echo "<div align='center'><iframe src=\"//www.youtube.com/embed/" . $row['clip3'] . "\" style=\"background: #fff;\" frameborder=\"0\" height=\"300\" scrolling=\"auto\" width=\"480\"></iframe> </div>";
}
?>