我想知道我的錯誤在哪里。我一直在尋找不同的解決方案來解釋為什么 $_POST 是空的,但沒有人想出為什么會發生這種情況的答案。
我在 HTML method="GET" 和 method="POST" 中嘗試了以下更改 - action="test.php" / action="localhost/test.php" / action="c:\xampp\htdocs\測驗.php”
這是 HTML 表單代碼
<form name="Driftslog" action="localhost/test.php" method="POST">
Init: <input type="text" id="Init" size="5" maxlength="5" autocomplete="on" required> <br></br>
LID: <input type="text" id="LID" size="8" maxlength="8" required><br></br>
Ticket-ID: <input type="text" id="TicketID" size="20" maxlength="15" required><br></br>
Kunde: <input type="text" id="Kunde" size="25" maxlength="50" required><br></br>
Start tid: <input type="datetime" id="StartTid" size="15" value="" required> <br></br>
Slut tid: <input type="datetime" id="SlutTid" size="15" value="" required><br></br\
Tilkald <input type="checkbox" id="Tilakd"><br></br>
Planlagt <input type="checkbox" id="Planlagt"><br></br>
Andet <input type="checkbox" id="Andet"><br></br>
<input type="submit" value="Opret">
</form>
這是我在這個 PHP 檔案中的 PHP 檔案 test.php 我嘗試了各種更改。我注釋掉了整個 IF 部分,只是嘗試列印變數以查看其中的內容,使用 var_dump($_POST) /print_r 和 a for each loop。都空著回來
就像 HTML 沒有將資料傳遞給 php 檔案一樣
在 php 檔案中唯一有效的是最后的回聲和頁面重定向
<?php
if(isset($_POST['submit']))
{
$Init = trim($_POST["Init"]);
$LID = trim($_POST["LID"]);
$TicketID = trim($_POST["TicketID"]);
$Kunde = trim($_POST["Kunde"]);
$StarttTid = trim($_POST["StartTid"]);
$SlutTid = trim($_POST["SlutTid"]);
$data = [ $Init, $LID, $TicketID, $Kunde, $StartTid, $SlutTid, "\n"];
$f = fopen("db.csv","a");
fputcsv($f, $data);
fclose($f);
print $TicketID;
}
echo "oprettet med success";
header("Refresh:3; url=http://localhost");
exit();
?>
uj5u.com熱心網友回復:
問題 -
您的表單值不會出現在您的 PHP 中。
解決方案 -
- 更新了 if 陳述句以檢查“REQUEST_METHOD”
- 在表單欄位中使用“名稱”。你不能依賴 ID。
例子 -
index.html -
<form name="Driftslog" action="localhost/test.php" method="POST">
Init: <input type="text" id="Init" name="Init" size="5" maxlength="5" autocomplete="on" required> <br></br>
LID: <input type="text" id="LID" name="LID" size="8" maxlength="8" required><br></br>
Ticket-ID: <input type="text" id="TicketID" name="TicketID" size="20" maxlength="15" required><br></br>
Kunde: <input type="text" id="Kunde" name="Kunde" size="25" maxlength="50" required><br></br>
Start tid: <input type="datetime" id="StartTid" name="StartTid" size="15" value="" required> <br></br>
Slut tid: <input type="datetime" id="SlutTid" name="SlutTid" size="15" value="" required><br></br\
Tilkald <input type="checkbox" id="Tilakd" name="Tilakd"><br></br>
Planlagt <input type="checkbox" id="Planlagt" name="Planlagt"><br></br>
Andet <input type="checkbox" id="Andet" name="Andet"><br></br>
<input type="submit" value="Opret">
</form>
測驗.php -
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$Init = trim($_POST["Init"]);
$LID = trim($_POST["LID"]);
$TicketID = trim($_POST["TicketID"]);
$Kunde = trim($_POST["Kunde"]);
$StarttTid = trim($_POST["StartTid"]);
$SlutTid = trim($_POST["SlutTid"]);
$data = [ $Init, $LID, $TicketID, $Kunde, $StartTid, $SlutTid, "\n"];
$f = fopen("db.csv","a");
fputcsv($f, $data);
fclose($f);
print $TicketID;
}
echo "oprettet med success";
header("Refresh:3; url=http://localhost");
exit();
?>
uj5u.com熱心網友回復:
在您的input欄位中,您缺少name=''屬性
uj5u.com熱心網友回復:
要從 post 請求中讀取欄位,輸入欄位必須具有該name屬性。
將您的 HTML 更改為如下所示:
<form name="Driftslog" action="localhost/test.php" method="POST">
Init: <input type="text" id="Init" name="Init" size="5" maxlength="5" autocomplete="on" required> <br></br>
LID: <input type="text" id="LID" name="LID" size="8" maxlength="8" required><br></br>
Ticket-ID: <input type="text" id="TicketID" name="TicketID" size="20" maxlength="15" required><br></br>
Kunde: <input type="text" id="Kunde" name="Kunde" size="25" maxlength="50" required><br></br>
Start tid: <input type="datetime" id="StartTid" name="StartTid" size="15" value="" required> <br></br>
Slut tid: <input type="datetime" id="SlutTid" name="SlutTid" size="15" value="" required><br></br\
Tilkald <input type="checkbox" id="Tilakd" name="Tilakd"><br></br>
Planlagt <input type="checkbox" id="Planlagt" name="Planlagt"><br></br>
Andet <input type="checkbox" id="Andet" name="Andet"><br></br>
<input type="submit" name="submit" value="Opret">
</form>
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/360411.html
