我想从数据库中选择数据并将其分配到会话中。后来我想调用它并使用它..$sql = "SELECT * FROM users WHERE email = '$email' AND password = '$password'"; $query = mysqli_query($mysqli, $sql) or die ("Error: " . mysqli_error($mysqli)); $row = mysqli_num_rows($query); if($row == 0) { echo "Invalid Username/Password. Click here to <a href = 'login.html'>Login</a>"; } else { $sql = "SELECT accname FROM account WHERE email = '$email'"; $result=mysqli_query($mysqli,$sql); $row=mysqli_fetch_all($result,MYSQLI_BOTH); $_SESSION['accname']= array_column($rows, 'accname'); $r = mysqli_fetch_assoc($query); $_SESSION['fname'] = $r['fname']; $_SESSION['lname'] = $r['lname']; $_SESSION['email'] = $r['email']; header("Location: dashboard.php"); }
1 回答

冉冉说
TA贡献1877条经验 获得超1个赞
如果用户可以有多个accname与其电子邮件地址关联的值,那么您可以使用array_column从结果数据中提取所有这些值:
$sql = "SELECT accname FROM account WHERE email = '$email'";
$result=mysqli_query($mysqli,$sql);
$rows=mysqli_fetch_all($result,MYSQLI_BOTH);
$_SESSION['accname']= array_column($rows, 'accname');
如果只能有一个accname,您可以简单地将调用更改mysqli_fetch_all为mysqli_fetch_assoc:
$sql = "SELECT accname FROM account WHERE email = '$email'";
$result=mysqli_query($mysqli,$sql);
$row=mysqli_fetch_assoc($result);
$_SESSION['accname']= $row['accname'];
- 1 回答
- 0 关注
- 177 浏览
添加回答
举报
0/150
提交
取消