Script per comparatore prezzi ilpiubasso.it

Argomenti correllati alle attività di Web Marketing (promozione, pubblicità, SEO distribuzione, vendita, assistenza alla clientela...) per il vostro negozio osCommerce

Moderatore: mod Merchant

Rispondi
ILPIUBASSO
membro Junior
membro Junior
Messaggi: 1
Iscritto il: 05/08/2009, 14:34

Script per comparatore prezzi ilpiubasso.it

Messaggio da ILPIUBASSO »

Genitli utilizzatori di OsCommerce, chi è interessato può iscrivere il proprio sito ecommerce su www.ilpiubasso.it sito per la comparazione di prezzi. Il servizio è offerto gratuitamente.

I nostri crawler prelevano quotidianamente il catalogo prodotto dei negozi iscritti attraverso uno script da installare sul vostro server.

Spero di aver fatto cosa gradita.

Allego, per chi fosse interessato, lo script da inserire nel proprio sito ecommerce :

<?php


include('includes/application_top.php');

require(DIR_WS_INCLUDES . 'database_tables.php');

function get_special_price($product_id) {
$special_query = tep_db_query("select specials_new_products_price from " . TABLE_SPECIALS . " where products_id = '" . (int)$product_id . "' and status");
$special = tep_db_fetch_array($special_query);
return $special['specials_new_products_price'];
}



//INSERIRE QUI IL NOME DEL FILE DA GENERARE
$nomefile = '/ilpiubasso.txt';

// INSERIRE QUI IL NOME DEL SITO! IMPORTANTE: SENZA SLASH FINALE!
$site_url = "http://www.miodominio.it";

// INSERIRE QUI L'ID DELLA LINGUA CHE SI VUOLE USARE
$language_id = "4";

$var=fopen(DIR_FS_CATALOG . $nomefile,'w');

$products_query_raw = "select p.products_id, p.products_image, p.products_model, p.manufacturers_id, p.products_price, p.products_quantity, p.products_tax_class_id, pd.products_name, pd.products_description, p2c.categories_id, c.parent_id, c.categories_id, cd.categories_name, m.manufacturers_id, IF(p.manufacturers_id = 0, NULL, m.manufacturers_name) AS marca, IF(s.status, s.specials_new_products_price, NULL) AS specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) AS final_price from " . TABLE_PRODUCTS . " p LEFT JOIN ".TABLE_SPECIALS." s ON p.products_id = s.products_id LEFT JOIN ".TABLE_MANUFACTURERS." m ON p.manufacturers_id = m.manufacturers_id, ".TABLE_PRODUCTS_DESCRIPTION." pd, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_CATEGORIES." c, ".TABLE_CATEGORIES_DESCRIPTION." cd where p2c.categories_id = c.categories_id AND c.categories_id = cd.categories_id AND p.products_id = p2c.products_id AND pd.products_id = p2c.products_id AND p.products_status = '1' AND pd.language_id = '$language_id' AND cd.language_id = '$language_id' ORDER BY final_price DESC";

$products_query = tep_db_query($products_query_raw);


while ($products = tep_db_fetch_array($products_query)) {


$descrizionehtml=$products["products_description"];

$descrizionehtml=strip_tags($descrizionehtml);
$descrizionehtml=substr($descrizionehtml,0,255);


// $document contiene un documento HTML.
// In questo esempio la funzione rimuove i tag HTML,
// le sezioni javascript e gli spazi bianchi.
// Inoltre si convertirà le entità HTML nella loro
// rappresentazione testuale.
$search = array ("'<script[^>]*?>.*?</script>'si", // Rimozione del javascript
"'<[\/\!]*?[^<>]*?>'si", // Rimozione dei tag HTML
"'([\r\n])[\s]+'", // Rimozione degli spazi bianchi
"'([\r])+'", // Rimozione degli spazi bianchi
"'([\n])+'", // Rimozione degli spazi bianchi
"'&(quot|#34);'i", // Sostituzione delle entità HTML
"'&(amp|#38);'i",
"'&(lt|#60);'i",
"'&(gt|#62);'i",
"'&(nbsp|#160);'i",
"'&(iexcl|#161);'i",
"'&(cent|#162);'i",
"'&(pound|#163);'i",
"'&(copy|#169);'i",
"'&#(\d+);'e"); // Valuta come codice PHP

$replace = array ("",
"",
"",
"",
"",
"",
"",
"",
"",
"",
chr(161),
chr(162),
chr(163),
chr(169),
"chr(\\1)");

$description = preg_replace($search, $replace, $descrizionehtml);

$prezzo=$products['products_price'];
if ($newprice = get_special_price($products['products_id'])) {
$prezzo=$products['specials_new_products_price'];
}

$calcolo_tasse_query = tep_db_query("select tax_rate from " . TABLE_TAX_RATES . " where tax_class_id = '".(int)$products["products_tax_class_id"]."'");
$calcolo_tasse = tep_db_fetch_array($calcolo_tasse_query);
$valore_tassa = ($prezzo/100)* ($calcolo_tasse['tax_rate']);
$prezzo= $prezzo + $valore_tassa;
if ($products['products_quantity'] > 0){
$disponibile= 'disponibile';
} else {
$disponibile= 'non disponibile';
}
$cat_arr = CatString($products['categories_id']);
$cat_arr = array_reverse($cat_arr);
$cat_list = implode(";",$cat_arr);

$categoria=$products["categories_name"];
If ($categoria!="Omaggi"){ // Qui è possibile inserire una categoria da non esportare!


$filestring=$products['products_id'].'|' . $products['products_name']. '|' . $site_url.'/images/'. $products['products_image']. '|' . $site_url.'/product_info.php?products_id='.$products['products_id']. '|' . $cat_list . '|' . $prezzo . '|' . $description . '|' . $products['manufacturers_name'] . '|'. $disponibile . '|-1'. '|' . $products['products_model'] . '<endrecord>'. "\r\n";

fwrite($var, $filestring);
echo $filestring;

}

}

fclose($var);

function CatString($cat) {
$list = array();
do{
$catsql = "SELECT c.categories_id, c.parent_id, cd.categories_name FROM ".TABLE_CATEGORIES." c, ".TABLE_CATEGORIES_DESCRIPTION." cd WHERE c.categories_id = cd.categories_id AND c.categories_id = $cat";
if($res = tep_db_query($catsql)){
//mysql_close();
$row = mysql_fetch_row($res);
$cat = $row[1];
$parent = $row[1];
array_push($list,$row[2]);
}
}while($parent != 0);
return $list;
}


?>
3dstudiomax
membro Veteran
membro Veteran
Messaggi: 520
Iscritto il: 24/06/2008, 19:45

Re: Script per comparatore prezzi ilpiubasso.it

Messaggio da 3dstudiomax »

Grazie, ottima segnalazione :D
hengkhmer
membro Junior
membro Junior
Messaggi: 8
Iscritto il: 24/06/2017, 2:50

Re: Script per comparatore prezzi ilpiubasso.it

Messaggio da hengkhmer »

I liked the arrows for their help in organizing your notes. :P







โคนัน
Rispondi