Stránka 1 z 1
Vkládání videa z youtube od uživatelů
Napsal: 23 srp 2013 15:11
od Gosuri
Zdravím,
potřeboval bych poradit. Programuji web, kde uživatelé budou moci vkládat svá videa ze serveru youtube (tedy spíš náhledy na ně). Ale nedaří se mi to naprogramovat, aby stačilo jen vkládání adresy z lišty v prohlížeči. Poradíte mi, jak na to?
Re: Vkládání videa z youtube od uživatelů
Napsal: 23 srp 2013 17:01
od LuCaCZ
Co přesně ti nejde naprogramovat?
Je několik způsobů jak dostat informace o videu - např toto
http://www.youtube.com/watch?v=mQc4ZXh6azEOd ID videa (mQc4ZXh6azE) se pak odvíjí adresy pro získání informací
XML data
Kód: Vybrat vše
http://gdata.youtube.com/feeds/api/videos/mQc4ZXh6azE
oEmbed data
Kód: Vybrat vše
http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=mQc4ZXh6azE
Náhledové obrázky
Kód: Vybrat vše
http://i.ytimg.com/vi/mQc4ZXh6azE/hqdefault.jpg
http://i.ytimg.com/vi/mQc4ZXh6azE/mqdefault.jpg
http://i.ytimg.com/vi/mQc4ZXh6azE/default.jpg
http://i.ytimg.com/vi/mQc4ZXh6azE/0.jpg
http://i.ytimg.com/vi/mQc4ZXh6azE/1.jpg
http://i.ytimg.com/vi/mQc4ZXh6azE/2.jpg
http://i.ytimg.com/vi/mQc4ZXh6azE/3.jpg
Pak už je to jen práce s řetězci či parsování xml...
Re: Vkládání videa z youtube od uživatelů
Napsal: 23 srp 2013 17:28
od Gosuri
Názorný příklad:
if (isset($_POST['url']))
{
$adrfilm = $_POST['url'];
echo $adrfilm;
echo "<object style='height: 390px; width: 640px'>
<param name='movie' value='$adrfilm'>
<param name='allowFullScreen' value='true'>
<param name='allowScriptAccess' value='always'>
<embed src='$adrfilm' type='application/x-shockwave-flash' allowfullscreen='true' allowScriptAccess='always' width='640' height='390'>
</object>";
}
else
{
echo "<br>";
}
?>
... čili uživatel zadá adresu z youtube a uložené video se má na webu zobrazit. Ale adresa z horní lišty v prohlížeči nejede. Je třeba zkopírovat adresu nacházející se pod videem pod položkou sdílet. Což by pro návštěvníky bylo nepohodlné. Nevím, co mám tedy do kódu přidat, aby to fungovalo.
Re: Vkládání videa z youtube od uživatelů
Napsal: 23 srp 2013 17:36
od CZechBoY
Zdravím,
tak a jde se poslouchat Metallica

z tohohle se nic nepozná, musíš rozparsovat url a youtube ji má ve formátu
třeba
Kód: Vybrat vše
http://www.youtube.com/embed/mQc4ZXh6azE
Re: Vkládání videa z youtube od uživatelů
Napsal: 24 srp 2013 10:24
od Gosuri
Aha :) ... jo tak by to šlo

... ale s parsováním nemám žádné zkušenosti, můžu poprosit o nějaký příklad? Co jsem prolézal fóra, tak jsem to nějak nepochopil. :)
Re: Vkládání videa z youtube od uživatelů
Napsal: 24 srp 2013 20:51
od CZechBoY
je to jednoduchý, ale nevím kolik existuje formátů youtube odkazu
předpokládám url
Kód: Vybrat vše
http://www.youtube.com/watch?v=mQc4ZXh6azE
PHP píše:$_POST['url'] = "http://www.youtube.com/watch?v=mQc4ZXh6azE";
$embed = yt2embed($_POST['url']);
if(!$embed)
echo "Vložil si blbost";
else {
echo "<object style='height: 390px; width: 640px'>
<param name='movie' value='" . $embed . "'>
<param name='allowFullScreen' value='true'>
<param name='allowScriptAccess' value='always'>
<embed src='" . $embed . "' type='application/x-shockwave-flash' allowfullscreen='true' allowScriptAccess='always' width='640' height='390'>
</object>";
}
function yt2embed($url) {
$url = parse_url($_POST['url']);
if(strpos($url['host'], "youtube.com") === false || empty($url['query']))
return false;
$query = array();
parse_str($url['query'], $query);
if(empty($query['v'])
return false;
$embed_url = "http://www.youtube.com/embed/" . $query['v'];
return $embed_url;
}
Re: Vkládání videa z youtube od uživatelů
Napsal: 24 srp 2013 21:44
od X
Pokud budeš mít návštěvníky s vytuněným Firefoxem (stačí
plug-in Greasemonkey a skript Videoembed = prozkoumej v mém podpise), tak stačí vložit odkaz, viz:

Re: Vkládání videa z youtube od uživatelů
Napsal: 25 srp 2013 00:31
od LuCaCZ
X: takhle asi ne ..
CZechBoY píše:... ale nevím kolik existuje formátů youtube odkazu ...
určitě je zkrácená share adresa
http://youtu.be/mQc4ZXh6azEtaky funguje
http://www.youtube.com/video/mQc4ZXh6azE, ale to se asi nikde neobjevuje
Re: Vkládání videa z youtube od uživatelů
Napsal: 25 srp 2013 00:48
od CZechBoY
jo, tak si to zkus ještě dopsat pro tyhle 2 formáty, kdy nebudeš vědět tak sem napiš