私がやっていることは、ユーザーが押したボタンに応じて変数に値を渡すことです。私はテーブルを作成し、whileループでボタンを削除しますが、このため、すべてのボタンは同じ名前とIDを持ちます。適切なボタンが押されたときに、どのように特定のUserIDを変数に渡すことができますか?submitを押したときに、フォームコントロールからPHP htmlの変数に値を渡す方法
これは私がボタンのいずれかを押すと
<?php
$servername = "localhost";
$username = "root";
$password = "A1128857795!";
// Create connection
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
} else{
echo "Connected successfully";}
mysqli_select_db($conn,'test_schema');
$sql = "SELECT * FROM userinfo;";
$retvalues = mysqli_query($conn, $sql);
if(!$retvalues)
{
die("could not get data: " . mysqli_error());
}
print("<br>");
echo "<form action='delete.php' method='POST'>";
echo"<table border='1'>";
echo"<tr align='center'>";
echo "<th>ID</th>";
echo "<th>NAME</th>";
echo "<th>GENDER</th>";
echo "</tr>";
while($row = mysqli_fetch_array($retvalues, MYSQL_ASSOC))
{
print("<tr>");
echo "<td><input type='text' name='id' value='{$row['UserID']}'/></td>". " " . "<td>{$row['FirstName']}" . " " . "{$row['LastName']}</td>" .
" " . "<td align='center'>{$row['gender']}</td>";
echo "<td><input name='Delete' value='Delete' type='submit'></td>";
print("</tr>");
}
echo "</table>";
echo "</form>";
、それは常に最後のレコードを削除するには、DELETE文を引き起こし、表の最後の行のためのIDを毎回返す埋め込まれたHTMLと私のPHPです私のデータベースから。
if(isset($_POST['id']))
{
$delUID = $_POST['id'];
$sql="DELETE FROM userinfo WHERE UserID = $delUID";
$query = mysqli_query($conn, $sql);
echo "DELETE FROM userinfo WHERE UserID = $delUID;";
}
$conn->close();
?>
アドバイスは歓迎されます。ありがとうございました。
より良いあなたはdelete –
は実際にあなたが同じ名前を持つすべての行を提出しているとしますので、PHPは最後の値をとり、 – C2486
はまだ同じ問題を持つ最後の行を削除し、私は本当にどのように文ができればということが表示されませんそれらがすべて同じIDと名前を持つため、どのボタンが押されたかを区別します。このテーブルを作成するより良い方法はありますか? – vhdz04