**** ImportXmlInfo.php *****
<?php
set_time_limit(0);
ini_set('memory_limit', '1024M');
include_once('../db.php');
include_once(DOC_ROOT.'/include/func.php');
mysql_query("TRUNCATE screenshots_list");
mysql_query("TRUNCATE pages");
mysql_query("TRUNCATE page_screenshots");
$xmlstr = file_get_contents('t_info.xml');
$xml = new SimpleXMLElement($xmlstr);
foreach ($xml->template as $item) {
//print_r($item);
$sql = sprintf("REPLACE INTO templates SET id = %d, state = %d, price = %d, exc_price = %d, inserted_date = '%s', update_date = '%s', downloads = %d, type_id = %d, type_name = '%s', is_flash = %d, is_adult = %d, width = '%s', author_id = %d, author_nick = '%s', package_id = %d, is_full_site = %d, is_real_size = %d, keywords = '%s', sources = '%s', description = '%s', software_required = '%s'", $item->id, $item->state, $item->price, $item->exc_price, $item->inserted_date, $item->update_date, $item->downloads, $item->template_type->type_id, $item->template_type->type_name, $item->is_flash, $item->is_adult, $item->width, $item->author->author_id, $item->author->author_nick, $item->package->package_id, $item->is_full_site, $item->is_real_size, $item->keywords, $item->sources, $item->description, $item->software_required);
//echo '<br>'.$sql;
mysql_query($sql);
//print_r($item->screenshots_list->screenshot);
foreach ($item->screenshots_list->screenshot as $scr) {
$main = (!empty($scr->main_preview)) ? 1 : 0;
$small = (!empty($scr->small_preview)) ? 1 : 0;
insert_data($item->id, 'screenshots_list', 0, $scr->uri, $scr->filemtime, $main, $small);
}
foreach ($item->styles->style as $st) {
insert_data($item->id, 'styles', $st->style_id, $st->style_name);
}
foreach ($item->categories->category as $cat) {
insert_data($item->id, 'categories', $cat->category_id, $cat->category_name);
}
foreach ($item->sources_available_list->source as $so) {
insert_data($item->id, 'sources_available_list', $so->source_id, '');
}
foreach ($item->software_required_list->software as $soft) {
insert_data($item->id, 'software_required_list', $soft->software_id, '');
}
//print_r($item->pages->page);
if (!empty($item->pages->page)) {
foreach ($item->pages->page as $p) {
mysql_query(sprintf("REPLACE INTO pages SET tpl_id = %d, name = '%s', id = NULL ", $item->id, $p->name));
$page_id = mysql_insert_id();
if (!empty($p->screenshots->scr)) {
foreach ($p->screenshots->scr as $psc) {
$href = (!empty($psc->href)) ? (string)$psc->href : '';
mysql_query(sprintf("REPLACE INTO page_screenshots SET page_id = %d, description = '%s', uri = '%s', scr_type_id = %d, width = %d, height = %d, href = '%s'", $page_id, $psc->description, $psc->uri, $psc->scr_type_id, $psc->width, $psc->height, $href));
}
}
}
}
}
?>
**** db.php *****
<?php
define("DB_NAME", "---");
define("DB_USER", "----");
define("DB_PASSWORD", "----");
define("DB_SERVER", "localhost"); // most of the time it's localhost
define("AFF_ID", '-----');
define("AFF_PW", '-----');
define("PR_CODE", '-----');
define("DOC_ROOT", dirname(__FILE__));
define("THUMB_FOLDER", '/img/small/');
define("MAIN_FOLDER", '/img/main/');
define("INSTALL_FOLDER", ''); // if you install the site above the root, for example "/foldername" or empty!
define("SEARCH_PAGE", INSTALL_FOLDER.'/Example.php');
define("ADMIN_MAIL", 'mwbaggs@totaleeyou.com');
define("HOMEPAGE", 'http://www.totaleeyoustore.com/');
$conn_str = mysql_connect(DB_SERVER, DB_USER, DB_PASSWORD);
mysql_select_db(DB_NAME, $conn_str);
?>
***** func.php ******
<?php
function insert_data($tpl, $table, $id_val, $str_val, $data = '', $extra1 = 0, $extra2 = 0) {
switch ($table) {
case 'categories':
$sql = sprintf("REPLACE INTO categories SET tpl_id = %d, category_id = %d, category_name = '%s'", $tpl, $id_val, $str_val);
break;
case 'screenshots_list':
$sql = sprintf("INSERT INTO screenshots_list SET tpl_id = %d, uri = '%s', filemtime = '%s', main_preview = %d, small_preview = %d", $tpl, $str_val, $data, $extra1, $extra2);
break;
case 'software_required_list':
$sql = sprintf("REPLACE INTO software_required_list SET tpl_id = %d, software_id = %d", $tpl, $id_val);
break;
case 'sources_available_list':
$sql = sprintf("REPLACE INTO sources_available_list SET tpl_id = %d, source_id = %d", $tpl, $id_val);
break;
case 'styles':
$sql = sprintf("REPLACE INTO styles SET tpl_id = %d, style_id = %d, style_name = '%s'", $tpl, $id_val, $str_val);
break;
}
//echo $sql;
mysql_query($sql);
}
function test_image($path) {
@$info_img =getimagesize($path);
if ($info_img['mime'] == 'image/jpeg') {
return true;
} else {
return false;
}
}
function create_Local_ImgPath($url) {
$url_parts = parse_url($url);
$file_name = basename($url_parts['path']);
$haystack = $file_name;
$needle = '-';
$id = substr($haystack, 0, strpos($haystack, $needle));
$in_folder = ($id >= 100) ? floor($id/100)."00/" : "0/";
return array('file'=>$file_name, 'dir'=>$in_folder, 'full'=>$in_folder.$file_name);
}
function copy_thumbs($url, $folder) {
$tPath_array = create_Local_ImgPath($url);
$dest_folder = $folder.$tPath_array['dir'];
$dest = $dest_folder.$tPath_array['file'];
if (!test_image($dest)) {
if (!is_dir($dest_folder)) {
umask(0);
mkdir($dest_folder, 0755);
}
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
$data = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
if ($info['content_type'] == 'image/jpeg') {
$handle = fopen($dest, 'w');
fwrite($handle, $data);
fclose($handle);
chmod($dest, 0644);
if (test_image($dest)) {
return true;
} else {
return false;
}
} else {
return false;
}
} else {
return true;
}
}
?>