0

以下の私のコードで何が間違っているのか、誰にも分かりますか? 変数を取得して、件名、メッセージ、および日付を正常に表示するようにしましたが、変数から件名 (テキストエリアからの新しいカスタム メッセージ) と日付を変数に追加して、データベース。

    <?php
require("db.php");

$query_params = array(
  ':id' => $_GET['id'],
  ':username' => $_SESSION['user']['username']
);
$query = "SELECT id, subject, message, date FROM tickets
              WHERE username = :username And id= :id";
$stmt = $db->prepare($query);
  $result = $stmt->execute($query_params);
  $result = $stmt->setFetchMode(PDO::FETCH_NUM);
while ($row = $stmt->fetch($result)) {
    echo $row['subject'];
    echo $row['message'];
    echo $row['date'];

    PROBLEMS WITH THE CODE BELOW>>>>

if(!empty($_POST))
{
if(empty($_POST['message']))
{
$error="Please enter a Message.";
}
else
{
$query = "
INSERT INTO supporttickets (
username,
subject,
message,
date
) VALUES (
:username,
:subject,
:message,
date
)
";
$query_params = array(
':username' => $_SESSION['user']['username'],
':subject' => $_POST['subject'],
':date' => $_POST['date'],
':message' => $_POST['message']
);
   $stmt = $db->prepare($query);
   $result = $stmt->execute($query_params);
  }
 }
}
?>
<form action="" method="post" name="form">
<textarea name="message" cols="71" rows="9" id="message"></textarea>
<input type="submit" value="Submit" />
</form>
4

2 に答える 2

0

パラメータを切り替えてみてください。INSERT クエリの作成方法と一致する必要があります。メッセージと日付を入れ替えました。

$query_params = array(
':username' => $_SESSION['user']['username'],
':subject' => $_POST['subject'],
':message' => $_POST['message'],
':date' => $_POST['date']
);
于 2013-08-07T00:41:02.743 に答える