За последние 24 часа нас посетили 18854 программиста и 1635 роботов. Сейчас ищет 1201 программист ...

Как задать и имя поля, и значение через переменную?

Тема в разделе "MySQL", создана пользователем Булат Азат улы, 4 сен 2017.

  1. Булат Азат улы

    Булат Азат улы Активный пользователь

    С нами с:
    31 авг 2017
    Сообщения:
    61
    Симпатии:
    6
    Адрес:
    Республика Татарстан, город Казань
    Здравствуйте. Нужно отправить запрос, написав и имя поля, и его значение через переменную в PHP. Использую PDO. Пробовал такие варианты, но результата нет:
    PHP:
    1. // Задавал так же, как и значения
    2. $stmtJDarKon = $mb->prepare("UPDATE jadwal_kondezgelar SET :jadwal_kurs = :dares_id WHERE jadwal_id = :jadwal_id");
    3. $jadwal_kurs = $_POST[kurs];
    4. $stmtJDarKon->bindValue(':jadwal_kurs', $jadwal_kurs);
    5.  
    6. // Задавал как переменную
    7. $jadwal_kurs = $_POST[kurs];
    8. $stmtJDarKon = $mb->prepare("UPDATE jadwal_kondezgelar SET $jadwal_kurs = :dares_id WHERE jadwal_id = :jadwal_id");
    9.  
    10. // Пробовал даже так:
    11. $stmtJDarKon = $mb->prepare("UPDATE jadwal_kondezgelar SET ".$_POST[kurs]." = :dares_id WHERE jadwal_id = :jadwal_id");
    Подскажите пожалуйста, как правильно задать имя поля, используя переменную?
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.797
    Симпатии:
    1.331
    Адрес:
    Лень
    параграф говнокодства
    execute юзал?
     
  3. Булат Азат улы

    Булат Азат улы Активный пользователь

    С нами с:
    31 авг 2017
    Сообщения:
    61
    Симпатии:
    6
    Адрес:
    Республика Татарстан, город Казань
    Оу, извиняюсь, ступил немножко, забыл. Оказывается, вторым вариантом всё работает. Спасибо за подсказку.
    А это не понял. О чём вы?
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Что там такое kurs? Константа, или забыты кавычки?
     
  5. Булат Азат улы

    Булат Азат улы Активный пользователь

    С нами с:
    31 авг 2017
    Сообщения:
    61
    Симпатии:
    6
    Адрес:
    Республика Татарстан, город Казань
    @denis01, кавычки забыл поставить.
     
    denis01 нравится это.
  6. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.588
    Симпатии:
    1.763
    Только тогда надо по белым спискам обязательно проверять, а то инъекция будет.
    т.е.
    PHP:
    1. if (!in_array($_POST["kurs"], ["field1", "field2", "field3"])) {
    2.     die("Гори в аду, грёбанных хакер!!!");
    3. }