私は php を初めて使用し (60 歳で、長年の VBScript と ASP から変換しています)、フォームの処理に問題があります。このフォーラムや他の多くのフォーラムで解決策を検索しましたが、見つかりません。フォームからの入力を使用してレコードを削除しようとしています。
私のフォームコード ($row[0] はフィールド ID で、自動インクリメントで、この例では値が 3 です):-
<form action="<?=$_SERVER[ 'PHP_SELF' ] ?>" method="post">
<input type="hidden" name="id" value="<?php echo $row[0]?>">
<input type="submit" value="Delete"></form>
その後、処理ページはエラーなしで実行されますが、レコードは削除されないため、処理ページで入力値をテストしたところ、変数「id」の値が通過していないことが原因のようです。
フォームページの入力値を次のようにテストしました。
echo $row[0]
間違いなく整数 3 を出力します。
問題は処理ページに現れます。フォーム入力を受け取ったことを確認するコードは次のとおりです。
$id = (INT)$_post['id'];
echo 'Form input= ', $_post['id'], '<br>';
echo '$id= ', $id, '<br>';
フォーム入力行に空白を表示し、$id の値として 0 を表示します。両方とも数値 3 を表示する必要があります。
「id」の値が処理ページに送信されない理由を誰か教えてもらえますか?
答えは簡単だと思いますが、理解できません。
問題を十分に説明したことを願っていますが、そうでない場合はお知らせください。