MYSQL查询不起作用?

时间:2013-04-21 17:57:27

标签: php html mysql insert

您好我正在尝试将数据插入某些列,但它无法正常工作。有人可以帮忙吗?

我有这个

<form  action="member.php?id=<?php echo $data["id"];?>" method="post" style="display:inline-block; font-size:14px">

<input type="submit" value="Add" class="btn btn-primary" name="add"  />

</form>

然后:

if(isset($_POST["add"])){
$reciver = $data["username"];
$sender = $_SESSION['name'];
$query = $pdo->prepare("INSERT INTO friend-request(reciver, sender, timestamp) VALUES (?,?,?)");
$query->bindValue(1, $reciver);
$query->bindValue(2, $sender);
$query->bindValue(3, time());
$query->execute();
}

感谢。

2 个答案:

答案 0 :(得分:0)

timestamp是MySQL中的保留字。你必须用反引号逃脱:

INSERT ... ,`timestamp`) ...
            ^--       ^--

您不检查->execute()调用的返回值,因此您永远不会看到mysql尝试告诉您查询失败。 从不假设查询已成功。 始终检查错误。现在你的代码就相当于把手指伸进你的耳朵并且“lalalala听不到你”。

答案 1 :(得分:0)

我会说写这样的东西:

$reciver = $_POST["username"];

将数据插入数据库时​​,请小心SQL注入。

并确保您的表单中包含用户名输入字段