我是新的PHP和我试图创建一个成员登录。我用这个代码块支付,我很好奇,想知道如何从当前会话中获得用户名或uid
,以便我可以通过用户名欢迎用户。
<?php
session_start();
include 'db.php';
$uid = $_POST['uid'];
$pwd = $_POST['pwd'];
$sql = "SELECT * FROM users WHERE uid='$uid' AND pwd='$pwd'";
$result = mysqli_query($conn, $sql);
if (!$row == mysqli_fetch_assoc($result)) {
echo "Your username or password is incorrect.";
} else {
$_SESSION['id'] = !$row['$id'];
}
header("Location: index.php");
我尝试了这个if语句来显示用户名,但它根本没有显示结果。我的想法是,如果该语句显示用户的ID,同一行将获得uid,但这是不工作。
if (!$row == mysqli_fetch_assoc($result)) {
echo "Your username or password is incorrect.";
} else {
$_SESSION['id'] = !$row['$id'];
$_SESSION['uid'] = !$row['$uid'];
}
if (!$row == mysqli_fetch_assoc($result)) {
你试图检查是否至少有一个结果是错误的,有一个内置的函数mysqli_num_rows()
你的代码应该看起来像:
if(mysqli_num_rows($result) > 0 ) { // this line means if there is at least one result
// set your session here
$row = mysqli_fetch_assoc($result);
$_SESSION['id'] = $row['id'];
$_SESSION['uid'] = $row['uid'];
} else {
// print your error message here
}
在你的主页上,你可以使用下面的代码使用你的会话uid
说Hello用户
/////////////下面的索引页面代码///////////////////////
//不要忘记在PHP标签后的第一行开始会话
<?php
session_start();
echo 'Hello'.' '.$_SESSION['uid'];
既然你是php新手,你应该了解什么是!
& # 33;用于检查引用语句是否为false,例如
if( 1!=2){
echo 'not equal';
}
上面的语句将输出not equal