Php warning: mysqli_stmt::bind_param(): количество элементов в строке определения типа не соответствует количеству переменных привязки warning
Я испытываю следующую ошибку.
Предупреждение: mysqli_stmt::bind_param(): количество элементов в строке определения типа не соответствует количеству переменных привязки
Как исправить эту проблему?
Authenticate.php
<?php require_once "config.php"; session_start(); // Starting Session ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); echo $_POST['username']; echo $_POST['password']; $error = ''; // Variable To Store Error Message echo "Submit clicked"; if (empty($_POST['username']) || empty($_POST['password'])) { echo "Username or Password is invalid"; echo "Still haven't got data"; }else{ $username = $_POST['username']; $password = $_POST['password']; $conn = $link; $query = "SELECT username, password, data FROM mathbglogin WHERE username = '$username' and password = '$password'"; $stmt = $conn->prepare($query); $stmt->bind_param("sss", $username, $password, $data); $stmt->execute(); $stmt->bind_result($username, $password, $data); $stmt->store_result(); if($stmt->fetch()){ $_SESSION['username'] = $username; $_SESSION['data'] = $data; echo $username, $data; header("location: welcome.php"); mysqli_close($conn); echo "Done!"; }else{ echo "Unsuccessful"; } } ?>
config.php
<?php define('DB_SERVER', 'localhost'); define('DB_USERNAME', 'root'); define('DB_PASSWORD', ''); define('DB_NAME', 'users'); $link = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME); if($link === false){ die("ERROR: Could not connect. " . mysqli_connect_error()); } ?>
То, что я получаю, это:
123321Submit щелкнул
Предупреждение: mysqli_stmt::bind_param(): количество элементов в строке определения типа не соответствует количеству переменных привязки в строке определения типа. D:\Apps\XAMPP\htdocs\StefanMath - Copy\LoginAuthenticate.php на линии 22
Неудачный
Имейте в виду, что 123321-это фиктивный тест и пароль.
Что я уже пробовал:
Я пытался изменить количество утверждений, но это не работает.