• 21-03-2009, 14:19:40
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba arkadaşlar ben ftp ye dosya upload yapmak istiyorum.
    Ama sadece mp3 uzantılarını yüklemesini istiyorum.

    $dosyatipi = $_FILES["dosya"]["type"];
    
    if($dosyatipi!="audio/mp3"){
    echo "<center>HATA !<BR>Yüklemeye çalıştığınız dosya<br>Mp3 dosyası değil<br>
    Yükyeleyebileceğiniz dosya formatı .mp3 uzantılı olmalıdır";
    
    }else{
    UPLOAD
    }
    Böyle bişey yaptım ama mp3 uzantılarınında hata veriyor.
    Yani hata kodunu yazdırıyor ekrana.
    Hatam nerde arkadaşlar.:S
  • 21-03-2009, 15:19:45
    #2
    Birde şöyle dener misin,

    $file_name = $_FILES['dosya']['name'];
    	$file_name = str_replace(' ', '_', $file_name);
    $uzanti = strrchr($file_name,'.'); 
    $dosyauzantisi = ".mp3";
    if (!strtolower($uzanti),$dosyauzantisi) {
    echo "Dosya uzantınız sadece .mp3 olabilir";
    } else {
    UPLOAD
    }
  • 21-03-2009, 15:26:02
    #3
    audio/mp3
    yerine
    audio/mpeg
    denermisin ?
  • 21-03-2009, 15:35:32
    #4
    Olmadı arkadaşlar.
    Kodlar bu bide siz bakar mısınız?

    <?php
    $kaynak = $_FILES["dosya"]["tmp_name"];
    $dosyaadi = $_FILES["dosya"]["name"];
    $dosyatipi = $_FILES["dosya"]["type"];
    $dboyut	= $_FILES["dosya"]["size"];
    $hedef = 	"mp3ler";
    
    $uzanti	= substr($dosyaadi, -4);
    
    
    $yeniad = substr(md5(uniqid(rand())), 0,10);
    
    $yenimp3 = $yeniad.$uzanti;
    
    if($dosyatipi!="audio/mp3"){
    echo "HATA";
    
    }else{
    
    	$yukle = move_uploaded_file($kaynak,$hedef.'/'.$yenimp3);
    	
    	if($yukle){
    	echo "<center>Dosya başarıyla yuklendi<br></center>";
    	
    	}else{
    	echo "<center>Dosya Yuklenemedi<br></center>";
    	
    	}
    	
    echo "Dosyanın Geldiği yer : ".$kaynak."<br>";
    echo "Dosyanın adı : ".$dosyaadi."<br>";
    echo "Dosyanın tipi : ".$dosyatipi."<br>";
    echo "Dosyanın boyutu :".$dboyut." byte. Boyutunda<br>";
    }
    
    ?>
  • 21-03-2009, 15:39:54
    #5
    <?php
    $kaynak = $_FILES["dosya"]["tmp_name"];
    $dosyaadi = $_FILES["dosya"]["name"];
    $dosyatipi = $_FILES["dosya"]["type"];
    $dboyut = $_FILES["dosya"]["size"];
    $hedef = "mp3ler";
    
    $uzanti = substr($dosyaadi, -4);
    
    
    $yeniad = substr(md5(uniqid(rand())), 0, 10);
    
    $yenimp3 = $yeniad . $uzanti;
    
    if ($dosyatipi != "audio/mp3")
    {
        echo "HATA";
        echo "Gönderdiginiz Dosyanin Tipi : ".$dosyatipi; //debug
    
    } else
    {
    
        $yukle = move_uploaded_file($kaynak, $hedef . '/' . $yenimp3);
    
        if ($yukle)
        {
            echo "<center>Dosya başarıyla yuklendi<br></center>";
    
        } else
        {
            echo "<center>Dosya Yuklenemedi<br></center>";
    
        }
    
        echo "Dosyanın Geldiği yer : " . $kaynak . "<br>";
        echo "Dosyanın adı : " . $dosyaadi . "<br>";
        echo "Dosyanın tipi : " . $dosyatipi . "<br>";
        echo "Dosyanın boyutu :" . $dboyut . " byte. Boyutunda<br>";
    }
    ?>
    bu kodu denermisin, dosyatipi'nin dogrulamasini debugg edelim. hata verdigi yerde senin gönderdigin dosyanin tipi yazacak.. oradan anlayabilirsin
  • 21-03-2009, 15:41:41
    #6
    HATAGönderdiginiz Dosyanin Tipi : yazdı ama uzantıyı yazmadı ekrana hocam?:s
  • 21-03-2009, 15:42:53
    #7
    Montrey adlı üyeden alıntı: mesajı görüntüle
    HATAGönderdiginiz Dosyanin Tipi : yazdı ama uzantıyı yazmadı ekrana hocam?:s
    uzantiyi yazmaz dosya tipini yazar.

    audio/mpeg

    gibi. ne yazdi dosya tipi olarak ?
  • 21-03-2009, 15:44:26
    #8
    Hiç birşey yazmadı hocam.:s
    HATAGönderdiginiz Dosyanin Tipi : böyle yazdı kaldı.
  • 21-03-2009, 15:49:05
    #9
    formda kullandigin file inputun adi ne ?