Помощь Повторение записи с одним ID

Статус
В этой теме нельзя размещать новые ответы.

LaEDGE

Создатель
Регистрация
24 Июл 2009
Сообщения
27
Реакции
0
Здравствуйте, экспортирую в эксель список заказов виртуемарт, по средством такого кода:


При этом все прекрасно работало до недавнего момента, сейчас же при экспорте возникают одинаковые строки, т.е. одна и та же запись дублируется, с чем это может быть связано и как пофиксить?

Заранее благодарен за помощь
 
Возможно тут проблема в цикле - "while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {$res[] = $line;}".
Дальше у тебя простой цикл for, который опирается на количество полученных данных из функции, так что там не дублирует.

Попробуй просто проверить, что вернула функция - print_r($row);, и если там будет дубляж, то однозначно надо копать функцию.
 
Действительно, в цикле while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {$res[] = $line;} выводятся дубликаты, но с чем это может быть связано, учитывая, что такой же точно скрипт экспортирует товары и дубликатов там нет
 
Не могу по этому поводу не чего сказать, я не большой спец в пхп и мускульных запросах. Возможно, есть какая ошибка в этой строке цикла, возможно в базе заказы продублированы, возможно запрос к базе данных с ошибкой.

Сказать честно, такого вида получения данных из базы для джумлы я не встречал, обычно это делается встроенными средствами, типа такого:
PHP:
$query = "
SELECT * FROM jos_vm_orders
LEFT JOIN jos_vm_order_item  ON  jos_vm_order_item.order_id = jos_vm_orders.order_id
LEFT JOIN jos_vm_product ON jos_vm_product.product_id = jos_vm_order_item.product_id
LEFT JOIN  jos_vm_product_category_xref ON jos_vm_product_category_xref.product_id = jos_vm_order_item.product_id
LEFT JOIN jos_vm_order_payment ON jos_vm_order_payment.order_id = jos_vm_order_item.order_id
LEFT JOIN jos_vm_user_info ON jos_vm_user_info.user_id = jos_vm_orders.user_id
";
$db->setQuery( $query );
$rows = $db->loadObjectList();
...
foreach ($rows as &$row) {
$i++;
if ($row[$i]['payment_method_id'] == 20) { 
...
}
}

Попробуй переделать весть твой вариант по приведённому примеру, и думаю ошиок не будет больше. Если примера не остаточно, открой любой компонент или модуль джумлы, и посмотри как там идёт получение данных из базы. Возьми к примеру получение из базы список категорий или список ещё чего, из имеющихся расширений.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху