wdrożenia PrestaShop

aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą

  • 12 Odpowiedzi
  • 11494 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

*

Offline zorunid

  • Nowy
  • *
  • 13
  • 0
  • Płeć: Mężczyzna
aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« dnia: Styczeń 10, 2012, 01:59:30 pm »
Witam,

Od wczoraj walczę z próbą aktualizacji presty na mojej stronie testowej...

"Instalkę" przygotowałem zgodnie z instrukcją, poprzednią instalację (1.4.4.1) zbackupowałem raz z bazą danych, na serwer wrzuciłem 1.4.6.2 z nadpisanymi moimi plikami, do tej pory wszystko jest dobrze.

Odpalam instalkę, klikam update, presta nie ma problemów, potem w 3cim kroku, podczas aktualizacji wyskakuje bardzo przyjemny komunikat:

Error during install/upgrade: Fatal error: Call to undefined function bqSQL() in /homepages/46/d385640827/htdocs/tonery_test/install/php/update_order_canada.php on line 47

You may have to:

    Fix the error(s) displayed
    Put your database backup
    Modify the file settings.inc.php to put the old version for the line with _PS_VERSION_
    Restart the upgrade process from the begining

Dalej jest standardowy komunikat "1. Fix problem" (...).
Przy logowaniu się do PA pokazuje mi nadal wersję 1.4.4.1PL, ale część funkcjonalności jest dezaktywowana, w sensie, że nie mam możliwości np. włączyć sklep.

Przy ponownym wejściu do instalacji mam możliwość tylko przeprowadzenia instalacji, ponieważ instalka wykrywa wersję 1.4.6.2, pomimo, że w PA jest 1.4.4.1.

Po przywróceniu bazy danych mogę ponownie przeprowadzić update.

Próbowałem z plikiem z różnych wersji, z instalki 1.4.4.1, z PL z SVN, z SVN presty i ten sam problem.
Próbowałem też wywalić z folderu ten plik i puścić aktualizację, ale wywala, że potrzebuje tego pliczku i przerywa aktualizację.

Linie od 33 do 53:
if (!count($table))
{
Db::getInstance()->Execute('
CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'order_tax` (
 `id_order` int(11) NOT NULL,
 `tax_name` varchar(40) NOT NULL,
 `tax_rate` decimal(6,3) NOT NULL,
 `amount` decimal(20,6) NOT NULL
) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8');


$address_field = Configuration::get('PS_TAX_ADDRESS_TYPE');
$sql = 'SELECT `id_order`
FROM `'._DB_PREFIX_.'orders` o
LEFT JOIN `'._DB_PREFIX_.'address` a ON (a.`id_address` = o.`'.bqSQL($address_field).'`)
LEFT JOIN `'._DB_PREFIX_.'country` c ON (c.`id_country` = a.`id_country`)
WHERE c.`iso_code` = "CA"';

$id_order_list = Db::getInstance()->ExecuteS($sql);

$values = '';

Linia z rzekomym problemem:
LEFT JOIN `'._DB_PREFIX_.'address` a ON (a.`id_address` = o.`'.bqSQL($address_field).'`)
Bardzo proszę o pomoc ;) niestety skończyły mi się pomysły i wyniki wyszukiwania wątków na forum :(

Pozdrawiam
« Ostatnia zmiana: Styczeń 10, 2012, 02:37:43 pm wysłana przez zorunid »

*

Offline zorunid

  • Nowy
  • *
  • 13
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #1 dnia: Styczeń 11, 2012, 04:21:00 pm »
Nie mogłem edytować powyższego wątku, więc piszę odpowiedź...

Wrzuciłem dzisiaj sklep na WAMPa na localhost i puściłem aktualizację. Wyskoczył mi poniższy błąd przy trzecim kroku:

Error during install/upgrade: ( ! ) Fatal error: Call to undefined function bqSQL() in C:\wamp\www\tonery_upd\install\php\update_order_canada.php on line 47 Call Stack #TimeMemoryFunctionLocation 10.0004402424{main}( )..\model.php:0 20.1864701752require_once( 'C:\wamp\www\tonery_upd\install\xml\doUpgrade.php' )..\model.php:91 31.10383517664call_user_func_array ( )..\doUpgrade.php:371 41.10383517800update_order_canada( )..\doUpgrade.php:371

You may have to:


1.Fix the error(s) displayed
2.Put your database backup
3.Modify the file settings.inc.php to put the old version for the line with _PS_VERSION_
4.Restart the upgrade process from the begining

*

Offline sower

  • Mieszkaniec
  • *****
  • 1,016
  • 3
    • I Love PrestaShop
  • PrestaShop: PS
  • Status: Programista
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #2 dnia: Styczeń 11, 2012, 04:29:08 pm »
no ale masz  przecież podane, że problem wystąpił tu update_order_canada.php on line 47

i że przyczyną jest Call to undefined function bqSQL()

tak więc
LEFT JOIN `'._DB_PREFIX_.'address` a ON (a.`id_address` = o.`'.bqSQL($address_field).'`)

niestety występują w preście problemy z bqSQL ;)


SZYBKA POMOC TECHNICZNA : gg 45116037
SKLEPY | MODUŁY | INTEGRACJE | POMOC TECHNICZNA

*

Offline zorunid

  • Nowy
  • *
  • 13
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #3 dnia: Styczeń 11, 2012, 04:41:19 pm »
(...)
niestety występują w preście problemy z bqSQL ;)

Zauważyłem, że presta i bqSQL nie przepadają za sobą ;(

Tylko jak rozwiązać ten problem? :(

========
Pogrzebałem się jeszcze trochę i mam kolejne fajne skutki tej aktualizacji...


W pliku settings.inc.php zmieniłem wersję ponownie na 1.4.4.1 i puściłem ponownie aktualizację, bez przywracania bazy.

Instalacja "ominęła" (?) krok z kanadą, ale wyrzuciał komunikat:

Your shop version is now 1.4.6.2
Unfortunately, 5 SQL errors have occurred.

View the log

SET NAMES 'utf8'


INSERT IGNORE INTO `pst_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_RESTRICT_DELIVERED_COUNTRIES', '0', NOW(), NOW())


UPDATE `pst_country_lang` SET `name` = 'United States' WHERE `name` = 'United State'


ALTER TABLE `pst_discount` ADD `include_tax` TINYINT(1) NOT NULL DEFAULT '0'
(1060) Duplicate column name 'include_tax'



UPDATE `pst_order_detail` SET `product_price` = `product_price` /( 1-(`group_reduction`/100))


DELETE FROM `pst_configuration` WHERE name IN ('PS_LAYERED_BITLY_USERNAME', 'PS_LAYERED_BITLY_API_KEY', 'PS_LAYERED_SHARE') LIMIT 3


ALTER TABLE `pst_delivery` CHANGE `price` `price` DECIMAL(20, 6) NOT NULL


ALTER TABLE `pst_store` CHANGE `latitude` `latitude` DECIMAL(10, 8) NULL DEFAULT NULL


ALTER TABLE `pst_store` CHANGE `longitude` `longitude` DECIMAL(10, 8) NULL DEFAULT NULL


INSERT INTO `pst_hook` (`name`, `title`, `description`, `position`, `live_edit`) VALUES ('attributeGroupForm', 'Add fields to the form "attribute group"', 'Add fields to the form "attribute group"', 0, 0), ('afterSaveAttributeGroup', 'On saving attribute group', 'On saving attribute group', 0, 0), ('afterDeleteAttributeGroup', 'On deleting attribute group', 'On deleting "attribute group', 0, 0), ('featureForm', 'Add fields to the form "feature"', 'Add fields to the form "feature"', 0, 0), ('afterSaveFeature', 'On saving attribute feature', 'On saving attribute feature', 0, 0), ('afterDeleteFeature', 'On deleting attribute feature', 'On deleting attribute feature', 0, 0), ('afterSaveProduct', 'On saving products', 'On saving products', 0, 0), ('productListAssign', 'Assign product list to a category', 'Assign product list to a category', 0, 0), ('postProcessAttributeGroup', 'On post-process in admin attribute group', 'On post-process in admin attribute group', 0, 0), ('postProcessFeature', 'On post-process in admin feature', 'On post-process in admin feature', 0, 0), ('featureValueForm', 'Add fields to the form "feature value"', 'Add fields to the form "feature value"', 0, 0), ('postProcessFeatureValue', 'On post-process in admin feature value', 'On post-process in admin feature value', 0, 0), ('afterDeleteFeatureValue', 'On deleting attribute feature value', 'On deleting attribute feature value', 0, 0), ('afterSaveFeatureValue', 'On saving attribute feature value', 'On saving attribute feature value', 0, 0), ('attributeForm', 'Add fields to the form "feature value"', 'Add fields to the form "feature value"', 0, 0), ('postProcessAttribute', 'On post-process in admin feature value', 'On post-process in admin feature value', 0, 0), ('afterDeleteAttribute', 'On deleting attribute feature value', 'On deleting attribute feature value', 0, 0), ('afterSaveAttribute', 'On saving attribute feature value', 'On saving attribute feature value', 0, 0)
(1062) Duplicate entry 'attributeGroupForm' for key 'hook_name'



ALTER TABLE `pst_employee` ADD `bo_show_screencast` TINYINT(1) NOT NULL DEFAULT '1' AFTER `bo_uimode`
(1060) Duplicate column name 'bo_show_screencast'



UPDATE `pst_country` SET id_zone = (SELECT id_zone FROM `pst_zone` WHERE name = 'Oceania' LIMIT 1) WHERE iso_code = 'KI' LIMIT 1


ALTER TABLE `pst_lang` ADD `date_format_lite` char(32) NOT NULL DEFAULT 'Y-m-d' AFTER language_code
(1060) Duplicate column name 'date_format_lite'



ALTER TABLE `pst_lang` ADD `date_format_full` char(32) NOT NULL DEFAULT 'Y-m-d H:i:s' AFTER date_format_lite
(1060) Duplicate column name 'date_format_full'



UPDATE `pst_lang` SET `date_format_lite` = 'd/m/Y' WHERE `iso_code` IN ('fr', 'es', 'it')


UPDATE `pst_lang` SET `date_format_full` = 'd/m/Y H:i:s' WHERE `iso_code` IN ('fr', 'es', 'it')


UPDATE `pst_lang` SET `date_format_lite` = 'd.m.Y' WHERE `iso_code` = 'de'


UPDATE `pst_lang` SET `date_format_full` = 'd.m.Y H:i:s' WHERE `iso_code` = 'de'


UPDATE `pst_lang` SET `date_format_lite` = 'm/d/Y' WHERE `iso_code` = 'en'


UPDATE `pst_lang` SET `date_format_full` = 'm/d/Y H:i:s' WHERE `iso_code` = 'en'


ALTER IGNORE TABLE `pst_specific_price_priority` ADD UNIQUE ( `id_product` )


SET NAMES 'utf8'


SET NAMES 'utf8'


/* PHP:update_order_canada(); */


CREATE TABLE IF NOT EXISTS `pst_compare` ( `id_compare` int(10) unsigned NOT NULL AUTO_INCREMENT, `id_customer` int(10) unsigned NOT NULL, PRIMARY KEY (`id_compare`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8


ALTER TABLE `pst_compare_product` DROP `id_compare_product` , DROP `id_guest` , DROP `id_customer`


ALTER TABLE `pst_compare_product` ADD `id_compare` int(10) unsigned NOT NULL, ADD PRIMARY KEY( `id_compare`, `id_product`)


ALTER TABLE `pst_store` CHANGE `latitude` `latitude` DECIMAL(11, 8) NULL DEFAULT NULL


ALTER TABLE `pst_store` CHANGE `longitude` `longitude` DECIMAL(11, 8) NULL DEFAULT NULL


ALTER TABLE `pst_address_format` ADD PRIMARY KEY (`id_country`)


ALTER TABLE `pst_address_format` DROP INDEX `country`


/* PHP:hook_blocksearch_on_header(); */


SET NAMES 'utf8'


SET NAMES 'utf8'


INSERT IGNORE INTO `pst_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_LIMIT_UPLOAD_IMAGE_VALUE', '2', NOW(), NOW()), ('PS_LIMIT_UPLOAD_FILE_VALUE', '2', NOW(), NOW())


Po zmianie nazwy folderu instalki i admina wszedłem do PA.
Teoretycznie sklep się podniósł, ale  w PA co chwilę trafiam na komunikat "This functionnality has been disabled.
W zakładce ustawienia dodatkowo mam komunikaty:
This functionnality has been disabled. => Enable Shop
This functionnality has been disabled. => Maintenance IP
This functionnality has been disabled. => Enable SSL

Jakieś propozycje rozwiązań? ;)

*

Offline sower

  • Mieszkaniec
  • *****
  • 1,016
  • 3
    • I Love PrestaShop
  • PrestaShop: PS
  • Status: Programista
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #4 dnia: Styczeń 11, 2012, 04:51:34 pm »
ta
namieszałeś ;)

