Post不会插入MySQL数据库

时间:2014-02-23 00:01:58

标签: php mysql post

我一直在寻找15分钟左右,找不到任何可以解决这个问题的事情。很抱歉,如果我只是使用了错误的关键字或已经回答的问题。同样要说明这不是一件非常安全的事情,因为任何人都可以看到这一点。

所以我的PHP Post不会插入到MySQL数据库中。

形式:

<form method="post" action="./thankyou.php">
    <h2>Please sign in</h2>
    <input type="user"name="user" placeholder="Username">
    <input type="textarea" class="" name="feedback" placeholder="Feedback for us."><br />
    <button class="" type="submit" name="submitted">Submit Feedback</button>
  </form>

谢谢:(是的,我用信息替换了xxx)

<?php 
$conn = mysql_connect('xxx', 'xxxx', 'xxxx');
if (!$conn) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db("xxx") or die(mysql_error());
$user = $_POST['user'];
$fdb = $_POST['feedback'];
$insert = "INSERT INTO contact WHERE (user, feedback) VALUES ('".$user."', '".$fdb."')";
mysql_query($insert);
if(!$insert)
{
   die('Could not enter data: ' . mysql_error());
}

echo $insert;

?>

Echo正确输出:

INSERT INTO contact WHERE (user, feedback) VALUES ('thisisauser', 'thisisfeedback')

我不知道该怎么做。

3 个答案:

答案 0 :(得分:1)

根据定义,插入没有where子句。

按如下方式更改您的查询:

INSERT INTO contact (user, feedback) VALUES ('thisisauser', 'thisisfeedback')

或者,你可以使用这个结构:

INSERT INTO contact SET user = 'thisisauser' , feedback = 'thisisfeedback'

最后,这是的安全性。使用其他database API

答案 1 :(得分:0)

你不需要提供WHERE插入其不正确的

应该是

$insert = "INSERT INTO contact (user, feedback) VALUES ('".$user."', '".$fdb."')";

你有

$insert = "INSERT INTO contact WHERE (user, feedback) VALUES ('".$user."', '".$fdb."')";
                                ^.........here is the issue

答案 2 :(得分:0)

主要问题是SQL查询以及检查查询正确执行的方式

<?php 
$conn = mysql_connect('xxx', 'xxxx', 'xxxx');
if (!$conn) {
    die('Could not connect: ' . mysql_error());
}

mysql_select_db("xxx") or die(mysql_error());


$user = $_POST['user'];
$fdb = $_POST['feedback'];

$insert = "INSERT INTO contact (user, feedback) VALUES ('".$user."', '".$fdb."')";

$retval = mysql_query($insert, $conn); 
if(!$retval) { //<---- You must check the result of the execution
  die('Could not enter data: ' . mysql_error());
}

echo "Entered data successfully\n";