wdrożenia PrestaShop

Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6

  • 40 Odpowiedzi
  • 9850 Wyświetleń

0 użytkowników i 3 Gości przegląda ten wątek.

*

Offline Belus

  • Użytkownik
  • **
  • 44
  • 0
  • PrestaShop
  • PrestaShop: PS
  • Status: forum
Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« dnia: Maj 26, 2019, 09:54:29 pm »
 Przy próbie zakupu jako "Gość" wyskakują następujące komunikaty:
Jest 7 błąd/błędy:

    Państwo nie może być załadowane z address->id_country
    Nieprawidłowy kraj
    id_country jest wymagane.
    nazwisko jest wymagane.
    imię jest wymagane.
    adres1 jest wymagane.
    miasto jest wymagane.

 

Przy zwykłej rejestracji tych błędów nie ma. Proszę o pomoc.

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #1 dnia: Maj 27, 2019, 10:36:37 am »
A szablon oryginalny? Jakies dodatkowe moduly, kombinacje w kontrolerach?
Mozesz raz, zaczac od wlaczenia dev_mode, dwa, wylaczenia nadpisywania plikow i modulow spoza presta i sprawdzic co sie dzieje
design4VIP z innej strony...

*

Offline Belus

  • Użytkownik
  • **
  • 44
  • 0
  • PrestaShop
  • PrestaShop: PS
  • Status: forum
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #2 dnia: Maj 28, 2019, 08:36:52 pm »
A szablon oryginalny? Jakies dodatkowe moduly, kombinacje w kontrolerach?
Mozesz raz, zaczac od wlaczenia dev_mode, dwa, wylaczenia nadpisywania plikow i modulow spoza presta i sprawdzic co sie dzieje

Szablon oryginalny. Z dodatkowych modułów mam: politykę prywatności, mail aktywujący założenie konta i moduł tłumaczący nazwy krajów na język angielski i niemiecki. Wszystkie darmowe, znalezione na forach. Wyłączenie ich ręcznie nic nie zmienia. Włączenie trybu debugowania też nie przynosi żadnych zmian.

*

Offline Belus

  • Użytkownik
  • **
  • 44
  • 0
  • PrestaShop
  • PrestaShop: PS
  • Status: forum
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #3 dnia: Maj 28, 2019, 11:09:33 pm »
Dodam jeszcze że okienka do wypełnienia w tworzeniu nowego konta i szybich zakupach się różnią. Skoro biorą one dane z innych fragmentów kodu to może w tym tkwi problem?



*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #4 dnia: Maj 29, 2019, 10:16:42 am »
Wylaczenie reczne modulow nie usuwa nadpisanych klas w override. Jak pisalem,, wylacz modult nie odbpresta i nadpisywanie plikow z poziomu panelu i wtedy sprawdz czy bedzie dzialac.
design4VIP z innej strony...

*

Offline Belus

  • Użytkownik
  • **
  • 44
  • 0
  • PrestaShop
  • PrestaShop: PS
  • Status: forum
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #5 dnia: Maj 29, 2019, 01:58:36 pm »
Wylaczenie reczne modulow nie usuwa nadpisanych klas w override. Jak pisalem,, wylacz modult nie odbpresta i nadpisywanie plikow z poziomu panelu i wtedy sprawdz czy bedzie dzialac.

Mam tak:
Wyłącz moduły nie od PrestaShop : TAK
Wyłącz wszystkie nadpisywania : TAK

I pomimo tego błędy i tak się wyświetlają.

Dziwi mnie jedna rzecz. Pomimo wyłączenia w panelu modułów z poza Presty moduły: Activation By Mail i moduł Privacy Policy i tak działają. Czy tak powinno być?

*

Offline west

  • Administrator
  • Mieszkaniec
  • *****
  • 5,292
  • 106
  • Płeć: Mężczyzna
  • Europasaz.pl
    • PrestaShop, Wordpress, SMF, Woocomerce
  • PrestaShop: 8.0
  • Status: Programista
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #6 dnia: Maj 30, 2019, 10:50:23 am »
Nie powinno być tak zmień nazwę folderu na old i dodatkowo sprawdź override w poszukiwaniu nadpisywań.
MODUŁY | https://europasaz.pl |  SKLEPY INTERNETOWE | WSPARCIE TECHNICZNE | HOSTING | https://europasaz.pl 

*

