【问题标题】:cannot connect to server using php无法使用php连接到服务器
【发布时间】:2018-10-27 15:11:01
【问题描述】:
<?php
$host="localhost";
$user="user";
$password="debashree";
$connect=mysqli_connect($host,$user,$password);
if ($connect->connect_error) {
 die("connection_aborted".$connect->connect_error);
}
echo "connected succesfully";

这是mysql连接php脚本。一直显示错误

警告:mysqli_connect(): (HY000/1045): Access denied for user 'user'@'localhost' (using password: YES) in C:\xampp\htdocs\index.php on line 6

注意:试图在第 7 行的 C:\xampp\htdocs\index.php 中获取非对象的属性 连接成功

我看不懂请帮帮我?

【问题讨论】:

  • a) 检查docs of mysqli_connect 是否正确使用此函数 b) $connect 不是对象
  • c) “用户 'user'@'localhost' 的访问被拒绝”很清楚 IMO。
  • 您是否尝试过使用 127.0.0.1 而不是 localhost ?你确定你的凭据吗?如果您尝试在终端中使用此用户名和此密码连接会发生什么?
  • 你错过了 mysqli_connect 中的数据库名称参数 $link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");

标签: php mysqli


【解决方案1】:

您应该尝试进行以下更改:

<?php
try{
$host="localhost";
$user="user";
$password="debashree";
$databaseName = "myDB";
$connect=mysqli_connect($host,$user,$password, $databaseName);
if (**mysqli_connect_errno()**)
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
echo "connected succesfully";
}catch(Exception $e){
echo $e->getMessage();
}

另外,mysqli_connect 需要数据库作为第四个参数。

mysqli_connect("localhost","my_user","my_password","my_db");

【讨论】:

  • 那么你应该检查用户是否有权限访问数据库。如果没有,那么您必须通过以下命令在 mysql 中授予访问权限:GRANT ALL PRIVILEGES ON dbname.* TO 'yourusername'@'%' IDENTIFIED BY '12345';
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多