繁体   English   中英

如何从SQL数据库[PHP]中提取某些值?

[英]How do I pull the value of something from an SQL database [PHP]?

我的数据库中有一列名为“ Admin”,我希望它可以检查值(无论是1还是NULL)。 如果是1,我希望它做某事。

如何编写查询并验证条目= = 1?

现在我要做以下设置

<?php
    include 'db_connect.php';

    if ($_SESSION['username'] == "admin")
    {
        echo '<a href="watWk8.php"> Admin Panel </a>';
        echo '';
    }
    else
    {
        echo "Please log in as admin (user: admin password: admin) to use the admin control panel";
    }
?>

这意味着如果用户名是admin,它将继续运行循环,但是我希望任何用户都可以在注册时在方框中打勾并拥有管理权限。 (我知道这是破坏性的,但这只是用于学校项目和概念验证)

谢谢!

编辑:

我尝试了以下

 <?php include 'db_connect.php'; $query = "SELECT * from member WHERE Admin = '1'"; $result = mysqli_query($connection, $query); if ($_SESSION['username'] == "admin") { echo '<a href="watWk8.php"> Admin Panel </a>'; echo ''; echo $result; } else { echo "Please log in as admin (user: admin password: admin) to use the admin control panel"; } ?> 

尝试回显后出现以下错误 https://i.imgur.com/4cBzHog.png

你正在尝试类似的事情..

function admin_check( $email, $password ){
    $db = connect();
    if( $db ){
        $admin=1;
        $stmt = $db->prepare("SELECT * FROM users WHERE email = :email and password = :password and admin =:admin ");
        $stmt->bindParam(":email", $email);
        $stmt->bindParam(":password", $password);
        $stmt->bindParam(":admin", $admin);
        $stmt->execute();
        $row = $stmt->fetchAll();
        $resultCount = count($row);
        return $resultCount;
    }
}

请以正确的方式连接数据库并从数据库获取数据,请阅读此手册: http : //php.net/manual/zh/pdo.connections.php

在大多数情况下,通过mysql或mysqli驱动程序使用PDO更为有用。

您只需要了解mysqli_query();的返回类型mysqli_query(); 返回混合类型变量意味着它可能是数组或二进制(True或False),有时取决于查询类型。 以下结果可能会输出为false(表示错误)或array表示返回数据),因此可以通过以下方式使用条件检查$ result:

if($result) // or if(count($result) > 0 && $result)

如果存在数据,则根据需要为每行数据使用循环,并为打印完整的$result您需要使用var_dump()printr()而不是echo例如:

 var_dump($result);

有关mysqli_query()的详细信息,请单击以下链接: http : //php.net/manual/en/function.mysql-query.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM