0

一些背景知识:我最初尝试在 Windows 上执行 Apache、MySql 和 PHP,每个都单独安装(那是什么 PITA!)。最后我听说我会更适合mac,所以我得到了MAMP。

很高兴发现一切都已安装,我尝试使用它。基本上一切正常,除了 MySQL 查询(我正在尝试将数据插入表中)。

这是我的代码:

<h1>hello world</h1>
<?php
echo "hello ";
echo date('H:i:s, jS F Y');
$link = mysql_connect('localhost', 'root', 'root');
if ($link)
    echo "success";
else
    echo "failure";

$db_selected = mysql_select_db('MyDB', $link);
if ($db_selected) 
    echo "success";
else
    echo "failure";

$my_query = mysql_query($link,"INSERT INTO comments (cName, cComment)
VALUES ('Peter', 'Hellloooooo')");

if ($my_query)
    echo "success";
else
    echo "failure";

mysql_close($link);
?>

我的输出如下所示:

你好世界

你好 2013 年 3 月 19 日 00:14:12successsuccessfailure

如您所见,mysql_connect 和 mysql_select_db 有效,但 mysql_query 无效。我花了很多徒劳的时间试图弄清楚这一点。代码有什么问题?

4

1 回答 1

2

尝试

$my_query = mysql_query("INSERT INTO comments (cName, cComment)
VALUES ('Peter', 'Hellloooooo')", $link);

下次更好的mysqli或PDO。

更新: Mysqli:你需要创建 mysqli 连接

$mysqli = mysqli_connect("host", "user", "password", "database");
$stmt = $mysqli->prepare("INSERT INTO comments(cName, cComment) VALUES (?, ?)");

$name = 'Peter';
$comment = 'Haloooo';
$stmt->bind_param("ss", $name, $comment);
$stmt->execute();
于 2013-03-18T23:32:46.277 回答