【发布时间】:2013-04-14 13:29:36
【问题描述】:
我遇到以下 MySQL 查询问题:
我的脚本生成这个作为示例查询:
INSERT INTO `contacts`(`name`, `phone`, `email`, `city`, `state`, `date`) VALUES ('Test2', '123-456-7890', 'test@test.com', 'mesa', 'az', '04-14-2013')
如果我直接进入 PHPMyA,效果很好。但是,我试图用来从我的网站发送查询的 PHP 脚本不起作用,我无法弄清楚。这里是:
$sql = "INSERT INTO `contacts`(`name`, `phone`, `email`, `city`, `state`, `date`) VALUES ('$name', '$phone', '$email', '$city', '$state', '$date')";
mysql_query($sql);
$result = mysql_query($sql);
if($result)
{
echo("<br>Data Input OK");
}
else
{
echo("<br>Data Input Failed");
}
没有任何东西进入 MySQL DB,也没有显示 PHP 错误,但是,如果我回显 $sql,我会得到我之前发布的确切查询。
【问题讨论】:
-
您是否打印了查询以查看是否所有预期值都存在?还要注意您正在执行两次查询,因此一旦您修复它,它将在每次运行时执行 2 次插入
-
您正在运行两次查询,您的第二次尝试可能会失败
-
为什么不只是
print(mysql_error()); -
Please, don't use
mysql_*functions in new code。它们不再维护and are officially deprecated。看到red box?改为了解prepared statements,并使用PDO 或MySQLi - this article 将帮助您决定哪个。如果你选择 PDO,here is a good tutorial.
标签: php mysql insert insert-into