次のスクリプトを使用して、Web サイトのメッセージを更新するフォームを処理しています。問題は、何らかの理由で行を更新するのではなく、行をクリアしていることです。私はPhpmyadminからクエリをコピーしたので、それが正しいことを知っています。また、投稿された値をエコーしようとしましたが、それらもすべて正常にエコーアウトされましたが、何らかの理由でフォームで送信をクリックすると、更新する代わりに記録します。
<?php
include("connectmysqli.php");
if (isset($_POST['OnOff'])) {$OnOff = $_POST['OnOff'];}else {$OnOff = '';}
if (isset($_POST['title'])) {$title = $_POST['title'];}else {$title = '';}
if (isset($_POST['message'])) {$message = $_POST['message'];}else {$message = '';}
$stmt = $db->prepare("UPDATE `itsnb_chronoforms_data_urgentform` SET `title` = '$title',`message` = '$message',`OnOff` = '$OnOff' WHERE `cf_id` =1;");
if (!$stmt) trigger_error($db->error);
$stmt->execute();
echo 'Message Updated !';
echo '<p><a href="index.php?&key='.$key.'">Back To Main Menu</a></p>';
?>
これはテーブルです: