cendaprnda Posted November 19, 2010 Share Posted November 19, 2010 Ahoj všem,chtěl bych podpořit nějakým mrzkým penízem zbozi.cz, ale ne zas nějak moc . Chtěl bych proto změnit svůj feed pro zbozi.cz tak, aby všechny produkty byly TOLLFREE 1 a pouze pár aby bylo zpoplatněno. Celkme to funguje, nicméně feed mi vždy vyhodí chybu na uplně stejném místěChrome hlásíerror on line 1140 at column 17: xmlParseEntityRef: no nameMozila pak Chyba parsování XML: Dokument není dobře zformátovánAdresa: http://www.i-hrackarstvi.cz/zbozi_test.phpČíslo řádku 1140, sloupec 17: Blok & Blok 5 family-----------------------^Tato chyba se pak zobrazuje i když vymažu přidané echo, které jsem do scriptu přidal . Jediné kdy opět script začne fungovat je přehrání scriptem stávajícím. K editaci používám PSPAD. Má někdo nápad proč to blbne ? Případně jak řešíte položku TOLLFREE na zbozi.cz vy ?Script originál <?php $shopUrl = 'www.xxxx.cz'; $noShowCategory = "7,8,9,69,70,71,72,73,74,75,76,77,78,79"; $cfgFile = dirname(__FILE__) . '/config/settings.inc.php'; if (!file_exists($cfgFile)) { die('Skript musi byt umisten v rootu prestashopu v config/settings.inc.php musi byt nastaveni databaze.'); } require_once($cfgFile); $db = @MySQL_Connect(_DB_SERVER_, _DB_USER_, _DB_PASSWD_); if (!$db) { die('Nemohu se spojit s databazi.'); } MySQL_Select_DB(_DB_NAME_, $db); MySQL_Query("SET NAMES 'utf8'"); $prefix = "ps_"; header("Content-Type: text/xml"); echo '<?xml version="1.0" encoding="utf-8"?>'; ?> <?php echo "\n\n"; $res = MySQL_Query(" SELECT p.id_product, p.quantity, p.price, p.reduction_price, p.reduction_percent, p.reduction_from, p.reduction_to, pl.name, pl.description_short, pl.link_rewrite, i.id_image FROM {$prefix}product p JOIN {$prefix}product_lang pl USING(id_product) JOIN {$prefix}image i USING(id_product) WHERE i.cover = 1 AND NOT (SELECT COUNT(*) FROM {$prefix}category_product cp WHERE cp.id_product = p.id_product AND cp.id_category IN($noShowCategory)) ORDER BY p.id_product", $db); $currentDate = date('Y-m-d'); while ($row = MySQL_Fetch_Assoc($res)) { $desc = strip_tags(html_entity_decode($row['description_short'], ENT_COMPAT, 'utf-8')); if ($result['reduction_from'] == $result['reduction_to'] || ($result['reduction_from'] <= $currentDate && $currentDate <= $result['reduction_to'])) { if ($row['reduction_price'] && $row['reduction_price'] > 0) { if ($row['reduction_price'] >= $row['price']) { $reduction = $row['price']; } else { $reduction = $row['reduction_price']; } } elseif ($row['reduction_percent'] && $row['reduction_percent'] > 0) { if ($row['reduction_percent'] >= 100) { $reduction = $row['price']; } else { $reduction = $row['price'] * $row['reduction_percent'] / 100; } } } echo "\n"; echo "\t" . mb_substr($row['name'], 0, 64, 'utf-8') ."\n"; echo "\t" . mb_substr($desc, 0, 512, 'utf-8') . "\n"; echo "\thttp://" . $shopUrl . "/" . $row['id_product'] . "-" . $row['link_rewrite'] . ".html\n"; echo "\tnew\n"; echo "\t" . ($row['quantity'] > 0 ? "0" : "73") . "\n"; echo "\thttp://" . $shopUrl . "/img/p/" .$row['id_product'] . "-" . $row['id_image'] . "-large.jpg\n"; echo "\t" . round($row['price']-$reduction/1.20) . "\n"; echo "\n"; } echo "\n"; ?> upravenyjen přidán řádek echo "\t" . ($row['quantity'] = 0 ? "1" : "0") . "\n"; Vygeneruje se cca 1000 položek a pak vyhodí chybu. Protože v php umím prdlajs, tak sem chtěl využít, toho, že dodavatele mám u všeho zboží jako 0 a pomocí id_supplier (namísto quantity) bych si jen definoval zda se má zobrazovat nebo ne. Podporovat chci třeba jen 10 ks zboží.Budu rád za každou radu, nebo nápad jak jinak vyřešit v xml parametr TOLFREEZdeněk Link to comment Share on other sites More sharing options...
WebCEO Posted December 10, 2010 Share Posted December 10, 2010 To mě mrzí, že tu není odpověď. Na Heuréce v pohodě TOLL odklikáš jak chceš, ale na podrpoře Zboží mi řekli, že si to musím nastavit v administraci e-shopu. V Prestě to ale není, takže jediné co zbývá je tak jak popisuješ. Nechce se mi platit za kliknutí na produkty, které stojí pár korun, ale je to otázka, třeba se to vyplatí z dlouhodobého hlediska. Nevím. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now