-1

我正在尝试创建一个表单,其中用户将他们的 youtube 代码插入到一个字段中,然后将其存储在 mysql 中。

当代码添加到此链接的末尾时 - //www.youtube.com/embed/[code here] - 它会显示视频。

我该怎么做才能使链接永久固定在 php 文档中,并从 mysql 检索结尾部分,以便在打开页面时正确显示视频?

当你知道如何做时非常简单的东西,但我不知道,如果有人能告诉我这样做的方法,我将不胜感激。

谢谢!尤金妮

4

5 回答 5

0

我在自己的项目中这样做。当有人粘贴 YouTube 链接时,解析视频 ID 并将其存储。确保您处理所有现有的链接格式,YouTube 有一些。然后,当您去显示视频时,您可以使用数据库中的代码以任何您想要的方式设置嵌入标签。

exlode()是您从 URL 中解析令牌的朋友。除非您真的需要,否则使用正则表达式很痛苦。

我假设您知道的足够多,可以实际存储和检索 YouTube ID。

于 2013-08-17T10:28:15.123 回答
0

试试explode喜欢

$segments = explode('/', $MyUrl);
$cnt = count($segments);
echo $segments[$cnt-1];
于 2013-08-17T10:29:30.877 回答
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");
?> 

输出将是这样的:

文件名.php

文件名

于 2013-08-17T10:44:31.143 回答
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

从数据库打印值,假设您已经对代码进行了查询,并且它存储在一个名为 $data 的数组中

$link = "http://www.youtube.com/embed/" . $data["code"];
echo $link;
于 2013-08-17T11:22:17.433 回答
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>";

}


?>
于 2013-08-18T19:59:03.550 回答