Подскажите php код для запроса к БД

Здравствуйте, нужно сделать запрос к БД
UPDATE cscart_products SET out_of_stock_actions=B
можете подсказать как должен выглядеть php код, который можно выполнить перейдя на страницу сайта к примеру site.ru/db_update.php
я так понял нужна эта функция
$sql_string = db_quote(‘UPDATE ?:products SET list_price = ?d WHERE product_id = ?i’, 123.45678910, ‘12 OR true’);

но точно не знаю как правильно написать полный запрос к бд для обновления данных в базе

Вам для всех товаров? для какого-то одного? или динамически, чтобы при заходе на страницу товара покупателем например, настройка автоматом переключалась?

1 лайк

Попробуйте так

<?php
define('AREA', 'C');
require(dirname(__FILE__) . '/init.php');
db_query('UPDATE ?:products SET list_price = ?d WHERE product_id = ?i', 123.45678910, 12);
fn_echo('Готово');
1 лайк

для всех

уточню, нужно выполнить конкретно этот запрос:
UPDATE cscart_products SET out_of_stock_actions=B
средствами php
код будет на странице, при открытии которой будет выполняться код, делая обновления в БД, страница будет вызываться по сути любым человеком, но устно о ней будет знать только админ

<?php
define('AREA', 'C');
require(dirname(__FILE__) . '/init.php');
db_quote('UPDATE ?:cscart_products  SET out_of_stock_actions= B');
>

такой код наверно не совсем корректный?

Смотрите выше, только вместо db_quote надо db_query, внутри ваш запрос. Параметры к вашему запросу не нужны.

<?php
define('AREA', 'C');
require(dirname(__FILE__) . '/init.php');
db_query('UPDATE cscart_products  SET out_of_stock_actions=B');
>

верно?

Да, именно

1 лайк

почему-то при открытии php страницы с кодом

<?php
define('AREA', 'C');
require(dirname(__FILE__) . '/init.php');
db_query('UPDATE cscart_products SET out_of_stock_actions=B');

появляется
Service
unavailable
Sorry, service is temporarily unavailable.

может нет каких-то прав…
php файл лежит в корне сайта

db_query(‘UPDATE cscart_products SET out_of_stock_actions=“B”’);

1 лайк

Используйте плейсхолдер, а то форум немного ломает кавычки)

<?php
define('AREA', 'C');
require(dirname(__FILE__) . '/init.php');
db_query('UPDATE ?:products SET out_of_stock_actions = ?s', 'B');
3 лайка

отлично, все работает спасибо!

Добрый день.

Подскажите, динамически реализовывали каким образом?
Проверяете сессию, запрос к бд, посетитель уходит и снова запрос к бд?

даже и не думал, просто задал уточняющий вопрос. а вариант конечно вообще утопический на самом деле ))

products.pre.php контроллер добавьте и в нем запрос как нужно (для всех товаров на списке или конкретного при заходе на товар (проверяется по $mode))

1 лайк

извиняюсь за наглость, еще и в не той теме, но может знаете примерно в каком php файле высчитывается стоймость доставки, которая отображается при оформлении заказа?

app/Tygh/Shippings/Shippings.php

смотрите там calculateRates