Mysql没有通过php连接到服务器

时间:2017-08-02 07:59:04

标签: php mysql database server

我一直试图通过php代码连接到mysql服务器,但无法。请帮我解决这个问题。

<?php
if($_SERVER["REQUEST_METHOD"] == "POST"){
    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);
    $email    = mysql_real_escape_string($_POST['email']);
    $fname    = mysql_real_escape_string($_POST['fname']);
    $lname    = mysql_real_escape_string($_POST['lname']);
$bool = true;
    mysql_connect("localhost", "root","rot_darshan") or die("Cannot connect to server"); //Connect to server
    mysql_select_db("first_db") or die("Cannot connect to database"); //Connect to database
    $query = mysql_query("Select * from users"); //Query the users table
    while($row = mysql_fetch_array($query)) //display all rows from query
    {
            $table_users = $row['username']; // the first username row is passed on to $table_users, and so on until the query is finished
            if($username == $table_users) // checks if there are any matching fields
            {
                    $bool = false; // sets bool to false
                    Print '<script>alert("Username has been taken!");</script>'; //Prompts the user
                    Print '<script>window.location.assign("register.php");</script>'; // redirects to register.php
            }
    }
    if($bool) // checks if bool is true
    {
            mysql_query("INSERT INTO users (username, password,fname,lname,email) VALUES ('$username','$password','$fname','$lname','$email')"); //Inserts the value to table users
            Print '<script>alert("Successfully Registered!");</script>'; // Prompts the user
            Print '<script>window.location.assign("register.php");</script>'; // redirects to register.php
    }
}
?>

2 个答案:

答案 0 :(得分:0)

请避免使用原生的mysql_ *函数。这些已被删除,将被删除: http://php.net/manual/en/function.mysql-connect.php

尝试遵循(mysqli_ *):
https://www.w3schools.com/php/php_mysql_connect.asp

$servername = "localhost";
$username = "root";
$password = "rot_darshan";
$database = "first_db";

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

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

//Query example
$result = $conn->query("SELECT * FROM users")
while ($row = $result->fetch_assoc()) {
    printf ("%s (%s)\n", $row["username"]);
}

如果这些不起作用,请检查您的数据库凭据(用户名,密码,数据库名称和/或端口)

答案 1 :(得分:0)

通过外部连接检查用户名,密码。否则将localhost替换为127.0.0.1或您的lan ip。 检查SELECT User,Host FROM mysql.user;