Opencart Kategori Olusturma Hatasi (Mysql)
-
opencarttan siteyi kurdum ustune bi tema yukluyorum (tema orjinal parasini vererek satin aldim) tema yuklendikten sonra soyle bi hata aliyorum sorunun nerden geldigini acikcasi anlayamadim.
Warning: mysqli::query(): (21000/1242): Subquery returns more than 1 row in /home//www/system/library/db/mysqli.php on line 18 Fatal error: Uncaught exception 'Exception' with message 'Error: Subquery returns more than 1 row<br />Error No: 1242<br />SELECT DISTINCT *, (SELECT GROUP_CONCAT(cd1.name ORDER BY level SEPARATOR ' > ') FROM oc_category_path cp LEFT JOIN oc_category_description cd1 ON (cp.path_id = cd1.category_id AND cp.category_id != cp.path_id) WHERE cp.category_id = c.category_id AND cd1.language_id = '1' GROUP BY cp.category_id) AS path, (SELECT DISTINCT keyword FROM oc_url_alias WHERE query = 'category_id=43') AS keyword FROM oc_category c LEFT JOIN oc_category_description cd2 ON (c.category_id = cd2.category_id) WHERE c.category_id = '43' AND cd2.language_id = '1'' in /home/www/system/library/db/mysqli.php:40 Stack trace: #0 /home/www/system/library/db.php(16): DB\MySQLi->query('SELECT DISTINCT...', Array) #1 /home/www/admin/model/catalog/category.php(200): DB->query('SELECT DISTINCT...') #2 [internal function]: ModelCatalogCategory->getCate in /home/www/system/library/db/mysqli.php on line 40 bu konuda bilgili birileri veya mysqlden anlayan bi vatandas yardimci olursa sevinirim simdiden saolun
-
yüklediğin tema kategori yapısını değiştirmiş büyük ihtimal mysql categorye ekleme yapmıs benim sana tavsiyem opencartı kur içeriği sıfırla temayı kur ondan sonra olustur herseyi..
-
cybermole bunu yazdı
yüklediğin tema kategori yapısını değiştirmiş büyük ihtimal mysql categorye ekleme yapmıs benim sana tavsiyem opencartı kur içeriği sıfırla temayı kur ondan sonra olustur herseyi..
Temiz kurulum hocam tema pack icerisinde tam kurulum dosyasi vardi onu kurdum adamlarin hazirladigi baska bisey eklemedim direk bu hatayi veriyor
-
Hocam
SELECT DISTINCT *,
(SELECT GROUP_CONCAT(cd1.name ORDER BY level SEPARATOR ' > ')
FROM oc_category_path cp
LEFT JOIN oc_category_description cd1 ON (cp.path_id = cd1.category_id AND cp.category_id != cp.path_id)
WHERE cp.category_id = c.category_id -- Burayı cp.category_id='43' olarak düzelt
AND cd1.language_id = '1'
GROUP BY cp.category_id) AS path,
(SELECT DISTINCT keyword FROM oc_url_alias WHERE query = 'category_id=43') AS keyword
FROM oc_category c
LEFT JOIN oc_category_description cd2 ON (c.category_id = cd2.category_id)
WHERE c.category_id = '43'
AND cd2.language_id = '1''
Bold ile yazdığım sorguları phpmyadmin ile teker teker dener misin hocam. Verdiği hata içiçe sorguların birinde tek satır gelmesi gerekirken çift satır geliyor olması. Bu bold yaptığım 2 sorgudan 1 tanesi çift satır kayıt döndürüyor. Onların birini ilgili tablodan silersen sorun çözülecektir. İlk sorguda düzenleme yaptım. Onada dikkat et hocam. Yapamazsanda team verirsen bağlanıp bakayım
-
Yazilimci bunu yazdı
Hocam
SELECT DISTINCT *,
(SELECT GROUP_CONCAT(cd1.name ORDER BY level SEPARATOR ' > ')
FROM oc_category_path cp
LEFT JOIN oc_category_description cd1 ON (cp.path_id = cd1.category_id AND cp.category_id != cp.path_id)
WHERE cp.category_id = c.category_id -- Burayı cp.category_id='43' olarak düzelt
AND cd1.language_id = '1'
GROUP BY cp.category_id) AS path,
(SELECT DISTINCT keyword FROM oc_url_alias WHERE query = 'category_id=43') AS keyword
FROM oc_category c
LEFT JOIN oc_category_description cd2 ON (c.category_id = cd2.category_id)
WHERE c.category_id = '43'
AND cd2.language_id = '1''
Bold ile yazdığım sorguları phpmyadmin ile teker teker dener misin hocam. Verdiği hata içiçe sorguların birinde tek satır gelmesi gerekirken çift satır geliyor olması. Bu bold yaptığım 2 sorgudan 1 tanesi çift satır kayıt döndürüyor. Onların birini ilgili tablodan silersen sorun çözülecektir. İlk sorguda düzenleme yaptım. Onada dikkat et hocam. Yapamazsanda team verirsen bağlanıp bakayım
Pm attim hocam yardimci olabilirsen sevinirim
-
@yazilimci hocamin katkilariyla sorun cozuldu
Cozum
Mysqlde alias satirini temizledik cozume ulastik
-
hocam parayla aldığın ürün olduğu için satıcıya bilgi vermende fayda var. yarın birgün yeni version geldiğinde bu değişiklikler seni sıkıntıya sokabilir.