Задать вопрос
@yaslonane

Почему некорректное обновление данных mysql из php?

Выполняю такой код:
$db = Db::getConnection();

$title_price = filter_input(INPUT_POST, 'title_price');
$info_price = filter_input(INPUT_POST, 'info_price');;
$stmt = $db->prepare("UPDATE general SET title_price=:title_price, info_price=:info_price WHERE id=1");
$stmt->bindParam(':title_price', $title_price);
$stmt->bindParam(':info_price', $info_price);
return $stmt->execute();
Стирает данные в столбцах, стоящих до этих двух, которые я не указываю коде, в последующих столбцах не стирает. В phpmyadmin отрабатывает правильно.
  • Вопрос задан
  • 80 просмотров
Подписаться 1 Сложный 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@yaslonane Автор вопроса
Нашёл ошибку. После выполнения кода из вопроса вызывалась функция:
self::checkAdmin();
$message = false;
if(filter_input(INPUT_POST, 'save') !== null){
$message = info::setUpdateInfo();
}
$gen_inf = info::getInfo();
require_once (ROOT . ADM_TMPL . 'index.php');
return true;
}
И т.к. изначально был передан post с именем кнопки 'save', начинала отрабатывать эта функция по условию, а т.к. не были переданы параметры по нужным полям в базу забивались null. Исправил в итоге переименование кнопок + очередность в роутах поменял. Может кому пригодится.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
toxa82
@toxa82
Не может такого быть, он меняет только то что указано.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