2013-05-21 5 views
2

위의 드롭 다운 목록에서 3 개의 드롭 다운 목록을 가져 왔지만 3 번째 드롭 다운 목록에서 선택한 값을 다시 가져 오십시오. 코드는 그래서 기본적으로 내가 그것 다시 모든 가격을 가져 오는 순간에 내가 선택한 옵션에서 가격을 돌아 오게 할 PHP 드롭 다운 선택

<tr> 
<td width="119">Category</td> 

<td width="371"> 
    <select name="cat_id" id="cat_id" onChange="showCompany(this.value);"> 
    <option value="">--Select--</option> 
    <?php 
    $sql="select * from category"; 
    $sql_row=mysql_query($sql); 
    while($sql_res=mysql_fetch_assoc($sql_row)) 
    { 
    ?> 
    <option value="<?php echo $sql_res["id"]; ?>" <?php if($sql_res["id"] ==$_REQUEST  ["cat_id"]) { echo "Selected"; } ?>><?php echo $sql_res["category_name"]; ? ></option> 
    <?php 
    } 
    ?> 
    </select> 
    </td> 
</tr> 

<tr> 
<td>Company</td> 
<td id="td_company"> 
    <select name="company_id" id="company_id">; 
    <option value="">--Select--</option> 
    <?php 
    $sql="select * from company where cat_id='$_REQUEST[cat_id]'"; 
    $sql_row=mysql_query($sql); 
    while($sql_res=mysql_fetch_assoc($sql_row)) 
    { 
    ?> 
    <option value="<?php echo $sql_res["id"]; ?>"><?php echo $sql_res["company_name"]; ?></option> 
    <?php 
    } 
    ?> 
</select> 
    </td> 
</tr> 
<tr> 

<td>Item</td> 
<td id="td_item"> 
    <select name="item_id" id="item_id"> 
    <option value="">--Select--</option> 
    <?php 
    $sql="select * from item where comp_id='$_REQUEST[cat_id]'"; 
    $sql_row=mysql_query($sql); 
    while($sql_res=mysql_fetch_assoc($sql_row)) 
    { 
    ?> 
    <option value="<?php echo $sql_res["id"]; ?>"><?php echo $sql_res["item_name"]; ?></option> 
    <?php 
    } 
    ?> 
</select> 
    </td> 
</tr> 
<tr> 
<td>Price</td> 
<td id="td_item"> 
    <?php 
    $sql="select unit_cost from item where comp_id='$_REQUEST[cat_id]'"; 
    $sql_row=mysql_query($sql); 
    while($sql_res=mysql_fetch_assoc($sql_row)) 
    { 
    echo "<td>" . "&pound" . $sql_res['unit_cost'] . "</td>"; 
    } 
    ?> 

    </td> 
</tr> 

<tr> 
</tr> 
</table> 
</form> 

이하입니다.

처음 드롭 다운 내가 cellings을 선택한 다음 회사 드롭 다운 내가 액세스 패널을 선택한 다음 3 드롭 다운 그들이 3 항목 (암 강한, 트랙 및 나사)이며 다시 3 가격을 가져다 어디 하나를 선택할 수있게되고 싶어요 그 가격. 어떤 아이디어?

답변

0

먼저 mysql_ * 함수를 사용해서는 안되며, 더 이상 사용되지 않습니다. mysqli 또는 PDO를 살펴보십시오. 둘째, 코드에 $ _REQUEST를 곧장 SQL에 삽입하는 취약점이 있습니다. 이를 SQL Injection이라고합니다. 당신은 아마 그것을 읽어야 할 것입니다.

모든 점에서 문제는 귀하의 검색어가 회사 ID = 카테고리 ID의 모든 항목을 선택하려고한다는 것입니다. comp_id = $_REQUEST[comp_id]' 같은

$sql="select * from item where comp_id='$_REQUEST[cat_id]'"; 

을 주목 comp_id='$_REQUEST[cat_id]'이 대신해야 뭔가 :이 쿼리입니까?