Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP登录总是返回错误_Php_Mysql_Login_Mysqli_Prepared Statement - Fatal编程技术网

PHP登录总是返回错误

PHP登录总是返回错误,php,mysql,login,mysqli,prepared-statement,Php,Mysql,Login,Mysqli,Prepared Statement,我正在使用MySqli编写的语句来完成这一步。没有此密码。我做这个是为了一个朋友,一个老师。我希望学生能够在没有密码的情况下输入自己的ID,从而进入一个页面,在那里他们可以借书、还书、查看状态等。 这是我的密码: functions.php: <?php function check_login() { $host = "localhost"; $user = "root"; $pass = "password"; $data = "login"; $con = mysqli_c

我正在使用MySqli编写的语句来完成这一步。没有此密码。我做这个是为了一个朋友,一个老师。我希望学生能够在没有密码的情况下输入自己的ID,从而进入一个页面,在那里他们可以借书、还书、查看状态等。 这是我的密码:

functions.php:

<?php
function check_login() {
 $host = "localhost";
 $user = "root";
 $pass = "password";
 $data = "login";
 $con = mysqli_connect($host, $user, $pass, $data);
 if ($stmt = $con -> prepare("SELECT * FROM students WHERE id=?")) {
  $stmt -> bind_param("s", $sid);
  $stmt -> execute();
  $stmt -> store_result();
  if($stmt -> num_rows() == "1") {
   $_SESSION['sid'] = $sid;
   $_SESSION['logged'] = "yes";
   $stmt -> close();
   header("Location: index.php");
  }
  else
  {
   echo "Wrong Username/Password Combo";
  }
 }
}

$sid
超出了
检查登录()功能的范围。要使其进入范围,需要将其作为参数传递:

check_login($sid);
您也可以在函数中使用
global
关键字,但这是一种不好的编程实践


了解更多信息。

超出了
检查登录()功能的范围。要使其进入范围,需要将其作为参数传递:

check_login($sid);
您也可以在函数中使用
global
关键字,但这是一种不好的编程实践


了解更多信息。

超出了
检查登录()功能的范围。要使其进入范围,需要将其作为参数传递:

check_login($sid);
您也可以在函数中使用
global
关键字,但这是一种不好的编程实践


了解更多信息。

超出了
检查登录()功能的范围。要使其进入范围,需要将其作为参数传递:

check_login($sid);
您也可以在函数中使用
global
关键字,但这是一种不好的编程实践


了解更多信息。

您需要以$sid作为参数声明check\u登录函数

    function check_login($sid){
        ...
    }
然后在调用时传入值

    $sid = $_POST['sid'];
    include "functions.php";
    session_start();
    check_login($sid);

您需要以$sid作为参数声明check_登录函数

    function check_login($sid){
        ...
    }
然后在调用时传入值

    $sid = $_POST['sid'];
    include "functions.php";
    session_start();
    check_login($sid);

您需要以$sid作为参数声明check_登录函数

    function check_login($sid){
        ...
    }
然后在调用时传入值

    $sid = $_POST['sid'];
    include "functions.php";
    session_start();
    check_login($sid);

您需要以$sid作为参数声明check_登录函数

    function check_login($sid){
        ...
    }
然后在调用时传入值

    $sid = $_POST['sid'];
    include "functions.php";
    session_start();
    check_login($sid);


你有什么错误?mysqli\u error()怎么说?@johncode你必须运行他的代码,看看错误在哪里:)。你需要把变量传递给
check\u login()
比如
check\u login($sid)
那么在functions.php中,我应该用function check\u login($sid)替换函数check\u login()在login.php中也要这样做吗?是的,您必须以其他方式将其定义为global,您会遇到什么错误?mysqli\u error()怎么说?@johncode你必须运行他的代码,看看错误在哪里:)。你需要把变量传递给
check\u login()
比如
check\u login($sid)
那么在functions.php中,我应该用function check\u login($sid)替换函数check\u login()在login.php中也要这样做吗?是的,您必须以其他方式将其定义为global,您会遇到什么错误?mysqli\u error()怎么说?@johncode你必须运行他的代码,看看错误在哪里:)。你需要把变量传递给
check\u login()
比如
check\u login($sid)
那么在functions.php中,我应该用function check\u login($sid)替换函数check\u login()在login.php中也要这样做吗?是的,您必须以其他方式将其定义为global,您会遇到什么错误?mysqli\u error()怎么说?@johncode你必须运行他的代码,看看错误在哪里:)。你需要把变量传递给
check\u login()
比如
check\u login($sid)
那么在functions.php中,我应该用function check\u login($sid)替换函数check\u login()在login.php中也要这样做吗?是的,您必须以其他方式将其定义为全局