• Как увеличит Time-out Nginx?

    @prostovlad Автор вопроса
    Александр Карабанов, на большее у вас ума не хватило написать ? сразу виден ваш профессионализм ))
    аааа, понял, вы так себе посты набивает, спамом бессмысленным ))))
    Написано
  • Как увеличит Time-out Nginx?

    @prostovlad Автор вопроса
    все там везде прописано, в общем не знаю, что за глюк был, переустановил сервер с 0, все заработало.
    Написано
  • Как увеличит Time-out Nginx?

    @prostovlad Автор вопроса
    Zerg89, ну конечно же я его перегружаю после изменений )))
    Написано
  • Как сбросить заказы в 1с?

    @prostovlad Автор вопроса
    что такое
    дергаете ручку в 1С

    ?
    Написано
  • Как сбросить заказы в 1с?

    @prostovlad Автор вопроса
    при чем тут выгрузка из 1с на сайт ? это и так все нормально работает. вы поняли вообще в чем вопрос заключался ?
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    всем спасибо, вопрос закрыт, ->rows не нужен.
    что то ступил )))
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    попробовал вставить этот запрос через phpmyadmin просто как sql запрос, все отработало без ошибок (((
    честно говоря не понимаю почему не хочет работать как рнр запрос, пробовал менять версии рнр, от 5.6 до 7.4 разницы нет.
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    насколько я знаю, такого NOT ISNULL вообще то не, но попробовал на всякий случай, не работает.
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Дмитрий, хорошо, но это не обьясняет почему возникает эта ошибка ) ведь она возникает не сразу, а примерно на половине обработанной базы. почему половину обрабатывает нормально, а потом вдруг ей перестает нравится ?
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Дмитрий, если вы считаете что эт поможет, то нет проблем
    namespace DB;
    final class MySQLi {
    	private $connection;
    
    	public function __construct($hostname, $username, $password, $database, $port = '3306') {
    		$this->connection = new \mysqli($hostname, $username, $password, $database, $port);
    
    		if ($this->connection->connect_error) {
    			throw new \Exception('Error: ' . $this->connection->error . '<br />Error No: ' . $this->connection->errno);
    		}
    
    		$this->connection->set_charset("utf8");
    		$this->connection->query("SET SQL_MODE = ''");
    	}
    
    	public function query($sql) {
    		$query = $this->connection->query($sql);
    
    		if (!$this->connection->errno) {
    			if ($query instanceof \mysqli_result) {
    				$data = array();
    
    				while ($row = $query->fetch_assoc()) {
    					$data[] = $row;
    				}
    
    				$result = new \stdClass();
    				$result->num_rows = $query->num_rows;
    				$result->row = isset($data[0]) ? $data[0] : array();
    				$result->rows = $data;
    
    				$query->close();
    
    				return $result;
    			} else {
    				return true;
    			}
    		} else {
    			throw new \Exception('Error: ' . $this->connection->error  . '<br />Error No: ' . $this->connection->errno . '<br />' . $sql);
    		}
    	}
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Дмитрий,
    <?
    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    ini_set('error_reporting', E_ALL);
    class ControllerExtensionModuleDubli extends Controller {
        public function index() {
        $this->db->query('UPDATE `'.DB_PREFIX.'product` AS `p`
        INNER JOIN (
            SELECT `t`.`sku`, MIN(`p`.`product_id`) AS `product_id`
                FROM (
                    SELECT `sku`, MIN(`price`) AS `price`
                        FROM `'.DB_PREFIX.'product`
                        WHERE `quantity` != 0
                        GROUP BY `sku`
                ) AS `t`
                JOIN `'.DB_PREFIX.'product` AS `p`
                    ON `p`.`sku` = `t`.`sku` AND `p`.`price` = `t`.`price`
                WHERE `p`.`quantity` != 0
                GROUP BY `t`.`sku`
        ) AS `i` ON `i`.`product_id` = `p`.`product_id`
        SET `p`.`status` = (`i`.`product_id` IS NOT NULL)')->rows;
        echo "ok";
     }
    }
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Дмитрий, правильно, идет обработка всех записей в базе, update происходит если товаров с одинаковым sku больше одного.
    что бы не возникало лишних вопросов, тестил так, в начале базы, в середине и в конце, брал товар с одинаковым sku, все включал, запускал скрипт, те что в начале и середине отрабатывали нормально, оставался включенным только один. потом ошибка и те товары что в конце не отрабатывали. в базе товары есть которые и не имеют больше одного sku, все вперемешку, если бы проблема была в том что типа ошибка по товару который не имеет больше одного совпадения то вываливалось бы сразу.
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Сергей delphinpro,
    Почему он при ошибке не выбрасывает исключение с понятным описанием произошедшего.

    так в том и проблема, если бы возвращало понятное описание проблемы то и проблем бы не было (
    базу проверил, везде во всех полях все прописано. дело в том что я не могу конкретно отловить на каком товаре она вываливается. если бы точно знать sku или id товара/. тогда можно было бы конкретно смотреть записи в базе по этому товару..
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Сергей delphinpro, я конечно понимаю, что я дурак, но тогда как вы обьясните такой момент, в базе около 15000 товаров, ошибка вываливается где то на 7000, то есть 7000 товаров обрабатываются нормально, а потом вдруг перестает нравится код ?
    Метод query вернул совсем не объект, вот вам и ошибка.

    это я и так понимаю )
    вопрос почему возвращается не то что нужно ?
    проблема в коде, в рнр или базе ?
    что конкретно не нравится ?
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    вы считаете что я не вижу в какой строке ошибка ? хм, может и так, спорить не буду, буду рад если вы укажите что я не прав и ошибка не в этой строке.
    https://skr.sh/sJxENoqfgIM?a
    https://skr.sh/sJxB9jyw26D?a
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Ищю в поисковиках, я же написал, ошибка вот по этой строке
    SET `p`.`status` = (`i`.`product_id` IS NOT NULL)
    Запрос я рекомендую упростить

    и как его упростить ?
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Akina, не помогло
    Написано
  • В чем ошибка в запросе к базе?

    @prostovlad Автор вопроса
    Василий Банников, это константа, префикс базы, подставляется, которая указывается в конфиге при установке,
    ну если так принципиально, замените на `'ls_product`
    но сути это не изменит
    Написано
  • Как создать запрос, чтобы записать в поле значение другого поля этой же строки?

    @prostovlad Автор вопроса
    спасибо конечно за все ваши комменты, но может я не особо правильно написал вопрос, как написать запрос на одну запись это я и так знаю, проблема в том что надо изменить несколько десятков тысяч записей, вот и хотелось узнать возможность что бы не писать скрипт с выборкой id и потом цикл с подстановкой id в упдатинг, сделать одним запросом в phpmyadmin
    Написано