Для того чтобы задать запрос UPDATE в PHP, где название столбца является переменной, вам потребуется создать динамический запрос. Важно помнить про безопасность и использовать подготовленные выражения для предотвращения SQL инъекций.
Пример кода:
<?php // Подключение к базе данных $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = new mysqli($servername, $username, $password, $dbname); // Проверка соединения if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // Переменные для запроса $tableName = "my_table"; $columnName = "my_column"; $newValue = "new_value"; $primaryKey = 1; // Подготовленное выражение $sql = $conn->prepare("UPDATE $tableName SET $columnName = ? WHERE id = ?"); $sql->bind_param("si", $newValue, $primaryKey); // Выполнение запроса if ($sql->execute() === TRUE) { echo "Record updated successfully"; } else { echo "Error updating record: " . $conn->error; } // Закрытие соединения $conn->close(); ?>
В этом примере динамически формируется запрос UPDATE, где название столбца и таблицы являются переменными. Переменные $columnName, $tableName и $primaryKey просто заменяют заданные значения в запросе. Используя подготовленные выражения и метод bind_param, можно безопасно передать значения переменных в запрос и избежать SQL инъекций.
Не забывайте всегда проверять вводимые данные и очищать их от возможных опасных символов перед выполнением запросов к базе данных.