1

私はこれを持っています:

<form action="index.php" method="get">
     <input  type="checkbox" name="Convs_revenue"
      <? echo (isset($_GET['extra_Data'])?"value='yes'":"value='no'");?>  
      <? if (isset($_POST['extra_Data']) ) echo 'checked="checked"'; ?> >extra_Data </input>
      <input type="submit" value="send">
</form>

ここで、tp の値を保持し、チェックボックスの値を保持し、チェックされていないときに設定を解除する必要があります。このフォームには GET メソッドを使用する必要があり、これも同じページにある必要があります。

何が起こるかというと、私が何をしても常にチェックされているように見え、配列を取得すると常にこれがオンになります...

4

1 に答える 1

1

まず、<input />終了タグは必要ありません。また、コードを少し整理して、もう少し読みやすくしました。

$_POST['extra_Data']空でないことを確認するために追加のチェックを追加しました。どういうわけか空で投稿された場​​合、設定されたように表示されます.POST自体をどのように生成しているかわかりません。

<form action="index.php" method="get">
     <input name="Convs_revenue" type="checkbox" value="<?php (isset($_GET['extra_data']) ? 'yes':'no'); ?>" <?php (isset($_POST['extra_Data']) && !empty($_POST['extra_Data'] ? 'checked="checked"' : '') ?> />
     <input type="submit" value="send">
</form>
于 2012-11-07T11:37:20.617 に答える