2010-11-18 18 views
1

1つのラジオボタンの入力フィールドには、かなり基本的なフォームが設​​定されています。フォームフィールドのラジオボタンは常にON/TRUEとして送信します

フォームを処理し、その値をmysqlデータベースに挿入するphpスクリプトがあります。何らかの理由で、ラジオが選択されているかどうかにかかわらず、フォームを記入するたびに、結果は常にON/TRUEになります。ここ

は私の入力フィールドです:ここで

<input type="radio" name="news" id="news" class="radio" value="yes" /> 

はそれを処理することになっているPHPコードの一部です:

if(isset($_POST['news'])) 
{ 
$news = "Yes"; 
} 
else 
{ 
$news = "No"; 
} 

誰かが、問題はそのコードから何であるかを敬遠しがち教えてもらえますかもっと投稿する必要がありますか?ラジオボタンの入力がそれに適用されている何JavaScriptを持っていないことを

<form method="POST" id="ipad" name="ipad" action="list.php"> 
<input type="text" onfocus="if (this.value == 'First Name') {this.value = '';}" onblur="if (this.value == '') {this.value = 'First Name';}" value="First Name" id="fname" name="fname" class="inputtext"> 


<input type="text" onfocus="if (this.value == 'Last Name') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Last Name';}" value="Last Name" id="lname" name="lname" class="inputtext"> 

<input type="text" onfocus="if (this.value == 'Email') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Email';}" value="Email" id="email" name="email" class="inputtext"> 

<input type="text" onfocus="if (this.value == 'Code') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Code';}" value="Code" id="code" name="code" class="inputtext"> 


<input type="radio" value="" class="radio" id="news" name="news"> 
<div class="radiotext">sign up?</div> 

    </form> 

お知らせ:

は、ここでは完全な形式コードです。私は、値= ""をYESまたはNOで記入するか空白のままにしてみました。

答えて

1

ラジオボタンをテストする必要があります。変数は常に存在するので、isset()は常にtrueを返すようにバインドされます。そのjqueryのコードについて

if(!empty($_POST['news']) and ($_POST['news'] == 'yes')) 
+0

申し訳ありませんでした。関係なく、常に答えが終わる。 – gteh

+0

スクリプトを書いた人は私のページには常にラジオボタンをONに設定しているが、そうではないというJavaScriptがあると言います。私がそこに持っている唯一のjavascriptはjqueryファイルです。これは私を狂ってしまう。 – gteh

+0

@gtehフルフォームのHTMLコードを表示できますか? –

1
if (isset($_POST['news']) && $_POST['news'] == 'yes'){ 
    $news = "Yes"; 
} 
else 
{ 
    $news = "No"; 
} 
+0

のテストを行う必要がありますが、動作していないようです..同じ問題があります。このときだけ答えは「はい」ではなく「いいえ」です。 – gteh

+0

1. $ _POST ['news']の印刷値は送信後で、これ前に(ifetet($ _ POST ['news'])&& $ _POST ['news'] == 'yes'))の条件が来ます。 $ _POST ['news']の価値は何かを知るようになります。 2 news = ''でこの条件を試している場合、結果は "No"になります。 –

0

は、Javascriptが動作するために、HTML内である必要はありません。私があなたであれば、.attr( "checked"、 "checked")または.prop( "checked")のコードを検索します。

関連する問題