Okey所以我会尝试在获得正确的密码并交叉检查后从表中获取用户信息。我怎么能在此之后运行它。
$sql = "select password from users where name = '" . $_POST['name'] . "' and password='" . $_POST['pass'] . "'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "succesful";
$name = $_POST['name'];
$_session['sessionid'] = id();
//
//Im gonna do a sql query here!
//
echo '<h1 style="text-align: center;">Logged in!</h1>';
$_SESSION['user']= $_POST['name'];
答案 0 :(得分:0)
首先,在您的查询中使用$ _POST [&#39; name&#39;]非常危险,您应该先清理它。你可以使用mysql_real_escape_string()[虽然这可能会被弃用]。看看准备好的陈述,也可以提供帮助。 https://www.w3schools.com/php/php_mysql_prepared_statements.asp
回答你的实际问题。您应该从第一个查询返回用户的ID而不是密码。然后,您可以使用该ID并在该逻辑块中提取用户信息。