1

ローカル データベースを検索するフォームがあります。まだ生産段階です。ただし、ラジオボタンの値を取得しようとすると、何もありません。以下はコードです:

PHP

$k = $_GET['k'];
$terms = explode(" ", $k);
$query = "SELECT * FROM  series8000 WHERE ";
$vision = $_GET['Vision'];
$new = $_GET['new1'];
$sithelo = sithelo;
foreach ($terms as $each) {
    $i++;
    if ($i == 1)
        $query .= "Description LIKE '%$each%' ";
    else
        $query .= "OR Description LIKE '%$each%' ";
}   
$query .= "AND VisionType = '$vision' ";

if (!empty($new1 )) {
    $query .= "AND Change = '$new1' ";
}

HTML

<form action='index.php' method='get'>
<fieldset>


                <legend>Change</legend> 


                    <label for="New" class="property">New Product</label>
                    <div class="labels">
                        <input type="radio"  name="new1" <?php if (isset($new1) && $new1 == "N") echo "checked=yes"; ?>size="30" value="N"/>
                        <input type="radio"  name="new1" size="30" value="Y"/>
                        <input type="radio"  name="new1" size="30"  value="YN"/>&nbsp;&nbsp;
                    </div>  

                    <div style="clear: both;"></div>

課題は、ここに表示されていない PHP コードをエコーするときに、new1 という名前のラジオ ボタンの値が空白になることです。クエリで使用できるように、ラジオ ボタンの値を取得する必要があります。

4

3 に答える 3

3

checked= 'checked'checked=yes を使用する代わりに試してみてください。

于 2012-09-07T12:08:37.877 に答える
2

変化する

<input type="radio"  name="new1" <?php if (isset($new1) && $new1 == "N") echo "checked=yes"; ?>size="30" value="N"/>

の中へ

<input type='radio' name='new1' <?php if (isset($new1) && $new1 == "N") echo "checked='checked' "; ?>size='30' value='N'/>

出力と前の回答の間にスペースが不足しているため、私の回答は異なります。checked='checked'size='30'

于 2012-09-07T12:33:02.527 に答える
1

new1 の値を変数 $new に入れますが、この行に関してはそれを使用していないようです:

if (!empty($new1 )) {
    $query .= "AND Change = '$new1' ";
}

おそらく試してみてください:

if (!empty($new)) {
    $query .= "AND Change = '$new' ";
}

また、カライが言ったことも使用します。

 echo "checked='checked'";
于 2012-09-07T12:26:38.040 に答える