【问题标题】:MAMP: Cannot do MySQL queriesMAMP:无法执行 MySQL 查询
【发布时间】:2013-03-18 23:29:01
【问题描述】:

一些背景知识:我最初尝试在 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 无效。我花了很多徒劳的时间试图弄清楚这一点。代码有什么问题?

【问题讨论】:

  • cmets 只有这两个字段吗?也许您必须插入例如comment_ID(主键)或其他非空字段
  • cmets 有一个名为 cID 的 ID 字段,它会自动递增。

标签: php mysql mamp


【解决方案1】:

试试

$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();

【讨论】:

  • 我如何做mysqli?我应该将 mysql_query 更改为 mysqli_query 吗?
  • 我修复了数据库名称,因为它实际上都是小写的。但你的改变奏效了!谢谢!!!
猜你喜欢
  • 2017-01-11
  • 2013-03-11
  • 2013-08-04
  • 2017-07-14
  • 1970-01-01
  • 2016-01-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多