2016-04-17 4 views
0

私はブログで働いていますが、登録フォームのニュースレターチェックボックスに対処しようとしています...ユーザーがチェックボックスをオンにしても、結果として「はい」を得るのに問題はありません。データベースが、ユーザーがチェックボックスは、私は未定義のインデックスを持って、単にレジスタを続行することはできませんオフに離れたときに、ここで私が持っているコードは、これまでどのようにして、チェックボックスをオフにしてhtml形式からPHPにし、それに価値を与えることができますか?

のHTMLフォーム

<form method="POST" action="process-register.php"> 
    <input type="checkbox" name="newsletter" value="yes" /> 
</form> 

//declared variable for the users input 
$newsletter=$_POST['newsletter']; 

//the condition for the checkbox 
if(isset($newsletter)){ 
$newsletter=="yes"; 
}else{ 
$newsletter=="no"; 
} 

//then I insert the variable $newsletter through a prepared query... 

答えて

0

空のチェックを使用してください。

if(!empty($_POST['newsletter'])){ 
} 
+0

てみてください。 } else { $ newsletter == "いいえ"; } – kukiko11

+0

また、行を削除します。$ newsletter = $ _ POST ['newsletter']; – wiz6

+0

それは完璧に働いた!ありがとう! – kukiko11

0

値がまったく送信されていないかどうか確認してください。

0

ここではいくつかのことが起こっています。 1つは、の代わりに==という代入(チェックボックスの条件で)を使用しているようです。しかし、重要なのは、デフォルト値として "no"の値を変数に定義し、投稿された値が設定されていればそれを上書きすることです。

私がしようとしたが、同じであれば(ISSET($ _ POSTの[ 'ニュースレター'])){$ ニュースレターを== "SI" 結果

// set default value 
$newsletter = "no"; 

// use posted variable if it's set 
if (isset($_POST['newsletter'])) { 
    $newsletter = $_POST['newsletter']; 
} 

// then insert the variable $newsletter through a prepared query... 
関連する問題