私のウェブサイト用のユーザシステムを作成しました。それを開くと、すべてのユーザーのリストが表示され、データベースの "n_gesperrt"を1または0に変更することで、ロックまたはロック解除できます.1はロックされていることを意味します。 ここに表示されるフォームは、常に最後のユーザーID(n_id)を最上位のPHPスクリプトに送信します。だから私が何かを変更したいのであれば、それはリストに表示された最後のユーザーとしか動作しません。 どうすれば問題を解決できますか? DATABASEで編集HTMLフォームが間違ったデータベースIDを送信するPHP
while ($zeile = mysqli_fetch_assoc($res))
{
echo "<form name=\"nutzer_sperren\" method=\"POST\" action=\"index.php?page=nutzer_sperren\">";
echo "<input type=\"hidden\" name=\"n_id\" value=\"".$zeile['n_id']."\">";
echo $zeile['n_id'];
if($zeile['n_gesperrt'] == 0){
echo "<input type =\"submit\" name=\"sperren\" value=\"Nutzer sperren\">";
}
else {
echo "<input type =\"submit\" name=\"entsperren\" value=\"Nutzer entsperren\">";
}
echo '</form">';
:
FORM:以下のような配列 として
if(isset($_POST['sperren']))
{
$sperrung = mysqli_real_escape_string($verbinde, 1);
mysqli_query($verbinde, 'UPDATE nutzer SET n_gesperrt ="'.$sperrung.'" WHERE n_id ='.$_POST["n_id"].'') or die(mysqli_error($verbinde));
echo "Daten wurden erfolgreich geändert. <br>Bitte aktualisieren Sie die Seite!";
echo $_POST["n_id"];
echo "<hr>";
}
if(isset($_POST['entsperren']))
{
$entsperren = mysqli_real_escape_string($verbinde, 0);
mysqli_query($verbinde, 'UPDATE nutzer SET n_gesperrt ="'.$entsperren.'" WHERE n_id ='.$_POST["n_id"].'') or die(mysqli_error($verbinde));
echo "Daten wurden erfolgreich geändert. <br>Bitte aktualisieren Sie die Seite!";
echo $_POST["n_id"];
echo "<hr>";
}
Holly molly、あなたの母国語で変数に名前を付けないでください。常に英語を使用してください。そうでなければstackoverflow.deに助けを求めるだけです。 :P – TigOldBitties