Ошибка при обновлении OpenCart

Тема в разделе "Установка и обновление", создана пользователем Taegnik, 17 фев 2022.

  1. Taegnik

    Taegnik Новичок

    Сообщения:
    1
    Симпатии:
    0
    Решили обновить OpenCart версии 2.3.0.2 (rs.6) до 3.0.3.7 . Php установлен 7.3.33. После начала обновления, спустя 5 секунд, выдает ошибку:

    Ошибка (0): Error: Invalid default value for 'date_start'
    Error No: 1067
    ALTER TABLE `oc_coupon` ENGINE = `MyISAM` в /var/www/vhosts/taegnik.com/httpdocs/system/library/db/mysqli.php строка 41

    кусок кода httpdocs/system/library/db/mysqli.php:

    1<?php
    2namespace DB;
    3final class MySQLi {
    4 private $connection;
    5
    6 public function __construct($hostname, $username, $password, $database, $port = '3306') {
    7 $this->connection = new \mysqli($hostname, $username, $password, $database, $port);
    8
    9 if ($this->connection->connect_error) {
    0 throw new \Exception('Error: ' . $this->connection->error . '<br />Error No: ' . $this->connection->errno);
    11 }
    12
    13 $this->connection->set_charset("utf8");
    14 $this->connection->query("SET SQL_MODE = ''");
    15 }
    16
    17 public function query($sql) {
    18 $query = $this->connection->query($sql);
    19
    20 if (!$this->connection->errno) {
    21 if ($query instanceof \mysqli_result) {
    22 $data = array();
    23
    24 while ($row = $query->fetch_assoc()) {
    25 $data[] = $row;
    26 }
    27
    28 $result = new \stdClass();
    29 $result->num_rows = $query->num_rows;
    30 $result->row = isset($data[0]) ? $data[0] : array();
    31 $result->rows = $data;
    32
    33 $query->close();
    34
    35 return $result;
    36 } else {
    37 return true;
    38 }
    39 } else {
    40 throw new \Exception('Error: ' . $this->connection->error . '<br />Error No: ' . $this->connection->errno . '<br />' . $sql);
    41 }
    42 }
     
  2. Ravilr

    Ravilr Специалист

    Сообщения:
    3.877
    Симпатии:
    1.064
    Так обновлять нельзя. Это не вордпресс. Бывают сложности даже с соседними версиями, а вы на целое поколение.
    Для вас решение или заново делать сайт или забыть про обновление.
     
  3. Rubynoid

    Rubynoid Пользователь

    Сообщения:
    95
    Симпатии:
    3
    Здравствуйте! Ответил с предложением об обновлении версии движка, в личку
     
  4. fanatic

    fanatic Продвинутый пользователь

    Сообщения:
    1.415
    Симпатии:
    239
    называйте вещи своими именами.
    это не обновление, а создание сайта на тройке, перенос данных, и подбор, установка модулей под новую версию.
     
    Dimasscus нравится это.
  5. Dimasscus

    Dimasscus Пользователь

    Сообщения:
    110
    Симпатии:
    1
    обновиться в один клик не получится. по сути как сказали выше- это создание нового сайта по прототипу, перенос и адаптация таблиц, установка и настройка модулей