Polskie wsparcie PrestaShop
PrestaShop => PrestaShop 1.6 => Wątek zaczęty przez: sanmerah w Maj 19, 2016, 10:57:14 am
-
Witam,
Zrobiłem ostatnio upgrade jednedgo sklepu do 1.6.1.5. Kilka zamówień złozonych od tego czasu nie miało żadnego statusu ani nie zostala wygenerowana faktura - czyli nie było widac co klient kupił.
Klient oczywiscie zapłacił.
Poczatkowo myślałem, że to problem Realex bo trochę muliło na ich stronie jak wykonywalismy testowe zamówienie, ale później ten sam problem był z dwoma zamówieniami zapłaconymi przez PayPal.
W advanced parameters -> logs nie ma żadnych błędów.
Miał ktos kiedyś podobny problem?
Czy to może być związane raczej z chwilowym dużym obciązeniem serwera niż z jakimś błędem w preście?
-
raczej to nie błąd w prescie kiedys podobny przypadek dotyczył braku kodów ean w produktach. Dotyczyło to wersji 1.6.0.9 bodajże. Zobacz w logach co się dzieje
-
W logach nic nie ma. Wczoraj wieczorem 4 zamówienia znów bez danych. Dwa z nich zlożone o 21:06 i 21:56.
Jest pewna korelacja z serwerem, który wywalił się o 21:28, czyli może dzieje się to jak serwer robi sie wolniejszy.
-
zrób zamówienie testowe na te same produkty i na tą samą metodę płatności, włącz tryb debugowania
-
W momencie przekierowania ze sklepu na strone Realex wyswietla sie cos takiego (wyswietla sie tylko na sekunde wiec musiałem uchwycic screenshotem)
(http://www.clickreturn.co.uk/realex-error.jpg)
potem trafiam na strone gdzie wprowadzam dane karty, weryfikuję karte i nastepuje zwiecha - processing... - trwa to w nieskonczonosc wiec zamykam przegladarkę (tak zawchowa sie wiekszośc klientów)
Rezultatem jest zamówienie z błędem - bez statusu, bez wygenerowanej faktury., czyli udało mi sie odtworzyć problem, ale...
Ten problem nie pojawia się zawsze, dodatkowo jak klient płaci paypalem tez pojawia się ten sam problem - też tylko czasami.
Sam już nie wiem o co chodzi.
-
wyłącz moduł realexredirect - ewidentnie pokazuje Ci błąd w pliku payment.php linia 34
-
Ale ten moduł jest niezbedny bo to głowna metoda płatnosci. Poza tym 90% zamówień przechodzi ok.
Jak ktos płaci przez paypal to również niektóre zamówienia przechodzą z tym samym błędem.
-
1. ponownie zrób zamówienie przez paypal w trybie debugowania
2. napisz do autora modułu aby go poprawił
3. nie rób nic :) używaj modułu z błędem
-
Generalnie problem udało mi sie odtworzyć zamykając przegladarkę nie czekając az ze strony płatności zostanę przekierowany na strone sklepu.
Myslę teraz, że problem może dotyczyc właśnie przypadków, gdzie klient płacąc zaraz po tym zamyka przegladarkę nie czekajac na przekierowanie do sklepu.
Czy w taki razie sklep powinie tak czy inaczej wygenerować prawidłowo faktury z lista zakupionych produktów?
Ten błąd w Realexpayment raczej nie ma znaczenia bo 90% zamówień jest ok, no i jak pisalem błąd pojawia sie przy platnosci paypal również.
-
Skoro wiesz lepiej od debugera....
Wracając do tematu z czego ma powstać faktura jak obiekt zamówienie->produkty jest pusty ?
-
No ale dlaczego jest pusty? Skoro klient dokonał płatności, to co mial w koszyku jest tez widoczne w Customers -> Shopping Carts
Właczyłem znowu debugowanie i spróbowalem dodac jeden z produktów do koszyka - wyskoczył jakis błąd json z informacja o cache (niestety nie skopiowałem tego), dodałem do koszyka inny produkt i było ok, wróciłem do tego pierwszego i dodałem go ponownie tym razem bez problemów.
W Performance wyłączyłem cache i pojawił sie taki bład:
Notice: unserialize(): Error at offset 65532 of 65536 bytes in /home/shopformbd/public_html/classes/cache/CacheFs.php on line 40
po odswieżeniu ok.
-
offset oznacza najczęściej wyczerpanie zasobów serwera. To natomiast zobaczysz w logach serwera
-
Wydaje się, że problem zniknął jak wyłączyłem caching.
-
serwer się nie wyrabiał przy cache za to sklep będzie się ładował dłużej no cóż na kiepskim koniu daleko nie zajedziesz....
-
Serwer ma bardzo dobre parametry. Cache dla smarty jest włączony i w zasadzie po wyłaczeniu cache dla plików nie widzę różnicy w szybkosci działania strony.
Problem jest taki ze na serwerze nie ma zainstalowanego zadnego mecached czy innego APC i cache był używany jako File System - najwyraźniej nie jest to najlepsza metoda cachowania.
-
Serwer jeśli ma problem z liczeniem plików i występuje błąd bufora oznacza tyle, że jeśli maszyna jest dobra to system jest postawiony kiepsko lub z błędami