Toon posts:

[php] mp3 lister/searcher

Pagina: 1
Acties:
  • 80 views sinds 30-01-2008

Verwijderd

Topicstarter
Hoi Tweakers,

ik ben bezig met een mp3 lister en nu heb ik alle mp3's in alle submappen laten listen.
kan ik dit script ook zo aan passen dat ik kan zoeken naar mp3's op mijn server ?

Greetz Erwin

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<? 
$genre = array(0 => "Blues", 1 => "Classic Rock", 2 => "Country", 3 => "Dance", 4 => "Disco", 5 => "Funk", 
   6 => "Grunge", 7 => "Hip-Hop", 8 => "Jazz", 9 => "Metal", 10 => "New Age", 
   11 => "Oldies", 12 => "Other", 13 => "Pop", 14 => "R&B", 15 => "Rap", 
   16 => "Reggae", 17 => "Rock", 18 => "Techno", 19 => "Industrial", 20 => "Alternative", 
   21 => "Ska", 22 => "Death Metal", 23 => "Pranks", 24 => "Soundtrack", 25 => "Euro-Techno", 
   26 => "Ambient", 27 => "Trip-Hop", 28 => "Vocal", 29 => "Jazz+Funk", 30 => "Fusion", 
   31 => "Trance", 32 => "Classical", 33 => "Instrumental", 34 => "Acid", 35 => "House", 
   36 => "Game", 37 => "Sound Clip", 38 => "Gospel", 39 => "Noise", 40 => "Alternative Rock", 
   41 => "Bass", 42 => "Soul", 43 => "Punk", 44 => "Space", 45 => "Meditative", 
   46 => "Instrumental Pop", 47 => "Instrumental Rock", 48 => "Ethnic", 49 => "Gothic", 50 => "Darkwave", 
   51 => "Techno-Industrial", 52 => "Electronic", 53 => "Pop-Folk", 54 => "Eurodance", 55 => "Dream", 
   56 => "Southern Rock", 57 => "Comedy", 58 => "Cult", 59 => "Gangsta", 60 => "Top 40", 
   61 => "Christian Rap", 62 => "Pop/Funk", 63 => "Jungle", 64 => "Native American", 65 => "Cabaret", 
   66 => "New wave", 67 => "Psychadelic", 68 => "Rave", 69 => "Showtunes", 70 => "Trailer", 
   71 => "Lo-Fi", 72 => "Tribal", 73 => "Acid Punk", 74 => "Acid Jazz", 75 => "Polka", 
   80 => "Folk", 81 => "Folk-Rock", 82 => "National Folk", 83 => "Swing", 84 => "Fast Fusion", 85 => "Bebob", 
   86 => "Latin", 87 => "Revival", 88 => "Celtic", 89 => "Bluegrass", 90 => "Avantgarde", 
   91 => "Gothic Rock", 92 => "Progressive Rock", 93 => "Psychedelic Rock", 94 => "Symphonic Rock", 95 => "Slow Rock", 
   96 => "Big Band", 97 => "Chorus", 98 => "Easy Listening", 99 => "Acoustic", 100 => "Humour", 
   101 => "Speech", 102 => "Chanson", 103 => "Opera", 104 => "Chamber Music", 105 => "Sonata", 
   106 => "Symphony", 107 => "Booty Bass", 108 => "Primus", 109 => "Porn Groove", 110 => "Satire", 
   111 => "Slow Jam", 112 => "Club", 113 => "Tango", 114 => "Samba", 115 => "Folklore", 
   116 => "Ballad", 117 => "Power Ballad", 118 => "Rhythmic Soul", 119 => "Free Style", 120 => "Duet", 
   121 => "Punk Rock", 123 => "A capella", 124 => "Euro-House", 125 => "Dance Hall"); 


