我是PHP新手(有點),我查了一下,找不到任何完全符合我的問題的信息,所以在這裏;設置表單作爲外部php文件中的函數
比方說,我宣佈一個表單,有2個字段和一個提交按鈕;
<form name = "tryLogin" action = "logIn()" method = "post">
Username: <input type = "text" name = "username" placeholder = "username.."><br>
Password: <input type = "text" name = "password" placeholder = "password.."><br>
<input type = "submit" value = "Submit">
</form>
在這裏,您可以看到我已經嘗試設置這一行動功能「登錄()」,我已經在這個文件的頭部已經包含。
在外部的php文件中,我有以下;
function logIn()
{
if($_POST['username'] == "shane" && $_POST['password'] == "shane")
{
$_SESSION['loggedIn'] = '1';
$_SESSION['user'] = $_POST['username'];
}
header ("Location: /index.php");
}
function logOut()
{
$_SESSION['loggedIn'] = '0';
header ("Location: /index.php");
}
(忽略任何「你不應該這樣做,這樣做」,我只是在這裏畫一幅畫)。
所以基本上我想表單提交到特定的功能,這可能嗎?我在這裏做了一些根本性的錯誤嗎?
是的,你不能這樣做那。它不會在響應正文中發送,並且只要它向您發送響應,就立即斷開與服務器的所有連接 – danronmoon
您需要編寫登錄頁面並在表單操作中使用該頁面。獲取此頁面上的登錄信息,然後您可以從該登錄頁面調用登錄功能。 – Saleem