Webstatt.org - Community seit 2006 - 2012 (2024?)

ordnerstruktur auflösen

user-329
10.04.2007 11:57

hey,

kennt einer von euhc ein programm das die ordnerstruktu auflöst?
also ich habe immer:

"Interpret/Album/Song.mp3"

hätte das aber jetzt gerne aufgelöst und nurnoch "Song.mp3" im Hauptordner halt.. gibts dafür ein Programm oder muss ich das mit PHP lösen? Ich dnek mal mit php wird es jedoch sehr langsam..

lg

tnY

user-303
10.04.2007 12:54

php ist nicht langsam

Avatar user-349
10.04.2007 12:58

Wenn die Ordnertiefe immer gleich ist kannst du sie ja kopieren bzw. verschieben (xcopy, etc.) ("*/*/*.mp3"zwinkern ?!

Avatar user-182
10.04.2007 15:11

da ich immer viele dateien von gewissen quellen bekomme, habe ich mir son php-dingen geschrieben, dass mir alle datein sortiert. alle mp3s liegen erst in einem ordner und werden dann von dem php-script ausgelesen (id3-tags) und dann in den ordner MP3-Archiv/<ersten zwei buchstaben des artists>/<artist> - <titel>.mp3 verschoben.
und dann gibts noch so kleinigkeiten wie md5-vergleich und so..flass mal was doppelt ist. das ganze sieht so aus (ist aba unordnetlich gecodet.. schon sau alt!):

<?
set_time_limit(345345);
$von = 'U:\\Musik\\unsortiert\\';
$nach = 'U:\\Musik\\MP3-Archiv\\';
$spam = array('www.goldesel...', 'goldesel...', 'war...', '_', '.mp3', 'www.hotspot...', '*', '?', '<', '>'zwinkern;
// $spam hab ich mal son bissl zensiert für webstatt ^^

define('IN_ID',true);
include('id3tag-2005-07-26/modules/class/mp3_id3v11.php'zwinkern;

/*
include('modules/class/mp3_id3v11.php'zwinkern;

$mp3_id3v11 = new mp3_id3v11();
$mp3_id3v11->load_file('C:\Musik\unsortiert\farin_urlaub_racing_team_-_zehn.mp3'zwinkern;

print_r($mp3_id3v11->get_tag());


Array
(
[title] => Zehn
[artist] => Farin Urlaub Racing Team
[album] => Zehn CDM
[year] => 2006
[comment] => www.gold.... // zensiert ^^
[track] => 1
[genre] => Rock
)
*/
echo '<pre>';

$d = dir($von);
$unlinken = array();
while(false !== ($entry = $d->read())){
$array = pathinfo($entry);
$datei_endung = strtolower($array['extension']);

if(in_array($entry, array('..', '.'zwinkern) || is_dir($entry) || $datei_endung != 'mp3'zwinkern continue;

$mp3_id3v11 = new mp3_id3v11();
$mp3_id3v11->load_file($von.$entry);
$tags = $mp3_id3v11->get_tag();

$tags['artist'] = trim($tags['artist']);
$tags['title'] = trim($tags['title']);

if(empty($tags['title']) && empty($tags['artist'])){
if(!is_array($tags)) $tags = array();
list($tags['artist'], $tags['title']) = explode(' - ', str_replace('_', ' ', $entry));
$tags['artist'] = trim($tags['artist']);
$tags['title'] = trim($tags['title']);
}

if(isset($tags) && !empty($tags['title']) && !empty($tags['artist'])){
$tags['artist'] = trim(str_replace($spam, ' ', $tags['artist']));
$tags['title'] = trim(str_replace($spam, ' ', $tags['title']));
$buchst = trim(substr($tags['artist'], 0, 2));
if(!is_dir($nach.$buchst)) mkdir($nach.$buchst);
$pfadneu = $nach.$buchst.'\\'.$tags['artist'].' - '.$tags['title'].'.mp3';
if(!file_exists($pfadneu)){
$copytrue = copy($von.$entry, $pfadneu);
if($copytrue){
$unlinken[] = $von.$entry;
echo '<span style="color:green">'.$entry.' verschoben ('.$tags['artist'].' - '.$tags['title'].'zwinkern</span><br />';
}else{
echo '<span style="color:red">'.$entry.' konnte nicht verschoben werden (dateiname?)</span><br />';
}
}else{
echo '<span style="colorüberraschtrange">'.$entry.' schon vorhanden</span>';
if($_GET['a'] == 'radikal'zwinkern $unlinken[] = $von.$entry;
else{
$file1 = md5_file($von.$entry);
$file2 = md5_file($pfadneu);
if($file1 == $file2){
$unlinken[] = $von.$entry;
echo ' <span style="colorüberraschtrange"><b>wird gelöscht</b></span>';
}
}
echo '<br />';
}
}else echo '<span style="color:red">'.$entry.' nicht verschoben (keine tags)</span><br />';

unset($mp3_id3v11);
flush();
}
$d->close();

$fp = fopen('del.bat', 'w'zwinkern;
foreach($unlinken as $f){
$f = str_replace(array('ä', 'ö', 'ü', 'Ä', 'Ü', 'Ö', 'ß', '´', '%'zwinkern, '?', $f);
fwrite($fp, 'del "'.$f."\"\r\n"zwinkern;
}
fwrite($fp, 'pause'zwinkern;
fclose($fp);
echo '<b>Löschdatei geschrieben</b>';
?></pre>


das löschen mit ner batchdatei daher, da ich mit meinem xampp keine rechte dazu habe und zu faul bin das umzustellen (wie auch immer das geh'n mag^^)

das id3-ding hab ich mal angehängt..

vll brauchts ja einer oder zumindest das system..


Franky

Seid ihr auch schon wix'r? xD
Avatar user-125
10.04.2007 18:37

faul bin das umzustellen (wie auch immer das geh'n mag^^)


Safe_Mode??

Liebe user-125y aka user-125 aka dionysos
Avatar user-182
10.04.2007 21:11

Original von user-125
faul bin das umzustellen (wie auch immer das geh'n mag^^)


Safe_Mode??


ne is aus, der sacht mit "access denied iwas..". tja, chmod hab ich noch net unter win32 ^^

Seid ihr auch schon wix'r? xD
Avatar user-182
10.04.2007 22:11

mhh..
Jinonidi Heute 00:10:40 ja
Christian Heute 00:10:48 ja hab ich dir dochj schon gesagt ^^
00:10:50 nehm nen ordner
00:10:57 wo die unterordner mit den dtaein drin sind
00:11:00 dann geh oben auf suchen
00:11:02 geb da ein *.*
00:11:06 und dann geh auf suchen
00:11:12 und schon findet der alle dateien
00:11:20 und die kannst dann einfach in einen anderen ordner verschieben
00:11:25 so würd ichs amchen
Jinonidi Heute 00:11:32 xD okay danke ihc bin dumm ^^
^^

Seid ihr auch schon wix'r? xD