function id3($filename = "") { 
    global $genre; 
    
    $fp = fopen($filename, "r"); 
        fseek($fp, filesize($filename) - 128); 
    $id3 = fread($fp, 128); 
    fclose($fp); 
    $arr = array(); 
    if (strtoupper(substr($id3, 0, 3)) == "TAG") { 
        $arr["song"] = trim(substr($id3, 3, 30)); 
        $arr["artist"] = trim(substr($id3, 33, 30)); 
        $arr["album"] = trim(substr($id3, 63, 30)); 
        $arr["year"] = trim(substr($id3, 93, 4)); 
        $arr["comment"] = trim(substr($id3, 97, 30)); 
        $arr["genre"] = $genre[ord($id3[127])]; 
        return $arr; 
    } else { 
        return false; 
    } 
} 

function display_size($file_size) { 
    if ($file_size >= 1073741824) { 
        $file_size = round($file_size / 1073741824 * 100) / 100 . " Gb"; 
    } elseif ($file_size >= 1048576) { 
        $file_size = round($file_size / 1048576 * 100) / 100 . " Mb"; 
    } elseif ($file_size >= 1024) { 
        $file_size = round($file_size / 1024 * 100) / 100 . " Kb"; 
    } else { 
        $file_size = $file_size . " bytes"; 
    } 
    return $file_size; 
} 

$root_dir = "/home/mp3/mp3"; 
$http_root = "https://1.2.61.88/mp3"; 

echo "<center>The MP3 Lister for ". $http_root . "/" . $subdir . "</center>\r\n";
if($subdir != "" and $subdir != NULL){ 
    $startdir=$root_dir."/".$subdir; 
} else { 
    $startdir=$root_dir; 
} 

viewdir($startdir,''); 

function viewdir($dir, $olddir){ 
    global $root_dir, $http_root, $startdir; 
    global $dircount, $filecount, $dirdeep, $filetree; 
    
    chdir($dir); 
    $d = dir($dir); 
    while($file = $d->read()) {
        if($file != ".") { 
            if($file == "..") { 
                if($file != $root_dir) { 
                    clearstatcache(); 
                } 
            } else { 
                if(is_dir($file)) { 
                    echo str_repeat(" ", $dirdeep * 4) . "<ul>\r\n"; 
                    echo str_repeat(" ", ($dirdeep * 4) + 4) . "<li><b>$file</b></li>\r\n"; 
                    $dirdeep++; 
                    
                    viewdir($dir . "/" . $file, $dir); 
                } elseif(eregi(".mp3", $file)) {
                    $realfile = $root_dir . substr($dir,strlen($root_dir)) . "/" . $file; 
                    $linkdir = $http_root . substr($dir,strlen($root_dir)) . "/" . $file; 
                    $size_of = filesize($file); 
                    $info = id3($realfile); 
                    if (!is_array($info)) { 
                       $info['song'] = substr($file, 0, strlen($file) - 4); 
                    } 

                    $tmpStr = str_repeat(" ", ($dirdeep * 4) + 4) . "<li>\r\n"; 
                    $tmpStr .= str_repeat(" ", ($dirdeep * 4) + 8) . '<a href="' . $linkdir . '">' . $info['song'] . '</a> - '. display_size($size_of) . "\r\n"; 
                    $tmpStr .= str_repeat(" ", ($dirdeep * 4) + 4) . "</li>\r\n"; 

                    echo str_repeat(" ", $dirdeep * 4) . "<ul>\r\n" . $tmpStr . str_repeat(" ", $dirdeep * 4) . "</ul>\r\n"; 
                    clearstatcache(); 

                } 
            } 
        } 
    } 

    if(strstr($olddir , $startdir) != false){ 
        $dirdeep = $dirdeep -1; 
        chdir($olddir); 
       echo str_repeat(" ", $dirdeep * 4) . "</ul>\r\n"; 
    } 

} 


?>


Wie kan mij hierbij helpen :D

  • whoami
  • Registratie: December 2000
  • Nu online
Tja, sorry hoor maar dit is redelijk kansloos.
Check dit:
Welkom in P&W -> Quickstart (update 2/10/2002)

https://fgheysels.github.io/


Dit topic is gesloten.