2

こんにちは、チェックボックスのあるフォームがあり、チェックボックスの値をデータベースに保存したいのですが、チェックボックスをクリックして保存すると正常に動作し、チェックボックスをオンにせずにフォームを保存しようとすると表示されます未定義のインデックスは誰でも私を助けることができます

ここに私のhtmlがあります

<input type="checkbox" name="active" value="1"></input>

ここに私のphpがあります

$nactive  = $_POST["active"];

ここに私の保存部分があります

mysql_query("INSERT INTO `usermain`( `username`, `password`, level, active,`zimname`, zimmob, `email`, admin, makhtab)
            Values
                   ('$nuser', '$npwd', '$nlevel', '$nactive', '$nzname', '$nzmob', '$nemail', '0', '$makh')") or die(mysql_error());
4

3 に答える 3

8

チェックボックスがチェックされていない場合、ブラウザは実際にPOSTリクエストでデータを送信しません。値が設定されているかどうかを確認してから、それに応じて変数を更新する必要があります。

$inactive = isset($_POST["active"]) ? $_POST["active"] : 0;

于 2013-03-11T14:55:33.390 に答える
3

チェックボックスがチェックされていない場合、値はスクリプトに送信されません。使用する前に、設定されているかどうかを確認する必要があります。

if(isset($_POST['active'])){
    //do something if is
}
else{
    //do something if not
}
于 2013-03-11T14:56:02.080 に答える
0

次のページでissetコントロールを使用します。

if (!isset($nactive)) $nactive = 0;

チェックボックスがチェックされていない場合、値は0になります

于 2013-03-11T14:57:07.223 に答える