簡體   English   中英

PHP將無法連接到MySQL

[英]php wont connect to mysql

我正在嘗試創建一個連接到mysql數據庫並將數據插入數據庫的PHP文件。 但是我很難讓它連接到數據庫。 我收到以下錯誤(!)注意:未定義的變量:在第34行的C:\\ wamp \\ www \\ php_Final_kk.php中的dbname調用堆棧

(!)注意:未定義變量:第52行的C:\\ wamp \\ www \\ php_Final_kk.php中的sql

SQLSTATE [HY000] [1045]對用戶'root'@'localhost'的訪問被拒絕(使用密碼:是)

我的用戶名和密碼對於數據庫是正確的,並且已授予所有特權,但是我似乎無法獲得它來連接任何幫助,我們對此深表感謝,並且在下面提供了我的代碼。 謝謝!

<?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個參數:host,用戶名,密碼和數據庫名。 您缺少數據庫名稱。

正確的選擇是:

$link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');

if (!$link) {
    die('Connect Error (' . mysqli_connect_errno() . ') '
            . mysqli_connect_error());
}

一切都在官方文檔中說明

您尚未定義數據庫名稱

dbname=$dbname


$servername = "localhost";
$username = "root";
$password = "";
$dbname = "my db name";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname );

在這里更正:

您必須提供4個必需的參數:主機,用戶名,密碼和數據庫名稱。 您缺少數據庫名稱。

$servername = 'localhost';
$username = 'root';
$password = '';
$dbname = 'test';

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

$dbname是您的代碼中缺少的數據庫名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM