首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未选择数据库:登录php代码

未选择数据库:登录php代码
EN

Stack Overflow用户
提问于 2013-05-19 09:49:41
回答 2查看 725关注 0票数 1
代码语言:javascript
复制
<?php
    session_start();
        $con=mysqli_connect("localhost","xxx","xxxxxx","xxx");
            if (mysqli_connect_errno($con))
            {
            echo "Failed to connect to MySQL: " . mysqli_connect_error();
            }


        $eadd = $_POST['eadd'];
        $pass = $_POST['pass'];
        $eadd = htmlspecialchars(stripslashes(strip_tags($eadd)));
        $pass = htmlspecialchars(stripslashes(strip_tags($pass)));
        if (filter_var($eadd, FILTER_VALIDATE_EMAIL)) {
            $sql = mysql_query("SELECT * FROM accounts WHERE Emailadd = '$eadd' AND Password = '$pass'");
            if(!$sql){
                die('There was an error in query '. mysql_error());
                }
            $count = mysql_numrows($sql) or die(mysql_error());
            if ($count<=0)
                {

                    echo "
                        <html>
                            <style>
                                body{
                                    background-color:#cccccc;
                                    }
                                #error{
                                    position:relative;
                                    margin:auto;
                                    top:20px;
                                    width:320px;
                                    height:55px;
                                    background-color:#63a8d7;
                                    border:1px  solid #2a262a;
                                    }

                                #errorC{
                                    position:absolute;
                                    top:20px;
                                    left:20px;
                                    font: 14px arial, tahoma;
                                    }
                            </style>
                            <body>
                                <div id=error>
                                    <div id=errorC>
                                        Incorrect Email Address and Password! <a href=index.php>GO BACK</a>
                                    </div>
                                </div>
                            </body>
                        </html>
                            ";
                }
                else
                {
                    //have them logged in
                    $_SESSION['account'] = $eadd;
                    header('location:home.php');
                }
                mysqli_close($con);
        } else {
            echo "
                <html>
                    <style>
                        body{
                            background-color:#cccccc;
                            }
                        #error{
                            position:relative;
                            margin:auto;
                            top:20px;
                            width:320px;
                            height:55px;
                            background-color:#63a8d7;
                            border:1px  solid #2a262a;
                            }

                        #errorC{
                            position:absolute;
                            top:20px;
                            left:20px;
                            font: 14px arial, tahoma;
                            }
                    </style>
                    <body>
                        <div id=error>
                            <div id=errorC>
                                Invalid Email Address! <a href=index.php>GO BACK</a>
                            </div>
                        </div>
                    </body>
                </html>
                    ";
        }
?>

为什么会出现“没有选择数据库”的错误?我的mysqli_connect是正确的。我有另一个注册的php代码,我可以使用这个connection.But注册一些电子邮件地址,在login php代码中,我不能用用户的电子邮件地址登录。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-19 09:54:04

从上面的代码可以看出,您正在使用mysqli_connect进行数据库连接,使用mysql_query执行查询。使用mysqli_query而不是mysql_query。像这样

代码语言:javascript
复制
mysqli_query("SELECT * FROM accounts WHERE Emailadd = '$eadd' AND Password = '$pass'");
票数 2
EN

Stack Overflow用户

发布于 2013-05-19 09:53:44

实际上,您需要在鉴权后选择数据库。在建立数据库连接时,我们需要遵循以下步骤。

  1. Create a connection
  2. 选择数据库
  3. 启动查询
  4. Use query result
  5. 关闭连接

Sample Code is here

首先,您需要在登录后在代码中添加下面这一行

代码语言:javascript
复制
$db_select = mysql_select_db("myDatabase", $con);

其次,在选择数据库后,需要将$con作为第二个参数传递,这样查询语句就会如下所示

代码语言:javascript
复制
$sql = mysql_query("SELECT * FROM accounts WHERE Emailadd = '$eadd' AND Password = '$pass'", $con);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16630722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档