dim565
Искусственный Интеллект
(424764)
3 года назад
ID, site_name и onetitle это наверное не таблицы, а поля в таблице с именем settings?
Я не знаю, что вы собираетесь хранить в site_name и onetitle, записей (строк) будет больше, чем одна? Тогда поле ID нужно обязательно, по нему будете сообщать, какую именно запись требуется обновить.
Код обработчика (не проверял, если будут ошибки пишите в комментариях):
<?
$site_name = $_POST['site_name'];
$onetitle = $_POST['onetitle'];
$setting_id = $_POST['setting_id'];
// подключение к БД
$host = 'localhost';
$database = 'имя базы';
$user = 'имя пользователя базы';
$password = 'пароль пользователя';
if ($conn === NULL) $db = new PDO("mysql:host=$host;dbname=$database", $user, $password);
// выполнение запроса с подстановкой переменных
$result = $db->prepare("UPDATE `settings` (site_name, onetitle) SET site_name = :site_name, onetitle = :onetitle WHERE id = :id");
$result -> bindParam(':site_name', $site_name, PDO::PARAM_STR);
$result -> bindParam(':onetitle', $onetitle, PDO::PARAM_STR);
$result -> bindParam(':id', $setting_id, PDO::PARAM_INT);
if ($result -> execute()) echo 'Успешно'; else echo 'Ошибка';
?>
Пример HTML формы, нужно вставить на нужную страницу админки. Не забудьте убрать пробелы после "<" (добавил, чтобы движок Ответов не вмешивался). В этом примере setting_id вводится вручную, знаю, что неудобно, но я не знаю вашей задачи
< form method="POST" action="путь до обработчика php">
< input name="site_name">
< input name="onetitle">
< input name="setting_id">
< input type="submit" value="Сохранить">
< /form>
Так вот, я хочу менять данные site_name и onetitle через input в админке. Скиньте готовый код пожалуйста, я уже 2 день мучаюсь с этим.