php不会连接到mysql [英] php wont connect to mysql
问题描述
我试图创建一个连接到mysql数据库并将数据插入数据库的PHP文件。但是我无法连接到数据库。我得到以下错误
(!)注意:未定义的变量:dbname在C:\wamp\www\php_Final_kk.php在第34行
调用堆栈
I am trying to create a PHP file that connects to a mysql database and inserts data into the database. However I am having difficulty getting it to connect to the database. I get the following error ( ! ) Notice: Undefined variable: dbname in C:\wamp\www\php_Final_kk.php on line 34 Call Stack
(!)注意:未定义的变量:sql在C:\wamp\www\php_Final_kk.php在第52行
( ! ) Notice: Undefined variable: sql in C:\wamp\www\php_Final_kk.php on line 52
SQLSTATE [HY000 ] [1045]拒绝用户'root'@'localhost'的访问(使用密码:YES)
SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)
我的用户名和密码对于数据库是正确的,授予,但我只是不能似乎得到它连接任何帮助将被aprreciated和我已经包括我的代码下面。感谢!
My username and password are correct for the database and all privilges have been granted but I just can not seem to get it to connect any help would be aprreciated and I have included my code below. Thanks!
<?php
$servername = "localhost";
$username = "root";
$password = "";
// Create connection
$conn = mysqli_connect($servername, $username, $password);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$fname = $_POST['fname'];
$lname = $_POST['lname'];
$email = $_POST['email'];
$uname = $_POST['uname'];
$password = $_POST['password'];
$SSN = $_POST['ssn'];
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO users (fname, lname,email,username,password,SSN) VALUES ('$fname', '$lname', '$email', '$uname', '$password', '$ssn')";
// use exec() because no results are returned
$conn->exec($sql);
echo "New record created successfully";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>
enter code here
推荐答案
当您通过 mysqli_connect
创建连接时,您必须提供4个参数:主机,用户名,密码和数据库名称。您缺少数据库名称。
When you create connection via mysqli_connect
, you must supply 4 arguments: host, username, password and database name. You lack database name.
正确的调用是:
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');
if (!$link) {
die('Connect Error (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}
这一切都在官方文档
这篇关于php不会连接到mysql的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!