Не могу найти ошибку в sql update

Иван Сила

Подскажите новичку в PHP в чем моя ошибка.
Есть два варианта запроса UPDATE
Первый работает. Второй нет

PHP:
  1. $mysqli = new mysqli(“localhost”, “root”, “”, “new”);
  2. $mysqli->set_charset(‘utf8’);
  3.  
  4. if ($mysqli->connect_errno) {
  5. echo “Не удалось подключиться к MySQL: (“ . $mysqli->connect_errno . “) “ . $mysqli->connect_error;
  6. }
  7.  
  8. $query = $mysqli->query(“SELECT `product_id`, `name`, `meta_title`, `meta_description`, `meta_keyword` FROM `oc_product_description` WHERE 1”);
  9. $row = mysqli_fetch_assoc($query);
  10.  
  11. $name = $row[‘name’];
  12. $product_id = $row[‘product_id’];
  13. $title = $row[‘meta_title’] = $name . “Смотрите. Цена просто Супер”;
  14. $description = $row[‘meta_description’] = $name . “Покупайте здесь. Самый лучший выбор”;
  15. $keyword = $row[‘meta_keyword’] = $name купить здесь, $name тут, $name продажа там, $name цена тоже там, $name распродажа здесь, “;
  16.  
  17. $sql = “UPDATE
  18. `oc_product_description`
  19. SET
  20. `meta_title` = ‘привет’,
  21. `meta_description` = ‘этот запрос обновляет данные’,
  22. `meta_keyword` = ‘нормально так’
  23. WHERE
  24. `oc_product_description`.`product_id` = $product_id AND `oc_product_description`.`language_id` = 1″;
  25.  
  26. # Этот запрос работает нормально, обновляет данные в таблице
  27. $mysqli->query($sql);
  28.  
  29. $sql2 = “UPDATE
  30. `oc_product_description`
  31. SET
  32. `meta_title` = $title, `meta_description` = $description, `meta_keyword` = $keyword
  33. WHERE
  34. `oc_product_description`.`product_id` = $product_id
  35. AND
  36. `oc_product_description`.`language_id` = 1″;
  37.  
  38. # Этот запрос не работает, не обновляет данные в таблице
  39. $mysqli->query($sql2);

В чем проблема?
Буду признателен за подсказку.
Спасибо

От модератора: Для вставки кода используется BB-Code [code], [php] или кнопка </>

 

mkramer

Строки в SQL-запросах заключаются в кавычки. У вас не заключены. Плюс проэкранировать не помешает

При работе с кодом CMS лучше для работы с базой данных использовать средства CMS.

 

Иван Сила

А кавычки перед UPDATE не считаются разве?

 

mkramer

Отделяем SQL запрос от выражения PHP, его формирующего.

 

Иван Сила

В общем разобрался. Спасибо за подсказки.
Тема закрыта

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *