-1

ユーザーがYouTubeコードをフィールドに挿入するフォームを作成しようとしています。これはmysqlに保存されます。

このリンクの最後にコードを追加すると、 //www.youtube.com/embed/[ここにコード] - ビデオが表示されます。

リンクがphpドキュメントに永久に固定され、ページが開かれたときにビデオが正しく表示されるように、最後の部分がmysqlから取得されるようにするにはどうすればよいですか?

方法を知っていれば非常に簡単なことですが、私はそうではないので、誰かがこれを行う方法を教えていただければ幸いです.

ありがとう!ユージェニー

4

5 に答える 5

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 という配列に格納されていると仮定して、DB から値を出力します。

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