Skocz do zawartości

bonek04pl

Members
  • Zawartość

    7
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    1

Ostatnia wygrana bonek04pl w Rankingu w dniu 26 Wrzesień 2017

bonek04pl posiadał najczęściej polubioną zawartość!

O bonek04pl

  • Tytuł
    Początkujący
  1. Błd 500 przy potwierdzeniu zamówienia

    Zauważyłem coś jeszcze. Jeśli wpiszę wartość 30,25 w wyszukiwaniu produktów (pole cena podstawowa) to BackOffice wyrzuca mi błąd: Złe zapytanie SQL Something is wrong in your syntax obok '25 ORDER BY a.`id_product` ASC LIMIT 0, 50' w linii 14 I przez to muszę przywracać sklep z kopi zapasowej ponieważ po odświeżeniu strony błąd pozostaje. Po wpisaniu 30.99 dostaje równiez błąd: Złe zapytanie SQL Something is wrong in your syntax obok '99 ORDER BY a.`id_product` ASC LIMIT 0, 50' w linii 14
  2. Witam serdecznie, Nie znalazłem nigdzie rozwiązania dotyczącego mojego problemu (przeszukiwałem forum i internet ale tematy i rozwiązania związane z tym błędem nie pasowały do mojego problemu. W załączniku wstawiam screen z logów PrestaShop Sytuacja wygląda następująco: Po przejściu przez proces zamówienia i wybraniu sposobu dostawy klient przy kliknięciu w potwierdzenie zamówienia dostaje błąd 500. Różnica miedzy moim problemem a reszta problemów z HTTP 500 podczas potwierdzenia zamówienia jest taka że, już podczas przechodzenia przez proces zamówienia pojawiają się błędy typu: część przewoźników z automatu dodaje darmowa wysyłkę mimo że w Backoffice wszystko ustawione jest jak trzeba podczas edycji przewoźników, mimo tego że poprzednie zakresy wagi działały prawidłowo, teraz nie chcą się zatwierdzić (nawet po usunięciu i ponownym wprowadzeniu tego samego przewoźnika z tymi samymi parametrami, nie działa realizacja zamówienia dla klienta w BackOffice, Co zrobiłem do tej pory aby osunąć powyższy problem: Przeinstalowałem moduły COD, Bankwire oraz ShipToPay Przywracałem kopie zapasowe sklepu z przed kilku dni wstecz (baza SQL, pliki na serwerze), Kontaktowałem się z usługodawca hostingu na którym umieszczona jest strona (wina nie leży po ich stronie) Próbowałem dodać od nowa przewoźników z takimi samymi ustawieniami (bezskutecznie), Sprawdziłem statusy zamówień - wszystko jest na swoim miejscu, żaden status nie został usunięty przypadkowo, Nie aktualizowałem silnika sklepu - sklep nie był aktualizowany przez 1-Click-Upgrade (moduł niezainstalowany), automatyczna aktualizacja w panelu serwera wyłączona Nie wiem co może być nie tak, jeszcze wczoraj klienci robili normalne zamówienia a w dniu dzisiejszym już nie. Od około tygodnia nie były wprowadzone żadne zmiany - brak zmian w Backoffice, brak zmian w plikach na serwerze. Prosiłbym o szybka pomoc. Pozdrawiam serdecznie.
  3. XAMPP i localhost Presty

    Ścieżka także jest zmieniona i dalej pojawia się to co opisałem wyżej.
  4. Witam serdecznie, Chciałem zainstalować kopię sklepu na localhost za pomocą XAMPP. Udało mi się zainstalować XAMPP, skonfigurować PHP aby wgrać większa bazę danych przez phpMyAdmin, oraz przekopiować pliki do folderu XAMPP/htppdocs/prestashop, jednak mam problem podczas wejścia na stronę BackOffice. Gdy wpisuje odpowiedni adres w przeglądarce, panel co prawda się odpala ale bez grafiki, stylów CSS itp. A gdy wchodzę na stronę główną sklepu przez localhost to przenosi mnie na oryginalna domenę sklepu. Zmieniłem w phpMyAdmin adres w tabeli ps_shop_url na localhost ale niestety to nic nie pomogło. Wyczyściłem również cały folder cache w plikach presty oraz wszystkie dane przeglądarki. Jedyne co zauważyłem to to że nie przenosi mnie już na zewnętrzna witrynę (helpik24.pl) tylko na localhost ale w dalszym ciągu wszystko jest bez grafiki i jest rozjechane. Oprócz tego nie mogę wejść w nic na stronie (Front) bo zwraca mi taki błąd jak w załączniku. Podobnie jest na stronie głównej (załącznik 2.) Przegenerowałem także nowy plik .htaccess oraz sprawdziłem czy Apache ładuje moduł mod_rewrite, a także ponownie wyczyściłem cały folder cache z poziomu plików. Prosiłbym o pomoc :( Pozdrawiam serdecznie.
  5. Duplikat modułu

    Właśnie we wszystkich plikach pozmieniałem te klasy. Sprawdziłem jeszcze plik .js i tam pozmieniałem twparagonfaktura na twparagonfaktura2: $(document).ready(function(){ $('#paragonfaktura2_select').change(function(){ $('.paragonfaktura2_status').removeClass('show-status'); $('#paragonfaktura2_loader').addClass('loading-animate'); var docType = $('#paragonfaktura2_select').val(); $.ajax({ type: "post", url: baseDir+'/modules/twparagonfaktura2/ajax2.php', dataType : 'json', data: { docType: docType }, complete: function() { $('#paragonfaktura2_loader').removeClass('loading-animate'); }, success: function(response) { if (response.status == 'success') { $('.paragonfaktura2_status.success').addClass('show-status'); } else { $('.paragonfaktura2_status.error').addClass('show-status'); } } }) }) }); Jednak tyle co udało się zmienić to to co widać w załączniku, czyli nie pojawia się już "Uaktualnione" ale sam "Błąd" i dalej nic się nie zmienia.
  6. Duplikat modułu

    Witam serdecznie. Zduplikowałem moduł odpowiedzialny za wybieranie przy zamówieniu czy klient chce paragon i fakturę. Chciałem go zduplikować jako osobny moduł aby dodać jeszcze opcję wyboru Wniosku NFZ. Co zrobiłem aby zduplikować moduł: - Dodałem "2" do nazwy folderu oraz wszystkich plików które znajdują się w katalogu modułu (nie wliczając katalogów). - Wyedytowałem odpowiednio wszystkie pliki zduplikowanego stylu np. główny plik php: <?php if (!defined('_PS_VERSION_')) exit; class twParagonFaktura2 extends Module { const _PARAGON_FAKTURA2_ = 'tw_paragonfaktura2'; public static $documentType2 = array(); public function __construct() { $this->name = 'twparagonfaktura2'; $this->tab = 'billing_invoicing'; // front_office_features'; // $this->version = '1.0'; $this->author = 'Tomek Witek'; $this->need_instance = 0; $this->bootstrap = true; parent::__construct(); self::$documentType = array('Yes' => $this->l('Yes'), 'No' => $this->l('No') ); $this->displayName = $this->l('Receipt or invoice?'); $this->description = $this->l('The module allows you to choose the type of document confirming the purchase of goods (receipt or invoice)'); $this->ps_versions_compliancy = array('min' => '1.6', 'max' => _PS_VERSION_); } // ------------------------------------------------------------------------------------------------- __construct() public function addOverride($classname) { if ( version_compare(_PS_VERSION_, '1.6.1.0', '<') ) { return parent::addOverride($classname); } else { return true; } } // ------------------------------------------------------------------------------------------------- addOverride() public function install() { reset(self::$documentType); $sql = 'CREATE TABLE IF NOT EXISTS`'._DB_PREFIX_.self::_PARAGON_FAKTURA2_.'` ( `id_cart` int(11) NOT NULL, `document_type` ENUM(\''.implode("','", array_keys(self::$documentType) ).'\') NOT NULL DEFAULT \''.key(self::$documentType).'\', PRIMARY KEY(`id_cart`) ) ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=UTF8;'; return( parent::install() && $this->registerHook('displayShoppingCartFooter') && $this->registerHook('displayReceiptInvoiceExtra') && $this->registerHook('displayOrderDetail') && $this->registerHook('displayAdminOrder') && $this->registerHook('displayAdminOrderExtra') && $this->registerHook('actionGetExtraMailTemplateVars') && Configuration::updateValue('TW_PARAGON_FAKTURA2', key(self::$documentType)) && Db::getInstance()->execute($sql) ); } // ------------------------------------------------------------------------------------------------- install() public function removeOverride($classname) { if ( version_compare(_PS_VERSION_, '1.6.1.0', '<') ) { return parent::removeOverride($classname); } else { return true; } } // ------------------------------------------------------------------------------------------------- removeOverride() public function uninstall() { $sql = 'DROP TABLE IF EXISTS `'._DB_PREFIX_.self::_PARAGON_FAKTURA2_.'`;'; return( parent::uninstall() && $this->unregisterHook('displayShoppingCartFooter') && $this->unregisterHook('displayReceiptInvoiceExtra') && $this->unregisterHook('displayOrderDetail') && $this->unregisterHook('displayAdminOrder') && $this->unregisterHook('displayAdminOrderExtra') && $this->unregisterHook('actionGetExtraMailTemplateVars') && Configuration::deleteByName('TW_PARAGON_FAKTURA2') && Db::getInstance()->execute($sql) ); } // ------------------------------------------------------------------------------------------------- uninstall() public function getContent() { if (Tools::isSubmit('submitSaveConfiguration')) { Configuration::updateValue('TW_PARAGON_FAKTURA2', Tools::getValue('TW_PARAGON_FAKTURA2')); } return $this->renderConfigForm(); } // ------------------------------------------------------------------------------------------------- getContent() public function renderConfigForm() { $fields_form = array( 'form' => array( 'legend' => array( 'title' => $this->l('Configuration'), 'icon' => 'icon-cogs' ), 'input' => array( array( 'type' => 'select', 'label' => $this->l('Default document'), 'name' => 'TW_PARAGON_FAKTURA2', 'desc' => $this->l('Set the default document confirming the purchase of goods'), 'options' => array( 'query' => $this->getDocumentTypes(), 'id' => 'id_option', 'name' => 'name' ), ), ), 'submit' => array( 'title' => $this->l('Save'), ) ), ); $helper = new HelperForm(); $helper->show_toolbar = false; $helper->table = $this->name; $lang = new Language((int)Configuration::get('PS_LANG_DEFAULT')); $helper->default_form_language = $lang->id; $helper->module = $this; $helper->allow_employee_form_lang = Configuration::get('PS_BO_ALLOW_EMPLOYEE_FORM_LANG') ? Configuration::get('PS_BO_ALLOW_EMPLOYEE_FORM_LANG') : 0; $helper->identifier = $this->identifier; $helper->submit_action = 'submitSaveConfiguration'; $helper->currentIndex = $this->context->link->getAdminLink('AdminModules', false).'&configure='.$this->name.'&tab_module='.$this->tab.'&module_name='.$this->name; $helper->token = Tools::getAdminTokenLite('AdminModules'); $helper->tpl_vars = array( 'fields_value' => array( 'TW_PARAGON_FAKTURA2' => Tools::getValue('TW_PARAGON_FAKTURA2', Configuration::get('TW_PARAGON_FAKTURA2')), ), 'languages' => $this->context->controller->getLanguages(), 'id_language' => $this->context->language->id ); return $helper->generateForm(array($fields_form)); } // --------------------------------------------------------------------------------------------------------- _renderConfigForm() public function getDocumentTypes() { $options = array(); foreach( self::$documentType as $docType => $docName ) { $options[] = array( 'id_option' => $docType, 'name' => $docName ); } return $options; } // --------------------------------------------------------------------------------------------------------- getDocumentTypes() public function getCurrentDocumentType($id_cart) { $sql = 'SELECT `document_type` FROM `'._DB_PREFIX_.self::_PARAGON_FAKTURA2_.'` WHERE `id_cart`='.$id_cart.';'; $currentDocument = Db::getInstance()->getValue($sql); return ( array_key_exists($currentDocument, self::$documentType) ? $currentDocument : 'unknow' ); } // --------------------------------------------------------------------------------------------------------- getCurrentDocumentType() public function getCurrentDocumentName($currentDocument, $unknow = 'unknow' ) { return ( array_key_exists($currentDocument, self::$documentType) ? self::$documentType[$currentDocument] : $unknow ); } // --------------------------------------------------------------------------------------------------------- getCurrentDocumentName() public function _prepareHook() { $this->context->controller->addCSS(($this->_path).'views/css/twparagonfaktura2.css', 'all'); $this->context->controller->addJS(($this->_path).'views/js/twparagonfaktura2.js'); // --------------------------- dodaje rekord jezeli nie istnieje (z domyslnym typem dokumentu - klient nie wybral rodzaju dokumentu) // --------------------------- dla danego koszyka (id_cart) zostanie wykonane tylko JEDEN RAZ! $sql = 'INSERT IGNORE INTO `'._DB_PREFIX_.self::_PARAGON_FAKTURA2_.'` (`id_cart`, `document_type`) VALUES ('.$this->context->cart->id.', "'.Configuration::get('TW_PARAGON_FAKTURA2').'" )'; Db::getInstance()->execute($sql); // --------------------------- odczytuje biezacy typ dokumentu, typ dokumentu moze byc inny niz po dodaniu rekordu // --------------------------- np po ponownym wejscu do koszyka - klient wczesniej zmienil typ dokumentu, // --------------------------- zobacz paragonfaktuta2.js, ajax2.php $currentDocument = $this->getCurrentDocumentType($this->context->cart->id); $this->smarty->assign(array( 'documentType' => self::$documentType, 'currentDocument' => $currentDocument, 'id_cart' => $this->context->cart->id, )); } // --------------------------------------------------------------------------------------------------------- _prepareHook() public function hookdisplayReceiptInvoiceExtra($params) { $this->_prepareHook(); return $this->display(__FILE__, 'views/templates/hook/paragonfaktura2.tpl'); } // --------------------------------------------------------------------------------------------------------- hookdisplayReceiptInvoiceExtra() public function hookDisplayShoppingCartFooter($params){ $this->_prepareHook(); return $this->display(__FILE__, 'views/templates/hook/paragonfaktura2.tpl'); } // --------------------------------------------------------------------------------------------------------- hookDisplayShoppingCartFooter() public function hookDisplayOrderDetail($params) { $currentDocument = $this->getCurrentDocumentType($params['order']->id_cart); if ($currentDocument == 'unknow') return false; $this->smarty->assign(array( 'currentDocument' => $currentDocument, 'currentDocumentTranslate' => $this->getCurrentDocumentName($currentDocument), )); return $this->display(__FILE__, 'views/templates/hook/order_detail2.tpl'); } // --------------------------------------------------------------------------------------------------------- hookDisplayOrderDetail() public function _prepareAdminHook() { $currentDocument = $this->getCurrentDocumentType($this->context->cart->id); $this->smarty->assign(array( 'currentDocument' => $currentDocument, 'currentDocumentTranslate' => $this->getCurrentDocumentName($currentDocument), )); } // --------------------------------------------------------------------------------------------------------- _prepareAdminHook() public function hookDisplayAdminOrder($params) { $this->_prepareAdminHook(); return $this->display(__FILE__, 'views/templates/admin/admin_orders2.tpl'); } // ---------------------------------------------------------------------------------------------------------- hookDisplayAdminOrder() public function hookDisplayAdminOrderExtra($params) { $this->_prepareAdminHook(); return $this->display(__FILE__, 'views/templates/admin/admin_orders2.tpl'); } // ---------------------------------------------------------------------------------------------------------- hookDisplayAdminOrderExtra() public function hookActionGetExtraMailTemplateVars($params) { if ($params['template'] == 'order_conf' || $params['template'] == 'new_order') { $currentDocument = $this->getCurrentDocumentType($this->context->cart->id); $params['extra_template_vars']['{receipt_invoice}'] = $this->getCurrentDocumentName($currentDocument, ''); } } // ---------------------------------------------------------------------------------------------------------- hookActionGetExtraMailTemplateVars() } Wszytko na pierwszy rzut oka powinno działać jednak gdy wybieram przy zamówieniu 1 pole (Paragon czy Faktura) to pod zarówno 1 jak i 2 polem na raz wyświetlają się błędy o uaktualnieniu i błędzie co skutkuje tym że 2 pole nie zmienia się po zakończeniu zamówienia (pozostaje domyslne - takie jakie jest ustawione w opcjach modułu) W bazie danych SQL tak samo widnieje tylko opcja domyślna, nie zmieniona. Gdzie robię błąd ? twparagonfaktura2.zip
  7. Szukam programisty

    Witam serdecznie, Poszukuje programisty który podejmie się pracy nad poprawkami dotyczącymi sklepu internetowego opartego na silniku e-commerce jakim jest PrestaShop. Poprawki będą związane z: poprawą wydajności działania strony, modyfikacją niektórych modułów wgranych bezpośrednio do silnika strony, przeróbką niektórych skryptów zawartych w szablonie sklepu i a także wprowadzeniem zmian kosmetycznych do strony. Wymagania jakich oczekujemy oprócz znajomości środowisk programistycznych potrzebnych do modyfikacji strony, to możliwosć wystawienia faktury VAT. Zainteresowanych oraz osoby chcące mi pomóc proszę o zostawienie odpowiedzi w poście poniżej oraz przesłanie wiadomości prywatnej z danymi kontaktowymi, w celu omówienia szczegółów oferty. Pozdrawiam.
×