0

動的コンテンツを持つテーブルがあります。テーブルにはドロップダウンリストが含まれており、ユーザーはオプションを選択する必要があり、表示されたデータは ajax を使用して返されます。現在は機能していますが、問題は最初の行でのみ機能していることです。2 行目のドロップダウン リストから選択すると、1 行目に結果が表示されました:"/ !!

テーブルコード

<table class="bordered" >
<tr class="bordered">

<?php
$qry=mysql_query("SELECT * 
FROM  `order` ");
    //Check whether the query was successful or not
    $qry1="SELECT * 
FROM  `order` ";
    $result=mysql_query($qry1);
    if(mysql_num_rows($qry)>0){
?>
<th>delete</th><th>edit</th><th>staff info</th><th>staff</th><th>ex</th><th>phone</th><th>name</th><th>id</th><th>quantity</th><th>status</th><th>time</th><th>date</th><th>order number</th><th></th>
</tr>
    <?php
            while($info = mysql_fetch_array( $result )) 
            { 
            $idem = $info['emp_id'];
            $q="select * from empoyee where emp_id= '".$idem."';";
            $r=mysql_query($q);
            ?>
            <tr>
            <td>
            <form method="POST" action="delete_asu.php">
            <input type="image" src="delete1.png" width="25%" height="20%"/>
            <input type="hidden" name="delete_id" value="<?php echo $info['order_num']; ?>" />
            </form></td>
            <td>
            <?php $id=$info['order_num']; 
            echo '<form method="POST" action="update_asu_form.php?id='.$id.'">' ?>
            <input type="image" src="settings-24-128.png" width="20%" height="15%"/>
            </form></td>
            <td id="txtHint"></td>
            <td>

                <select name="users" onchange="showUser(this.value)">
                <option></option>
                <?php

                $sql=mysql_query("SELECT asu_name from asu_staff");
                while($row = mysql_fetch_array($sql)){
                echo "<option>" .$row["asu_name"]. "</option>";
                }

                ?>
                </select>

            </td>
            <?php 
            while($row = mysql_fetch_array( $r )) 
            {
            ?>
            <td><?php echo $row['ex']; ?></td><td><?php echo $row['phone']; ?></td><td><?php echo $row['emp_name']; ?></td><td><?php echo $row['emp_id']; ?></td>
            <?php
            }
            ?>
            <td><?php echo $info['quantity']; ?></td><td><?php echo $info['status']; ?></td>
            <td><?php echo $info['time']; ?></td><td><?php echo $info['date']; ?></td>
            <td><?php echo $info['order_num']; ?></td><td><input type="radio" name="choose" value="<?php echo $info['order_num']; ?>" /></td>
            </tr>
            <?php
            } 
        }
        else echo "<h1>no orders</h1>";
        ?>

</table>

ajax コード

<script>
function showUser(str)
{
if (str=="")
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;

    }
  }
xmlhttp.open("GET","getuser.php?q="+str,true);
xmlhttp.send();
}
</script>

phpコード

 $q=$_GET["q"];
            $sql="SELECT * FROM asu_staff WHERE asu_name = '".$q."'";
            $result = mysql_query($sql);
            while($row = mysql_fetch_array($result))
            {
            echo "<table>";
            echo "<tr> <td>" . $row['asu_id'] . " </td><td>staff id</td></tr>";
            echo "<tr> <td>" . $row['phone'] . " </td><td>staff phone</td></tr>";
            echo "</table>";

やあ仕事だ

アイデア:

Alhamdullilallah今は完全に機能しています:D問題は、コンテンツを取得する場所のIDからでした。増分IDを作成してajaxに送信すると、それが機能します

4

1 に答える 1

0

select によって与えられる値は、各オプションの value="" 属性にあるものです。あなたの場合、オプションを表示するコードを次のように変更する必要があります。

<select name="users" onchange="showUser(this.value)">
 <option value="" selected></option>
<?php
   $sql=mysql_query("SELECT asu_name from asu_staff");
   while($row = mysql_fetch_array($sql)){
     echo "<option value=\"".$row["asu_name"]."\">" .$row["asu_name"]. "</option>";
   }

?>
</select>

これを試して。

ps クエリで名前を使用して ID を選択し、その ID を value="" 属性で使用できます。PHP コードのクエリでは、名前の代わりに ID を使用できます。

于 2013-07-04T20:03:51.000 に答える