我的任务是关于与xampp服务器的PHP连接,它没有连接并给我错误

时间:2018-01-31 15:49:13

标签: php mysql

请告诉我我的代码中的错误我正在尝试使用php将登录表单与数据库连接但我收到这些错误:

  

警告:mysqli_connect():( HY000 / 1045):拒绝用户访问   '根' @'本地主机' (使用密码:YES)in   第9行的C:\ xampp \ htdocs \ MyProject \ php \ signin.php

     

注意:尝试获取非对象的属性   第11行的C:\ xampp \ htdocs \ MyProject \ php \ signin.php

     

致命错误:未捕获错误:调用成员函数query()   C:\ xampp \ htdocs \ MyProject \ php \ signin.php中的布尔值:17堆栈跟踪:#0   {main}在第17行的C:\ xampp \ htdocs \ MyProject \ php \ signin.php中抛出

<?php

$servername = "localhost";
$username = "root";
$password="";
$dbname = "myproject";

// Create connection
$conn = mysqli_connect($servername,$username,$password,$dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "INSERT INTO sign_in (username,password)";

if ($conn->query($sql) === TRUE) {
    echo "New record inserted successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}


$conn->close();

?>

3 个答案:

答案 0 :(得分:-1)

您在此处未提供的root mysql帐户上必须有密码:

$password="";

错误的其他部分是这样的直接结果,$ conn变成了布尔值而不是对象,因为mysqli_connect()不成功(它在失败时返回false)。

答案 1 :(得分:-1)

您的查询不正确,因为没有给出插入的值。它应该是这样的:

$sql = "INSERT INTO sign_in (username,password) VALUES ($username,$password)";

答案 2 :(得分:-1)

你得到这个错误是因为你和mysqli_ *函数以及PDO代码混在一起。

PDO连接和mysqli_ *的方法都不同。

这是你的错误。     ******这是你的错误*****

$sql = "INSERT INTO sign_in (username,password)";

if ($conn->query($sql) === TRUE) { //ERROR line
    echo "New record inserted successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

您使用函数mysqli_query()而不是访问$conn的成员函数,只需使用下面的正确示例。

// Perform queries 
mysqli_query($conn,"SELECT * FROM Persons");
mysqli_query($conn,"INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Glenn','Quagmire',33)");

mysqli_close($conn);

希望你明白这一点并帮助你..