0

我有一个 HTML 文本输入字段 - 例如:

<input id="CustID" name="CustID" dir="rtl" value="<? echo $CustID;?>" size="35" required="true" maxlength="9" >

当我插入用户号码时,我需要打开一个选择框来显示该用户的所有票证。

例如

    <select name="ticket" id="ticket" >
<? 
$query="SELECT * FROM ticket where CustID='$CustID' ";
$result=mysql_query($query) or die("error: " . mysql_error());
while($row=mysql_fetch_array($result))
{
?>  
    <option  value="<?php echo $row['ticket'] ; ?>"><?php echo $row['ticket'] ; ?></option>   
<? }  ?>
    </select>

我如何将它与 AJAX 一起使用?

这是我到目前为止所拥有的:

<script src="js/jquery.js"></script>
<script language="javascript">
function getData(id) {
        $.ajax ({
           url: "php_page.php",
           type: "POST",
           data: {custid:id},
           success: function(data){
                    $("#return").html(data)
                    }
        )} // i have error her why ??
}

</script>

   <input type="text" value="<?php echo $CustID;?>" onkeyup="getData(this.value)"/>
    <?   
    include("functions/connect.php");
    $query = "select * from customers2 ,  tickets where customers2.CustID='".$CustID."' and tickets.CustNo=customers2.CustomersNo";
    $result=mysql_query($query) or die("error: " . mysqli_error());
    while($row=mysql_fetch_array($result))
    {
    ?>  
      <option  value="<?php echo $row['ticket'] ; ?>"><?php echo $row['ticket'] ; ?></option>   
    <? }  ?>
    </select>
4

3 回答 3

0

使用 AJAX 将 CustID 传递给 Select 页面。

IE

索引.php

<script>
function callAjax(str)
{
 ajax
}
</script>
<input type = "text" name = "CustID" onblur="callAjax()"/>
<div id = "show">where to display the ajax results</div>

ajax.php

all that code with the select and options.
于 2012-05-07T21:25:13.570 回答
0

将您的 php 放在名为 php_page.php 的单独页面上。使用显示页面上的 jquery 库创建ajax调用:

function getData(id) {
        $.ajax ({
           url: "php_page.php",
           type: "POST",
           data: {custid:id},
           success: function(data){
                    $("#return").html(data)
                    }
        )}
}

在您的表单页面上创建一个 id 为“return”的 div,您希望在其中显示您的选择选项,并通过单击按钮或 onkeyup 调用此函数:

   <input type="text" value="<?php echo $CustID;?>" onkeyup="getData(this.value)"/>

哦,你的 mysql 连接应该使用mysqli 库

    $con=mysqli_connect($host,$username,$password,$database);
    $query = //same as before
    $result=mysqli_query($query) or die("error: " . mysqli_error());
    while($row=mysqli_fetch_array($result))
    {
      ?>  
      <option  value="<?php echo $row['ticket'] ; ?>"><?php echo $row['ticket'] ; ?></option>   
    <? }  ?>
    </select>
于 2012-05-07T21:39:49.887 回答
0

我会做,但结果是让我选择所有记录,我不会只记录我输入 ID 的用户

索引.php

<script src="js/jquery.js"></script>
<script language="javascript">
function getData(id) {
        $.ajax ({
           url: "php_page.php",
           type: "GET",
           data: {custid:id},
           success: function(data){
                    $("#return").html(data)
                    }
        })
}


</script>
<input type="text" id="CustID" name="CustID" onkeyup="getData(this.value)"/>
<div id="return"></div>

php_page.php

<select>
<option  value="">عرض الكل</option>
<?   
include("functions/connect.php");
if(isset($_GET['CustID']))
{
$CustID = $_GET['CustID'];
$sql_check = mysql_query("select * from customers2 , omra , haj , tickets where customers2.CustID='".$CustID."' and tickets.CustNo=customers2.CustomersNo") or die(mysql_error());
if(mysql_num_rows($sql_check)){
    while($rows = mysql_fetch_array($sql_check)){

?>  
<option  value="<?php echo $rows['TicketType'] ; ?>">تذكرة <?php echo $rows['TicketType'] ; ?> برقم <?php echo $rows['TicketRealNo'] ; ?></option>   
<? } } ?>
</select>
<? } ?>
于 2012-05-08T14:06:35.280 回答