首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php登录表单不能正常工作

php登录表单不能正常工作
EN

Stack Overflow用户
提问于 2014-03-10 19:39:08
回答 1查看 95关注 0票数 2

我正在尝试创建一个简单的登录功能,但它不起作用,而且我对mysqli还比较陌生,所以请容忍我。我只想检查电子邮件地址和密码是否是正确的,如果他们是然后登录用户。提前谢谢。

下面是我的登录代码,它检查凭据:

更新的代码--我添加了所有的报表,现在我得到了内部服务器错误

代码语言:javascript
复制
<?php

require_once 'connect.php';
mysqli_report(MYSQLI_REPORT_ALL);


session_start();

if (!isset($_SESSION['email'])) {

$e = trim($_REQUEST['email']);
$email = $mysqli->real_escape_string($e);
$p = trim($_REQUEST['password']);
$password = $mysqli->real_escape_string($p);

/*
if ($result = $mysqli->query("SELECT email, password, user_id" .
                                             " FROM users" .
                                             " WHERE email = '$email' AND password = '$password'")) {
    printf("Select returned %d rows.\n", $result->num_rows);
echo 'Total results: ' . $result->num_rows;

}
*/

if ($stmt = $mysqli->prepare("SELECT email, password, user_id FROM users WHERE email=? AND password=?")) {

    /* bind parameters for markers */
    $stmt->bind_param("ss", $email, $password);

    /* execute query */
    $stmt->execute();

    /* bind result variables */
    $stmt->bind_result($email, $password);

    /* fetch value */
    $stmt->fetch();

   if ($stmt->num_rows==1) {
   $row = $stmt->fetch_assoc(MYSQLI_NUM);
   $user_id = $row['user_id'];
   $_SESSION['user_id'] = $user_id;
   $_SESSION['email'] = $email;
   header("Location: home.php");

    /* close statement */
    $stmt->close();
} else {
    printf("Error message: %s\n", $mysqli->error);
}
/*
if ($result->num_rows==1) {
$row = $result->fetch_assoc(MYSQLI_NUM);
   $user_id = $row['user_id'];

if ($query_group = $mysqli->query("SELECT *" .
                                                        " FROM user_groups" .
                                                        " WHERE user_id = '".$user_id."'")) {
   //No more setcookie
   $_SESSION['user_id'] = $user_id;
   $_SESSION['email'] = $email;
} else {
echo 'Did not work';
}
}
*/

    /* free result set */
    // $result->close();
}
}

?>

下面是连接到数据库的connect.php:

代码语言:javascript
复制
<?php
$mysqli = new mysqli("data", "username", "password", "db");

if($mysqli->connect_errno > 0){
    die('Unable to connect to database [' . $mysqli->connect_error . ']');
}

?>
EN

回答 1

Stack Overflow用户

发布于 2014-03-10 19:50:09

您是否尝试删除ypur代码末尾的一个括号。我想你得把其中一个移走。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22309688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档