0

不知何故,我在尝试更新我的 sql 数据库中的记录时遇到了我的 sql 错误

这是我当前的代码

html表单:

<html>
<head>
<title>title here</title>
</head>
<body>
<form action="end.php" method="POST">
<input type="text" id="comment" name="comment" placeholder="Kommentar"><p>
<input type="submit" value="Stop arbejde">
</form>
</body>
</html>

结束.php

<?php
$host="localhost";
$username="root";
$password="password";
$db_name="db";
$tbl_name="log";

mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

$comment=$_POST['comment'];
$datetime=date("y/m/d H:i:s");
$editit=date("W/D");

$sql="UPDATE log SET end=$datetime, comment=$comment WHERE editid='$editit'";
$result=mysql_query($sql);

if($result){
echo "Successful<BR>";
}
else {
echo "Fejl";
}
mysql_close();
?>

自从我收到错误“Fejl”以来,我做错了什么?

4

2 回答 2

7

字符串必须用单引号括起来

$sql="UPDATE log SET end='$datetime', comment='$comment' WHERE editid='$editit'";

但您的查询很容易出现SQL Injection. 请花时间阅读下面的文章

于 2012-10-31T17:13:55.423 回答
0

$sql 中的变量名应该在单引号内。

$sql="UPDATE log SET end='$datetime', comment='$comment' WHERE editid='$editit'";

此外,您应该从表单标签中的 html 代码中删除段落标签。

于 2012-10-31T17:20:47.800 回答