我如何执行在选择选项选择使用AJAX一个PHP查询? [英] How do I execute a PHP query on select option choice using AJAX?

查看:138
本文介绍了我如何执行在选择选项选择使用AJAX一个PHP查询?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

好吧,我知道这之前已经(<一回答href="https://stackoverflow.com/questions/12210608/execute-php-script-on-same-page-after-selecting-a-dropdown-list-option-using-aja/12210750#12210750">Execute选择使用Ajax或JavaScript ),但答案下拉列表选项后,同一页上的PHP脚本不是为别人谁也从来没有使用AJAX非常有帮助。如何运行像中创建一个查询,如果有人选择从下拉选项?

 &LT; HEAD&GT;
 &所述;脚本的src =htt​​ps://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js&GT;&所述; /脚本&GT;
&LT; /头&GT;

&LT; H3&GT;受试对象; / H3&GT;
&LT;选择名称=allbooks&GT;
              &LT;期权价值=无​​&GT;&LT; /选项&GT;
              &LT;期权价值=allbooks&GT;所有图书&LT; /选项&GT;
    &LT; /选择&GT;

&LT; PHP
$查询=SELECT * FROM书或死亡(错误的磋商。mysqli_error($连接)。);
    $书= $连接 - &GT;查询($查询);
?&GT;
 

解决方案

首先,你必须触发AJAX请求,通过使用Javascript。不过,我会指导您使用jQuery(JavaScript库)。

您的HTML:

 &LT;选择名称=allbooksID =allbooks&GT;
  &LT;期权价值=无​​&GT;&LT; /选项&GT;
  &LT;期权价值=allbooks&GT;所有图书&LT; /选项&GT;
&LT; /选择&GT;
&LT; D​​IV ID =秀&GT;
  &LT;! - 项目被这里显示 - &GT;
&LT; / DIV&GT;
 

在此之后,下载 jQuery的

然后让执行脚本:

 &LT;脚本SRC =jQuery的-1.9.1.min.js&GT;&LT; / SCRIPT&GT; &LT;  - !CHANGE jQuery的文件根据版本您已经下载 - &GT;
&LT;脚本类型=文/ JavaScript的&GT;
  $(文件)。就绪(函数(){/ * prePARE脚本* /
    $(#allbooks)。改变(函数(){/ *当您更改,然后从选择字段* /
      VAR allbooks = $(本).VAL(); / *获取所选数据的值* /
      变种dataString =allbooks =+ allbooks; / *存储到数据串* /

      $阿贾克斯({/ *然后Ajax调用* /
        类型:POST,/ *类型的方法用来传递数据* /
        网址:GET-data.php/ *页,在这里,我们将传递数据* /
        数据:dataString,/ *数据,我们将路过* /
        成功:函数(结果){/ *获取要返回数据* /
          $(#秀)HTML(结果); / *返回的数据将被显示在此DIV * /
        }
      });

    });
  });
&LT; / SCRIPT&GT;
 

然后让创建 GET-data.php 将接收通过AJAX发送的数据。

 如果(!空($ _ POST [allbooks])){
  / *做你的查询这里得到你想要的输出* /
  回声$输出; / *打印您需要的输出,它会返回到原来的页面* /
}
 

您可以检查这个例子 - 。的jsfiddle

Okay I know this has been answered before (Execute PHP script on same page after selecting a dropdown list option using Ajax or JavaScript) but the answers weren't very helpful for someone who has never used AJAX before. How do I run a query like the one created if someone selects an option from the drop down?

<head>
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>

<h3>Subject</h3>
<select name="allbooks" >
              <option value="none" ></option>
              <option value="allbooks" >All Books</option>
    </select>

<?php 
$query = "SELECT * FROM books" or die("Error in the consult.." . mysqli_error($connection)); 
    $books = $connection->query($query);
?>

解决方案

First is, you have to trigger the AJAX request by using Javascript. But I'll be guiding you by using jQuery (a Javascript library).

Your HTML:

<select name="allbooks" id="allbooks">
  <option value="none" ></option>
  <option value="allbooks" >All Books</option>
</select>
<div id="show">
  <!-- ITEMS TO BE DISPLAYED HERE -->
</div>

After that, download jQuery.

Then lets do the script:

<script src="jquery-1.9.1.min.js"></script> <!-- CHANGE THE JQUERY FILE DEPENDING ON THE VERSION YOU HAVE DOWNLOADED -->
<script type="text/javascript">
  $(document).ready(function(){ /* PREPARE THE SCRIPT */
    $("#allbooks").change(function(){ /* WHEN YOU CHANGE AND SELECT FROM THE SELECT FIELD */
      var allbooks = $(this).val(); /* GET THE VALUE OF THE SELECTED DATA */
      var dataString = "allbooks="+allbooks; /* STORE THAT TO A DATA STRING */

      $.ajax({ /* THEN THE AJAX CALL */
        type: "POST", /* TYPE OF METHOD TO USE TO PASS THE DATA */
        url: "get-data.php", /* PAGE WHERE WE WILL PASS THE DATA */
        data: dataString, /* THE DATA WE WILL BE PASSING */
        success: function(result){ /* GET THE TO BE RETURNED DATA */
          $("#show").html(result); /* THE RETURNED DATA WILL BE SHOWN IN THIS DIV */
        }
      });

    });
  });
</script>

Then lets create the get-data.php which will receive the data sent through AJAX.

if(!empty($_POST["allbooks"])){
  /* DO YOUR QUERY HERE AND GET THE OUTPUT YOU WANT */
  echo $output; /* PRINT THE OUTPUT YOU WANT, IT WILL BE RETURNED TO THE ORIGINAL PAGE */
}

You can check this example - JSfiddle.

这篇关于我如何执行在选择选项选择使用AJAX一个PHP查询?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