İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Php Ustalarını Bekliyorum

DamgaNet

0
İyinet Üyesi
Katılım
28 Şubat 2005
Mesajlar
188
Reaction score
0
Merhaba arkadaşlar..

Benim mp3 sitem var ve down.php dosyası var dosyayı indir dedigimde bu dosyaya yönlendiriyor ve yükleme başlıyor yükleme adresini ve başka siteden yükmeme yapamaması için koruma dosyası down.php dosyası ve ben bu koda popup açtırmak istiyorum ama kod ekledigimde yükleme yapmıyor pop açılıyor ve sonra php hataları veriyor yardımlarını bekliyorum teşekkürler...

Kodlar :


<?php

include("db.php");
$remd=explode("/",$HTTP_REFERER);

if ($remd[2] != "www.muzikara.com" && $remd[2] != "muzikara.com" && $remd[2] != "muzikara.com." && $remd[2] != "www.muzikara.com.")
{
Header("Location: http://www.muzikara.com");
}
else
{
}
dbconnect();


$sql=mysql_query("select * from mp3 where id=".$_GET[no]."");

if (mysql_num_rows($sql)) {
while( $mp3_values = mysql_fetch_array($sql)){

if ($mp3_values["yerliyabanci"]=="ybnc"){
$dil="ybnc";
}
else{
$dil="yerli";
}



$url = "arsiv/".$dil."/".$mp3_values["dosyaadi"];
$down2=$mp3_values["download"]+1;
$sql3 = mysql_query("UPDATE mp3 set download = '".$down2."' where id=".$_GET[no]."");
}
}






dl_file($url);

function dl_file($file){

//First, see if the file exists

if (!is_file($file)) { die("<b>404 File not found!</b>"); }

//Gather relevent info about file
$len = filesize($file);
$filename = basename($file);
$file_extension = strtolower(substr(strrchr($filename,"."),1));

//This will set the Content-Type to the appropriate setting for the file
switch( $file_extension ) {
case "pdf": $ctype="application/pdf"; break;
case "exe": $ctype="application/octet-stream"; break;
case "zip": $ctype="application/zip"; break;
case "doc": $ctype="application/msword"; break;
case "xls": $ctype="application/vnd.ms-excel"; break;
case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
case "gif": $ctype="image/gif"; break;
case "png": $ctype="image/png"; break;
case "jpeg":
case "jpg": $ctype="image/jpg"; break;
case "mp3": $ctype="audio/mpeg"; break;
case "wav": $ctype="audio/x-wav"; break;
case "mpeg":
case "mpg":
case "mpe": $ctype="video/mpeg"; break;
case "mov": $ctype="video/quicktime"; break;
case "avi": $ctype="video/x-msvideo"; break;

//The following are for extensions that shouldn't be downloaded (sensitive stuff, like php files)
case "php":
case "htm":
case "html":
case "txt": die("<b>Cannot be used for ". $file_extension ." files!</b>"); break;

default: $ctype="application/force-download";
}

//Begin writing headers
ob_start();
header("Pragma: public");

header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: public");
header("Content-Description: File Transfer");

//Use the switch-generated Content-Type
header("Content-Type: $ctype");

//Force the download
$header="Content-Disposition: attachment; filename=".$filename.";";
header($header );
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".$len);
ob_end_flush();

@readfile($file);
exit;
}




?>
 

graf von beelzebub

0
İyinet Üyesi
Katılım
14 Mart 2005
Mesajlar
274
Reaction score
0
esasta sorunun tam olarak php ile alakası yok, ama muhtemelen sorun, dl sayfasında header'lar tarafıdnan content-type belirlenirken, bu islemden once senin pop-up gosterecek kodu icerige basmandan dolayıdır.
sorunu eksik anlatmıssın, ne tarz bi hata verdigini belirtmemissin.
yani istedigin eger referer string'i senin sitense dl yaptır, degilse popup acmı yoksa her halukarda popup actır ama referer senin siten degilse dl yaptırma mı
eger 1. siyse izleyecegin yol:
DOWNLOAD.PHP
============
- referer bilgisini al
- eger senin sitenden geliyorsa veritabanından istenilen mp3'un bilgilerini al, header'lar ile content type ve content-size'ı belirle, dosyayı orjinal "yolundan" oku ve parca parca dosay bitene kadar bas, veya scriptin yaptıgı adımlar herneyse bu asamada...
- eger dl yapacak kisi senin sitenden gelmiyorsa direk pop-up kodunu bas.

2.siyse, 2 tane ayrı kod kullanman gerekecektir, ilk sayfada direk pop-up ı bastırıp, 2. sayfaya yonlendirmen ve bu 2. sayfada yine referer check yapıp dl'u baslatman veya baslatmamak.
 

DamgaNet

0
İyinet Üyesi
Katılım
28 Şubat 2005
Mesajlar
188
Reaction score
0
Her koşulda açtırmak istiyorum bunun için yönlendirme yapmam lazım sanırım
 

hukuki

0
İyinet Üyesi
Katılım
19 Eylül 2003
Mesajlar
109
Reaction score
3
<script language="JavaScript">
<!--
if (self == top) {
self.location.href = 'http://www.muzikara.com';
}
//-->
</script>
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst