Сваляне от vbox

alex95_bg_2

Registered
Мисля, че скрипта и начина ви е познат но реших да пусна тема, ако ще е полезен на някой :)

Код:
<?php 
if (isset($_GET['source'])) {
show_source(__FILE__); 
exit;
}
if (!isset($_POST['submit'])) : //ако не е изпратена формата я показва ?>
Линка:<br>
Пример: http://vbox7.com/play:bda10ded<br />
<form method='post' action=''>
<input type='text' name='video' class='textbox' size='30'/>
<input type='submit' name='submit'value="Давай!" class="button">
</form>
<a href="?source">Виж php сорса</a>
<?php
endif; //формата

	if(isset($_POST['submit']) AND !empty($_POST['video'])){
//if(!eregi("vbox7", $_POST['video']) OR !eregi("zazz", $_POST['video'])) { echo "Това е сваляне само от vbox7/zazz !"; exit; }
$idto = explode(':',$_POST['video']); //взимаме id-то (това, което е след play:
$dira = substr($idto[2],0,2); //разделяме id-то на две части - първите две букви и остатъка
while ($i < 9) {
$i++;
$url="http://media0".$i.".vbox7.com/s/".$dira."/".$idto[2].".flv"; //така изглежда адреса
if (@fopen($url,"r")) {
echo "<a href=\"".$url."\">".$url."</a>"; //даваме линк към намереното клипче
$done = "true"; //беше намерено клипче
break; //спираме цикъла

} //if - нацели ли клипчето
} //while - цикъла
if (!$done) { echo "Нямаше намерен клип с такъв адрес!"; } //не е зададена променливата
	} //if - изпратена е формата

?>

добавил съм преглед на сорса на скрипта
ако не го искате махнете
Код:
if (isset($_GET['source'])) {
show_source(__FILE__); 
exit;
}

демо:
http://alexsoft.homeip.net/dev/vbox/vbox.php
демо на сорса:
http://alexsoft.homeip.net/dev/vbox/vbox.php?source
 
А можеш ли да го направиш като цъкна Давай! направо да ми дава .flv-то за download..Щото после тряя цъкам линк и по бързо става направо да ти го дава за доунлоад.
 
Код:
<?php
if (isset($_GET['source'])) {
show_source(__FILE__); 
exit;
}
if (!isset($_POST['submit'])) : //ако не е изпратена формата я показва ?>
Линка:<br>
Пример: http://vbox7.com/play:bda10ded<br />
<form method='post' action=''>
<input type='text' name='video' class='textbox' size='30'/>
<br />Свали го автоматично: <input type="checkbox" name="svali" value="true" checked><br />
<input type='submit' name='submit'value="Давай!" class="button">
</form>
<a href="?source">Виж php сорса</a>
<?php
endif; //формата

	if(isset($_POST['submit']) AND !empty($_POST['video'])){
$download = $_POST['svali'];
//if(!eregi("vbox7", $_POST['video']) OR !eregi("zazz", $_POST['video'])) { echo "Това е сваляне само от vbox7/zazz !"; exit; }
$idto = explode(':',$_POST['video']); //взимаме id-то (това, което е след play:
$dira = substr($idto[2],0,2); //разделяме id-то на две части - първите две букви и остатъка
while ($i < 9) {
$i++;
$url="http://media0".$i.".vbox7.com/s/".$dira."/".$idto[2].".flv"; //така изглежда адреса
if (@fopen($url,"r")) {

if ($download) {
header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=".basename($url));
}

echo "<a href=\"".$url."\">".$url."</a>"; //даваме линк към намереното клипче
$done = "true"; //беше намерено клипче
break; //спираме цикъла

} //if - нацели ли клипчето
} //while - цикъла
if (!$done) { echo "Нямаше намерен клип с такъв адрес!"; } //не е зададена променливата
	} //if - изпратена е формата

?>
 
ако може да направиш демото да работи и да е певедено на БЪЛГАРСКИ език ще е добре :wink:
 
Първо има бъгове в тоя новия код:

Код:
Warning: Cannot modify header information - headers already sent by (output started at /home/***/public_html/***.php:2) in /home/*/public_html/*.php on line 30

Warning: Cannot modify header information - headers already sent by (output started at /home/***/public_html/***.php:2) in /home/*/public_html/*.php on line 31

Warning: Cannot modify header information - headers already sent by (output started at /home/***/public_html/***.php:2) in /home/*/public_html/*.php on line 32

Също така това "Свали го автоматично:" и да слагаш Отметка и да махаш пак не става :) иначе показва линка за Download на файла като цъкна Давай. Чакам следващата версия (ако има такава на тоя код) :)
 
за демото - цял ден бях без нет
хмм.. къде го пробваш?
пробвах го на апачито ми, на хост-бг.инфо, и на icn и работеше

промених някой дребни работи:
Код:
<?php 
if (isset($_GET['source'])) {
show_source(__FILE__);
exit;
}
if (!isset($_POST['submit'])) : //ако не е изпратена формата я показва ?>
<title>Сваляне от vbox/zazz</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
Линка:<br>
Пример: http://vbox7.com/play:bda10ded<br />
<form method='post' action=''>
<input type='text' name='video' class='textbox' size='30'/>
<br />Свали го автоматично: <input type="checkbox" name="svali" value="true" checked><br /><br />
<input type='submit' name='submit'value="Давай!" class="button">
</form>
<a href="?source">Виж php сорса</a>
<?php
endif; //формата

	if(isset($_POST['submit']) AND !empty($_POST['video'])){
$download = $_POST['svali'];
//if(!eregi("vbox7", $_POST['video']) OR !eregi("zazz", $_POST['video'])) { echo "Това е сваляне само от vbox7/zazz !"; exit; }
$idto = explode(':',$_POST['video']); //взимаме id-то (това, което е след play:
$dira = substr($idto[2],0,2); //разделяме id-то на две части - първите две букви и остатъка
while ($i < 9) {
$i++;
$url="http://media0".$i.".vbox7.com/s/".$dira."/".$idto[2].".flv"; //така изглежда адреса
if (@fopen($url,"r")) {

if ($download) {
header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=".basename($url));
}

echo "<a href=\"".$url."\">".$url."</a>"; //даваме линк към намереното клипче
$done = "true"; //беше намерено клипче
break; //спираме цикъла

} //if - нацели ли клипчето
} //while - цикъла
if (!$done) { echo "Нямаше намерен клип с такъв адрес!"; } //не е зададена променливата
	} //if - изпратена е формата
?>

НО ако го сложиш с енкодинг utf-8 той ще изпрати допълнителни хедъри в началото на скрипта
за това дава грешки
 
@Alex95 тоя код в сайта ти го пробвах и стана ,незнам дали е същия като тоя тук дето си го написал..Тея дребни неща дето си ги променил сигорно са свършили работата и стана всичко е точно бачка си option-а за веднагическо download или линк направо xP Your My Hero. :?:
 
Код:
<title>Сваляне от vbox/zazz</title>
това правеше проблем
бях достатъчно тъп да го сложа в началото на кода, като забравих че за авто-даунлоуда изпращам хедъри :)

иначе да - кода при мен е същия, но с един щедър коментар в началото :P
 
Има един проблем. Когато завърти цикъла на няйкой сървари, ако ненамери файла, дава erorr 404 и if-а дава true. Някакви идей как може да се избегне това?
 
мда
вече са с много повече медии и им изгубих бройката :lol:

трябва да се смени
Код:
while ($i < 9) {
с броя медии сега :)
 
Всеки ден нови медии :) Но мисълта ми беше друга. Когато завърти цикъла минава през media01 и там ненамира нищо, но на media02 зарежда error 404 страница и цикъла спира и неможе реално да ми намери адреса на файла. Може ли някак да се конкретизира условието да не е ако изобщо отвори нещо а да е конкретно за файла?
 
Повредата явно е в моя телевизор :) Направих го да търси във всички медии и работи но като отделен скрип. Когата го внедря в моята система в mysql записва винаги media02 и вече цял ден си блускам главата от къде може да е проблема.
 
На localhost работи идеално, но на хостинга като го кача спира на media02 (вероятно понеже зарежда 404 error). Предполагам, че е нещо от настройките на php-то. Някой има ли представа от какво може да е и евентуално как мога да го оправя? :|
 

Back
Горе