Offline Belus

  • Użytkownik
  • **
  • 44
  • 0
  • PrestaShop
  • PrestaShop: PS
  • Status: forum
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #7 dnia: Maj 30, 2019, 04:07:22 pm »
Nie powinno być tak zmień nazwę folderu na old(..)

Nazwę którego folderu zmenić?

(...) i dodatkowo sprawdź override w poszukiwaniu nadpisywań.

W jaki sposób mogę zrobić?

*

Offline west

  • Administrator
  • Mieszkaniec
  • *****
  • 5,292
  • 106
  • Płeć: Mężczyzna
  • Europasaz.pl
    • PrestaShop, Wordpress, SMF, Woocomerce
  • PrestaShop: 8.0
  • Status: Programista
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #8 dnia: Maj 31, 2019, 09:48:25 am »
folderu modułu
poprzez ftp porównaj katalogi override z modułu i ze sklepu
MODUŁY | https://europasaz.pl |  SKLEPY INTERNETOWE | WSPARCIE TECHNICZNE | HOSTING | https://europasaz.pl 

*

Offline Belus

  • Użytkownik
  • **
  • 44
  • 0
  • PrestaShop
  • PrestaShop: PS
  • Status: forum
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #9 dnia: Maj 31, 2019, 03:14:56 pm »
folderu modułu
poprzez ftp porównaj katalogi override z modułu i ze sklepu

Udało mi się wyłączyć dodatkowe modułu. Pomimo tego dalej występują wspomniane błędy:

"Jest 7 błąd/błędy:

    Państwo nie może być załadowane z address->id_country
    Nieprawidłowy kraj
    id_country jest wymagane.
    nazwisko jest wymagane.
    imię jest wymagane.
    adres1 jest wymagane.
    miasto jest wymagane."

W katalogu public_html\override\\modules mam tylko plik index.php

*

Offline west

  • Administrator
  • Mieszkaniec
  • *****
  • 5,292
  • 106
  • Płeć: Mężczyzna
  • Europasaz.pl
    • PrestaShop, Wordpress, SMF, Woocomerce
  • PrestaShop: 8.0
  • Status: Programista
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #10 dnia: Czerwiec 03, 2019, 09:01:22 am »
Moduły nie tylko w tym katalogu zapisują swoje pliki. Sprawdź cały folder override porównując go z folderem modułu - w nim również powinien być katalog override
MODUŁY | https://europasaz.pl |  SKLEPY INTERNETOWE | WSPARCIE TECHNICZNE | HOSTING | https://europasaz.pl 

*

Offline Belus

  • Użytkownik
  • **
  • 44
  • 0
  • PrestaShop
  • PrestaShop: PS
  • Status: forum
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #11 dnia: Czerwiec 05, 2019, 01:42:27 pm »
We wszystkich katalogach w katalogu override mam tylko plik index.php

Wyjątkiem jest katalog ovverride/controllers/admin gdzie jest plik AdminCustomerThreadsController.php:

<?php

/*
*  tw
*  dodane pola dla recapcha
*
*/

class AdminCustomerThreadsController extends AdminCustomerThreadsControllerCore {
  
  public function 
__construct() {
     
  
parent::__construct();
       
  
$this->fields_options['contact']['fields']['PS_CUSTOMER_SERVICE_RECAPTCHA'] = array(
      
'title' => $this->l('Recaptcha protection'),
      
'hint' => $this->l('Enable or disable the anti-spam protection recaptcha.'),
      
'type' => 'bool'
    
);

  
$this->fields_options['contact']['fields']['PS_CUSTOMER_SERVICE_RECAPTCHA_SITE_KEY'] = array(
      
'title' => $this->l('Site key'),
      
'hint' => $this->l('Site key - recaptcha (https://www.google.com/recaptcha/).'),
      
'type' => 'text'
    
);

  
$this->fields_options['contact']['fields']['PS_CUSTOMER_SERVICE_RECAPTCHA_SECRET_KEY'] = array(
      
'title' => $this->l('Secret key'),
      
'hint' => $this->l('Secret key - recaptcha (https://www.google.com/recaptcha/).'),
      
'type' => 'text'
    
);

    } 
// ------------------------------------------------------------------------------------------------------ __construct()

}


[
b]oraz plik ContactController.php w katalogu ovverride/controllers/admin:[/b]

<?
php

/**
*  tw
*  dodana obsluga recaptcha
*
*/


class ContactController extends ContactControllerCore {
  
