<?php
// Script by Phate191
// If php do "Maximum execution time exceeded", change the php.ini file
// set memory limit
ini_set('memory_limit', '-1');
// raw TPB file
$tpb_file = "complete";
// sql file
$sql_file = "tpb.sql";
// </br> HTML
$br = "</br>";
// read file into array
$file_array = file($tpb_file, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
print ("Open file [OK]$br\nInsert to array [OK]$br\n");
$file_row_num = count($file_array);
// open sql file
$var=fopen($sql_file,"w+");
printf ("Open $sql_file [OK]$br\n");
// sql header --- TABLE NAME: tpb
$header = "-- SQL Dump
--
-- Scripted By: Phate191
-- SQL Dump of The Pirate Bay
-- RAW file by allisfine
--
-- Version: 1.0
--
-- Table structure `tpb`
--
CREATE TABLE IF NOT EXISTS `tpb` (
`ID` double NOT NULL,
`name` text CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
`size` double NOT NULL,
`seeders` int(11) NOT NULL,
`leechers` int(11) NOT NULL,
`hash` text CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dump `tpb`
--
INSERT INTO `tpb` (`ID`, `name`, `size`, `seeders`, `leechers`, `hash`) VALUES
";
// write to file
fwrite($var, $header);
print ("Write header to $sql_file [OK]$br$br\n\nStart manipulate RAW code...$br\n");
// start with code manipulation--------
for($i=0; $i < $file_row_num; $i++){
$original = $file_array[$i];
// clean special chars --- use "htmlspecialchars_decode" to decode
$original = htmlspecialchars($original, ENT_QUOTES);
// string lengh -1
$len = strlen($original);
$tpbid = substr($original, 0, 7); // TPD ID for database
$original = substr($original, 8, $len); // eliminate ID
$reverse = strrev($original); //reverse the string for check '|'
$pos = strpos($reverse, '|'); // last '|' [reversed]
$magnetlink = substr($reverse, 0, $pos); // magnet link [reversed]
$magnetlink = strrev($magnetlink); // MAGNET LINK for database
$len = strlen($reverse);
$reverse = substr($reverse, $pos + 1, $len);
$pos = strpos($reverse, '|'); // last '|' [reversed]
$leechers = substr($reverse, 0, $pos); // leechers [reversed]
$leechers = strrev($leechers); // LEECHERS for database
$len = strlen($reverse);
$reverse = substr($reverse, $pos + 1, $len);
$pos = strpos($reverse, '|'); // last '|' [reversed]
$seeders = substr($reverse, 0, $pos); // seeders [reversed]
$seeders = strrev($seeders); // SEEDERS for database
$len = strlen($reverse);
$reverse = substr($reverse, $pos + 1, $len);
$pos = strpos($reverse, '|'); // last '|' [reversed]
$size = substr($reverse, 0, $pos); // size [reversed]
$size = strrev($size); // SIZE for database
$len = strlen($reverse);
$name = substr($reverse, $pos + 1, $len); //name [reversed]
$name = strrev($name); // NAME for database
// create the sql string
if($i == $file_row_num-1){
$sql_string = "($tpbid, '$name', $size, $seeders, $leechers, '$magnetlink');"; // if is the last row put ;
}
else{
$sql_string = "($tpbid, '$name', $size, $seeders, $leechers, '$magnetlink'),\n";
}
// write to file
fwrite($var, $sql_string);
}
print ("Manipulate code [OK]$br\n");
fclose($var); // close tpb.sql
print ("Close connection to $sql_file [OK]$br$br\n\nAll Operation are completed");
?>