亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php登錄表單修剪未定義的索引錯誤

php登錄表單修剪未定義的索引錯誤

PHP
qq_花開花謝_0 2023-10-01 17:27:33
我輸入了正確的用戶和錯誤的用戶。我收到這條消息:注意:未定義索引:用戶名和未定義索引:密碼。我在輸入代碼中收到無效的用戶輸入錯誤。第 18 行和第 23 行正在返回Undefined index消息。寫入了不正確的用戶輸入,而不是在輸入部分中輸入。如何解決這個問題?我研究了很多話題。這段 PHP 代碼<?php        session_start();        require_once "../../config.php";        if(isset($_SESSION["loggedin"]) && $_SESSION["loggedin"] === true){            header("location: ../../index.php");            exit;        }        $username = " ";        $password = " ";        $username_err = " ";        $password_err =  " ";                 if($_SERVER["REQUEST_METHOD"]=="POST"){            if(empty(trim($_POST["username"]))){                $username_err = "Lütfen kullan?c? ad?n?z? giriniz.";            } else {                $username = trim($_POST["username"]);            }            if(empty(trim($_POST["password"]))){                $password_err = "Lütfen ?ifrenizi giriniz.";            } else{                $password = trim($_POST["password"]);            }            if(empty($username_err) && empty($password_err)){                $tsql = "SELECT id, username, password FROM [ARAC_TAKIP].[dbo].[KULLAN?C?LAR]                 WHERE username = :username ";            if($stmt = $pdo->prepare($tsql)){                $stmt->bindParam(":username", $param_username, PDO::PARAM_STR);                $param_username = trim($_POST["username"]);                if($stmt->execute()){                    if($stmt->rowCount() == 1){                        if($row = $stmt->fetch()){                            $id = $row["id"];                            $username = $row["username"];                            $hashed_password = $row["password"];                            if(password_verify($password, $hashed_password)){
查看完整描述

2 回答

?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

PHP 文檔說,empty()需要一個變量作為參數。trim()作為一種方法不適用于empty().?您應該使用isset()檢查 POST 變量是否已聲明:

if(!isset($_POST["username"]) || empty($_POST["username"])) {

? ? $username_err = "Lütfen kullan?c? ad?n?z? giriniz.";

} else {

? ? $username = trim($_POST["username"]);

}

if(!isset($_POST["password"]) || empty($_POST["password"])) {

? ? $password_err = "Lütfen ?ifrenizi giriniz.";

} else{

? ? $password = trim($_POST["password"]);

}


查看完整回答
反對 回復 2023-10-01
?
梵蒂岡之花

TA貢獻1900條經驗 獲得超5個贊

根據 PHP 文檔,該empty()函數僅接收一個變量作為參數。這意味著您無法使用empty("Data"). 您需要在調用該函數之前將參數設置為變量,如下例:

$foo = trim(" Test");
$isEmpty = empty($foo);

此致!


查看完整回答
反對 回復 2023-10-01
  • 2 回答
  • 0 關注
  • 160 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號