我是PHP新手并开发一个登录表单.请在下面找到我使用的代码.当我尝试它时给了我以下错误:
Fatal error: Can’t use function return value in write context in
C:\xampp\htdocs\forsiteSystem\login.PHP on line 3
请帮我解决这个问题.
thems / login.html的源代码:
@H_403_17@Meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> PHP" method="get"> Name:
@H_403_17@PHP // venushka thisara dharmasiri require 'config.PHP'; require 'thems\login.html'; ?>
@H_403_17@PHP if(isset($_POST("Submit_button"))==true) print("Submit button pressed"); else print("submit button sorry"); ?>
@H_403_17@PHP $dbUser="root"; $dbPassword=""; $dbName="forsitelogin"; $dbHost="localHost"; $dbConnection= MysqL_connect($dbHost,$dbUser,$dbPassword); if($dbConnection) { MysqL_select_db($dbName); //print("Sucessfully connected to database"); } else die("
最佳答案
脚本返回的错误解释了它:
Fatal error: Can’t use function return value in write context in
C:\xampp\htdocs\forsiteSystem\login.PHP on line 3
如果您不理解错误的含义 – 并且相信我,即使对于有经验的程序员来说,大多数错误消息都是奇怪的 – 查看引用的行号.在login.PHP中查看第3行显示错误; $_POST(“Submit_button”)无效:
@H_403_17@if(isset($_POST("Submit_button"))==true) print("Submit button pressed"); else print("submit button sorry");
它应该是$_POST [“Submit_button”]:
@H_403_17@if(isset($_POST["Submit_button"])==true) print("Submit button pressed"); else print("submit button sorry");
但进一步看,为什么有== true?它可以简单地像这样:
@H_403_17@if(isset($_POST["Submit_button"])) print("Submit button pressed"); else print("submit button sorry");
但我建议更好地检查这个值,如下所示:
@H_403_17@if(array_key_exists("Submit_button",$_POST) && !empty(trim($_POST["Submit_button"]))) print("Submit button pressed"); else print("submit button sorry");
我发现使用array_key_exists
和!empty
与trim
的组合更适合基本用户提交的数据验证.