html = (Array)$match;
}
}
}
}
function build_index($dir) {
global $counter;
// open handler for the directory
$iter = new DirectoryIterator($dir);
foreach($iter as $item) {
// make sure you don't try to access the current dir or the parent
if ($item != '.' && $item != '..') {
if( $item->isDir() ) {
// call the function on the folder
build_index("$dir/$item");
} else {
// print files
if(preg_match("/.html/is", $item->getPathname(), $match)) {
$config['url'] = $item->getPathname();
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$link = $item->getPathname();
if (!preg_match("/artistlist/", $link) and !preg_match("/_/", $link) or preg_match("/_1\./", $link)) {
$counter++;
$artist = '';
$title = '';
$albumid = 0;
$boxset = '';
$boxsetid = 0;
$boxsetindex = 0;
$year = 0;
$count = 0;
$format = '';
$genre = '';
$playingtime = '';
$artist = preg_replace('/[\r\n]/', "", $grab->html[1]);
$artist = preg_replace('/[\s]{2}/', "", $artist);
$artist = htmlspecialchars_decode($artist);
$artist = mysql_real_escape_string($artist);
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$title = htmlspecialchars_decode($grab->html[1]);
$title = mysql_real_escape_string($title);
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$albumid = $grab->html[1];
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$boxset = htmlspecialchars_decode($grab->html[1]);
$boxset = mysql_real_escape_string($boxset);
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$boxsetid = $grab->html[1];
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$boxsetindex = $grab->html[1];
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$year = $grab->html[1];
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$count = $grab->html[1];
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$format = htmlspecialchars_decode($grab->html[1]);
$format = mysql_real_escape_string($format);
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$genre = htmlspecialchars_decode($grab->html[1]);
$genre = mysql_real_escape_string($genre);
}
$config['start_tag'] = "";
$config['end_tag'] = "";
$grab = new grabber;
$grab->grabhtml($config['url'], $config['start_tag'], $config['end_tag']);
if($grab->html[1]!='') {
$playingtime = htmlspecialchars_decode($grab->html[1]);
$playingtime = mysql_real_escape_string($playingtime);
}
if(($counter % 1000) == 0) {echo $counter . "\r\n";}
$sql = "insert into MusicIndex (artist, title, albumid, boxset, boxsetid, boxsetindex, year, count, format, genre, playingtime, link)
values ('$artist', '$title', $albumid, '$boxset', $boxsetid, $boxsetindex, $year, $count, '$format', '$genre', '$playingtime', '$link')";
mysql_query($sql);
if(mysql_error()) {echo mysql_error() . "\r\n" . $sql . "\r\n";}
if($year) {
$sql = "insert into Years (year) values ($year)";
mysql_query($sql);
}
if($genre) {
$sql = "insert into Genres (genre) values ('$genre')";
mysql_query($sql);
}
}
}
}
}
}
}
}
include "indexConnection.inc";
$connection = mysql_connect($server, $username, $password);
$sql = "use " . $database;
if (!mysql_query($sql, $connection)) die("Databank bestaat niet.");
$sql = "truncate table MusicIndex";
mysql_query($sql);
$sql = "truncate table Years";
mysql_query($sql);
$sql = "truncate table Genres";
mysql_query($sql);
echo "job begins\r\n";
build_index("../../music/collection");
mysql_close($connection);
echo $counter . "\r\n";
echo "job is ready";
?>