Непонятная проблема
31 сообщение
#16 лет назад
Сделал я Интернет магазин вроде всё работало нормально, но както раз когда я зашел на него я заметил что некоторые товары показывает по 2 раза подряд, сразу подумал то тот кто добавлял ошибался потом заглянул в базу а там всё нормально по одному товару, помогите пожалуйста скажите в чем проблема, думаю в запросе и еше какой фактор того что записи в результате запроса дублируются???
731 сообщение
#16 лет назад
Ошибка в запросе, ошибка при выводе данных - где-то допустил логическую ошибку.
626 сообщений
#16 лет назад
Ошибка полагать что тут собрались телепаты для решения ваших проблем.
72 сообщения
#16 лет назад
Цитата ("Demiurh"):Ошибка полагать что тут собрались телепаты для решения ваших проблем.
Вот-вот

276 сообщений
#16 лет назад
Мда........ Круто.... Расставил свечи, зеркала, 10 раз ударил в бубен. Карты показали:Есть ляпа в sql запросе там не правлильно джоинится какято второстепенная таблица. Возможно дублирующаяся запись во второстепенной таблице......
Решение:
Убираешь из запроса все джоины потом по одному добавляешь.....
31 сообщение
#16 лет назад
Цитата ("voral"):Мда........ Круто.... Расставил свечи, зеркала, 10 раз ударил в бубен. Карты показали:
Есть ляпа в sql запросе там не правлильно джоинится какято второстепенная таблица. Возможно дублирующаяся запись во второстепенной таблице......
Решение:
Убираешь из запроса все джоины потом по одному добавляешь.....
ну спасибо, нострадамус..) а код я не выложил потомучто, он оч большой + еше несколько инклудов..
31 сообщение
#16 лет назад
Ничего не вышло, вот код думаю тут ошибка
if ($category) {
$db = new ps_DB;
$q = "SELECT category_id FROM category ";
$q .= "WHERE category_url='$category' ";
$db->query($q);
$db->next_record();
$category_id = $db->f("category_id");
?>-> <strong><?php $ps_product_category->navigation_list($category_id); ?></strong>
<br />
<?php
$ps_product_category->print_child_list($category_id);
?>
<br />
<?php
$list = "SELECT * FROM product, category, product_category_xref WHERE ";
$count = "SELECT count(*) as num_rows FROM product,
product_category_xref, category WHERE ";
$q = "product_category_xref.category_id='$category_id' ";
$q .= "AND category.category_id=product_category_xref.category_id ";
$q .= "AND product.product_id=product_category_xref.product_id ";
$q .= "AND product.product_parent_id='' ";
$q .= "AND product.product_publish='Y' ";
//$q .= "ORDER BY category.category_name ASC";
$q .= "ORDER BY product.product_name ASC";
$list .= $q . " LIMIT $offset, " . SEARCH_ROWS;
$count .= $q;
}
elseif ($keyword) {
echo "<TABLE WIDTH=\"100%\" ALIGN=CENTER height=\"30\" CELLSPACING=0 CELLPADDING=0 BORDER=0 class=\"MenuTable\"><TR VALIGN=TOP><TD valign=middle ALIGN=LEFT> Поиск</TD></TR></TABLE><BR>";
$list = "SELECT * FROM product, product_category_xref, category WHERE ";
$count = "SELECT count(*) as num_rows FROM product,
product_category_xref, category WHERE ";
$q = "(product.product_name LIKE '%$keyword%' OR ";
$q .= "product.product_sku LIKE '%$keyword%' OR ";
$q .= "product.product_s_desc LIKE '%$keyword%' OR ";
$q .= "category.category_name LIKE '%$keyword%' OR ";
$q .= "product.product_desc LIKE '%$keyword%'";
$q .= ") ";
$q .= "AND product.product_parent_id='' ";
$q .= "AND product.product_id=product_category_xref.product_id ";
$q .= "AND category.category_id=product_category_xref.category_id ";
$q .= "AND product.product_publish='Y' ";
//$q .= "ORDER BY category.category_name ASC";
$q .= "ORDER BY product.product_name ASC";
$list .= $q . " LIMIT $offset, " . SEARCH_ROWS;
$count .= $q;
}
244 сообщения
#16 лет назад
Это Битрикс?
1895 сообщений
#16 лет назад
SP мать вашу... sp... сколько уже соплёй прожевано и все по той той же теме....
244 сообщения
#16 лет назад
Сорри, что такое SP ?
31 сообщение
#16 лет назад
Phpshop8 Это......так может поможете а не будете тупые ответы оставлять 
1895 сообщений
#16 лет назад
Цитата ("VistaSolutions"):Сорри, что такое SP ?
:o Stored Procedure ! , тут статья есть с примером: ссылка ну и здесь тоже есть: ссылка
никак не могу понять вебщиков, когда уже начнете отделять логику от представления, скрипт от БД, неужели вам приятно все смешать в кучу?
По теме САБЖа, профайлером смотрите что идет на сервер, потом на результат, если все ок, значит ошибка в логике самого скрипта. А вообще то, лучше научитесь использовать дебагеры, для PHP есть примитивный xDebug, не ждите от него чуда, просто PHP не способно на больше по своей сути, и в него попросту не заложен внятный механизм отладки, в отличии от промышленных продуктов напр. Java, ASP.Net и т.д.
244 сообщения
#16 лет назад
Блин, сделай GROUP BY id товара