使用在其他脚本中工作的凭据时发生php访问错误
我是一名iOS开发人员,正在尝试更新一点php以使用mysqli_*内容,而不是不推荐的mysql_*内容 我对php/mysql几乎一无所知,我被卡住了。我正在使用一个在中找到的脚本,其中的更改反映了我的字段名等 当我从浏览器调用以下命令时,我收到一个访问错误(连接失败:用户“whoisit7”@“localhost”(使用密码:YES)的访问被拒绝)。我使用的服务器名称、密码和用户名等都可以在浏览器中使用现有脚本,但不能在新脚本中使用 有人能指出我做错了什么吗使用在其他脚本中工作的凭据时发生php访问错误,php,mysql,Php,Mysql,我是一名iOS开发人员,正在尝试更新一点php以使用mysqli_*内容,而不是不推荐的mysql_*内容 我对php/mysql几乎一无所知,我被卡住了。我正在使用一个在中找到的脚本,其中的更改反映了我的字段名等 当我从浏览器调用以下命令时,我收到一个访问错误(连接失败:用户“whoisit7”@“localhost”(使用密码:YES)的访问被拒绝)。我使用的服务器名称、密码和用户名等都可以在浏览器中使用现有脚本,但不能在新脚本中使用 有人能指出我做错了什么吗 <?php $serve
<?php
$servername = "localhost";
$userName = "whoisit7_ios";
$password = "blahblahblah";
$dbName = "whoisit7_scathing";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT name, latitude, longitude FROM location where status = 1";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo "name: " . $row["name"]. " - latlong: " . $row["latitude"]. " " . $row["longitude"]. "<br>";
}
} else {
echo "0 results";
}
mysqli_close($conn);
?>
在PHP中,变量名区分大小写。因此,将连接变量名称更改为:
$servername = "localhost";
$username = "whoisit7_ios";
$password = "blahblahblah";
$dbname = "whoisit7_scathing";
如果您是PHP新手,请阅读它:PHP区分大小写,因此将以下行改为:
$conn = mysqli_connect($servername, $username, $password, $dbname);
到
您在$username(即$username)和$dbname(即您在上面声明的$dbname)中出错。只需更改-->
这个问题似乎来自数据库特权,因为我以前也遇到过这个问题。试试这个办法
GRANT ALL PRIVILEGES ON database_name TO usernamehere@host IDENTIFIED BY 'yourpassword';
FLUSH PRIVILEGES;
只需将小写字母更改为您自己的凭据。在变量中始终使用相同的大写字母,PHP中的变量区分大小写:
$conn=mysqli\u connect($servername、$username、$password、$dbname)
这里有$username
但是在你定义$username
之前,我羞愧地垂着头。太尴尬了。非常感谢!
GRANT ALL PRIVILEGES ON database_name TO usernamehere@host IDENTIFIED BY 'yourpassword';
FLUSH PRIVILEGES;