拉動這是我的HTML表單:獲取數據未通過
<form action='buddy_update.php'>
<input type='text' name='buddy1' required='' placeholder='Player ID/E-mail'>
<input type='hidden' name='id' value=''%".$id."%''>
<input type='submit' value='Request Buddy #1!'>
</form>
這是我在buddy_update
<?php
include 'credentials.php';
$id=$_GET['id'];
$buddy1=$_GET['buddy1'];
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$id=$_GET['id'];
$buddy1=$_GET['buddy1'];
$sql = "UPDATE buddy SET buddy1_id = '".$buddy1."' WHERE main_player = '".$id."'";
if (mysqli_query($conn, $sql)) {
echo $id;
echo $buddy1;
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
?>
$ buddy1 PHP來通過精絕,但$ id不。
對於它的價值,我也將value =''更改爲HTML表單上的純文本輸入,但它仍然無效。 PHP表單中的輸出仍然是空白的。
編輯 不知道爲什麼我定義了兩次變量!取出一個,但仍然是相同的問題
檢查是否有任何錯誤通過啓用PHP錯誤:https://stackoverflow.com/a/21429652/881032 - 也是你的代碼是非常脆弱的。查看[本文](https://www.wordfence.com/learn/how-to-prevent-sql-injection-attacks/)瞭解更多信息。 – lumio
如果你打開開發工具,在你的網絡標籤中,當你提交表單時,你能檢查你確實發送了正確的數據嗎?因爲現在看起來輸入值只是空的'input value ='''。此外,您的代碼非常容易受到SQL注入的影響,非常不安全。 – Giedrius
是的,我知道這是我要解決的問題列表中的下一個!歡呼,我會看看現在的PHP錯誤。我沒有得到任何在我的錯誤日誌中,但想到它。 –