  public 
$recaptcha_on false;
  public 
$recaptcha_site_key;
  public 
$recaptcha_secret_key;
  
  
  
/**
  *  tw
    *   dodana obsluga recaptcha
    *
    */
  
public function __construct() {
    
    
parent::__construct();
    
    
// --- tw - konfiguracja recaptcha
    
$this->recaptcha_on     = (bool)Configuration::get('PS_CUSTOMER_SERVICE_RECAPTCHA');
    
$this->recaptcha_site_key  trim(Configuration::get('PS_CUSTOMER_SERVICE_RECAPTCHA_SITE_KEY'));
    
$this->recaptcha_secret_key  trim(Configuration::get('PS_CUSTOMER_SERVICE_RECAPTCHA_SECRET_KEY'));
    
    
$this->context->smarty->assign(array(
      
'recaptchaON' => $this->recaptcha_on && (bool)$this->recaptcha_site_key && (bool)$this->recaptcha_secret_key,
      
'recaptchaSiteKey' => $this->recaptcha_site_key,
    ));
  } 
// -------------------------------------------------------------------------------------------------- __construct()
  
  
  /**
  *  tw
    *  dodana weryfikacja recaptcha
    *
    */
    
public function postProcess() {
    
    if (
Tools::isSubmit('submitMessage')) {
      
      if (!
$this->recaptchaVerify()) {  // weryfikacja recaptcha
        
$this->errors[] = Tools::displayError('Captcha error');
      } else {
        
parent::postProcess();
      }
    }
    } 
// -------------------------------------------------------------------------------------------------- postProcess()
  
  
  /**
  *  tw
  *  weryfikacja recaptcha
  *
  */
  
public function recaptchaVerify() {  
    
    if (!
$this->recaptcha_on) {
      return 
true;
    }
    
    
$curl curl_init();
    
    
curl_setopt_array($curl, [
      
CURLOPT_URL => 'https://www.google.com/recaptcha/api/siteverify',
      
CURLOPT_POST => true,
      
CURLOPT_POSTFIELDS => [
        
'secret' => $this->recaptcha_secret_key,
        
'response' => Tools::getValue('g-recaptcha-response'),
        
'remoteip' => $_SERVER['REMOTE_ADDR']
      ],
      
CURLOPT_RETURNTRANSFER => true
    
]);

    
$response curl_exec($curl);
    
curl_close($curl);

    
$captcha_success json_decode($responsetrue);
    
    return 
$captcha_success['success'];
  } 
// -------------------------------------------------------------------------------------------------- recaptchaVerify()
  
}
« Ostatnia zmiana: Czerwiec 05, 2019, 03:40:29 pm wysłana przez west »

*

Offline west

  • Administrator
  • Mieszkaniec
  • *****
  • 5,292
  • 106
  • Płeć: Mężczyzna
  • Europasaz.pl
    • PrestaShop, Wordpress, SMF, Woocomerce
  • PrestaShop: 8.0
  • Status: Programista
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #12 dnia: Czerwiec 05, 2019, 03:41:31 pm »
Ewidentnie widzę nadpisanie captcha - widocznie ono powoduję błąd
usuń zmień nazwę pliku na .old i wyczyść cache sklepu
MODUŁY | https://europasaz.pl |  SKLEPY INTERNETOWE | WSPARCIE TECHNICZNE | HOSTING | https://europasaz.pl 

*

Offline Belus

  • Użytkownik
  • **
  • 44
  • 0
  • PrestaShop
  • PrestaShop: PS
  • Status: forum
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #13 dnia: Czerwiec 05, 2019, 11:35:40 pm »
Zmieniłem nazwę plików:
ContactController.php i AdminCustomerThreadsController.php

Niestety nie pomogło. Następnie całkiem usunąłem te pliki-i w dalszym ciągu wyskakują błędy.

*

Offline west

  • Administrator
  • Mieszkaniec
  • *****
  • 5,292
  • 106
  • Płeć: Mężczyzna
  • Europasaz.pl
    • PrestaShop, Wordpress, SMF, Woocomerce
  • PrestaShop: 8.0
  • Status: Programista
Odp: Błędy w formularzu przy zakupie jako "Gość" - Presta 1.6
« Odpowiedź #14 dnia: Czerwiec 06, 2019, 10:01:58 am »
wyczyść cache sklepu folder cache class_index.php
MODUŁY | https://europasaz.pl |  SKLEPY INTERNETOWE | WSPARCIE TECHNICZNE | HOSTING | https://europasaz.pl