Здравейте, имам проблем с този код, скриптът е за търсене и гледане на клипове от youtube, когато търся някакъв клип, резултат нулев. Ако може някой да хелпне, благодаря предварително.
Код:
<?php
/*
This program is free software; you can redistribute it and/or modify
it under the terms of the Revised BSD License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Revised BSD License for more details.
Copyright 2004-2008 Cool Dude 2k - http://idb.berlios.de/
Copyright 2004-2008 Game Maker 2k - http://intdb.sourceforge.net/
$FileInfo: index.php - Last Update: 02/29/2009 Version 4 - Author: cooldude2k $
*/
@ini_set("display_errors", false);
@ini_set("display_startup_errors", false);
@error_reporting(E_ALL ^ E_NOTICE);
function strip_gpc_slashes ($input)
{
if ( !get_magic_quotes_gpc() || ( !is_string($input) && !is_array($input) ) )
{
return $input;
}
elseif ( is_string($input) )
{
$output = stripslashes($input);
}
elseif ( is_array($input) )
{
$output = array();
foreach ($input as $key => $val)
{
$new_key = stripslashes($key);
$new_val = strip_gpc_slashes($val);
$output[$new_key] = $new_val;
}
}
return $output;
}
$var1 = array("&" ,"\"", "<", ">");
$var2 = array("&", """, "<", ">");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<title> YouTube Search - <?php echo str_replace($var1, $var2, strip_gpc_slashes($_GET['search'])) ?> </title>
<meta http-equiv="Content-Language" content="en">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="EditPlus">
<meta name="Author" content="Google">
<meta name="Keywords" content="Google Search, <?php echo str_replace($var1, $var2, $_GET['q']) ?>">
<meta name="Description" content="Google Search, <?php echo str_replace($var1, $var2, $_GET['q']) ?>">
<link rel="icon" href="favicon.ico" type="image/icon">
<link rel="shortcut icon" href="favicon.ico" type="image/icon">
<style type="text/css">
input {
background-color: #c7d1dd;
font-size: 13px;
font-family: Courier, Courier New, Verdana, Arial;
color: #000000;
border: 1px solid #506070;
border-collapse: collapse;
}
label {
color: #000000;
font-weight: bold;
cursor: pointer;
}
</style>
</head>
<body>
<div style="text-align: center;">
<?php
if(!isset($_GET['resolution'])) {
$_GET['resolution'] = "425x344"; }
if(isset($_GET['resolution'])) {
$resexp = explode("x",$_GET['resolution']);
if(count($resexp)<2) {
$_GET['resolution'] = "425x344"; $resexp = null;
$resexp[0] = "425"; $resexp[1] = "344"; }
if(count($resexp)>2) {
$_GET['resolution'] = $resexp[0]."x".$resexp[1];
$oldw = $resexp[0]; $oldh = $resexp[1]; $resexp = null;
$resexp[0] = $oldw; $resexp[1] = $oldh; }
if(count($resexp)==2) {
if(!is_numeric($resexp[0])||!is_numeric($resexp[1])) {
$resexp[0] = "425"; $resexp[1] = "344"; } } }
if(!isset($_GET['act'])||$_GET['act']=="yapi") {
$_GET['act'] = "start"; }
if(!isset($_GET['fmt'])||!is_numeric($_GET['fmt'])) { $_GET['fmt'] = 0; }
if($_GET['fmt']=="18") { $_GET['fmt'] = 18; }
if($_GET['act']=="view"&&!isset($_GET['id'])) {
$_GET['id'] = 1; $_GET['act'] = "find"; }
if($_GET['act']=="find"&&!is_numeric($_GET['page'])) {
$_GET['id'] = 1; $_GET['act'] = "find"; }
if($_GET['act']=="find"&&!isset($_GET['search'])) {
$_GET['search'] = "KazukiPrzyborowski"; }
if(isset($_GET['search'])) {
$_GET['search'] = strip_gpc_slashes($_GET['search']); }
if($_GET['act']=="find"&&!isset($_GET['page'])) {
$_GET['page'] = 1; }
if($_GET['act']=="find"&&!is_numeric($_GET['page'])) {
$_GET['page'] = 1; }
if($_GET['act']=="start"||$_GET['act']=="find"||$_GET['act']=="search"||$_GET['act']=="user") {
?>
<form style="text-align: center;" method="get" action="youtube.php?act=find&page=1">
<label for="search">Search for:</label><br />
<input type="text" id="search" name="search" value="<?php echo str_replace($var1, $var2, $_GET['search']) ?>" /><br />
<label for="resolution">Select resolution:</label><br />
<select id="resolution" name="resolution" class="TextBox">
<option value="425x344">YouTube Normal</option>
<option value="320x265">YouTube Alt 1</option>
<option value="480x385">YouTube Alt 2</option>
<option value="640x505">YouTube Alt 3</option>
<option value="440x420">TinyPic Normal</option>
<option value="720x480">SD NTSC TV</option>
<option value="720x576">SD PAL TV</option>
</select><br />
<label for="act">Search type:</label><br />
<select id="act" name="act" class="TextBox">
<option value="find">Video Search</option>
<option value="search">Channel Search</option>
<option value="user">User Search</option>
</select><br />
<input type="hidden" name="page" value="1" style="display: none;" />
<input type="submit" value="Search"> <input type="reset">
</form>
<?php } if($_GET['act']=="find") {
$yapifind = file_get_contents("http://www.youtube.com/results?search_type=videos&search_query=".urlencode($_GET['search'])."&page=".$_GET['page']."&hl=en");
$prepreg01 = preg_quote("class=\"pagerNotCurrent\">Previous</a>","/");
preg_match_all("/".$prepreg01."{1}/isU", $yapifind, $prePrevious);
$prepreg02 = preg_quote("class=\"pagerNotCurrent\">Next</a>","/");
preg_match_all("/".$prepreg02."{1}/isU", $yapifind, $preNext);
$prePrevious = $prePrevious[0];
if(count($prePrevious)==1) {
$Previous = $_GET['page'] - 1;
echo "<a href=\"youtube.php?act=find&search=".urlencode($_GET['search'])."&page=".$Previous."&resolution=".$_GET['resolution']."\">< Previous</a>"; }
$preNext = $preNext[0];
if(count($prePrevious)==1&&count($preNext)==1) {
echo " | "; }
if(count($preNext)==1) {
$Next = $_GET['page'] + 1;
echo "<a href=\"youtube.php?act=find&search=".urlencode($_GET['search'])."&page=".$Next."&resolution=".$_GET['resolution']."\">Next ></a>"; }
$prepreg1 = preg_quote("<div class=\"video-entry\">","/");
$prepreg2 = preg_quote("<div class=\"video-facets\">","/");
preg_match_all("/".$prepreg1."(.*)".$prepreg2."{1}/isU", $yapifind, $premath);
$premath = $premath[0];
$i=0; $num=count($premath);
while ($i < $num) {
$prepreg3 = preg_quote("href=\"/watch?v=","/");
$prepreg4 = preg_quote("\" title=\"","/");
$prepreg5 = preg_quote("\"","/");
preg_match_all("/".$prepreg3."(.*)".$prepreg4."(.*)".$prepreg5."{1}/isU", $premath[$i], $prefind);
$yapiID = $prefind[1][1];
$yapiShortTitle = strip_tags($prefind[2][0]); echo "<br />";
$yapiLongTitle = strip_tags($prefind[2][1]);
$yapiThumb = "http://i2.ytimg.com/vi/".$yapiID."/default.jpg";
echo "<dl><dt><a href=\"youtube.php?act=view&search=".$_GET['search']."&id=".$yapiID."&resolution=".$_GET['resolution']."\"><img style=\"border: 0px;\" src=\"".$yapiThumb."\" alt=\"".$yapiShortTitle."\" title=\"".$yapiShortTitle."\"></a></dt>";
echo "<dd><a href=\"youtube.php?act=view&search=".$_GET['search']."&id=".$yapiID."&resolution=".$_GET['resolution']."\">".$yapiShortTitle."</a></dd></dl>";
++$i; } } if($_GET['act']=="search") {
if($_GET['page']==1) { $_GET['page'] = 0; }
if(!isset($_GET['query'])) { $_GET['query'] = null; }
if(isset($_GET['query'])&&$_GET['query']!=null) {
$yapifind = file_get_contents("http://www.youtube.com/profile?user=".urlencode($_GET['search'])."&view=videos&start=".$_GET['page']."&query=".urlencode($_GET['query'])."&hl=en"); }
if(!isset($_GET['query'])||$_GET['query']==null) {
$yapifind = file_get_contents("http://www.youtube.com/profile?user=".urlencode($_GET['search'])."&view=videos&start=".$_GET['page']."&hl=en");
$prepreg01 = preg_quote(">Previous</a>","/"); }
preg_match_all("/".$prepreg01."{1}/isU", $yapifind, $prePrevious);
$prepreg02 = preg_quote(">Next</a>","/");
preg_match_all("/".$prepreg02."{1}/isU", $yapifind, $preNext);
$prePrevious = $prePrevious[0];
if(count($prePrevious)==1) {
$Previous = $_GET['page'] - 20;
if(isset($_GET['query'])&&$_GET['query']!=null) {
echo "<a href=\"youtube.php?act=search&search=".urlencode($_GET['search'])."&page=".$Previous."&resolution=".$_GET['resolution']."&query=".urlencode($_GET['query'])."\">< Previous</a>"; }
if(!isset($_GET['query'])||$_GET['query']==null) {
echo "<a href=\"youtube.php?act=search&search=".urlencode($_GET['search'])."&page=".$Previous."&resolution=".$_GET['resolution']."\">< Previous</a>"; } }
$preNext = $preNext[0];
if(count($prePrevious)==1&&count($preNext)==1) {
echo " | "; }
if(count($preNext)==1) {
$Next = $_GET['page'] + 20;
if(isset($_GET['query'])&&$_GET['query']!=null) {
echo "<a href=\"youtube.php?act=search&search=".urlencode($_GET['search'])."&page=".$Next."&resolution=".$_GET['resolution']."&query=".urlencode($_GET['query'])."\">Next ></a>"; }
if(!isset($_GET['query'])||$_GET['query']==null) {
echo "<a href=\"youtube.php?act=search&search=".urlencode($_GET['search'])."&page=".$Next."&resolution=".$_GET['resolution']."\">Next ></a>"; } }
$prepreg1 = preg_quote("<div class=\"video-entry\">","/");
$prepreg2 = preg_quote("<div class=\"video-facets\">","/");
preg_match_all("/".$prepreg1."(.*)".$prepreg2."{1}/isU", $yapifind, $premath);
$premath = $premath[0];
$i=0; $num=count($premath);
while ($i < $num) {
$prepreg3 = preg_quote("href=\"/watch?v=","/");
$prepreg4 = preg_quote("&feature=channel_page\" title=\"","/");
$prepreg5 = preg_quote("\"","/");
preg_match_all("/".$prepreg3."(.*)".$prepreg4."(.*)".$prepreg5."{1}/isU", $premath[$i], $prefind);
$yapiID = $prefind[1][1];
$yapiShortTitle = strip_tags($prefind[2][0]); echo "<br />";
$yapiLongTitle = strip_tags($prefind[2][1]);
$yapiThumb = "http://i2.ytimg.com/vi/".$yapiID."/default.jpg";
echo "<dl><dt><a href=\"youtube.php?act=view&search=".$_GET['search']."&id=".$yapiID."&resolution=".$_GET['resolution']."\"><img style=\"border: 0px;\" src=\"".$yapiThumb."\" alt=\"".$yapiShortTitle."\" title=\"".$yapiShortTitle."\"></a></dt>";
echo "<dd><a href=\"youtube.php?act=view&search=".$_GET['search']."&id=".$yapiID."&resolution=".$_GET['resolution']."\">".$yapiShortTitle."</a></dd></dl>";
++$i; } } if($_GET['act']=="user") {
$yapifind = file_get_contents("http://www.youtube.com/results?search_type=search_users&search_query=".urlencode($_GET['search'])."&page=".$_GET['page']."&hl=en");
$prepreg01 = preg_quote("class=\"pagerNotCurrent\">Previous</a>","/");
preg_match_all("/".$prepreg01."{1}/isU", $yapifind, $prePrevious);
$prepreg02 = preg_quote("class=\"pagerNotCurrent\">Next</a>","/");
preg_match_all("/".$prepreg02."{1}/isU", $yapifind, $preNext);
$prePrevious = $prePrevious[0];
if(count($prePrevious)==1) {
$Previous = $_GET['page'] - 1;
echo "<a href=\"youtube.php?act=find&search=".urlencode($_GET['search'])."&page=".$Previous."&resolution=".$_GET['resolution']."\">< Previous</a>"; }
$preNext = $preNext[0];
if(count($prePrevious)==1&&count($preNext)==1) {
echo " | "; }
if(count($preNext)==1) {
$Next = $_GET['page'] + 1;
echo "<a href=\"youtube.php?act=find&search=".urlencode($_GET['search'])."&page=".$Next."&resolution=".$_GET['resolution']."\">Next ></a>"; }
$prepreg1 = preg_quote("<div class=\"channel-entry\">","/");
$prepreg2 = preg_quote("<div class=\"channel-facets\">","/");
preg_match_all("/".$prepreg1."(.*)".$prepreg2."{1}/isU", $yapifind, $premath);
$premath = $premath[0];
$i=0; $num=count($premath);
while ($i < $num) {
$prepreg3 = preg_quote("href=\"/user/","/");
$prepreg4 = preg_quote("\" title=","/");
preg_match_all("/".$prepreg3."(.*)".$prepreg4."{1}/isU", $premath[$i], $prefind);
$prethumb = $prefind[1][1];
$prepreg5 = preg_quote("src=\"","/");
$prepreg6 = preg_quote("\" alt=","/");
preg_match_all("/".$prepreg5."(.*)".$prepreg6."{1}/isU", $prethumb, $prethumbfind);
$yapiID = $prefind[1][2];
/*$yapiShortTitle = strip_tags($prefind[2][0]); echo "<br />";
$yapiLongTitle = strip_tags($prefind[2][1]);*/
$yapiThumb = $prethumbfind[1][0];
echo "<dl><dt><a href=\"youtube.php?search=".$yapiID."&resolution=".$_GET['resolution']."&act=search&page=1\"><img style=\"border: 0px;\" src=\"".$yapiThumb."\" alt=\"".$yapiID."\" title=\"".$yapiID."\"></a></dt>";
echo "<dd><a href=\"youtube.php?search=".$yapiID."&resolution=".$_GET['resolution']."&act=search&page=1\">".$yapiID."</a></dd></dl>";
++$i; } } if($_GET['act']=="view") {
$exurl = null;
if(isset($_GET['border'])&&$_GET['border']=="on") {
$resexp = explode("x",$_GET['resolution']);
$resexp[0] = $resexp[0] + 20;
$resexp[1] = $resexp[1] + 20;
$exurl1 = $exurl."&border=1";
$exurl2 = $exurl."?border=1"; }
if($_GET['fmt']=="18") { echo "<object type=\"application/x-shockwave-flash\" style=\"width:".$resexp[0]."px; height:".$resexp[1]."px;\" data=\"http://www.youtube.com/v/".$_GET['id']."?fmt=18".$exurl1."\"><param name=\"movie\" value=\"http://www.youtube.com/v/".$_GET['id']."?fmt=18".$exurl1."\" /></object><br /><a href=\"http://keepvid.com/?url=".urlencode("http://www.youtube.com/watch?v=".$_GET['id'])."\">KeepVid</a> - <a href=\"youtube.php?act=find&search=".urlencode($_GET['search'])."&resolution=".$_GET['resolution']."\">Back</a>"; }
if($_GET['fmt']!="18") { echo "<object type=\"application/x-shockwave-flash\" style=\"width:".$resexp[0]."px; height:".$resexp[1]."px;\" data=\"http://www.youtube.com/v/".$_GET['id'].$exurl2."\"><param name=\"movie\" value=\"http://www.youtube.com/v/".$_GET['id'].$exurl2."\" /></object><br /><a href=\"http://keepvid.com/?url=".urlencode("http://www.youtube.com/watch?v=".$_GET['id'])."\">KeepVid</a> - <a href=\"youtube.php?act=find&search=".urlencode($_GET['search'])."&resolution=".$_GET['resolution']."\">Back</a>"; } }
?>
</div>
<div style="text-align: center;" id="berlioslogo">
<a href="http://developer.berlios.de/" title="BerliOS Developer Logo" onclick="window.open(this.href);return false;">
<img src="http://developer.berlios.de/bslogo.php?group_id=6135" alt="BerliOS Developer Logo" title="BerliOS Developer Logo" style="border: 0px; height: 32px; width: 124px;" /></a>
<a href="http://sourceforge.net/" title="SourceForge Logo" onclick="window.open(this.href);return false;">
<img title="SourceForge Logo" alt="SourceForge Logo" src="http://sourceforge.net/sflogo.php?group_id=195913&type=2" style="border: 0px; height: 32px; width: 124px;" /></a>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-1754608-1");
pageTracker._trackPageview();
} catch(err) {}</script></div>
</body>
</html>