przywrócenie bazy
przywrócenie plików z przed update ;) (łacznie z całym config) ;)
SZYBKA POMOC TECHNICZNA : gg 45116037
SKLEPY | MODUŁY | INTEGRACJE | POMOC TECHNICZNA

*

Offline zorunid

  • Nowy
  • *
  • 13
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #5 dnia: Styczeń 11, 2012, 04:59:33 pm »
Przywrócenie to nie problem, bo mam backupy, ale po każdorazowym przywróceniu przy próbie aktualizacji mam cały czas problem z "kanadą" ;)

Szukałem też rozwiązania na forum presty, tam też ludzie borykają się z tym problemem ;)

*

Offline mario

  • Mieszkaniec
  • *****
  • 640
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #6 dnia: Styczeń 11, 2012, 05:40:00 pm »
programisci w tym czasie aktualizowali wlasnie post dla kanady cos nie do konca sprawdzili update,
zreszta nie pierwszy raz

zmien funkcje z zapytania - na addslashes() albo calkowicie wywal w zaleznosci jak masz skonfigurowane srodowisko
« Ostatnia zmiana: Styczeń 11, 2012, 06:10:11 pm wysłana przez mario »
Integracja wf-mag presta
freelancer

*

Offline zorunid

  • Nowy
  • *
  • 13
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #7 dnia: Styczeń 11, 2012, 06:18:10 pm »
programisci w tym czasie aktualizowali wlasnie post dla kanady cos nie do konca sprawdzili update,
zreszta nie pierwszy raz

zmien funkcje z zapytania - na addslashes() albo calkowicie wywal w zaleznosci jak masz skonfigurowane srodowisko

Na SVN nie ma jeszcze aktualizacji tego pliku.

Właśnie przywracam sklep w wersji 1.4.4.1 (przed aktualizacją) na WAMPie i usuwam linię 47.

Jak to nie pomoże to jak powinna wyglądać ta linia z funkcją addslashes() ? :)

=== EDIT ===
Po usunięciu linii:

Error during install/upgrade: ( ! ) Warning: Invalid argument supplied for foreach()
in C:\wamp\www\tonery_upd\install\php\update_order_canada.php on line 54 Call Stack #TimeMemoryFunctionLocation
10.0006402424{main}( )..\model.php:0
20.0814701752require_once

( 'C:\wamp\www\tonery_upd\install\xml\doUpgrade.php' )..\model.php:91
31.09693516568call_user_func_array ( )..\doUpgrade.php:371
41.09693516704update_order_canada( )..\doUpgrade.php:371

*

Offline mario

  • Mieszkaniec
  • *****
  • 640
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #8 dnia: Styczeń 11, 2012, 06:30:15 pm »
bqSQL($address_field) na
addslashes($address_field)

funkcja bqSQL jest typowa funkcja anti SQL injection a ze sam to robisz wiec ona jest niepotrzebna,
w zaleznosci od konfiguracji srodowiska moze byc potrzebny albo nie, znak ucieczki
wiec najpierw sprobuj
= o.`'.addslashes($address_field).'`)
a jak bedziesz mial dalej bledy (bo moga byc 2 znaki ucieczki)
to bez zadnej funkcji
= o.`'.$address_field.'`)
Integracja wf-mag presta
freelancer

*

Offline zorunid

  • Nowy
  • *
  • 13
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #9 dnia: Styczeń 11, 2012, 06:55:08 pm »
Pierwsza opcja z funkcją zadziałała, ale... Pojawił się ten sam komunikat (on line 54) co w moim poprzednim poście :(

*

Offline mario

  • Mieszkaniec
  • *****
  • 640
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #10 dnia: Styczeń 11, 2012, 07:35:17 pm »
kurcze
to zamien funkcje globalnie w skrypcie
Integracja wf-mag presta
freelancer

*

Offline sower

  • Mieszkaniec
  • *****
  • 1,016
  • 3
    • I Love PrestaShop
  • PrestaShop: PS
  • Status: Programista
SZYBKA POMOC TECHNICZNA : gg 45116037
SKLEPY | MODUŁY | INTEGRACJE | POMOC TECHNICZNA

*

Offline mario

  • Mieszkaniec
  • *****
  • 640
  • 0
  • Płeć: Mężczyzna
Odp: aktualizacja 1.4.4.1 do 1.4.6.2 - problem z Kanadą
« Odpowiedź #12 dnia: Styczeń 11, 2012, 10:14:56 pm »
 ;D ;D ;D ;D ;D ;D
Integracja wf-mag presta
freelancer