使用 php 脚本连接到 mysql
Connect to mysql using php script
我阅读了有关常见问题的留言板通知。我知道这个问题很常见,但我查看了 Whosebug 上的所有相关帖子,但找不到解决此问题的方法。
我使用的是最新的 MAMP。我有一个 mysql 数据库,我使用 MAMP 附带的 mysql 在命令行中设置了它。我有一个名为 "phpuser" 的用户,其密码是 "phpuser"。我已经检查了很多次,可以通过命令行使用该用户和密码登录。
这是我的代码。它直接来自这里的介绍教程 (http://www.w3schools.com/php/php_mysql_connect.asp):
<?php
$servername = "localhost";
$username = “phpuser”;
$password = “phpuser”;
// Create connection
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>
当我 运行 它使用最新的 MAMP php 版本时,我得到这个错误:
Nicks-MacBook-Pro:howdy Nick$ /Applications/MAMP/bin/php/php5.6.2/bin/php first_db.php
Notice: Use of undefined constant “phpuser” - assumed '“phpuser”' in /Applications/MAMP/htdocs/howdy/first_db.php on line 3
Notice: Use of undefined constant “phpuser” - assumed '“phpuser”' in /Applications/MAMP/htdocs/howdy/first_db.php on line 4
Warning: mysqli::mysqli(): (28000/1045): Access denied for user '“phpuser”'@'localhost' (using password: YES) in /Applications/MAMP/htdocs/howdy/first_db.php on line 7
Connection failed: Access denied for user '“phpuser”'@'localhost' (using password: YES)
我已经尝试 运行 使用默认的 php 版本,然后我得到了一个不同的错误:
Nicks-MacBook-Pro:howdy Nick$ php first_db.php
Warning: mysqli::mysqli(): (HY000/1045): Access denied for user '“phpuser”'@'localhost' (using password: YES) in /Applications/MAMP/htdocs/howdy/first_db.php on line 7
Connection failed: Access denied for user '“phpuser”'@'localhost' (using password: YES)
我试过使用 127.0.1.1 而不是本地主机,但它也不起作用。我检查了我的主机文件,看起来不错。无论如何,这是:
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
我还尝试了 运行 此处 MAMP 文档中的示例代码:http://www.mamp.info/en/documentation/MAMP-3-User-Guide.pdf
我运行以下:
<?php
DEFINE('DB_USERNAME', 'phpuser');
DEFINE('DB_PASSWORD', 'phpuser');
DEFINE('DB_HOST', 'localhost');
DEFINE('DB_DATABASE', 'status');
// http://www.php.net/manual/en/mysqli.connect.php
$mysqli = new mysqli(DB_HOST, DB_USERNAME,
DB_PASSWORD, DB_DATABASE);
if (mysqli_connect_error()) {
die('Connect Error (' . mysqli_connect_errno()
. ') ' . mysqli_connect_error());
}
echo 'Connected successfully.';
$mysqli->close();
?>
我收到以下错误:
Nicks-MacBook-Pro:howdy Nick$ /Applications/MAMP/bin/php/php5.6.2/bin/php first_db.php
Notice: Use of undefined constant ‘phpuser’ - assumed '‘phpuser’' in /Applications/MAMP/htdocs/howdy/first_db.php on line 3
Notice: Use of undefined constant ‘phpuser’ - assumed '‘phpuser’' in /Applications/MAMP/htdocs/howdy/first_db.php on line 4
Notice: Use of undefined constant ’status’ - assumed '’status’' in /Applications/MAMP/htdocs/howdy/first_db.php on line 6
Warning: mysqli::mysqli(): (28000/1045): Access denied for user '‘phpuser’'@'localhost' (using password: YES) in /Applications/MAMP/htdocs/howdy/first_db.php on line 9
Connect Error (1045) Access denied for user '‘phpuser’'@'localhost' (using password: YES)
我试过其他教程,但都 return 错误。我尝试使用 define() 函数而不是变量,但这似乎不起作用。我已经通读了几个关于 "Use of undefined constant" 问题的帖子,但我看不到任何解决方案如何适用于我。
我还尝试使用以下代码将 link 添加到 mysql.socket。这对我也没有帮助(我没有要启动的 /var/mysql 文件)。
sudo mkdir /var/mysql
sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /var/mysql/mysql.sock
我也尝试过使用不同的 mysql 套接字,但无法正确获取 运行 的任何代码。
您在 phpuser 周围使用的引号 (") 看起来像特殊字符(从 word 复制粘贴?)...尝试用 (") 替换它们。
我阅读了有关常见问题的留言板通知。我知道这个问题很常见,但我查看了 Whosebug 上的所有相关帖子,但找不到解决此问题的方法。
我使用的是最新的 MAMP。我有一个 mysql 数据库,我使用 MAMP 附带的 mysql 在命令行中设置了它。我有一个名为 "phpuser" 的用户,其密码是 "phpuser"。我已经检查了很多次,可以通过命令行使用该用户和密码登录。
这是我的代码。它直接来自这里的介绍教程 (http://www.w3schools.com/php/php_mysql_connect.asp):
<?php
$servername = "localhost";
$username = “phpuser”;
$password = “phpuser”;
// Create connection
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>
当我 运行 它使用最新的 MAMP php 版本时,我得到这个错误:
Nicks-MacBook-Pro:howdy Nick$ /Applications/MAMP/bin/php/php5.6.2/bin/php first_db.php
Notice: Use of undefined constant “phpuser” - assumed '“phpuser”' in /Applications/MAMP/htdocs/howdy/first_db.php on line 3
Notice: Use of undefined constant “phpuser” - assumed '“phpuser”' in /Applications/MAMP/htdocs/howdy/first_db.php on line 4
Warning: mysqli::mysqli(): (28000/1045): Access denied for user '“phpuser”'@'localhost' (using password: YES) in /Applications/MAMP/htdocs/howdy/first_db.php on line 7
Connection failed: Access denied for user '“phpuser”'@'localhost' (using password: YES)
我已经尝试 运行 使用默认的 php 版本,然后我得到了一个不同的错误:
Nicks-MacBook-Pro:howdy Nick$ php first_db.php
Warning: mysqli::mysqli(): (HY000/1045): Access denied for user '“phpuser”'@'localhost' (using password: YES) in /Applications/MAMP/htdocs/howdy/first_db.php on line 7
Connection failed: Access denied for user '“phpuser”'@'localhost' (using password: YES)
我试过使用 127.0.1.1 而不是本地主机,但它也不起作用。我检查了我的主机文件,看起来不错。无论如何,这是:
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
我还尝试了 运行 此处 MAMP 文档中的示例代码:http://www.mamp.info/en/documentation/MAMP-3-User-Guide.pdf
我运行以下:
<?php
DEFINE('DB_USERNAME', 'phpuser');
DEFINE('DB_PASSWORD', 'phpuser');
DEFINE('DB_HOST', 'localhost');
DEFINE('DB_DATABASE', 'status');
// http://www.php.net/manual/en/mysqli.connect.php
$mysqli = new mysqli(DB_HOST, DB_USERNAME,
DB_PASSWORD, DB_DATABASE);
if (mysqli_connect_error()) {
die('Connect Error (' . mysqli_connect_errno()
. ') ' . mysqli_connect_error());
}
echo 'Connected successfully.';
$mysqli->close();
?>
我收到以下错误:
Nicks-MacBook-Pro:howdy Nick$ /Applications/MAMP/bin/php/php5.6.2/bin/php first_db.php
Notice: Use of undefined constant ‘phpuser’ - assumed '‘phpuser’' in /Applications/MAMP/htdocs/howdy/first_db.php on line 3
Notice: Use of undefined constant ‘phpuser’ - assumed '‘phpuser’' in /Applications/MAMP/htdocs/howdy/first_db.php on line 4
Notice: Use of undefined constant ’status’ - assumed '’status’' in /Applications/MAMP/htdocs/howdy/first_db.php on line 6
Warning: mysqli::mysqli(): (28000/1045): Access denied for user '‘phpuser’'@'localhost' (using password: YES) in /Applications/MAMP/htdocs/howdy/first_db.php on line 9
Connect Error (1045) Access denied for user '‘phpuser’'@'localhost' (using password: YES)
我试过其他教程,但都 return 错误。我尝试使用 define() 函数而不是变量,但这似乎不起作用。我已经通读了几个关于 "Use of undefined constant" 问题的帖子,但我看不到任何解决方案如何适用于我。
我还尝试使用以下代码将 link 添加到 mysql.socket。这对我也没有帮助(我没有要启动的 /var/mysql 文件)。
sudo mkdir /var/mysql
sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /var/mysql/mysql.sock
我也尝试过使用不同的 mysql 套接字,但无法正确获取 运行 的任何代码。
您在 phpuser 周围使用的引号 (") 看起来像特殊字符(从 word 复制粘贴?)...尝试用 (") 替换它们。