2012-09-07 22 views
0

我有一個表單搜索我的本地數據庫。它仍處於生產階段。但是,當我嘗試獲取單選按鈕的值時,什麼也沒有。下面是代碼:在php中沒有顯示的單選按鈕值

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> 

所面臨的挑戰是名名new1的單選按鈕的值來空白,當我在這裏沒有顯示我的PHP代碼回聲。我必須得到單選按鈕的值,以便我可以在我的查詢中使用它。

+5

這是一個數量巨大(格式不正確)的代碼,難以閱讀,需要很長時間才能嘗試解決。請將代碼僅限於相關區域,並將其格式化爲更易讀。 – freefaller

+1

你真的需要去重新學習如何使用'

+0

@freefaller我已經格式化了代碼。 – Sithelo

回答

1

你把名new1的價值在一個變量$新的,但你似乎並不使用它時,它涉及到這一行:

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

嘗試也許:

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

而且還用什麼卡萊說:

echo "checked='checked'"; 
3

請試用checked= 'checked'而不是使用checked = yes。

+0

仍然給我一個空白值的單選按鈕。 – Sithelo

+0

有單選按鈕被檢查 – Kalai

+0

在我的代碼中的某處我回聲「找到$ new1記錄」;這出現爲Found記錄。我已經做了<?php if(isset($ new1)&& $ new1 ==「N」)echo「checked ='checked'」的更改。 ?>。當頁面重新加載時選中時,這會保持單選按鈕被選中。 – Sithelo

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'之間的空間