获取数据并以html格式显示

bqjvbblv  于 2021-06-20  发布在  Mysql
关注(0)|答案(2)|浏览(660)

我只是在学习php,我想做一个基本的登录。登录后,我想显示用户的基本信息(在本例中,仅显示名称),但由于某些原因,我没有打印名称。你能帮帮我吗?

<?php
include "config.php";

// Session
if(!isset($_SESSION['uname'])){
    header('Location: login.php');
}
// Logout
if(isset($_POST['but_logout'])){
    session_destroy();
    header('Location: login.php');
}
// CHECK THIS
$sql_query = "select * from users where username='".$uname."'";
$result = mysqli_query($con,$sql_query);
$row = mysqli_fetch_array($result);
?>

<!doctype html>

<html>
    <head></head>
    <body>
        <form method='post' action="">
            <h1>Dashboard</h1>
            <div>
                <!-- CHECK THIS -->
                <h2>Hello <?php echo $row['name']; ?></h2>
            </div>
            <div>
                <input type="submit" value="Logout" name="but_logout">
            </div>
        </form>
    </body>
</html>

登录、注销和会话已在工作。表结构包含一个名为users的表,其列为:id、username、password、name、email。
谢谢

vaqhlq81

vaqhlq811#

这是一个非常基本的示例:首先必须打开到服务器和数据库的连接,创建一个php文件,让我们调用“conexion\u db.php”并添加下一个代码:

<?php
    function ConexionDBServer($DB_Con)
    {
        $servername = "your_server";
        $username = "your_user";
        $password = "your_password";

        $conDB = mysqli_connect($servername, $username, $password);
        if (!$conDB)
        {        
            die('Could not connect: ' . mysqli_error());
            return -1;
        }
        $DB = mysqli_select_db($conDB, $DB_Con);
        if (!$DB)
        {
            echo "<SCRIPT LANGUAGE='javascript'>
                    alert('CONEXION WITH DB FAIL');
                </SCRIPT>";
            return -1;
        }
        return $conDB;
    }
?>

现在创建“main”页面,调用“main\u page.php”,并添加:

<?php
    echo "example mysql </br>";
?>
<!doctype html>
<html>
    <head></head>
    <body>
        <form action="<?php echo $PHP_SELF?>" method="POST">  
            <input size=10 maxlength="150" type="text" name="txtUsuario">  
            <input type="submit" value="Login" name="cmdLogin">
        </form>
        <?php
            if($_POST[txtUsuario])
            {
                $sql_query = "select * from users where username='" . $_POST[txtUsuario] . "'";
                require_once('CONEXION_DB.php');
                $con=ConexionDBServer("name_of_your_db");
                $result = mysqli_query($con,$sql_query);
                while($row = mysqli_fetch_array($result))
                {
                    echo $row['username'] . "</br>";
                }
                mysqli_close($con);
            }
        ?>
    </body>
</html>

如您所见,为了从表单中捕获输入条目,必须使用$\u post方法。

r3i60tvu

r3i60tvu2#

$uname 未定义
尝试: $_SESSION['uname'] 14号线;
你总是可以调试这个,例如var\u dump($sql\u query)并在phpmyadmin中执行它
如果你想用 $row['name'] ,必须有关联数组: $row = mysqli_fetch_assoc($result);

相关问题