簡體   English   中英

下拉列表數據使用php和mysql不匹配

[英]Dropdown list data not match using php and mysql

首先,謝謝你們幫助我解決了這個小問題。

直截了當,但首先,我一直通過在整個論壇中進行谷歌搜索來查找這些腳本。

我的數據庫:

(1)。 tbl_barang>

id_barang id_kategori id_klasifikasi nama_barang

(2)。 tbl_kategori>

id_kategori nama_kategori

(3)。 tbl_klasifikasi>

id_klasifikasi nama_klasifikasi

這是我的腳本>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script language="javascript" type="text/javascript">
    function showBarang(katid) {
        document.frm.submit();
    }
</script>
</head>
<body>
<form action="" method="post" name="frm" id="frm">
<table width="500" border="0">

<!--Kategori-->
  <tr>
    <td width="119">Kategori</td>
    <td width="371">
       <select name="id_kategori" id="id_kategori" onChange="showBarang(this.value);">
       <option value="">--Select--</option>
       <?php
        $sql1="select * from tbl_kategori";
       $sql_row1=mysql_query($sql1);
       while($sql_res1=mysql_fetch_assoc($sql_row1))
       {
       ?>
       <option value="<?php echo $sql_res1["id_kategori"]; ?>" <?php if($sql_res1["id_kategori"]==$_REQUEST["id_kategori"]) { echo "Selected"; } ?>><?php echo $sql_res1["nama_kategori"]; ?></option>
        <?php
        }
        ?>
       </select>
       </td>
  </tr>
 <!-- Klasifikasi -->
 <tr>
    <td>Klasifikasi</td>
    <td id="td_company">
       <select name="id_klasifikasi" id="id_klasifikasi" onChange="showBarang(this.value);">
       <option value="">--Select--</option>
       <?php
        $sql1="select * from tbl_klasifikasi";
       $sql_row1=mysql_query($sql1);
       while($sql_res1=mysql_fetch_assoc($sql_row1))
       {
       ?>
       <option value="<?php echo $sql_res1["id_klasifikasi"]; ?>" <?php if($sql_res1["id_klasifikasi"]==$_REQUEST["id_klasifikasi"]) { echo "Selected"; } ?>><?php echo $sql_res1["nama_klasifikasi"]; ?></option>
        <?php
        }
        ?>
    </select>
       </td>
  </tr>
  <tr>
    <td>Nama Barang</td>
    <td id="td_company">
       <select name="id_barang" id="id_barang">

       <option value="">--Select--</option>
       <?php
       $sql="select * from tbl_barang where id_kategori and id_klasifikasi='$_REQUEST[id_kategori] && [id_klasifikasi]'";
       $sql_row=mysql_query($sql);
       while($sql_res=mysql_fetch_assoc($sql_row))
       {
       ?>
       <option value="<?php echo $sql_res["id_barang"]; ?>"><?php echo $sql_res["nama_barang"]; ?></option>
       <?php
       }
       ?>
    </select>
       </td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>
</form>
</body>
</html>

問題是,當我們選擇kategori並選擇klasifikasi時,數據“ nama_barang”應顯示在第三個下拉列表中。 但這全是混亂,我不知道如何從不同的表中請求兩個id並從一個表“ tbl_barang”中顯示它。

簡短的問題是,我不知道如何顯示tbl_barang>'nama_barang'中與'tbl_kategori'和'tbl_klasifikasi'相關的ID的數據。

非常感謝如果有人在這里幫助我,已經三天了,我被困住了。

感謝你並致以真誠的問候,

克里斯

我認為你正在嘗試做一個加入不同的表之間。

下一點是您的sql語法:

$sql="select * from tbl_barang where id_kategori and id_klasifikasi='$_REQUEST[id_kategori] && [id_klasifikasi]'";

試試這個:

$sql="select * from tbl_barang where id_kategori = ".$_REQUEST[id_kategori]." and id_klasifikasi = ".$_REQUEST[id_klasifikasi].";";

這些ID以數字形式存儲時,請不要使用引號將它們引起來。

希望能幫助到你。 目前還不清楚你在做什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM