我对mysql_connect()使用什么密码和用户名?

时间:2015-03-27 11:04:40

标签: php mysql phpmyadmin

好的,所以你可能会告诉我,但我是MySQL和PHP的新手,我遇到了一个问题..在我连接到服务器的connect.php中,我没有知道我的密码和用户名以及端口是否正确。现在它说端口8080的原因是因为我的其他一个Web开发程序正在使用端口80,所以我进入了Apache文件并更改为端口,所以现在当我登录phpMyAdmin时,我必须输入localhost:8080。我不知道这是否与mysql_connect有关,我也检查了phpMyAdmin,它说我的用户名是root,我的密码是空的。空密码是否与MySQL_connect()混乱?谢谢,这是代码:

connect.php

<?php 
//This file allows me to easily connect to my database

mysql_connect("localhost:8080", "root", "");//connects to database, params are ("servername", "username", "password");
mysql_select_db("membersystem");//selects the table from db
?>

login.php

<?php 
error_reporting (E_ALL ^ E_NOTICE);//saves us from getting undefined index error

session_start();//makes it a sesion based system
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login</title>

</head>

<body>
     <!--the action='./login.php' tells the page where its gonna send the info, and the method='post' makes it so it dosent show the users personal info -->
    <?php 
        $form = "<form action='./login.php' method='post'>
            <table>
                <tr>
                    <td>Username</td>
                    <td><input type='text' name='user'/></td>
                </tr>
                <tr>
                    <td>Password</td>
                    <td><input type='password' name='password'/></td>
                </tr>
                <tr>
                    <td></td>
                    <td><input type='submit' name='loginbtn' value='Login'/></td>
                </tr>
            </table>
        </form>";

        if($_POST['loginbtn']){//if loginbtn pressed
                $user = $_POST['user'];//gets the username from text field from the form above
                $password = $_POST['password'];//gets the password from text field from the form above

                if($user){//checks if the username field from the form has been filled out
                    if($password){//checks if the password field from the form has been filled out
                        require("connect.php");//connects to db through connect.php

                        $password = md5(md5("gshgrYY665f".$password."gr76TH967G"));//encrypts the password 

                        //echo "$password"; echos the hash for password (5f8b1a8d8f2471a2c7c17e0058873447 )

                        $query = mysql_query("SELECT * FROM users WHERE username='$user' ");//checks if the username is found in database
                        $numrows = mysql_num_rows($query);
                        if($numrows == 1){
                                $row = mysql_fetch_assoc($query);//gets the query associated with the php
                                $dbid = $row['id'];//gets the id from db
                                $dbuser = $row['username'];//gets the username from db
                                $dbpass = $row['password'];//gets the password from db
                                $dbactive= $row['active'];//gets the active value from db

                            if($password == $dbpass){
                                if($dbactive == 1){

                                        //sets session info
                                        $_SESSION['userid'] = $dbid;
                                        $_SESSION['username'] = $dbuser;

                                        echo "you have been logged in as <b>$dbuser</b>. <a href='./member.php'>Click here</a> to go to member page";
                                    }
                                    else
                                        echo "You must activate your account to login. $form";



                                }
                                else
                                    echo "You didnt enter the right pass. $form";   
                            }
                            else
                                echo "The username you entered was not found. $form";

                        mysql_close();//closes connection
                    }
                    else
                        echo "You must enter your password. $form";
                }
                else
                    echo "You must enter your username. $form";
            }
            else
                echo $form;
    ?>
</body>
</html>

2 个答案:

答案 0 :(得分:2)

您不需要使用8080只需使用localhost,因为该端口号与mysql无关,但与webserver有关。要仅针对网络服务器,您需要像localhost:8080/project-name/

一样使用它

不要使用mysql_*方法。将来会感到失望。使用mysqli

 $con = new mysqli("localhost","root","","membersystem") or die('Connection failed');
 $result = $con->query("Your query here");

或者你可以在程序方法中使用mysqli_*函数。但我更喜欢使用面向对象的php。

请参阅文档。 http://php.net/manual/en/book.mysqli.php

答案 1 :(得分:1)

建立连接

$conn=mysqli_connect("localhost","root","","membersystem");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

和w3schools链接是http://www.w3schools.com/php/func_mysqli_select_db.asp