将两个变量从php传递到ajax,然后返回到php

索拉布·古普塔

我是ajax的新手,所以我对ajax语法了解不多。虽然我在这里尝试将变量从php传递到ajax,然后再传递回php。当我对两个变量感到困惑时,我能够用一个变量完成它。我什至不知道在Google上搜索什么才能得到我要查询的答案。因此,我将简要介绍一下这是我的php代码。addnewbug.php

<script type="text/javascript" language="javascript" src="./javascripts/jquery.js"></script>
<script type="text/javascript" language="javascript" src="./javascripts/script.js"></script>
</head>
 <div class="margin custom">
<body bgcolor="#2e2e2e">
<div style="text-align: center; padding-top: 0px">
    <h1 style="color:white;font-size: 50px">Bughound</h1>
</div>
<div class="effect8">
    <div class="tableMargin">
        <table width="622" class="table">
            <tr class="program_row">
                <form>
                <td width="150" class="td" style="padding-right: 1.9cm">Program</td>

                    <td width="171" class="td">
                        <select id="program" class="dropdown">
                            <option></option>
                            <?php
                            require "./db.php";
                            $sql = "SELECT DISTINCT program_name FROM program";
                            $result = db($sql);
                            while ($row = $result->fetch_assoc()) {
                                $program_name = $row['program_name'];
                                echo '<option name ="' . $program_name . '">' . $program_name . '</option>';
                            }
                            ?>
                        </select>
                    </td>



                <td width="51" class="td">Release</td>
                <td width="41" >
                <div class="release" id="release">
                    <select class="release_select" id='release1'>
                    </select>
                </div>
                </td>
                <td width="103" class="td">Version</td>
                <td width="78" class="td">
                <div class="version" id="version">
                    <select class="version_select" id='program_number'>
                    </select>
                </div>
                </td>
                </form>
            </tr>
        </table>

这是原始页面,我正在尝试使用get pass语句在select框中进行更改,这是我用来获取变量并将其传递给另一个php程序script.js

  $(function(){
$("#program").change(function(){
    $(".release_select").remove();
    $(".version_select").remove();
    if($("#program").val() !== "") {
        $.get("addnewbug1.php", {program_name: $("#program").val()})
            .done(function(data){
                $("div.release").after(data);
        });
        $.get("addnewbug_version.php", {program_name: $("#program").val()})
            .done(function(data){
                $("div.version").after(data);
        });
    }
});
$("#program_number").change(function(){
    $(".release_select").remove();
    if($("#program_number").val() !== "") {
        var val2 = $("#program_number").val();
         $.get("addnewbug2.php?program_number="+val2, {program_name: $("#program").val()})
            .done(function(data){
                $("div.release").after(data);
        });
    }
});
});

第一个功能运行良好,因为它从程序中获取值并将其传递给addnewbug1.php,后者使用程序名称并生成用于发行版和版本的新选择框,然后将其替换为div-release和Division-version(或数字)

这是第一个功能可以正常运行的文件-addnewbug1.php

require "./db.php";
echo "<select class='release_select' id='release1'>";
$programname = $_GET['program_name'];
$sql1 = 'SELECT DISTINCT program_release FROM program WHERE program_name="'. $programname .'"';
$result1 = db($sql1);
while ($row1 = $result1->fetch_assoc()) {
$program_release = $row1['program_release'];
echo '<option name ="' . $program_release . '">' . $program_release . '</option>';
}
 echo "</select>";
?> 

现在,我在script.js的第二个更改函数中出错了,我需要在“ $ .get”区域中传递两个变量。另外,program_number的.change功能不起作用,并且不会在更改它时删除选择框。

$.get("addnewbug2.php?program_number="+val2, {program_name: $("#program").val()})

并且addnewbug2.php也是它正在使用的新文件-

 require "./db.php";
 echo "<select class='release_select' id='release1'><option></option>";
 $programname = $_GET['program_name'];
 $programnumber = $_GET['program_number'];
 $sql1 = 'SELECT DISTINCT program_release FROM program WHERE program_name="'. $programname .'" and program_number=' . $programnumber;

 $result1 = db($sql1);
 while ($row1 = $result1->fetch_assoc()) {
$program_release = $row1['program_release'];
echo '<option name ="' . $program_release . '">' . $program_release . '</option>';
 }
 echo "</select>";
 ?>

我不知道你是否有我的问题。感谢您回答这个问题,如果需要更多信息,请回复。

这是附加的db.php代码

  function db($sql){
  //Check for connection variable already set
  if(!isset($conn)){
      //Database Connectivity - ip, username, password, database name
      $conn = new mysqli("i have filled this correctly");
  }

//Check Connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
$result = mysqli_query($conn, $sql);
mysqli_close($conn);
return($result);
 }
索拉布·古普塔

感谢您的答复,我使用AngularJS解决了我的问题,我在发布此问题后开始阅读。我要解决的这个问题的主要方法是使用其他(第一)选择框中的值来填充(第二)选择框和(第三)选择框,并完成新填充的(第二)选择框中的值。然后使用(2nd)选择框更改(3rd)select框的值。反之亦然。应用唯一的过滤器选择框,而无需移动到下一页。所以这是Addnewbug.php的代码简化形式-

              <!DOCTYPE html>
          <html >
          <script src= "http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
          <script src= "https://cdnjs.cloudflare.com/ajax/libs/angular-filter/0.5.4/angular-filter.js"></script>
          <body>

          <div ng-app="myApp" ng-controller="customersCtrl">

          <select ng-model="selectProgram">
          <option></option>
          <option ng-repeat="x in programes | unique: 'prognumber'" name=""{{x.progname}}"">{{ x.progname }}</option>
          </select>
          <select ng-model="selectNumber">
          <option></option>
          <option ng-repeat="x in programes | filterBy: ['progname']:selectProgram | filterBy: ['progrelease']:selectRelease | unique: 'prognumber'" name=""{{x.prognumber}}"">{{ x.prognumber }}</option>
          </select>
          <select ng-model="selectRelease">
          <option></option>
          <option ng-repeat="x in programes | filterBy: ['progname']:selectProgram | filterBy: ['prognumber']:selectNumber | unique: 'progrelease'" name=""{{x.progrelease}}"">{{ x.progrelease }}</option>
          </select> 
          </div>

          <script>
          var app = angular.module('myApp', ['angular.filter']);
          app.controller('customersCtrl', function($scope, $http) {
             $http.get("db/program_db.php")
             .success(function (response) {$scope.programes = response.records;});
          });
          </script>

          </body>
          </html>

当然,我使用其他一些stackexchange问​​题来解决问题。以及对于在此代码我用这个被导入的表program_db -

    <?php
    header("Access-Control-Allow-Origin: *");
    header("Content-Type: application/json; charset=UTF-8");
    if(!isset($conn)){
            //Database Connectivity - ip, username, password, database name
        $conn = new mysqli("*connection parameters*");
     }
    if ($conn->connect_error) {
         die("Connection failed: " . $conn->connect_error);
    }
    $result = mysqli_query($conn, "SELECT program_name, program_number,program_release FROM program");
    $outp = "";
    while($rs = $result->fetch_array(MYSQLI_ASSOC)) {
        if ($outp != "") {$outp .= ",";}
        $outp .= '{"progname":"'  . $rs["program_name"] . '",';
        $outp .= '"prognumber":"'   . $rs["program_number"]        . '",';
        $outp .= '"progrelease":"'. $rs["program_release"]     . '"}';
    }
    $outp ='{"records":['.$outp.']}';
    $conn->close();

    echo($outp);
    ?> 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用下拉列表将两个变量从php传递到ajax

来自分类Dev

PHP-将变量传递到一个域,然后再次返回

来自分类Dev

将两个 php 变量从链接传递到另一个页面

来自分类Dev

如何一键处理两个ajax函数将变量传递给php表单

来自分类Dev

AJAX将2个变量传递到php文件中

来自分类Dev

将变量从javascript(Ajax)传递到PHP

来自分类Dev

通过AJAX调用PHP文件,将$ _GET变量传递到MySQL查询中,然后回显到响应中

来自分类Dev

从php文件将json返回到ajax

来自分类Dev

将数组从 PHP 返回到 jQuery 从 Ajax

来自分类Dev

PHP在两个文件之间传递变量

来自分类Dev

PHP在两个文件之间传递变量

来自分类Dev

jQuery通过Ajax将两个数组数据传递给php,并提取两个前缀

来自分类Dev

PHP无法使用Ajax将两个参数传递给另一个PHP

来自分类Dev

PHP返回新的自两个变量

来自分类Dev

将两个指针返回到动态数组

来自分类Dev

如何使用Ajax调用将变量从PHP传递到Javascript

来自分类Dev

将变量从PHP传递到AJAX成功函数

来自分类Dev

使用ajax post方法将变量从javascript传递到php

来自分类Dev

在yii中使用ajax将变量从JavaScript传递到PHP

来自分类Dev

将变量从PHP传递到AJAX成功函数

来自分类Dev

jQuery ajax将js变量传递到php中

来自分类Dev

通过AJAX将变量传递到PHP脚本

来自分类Dev

Ajax Jquery将变量传递到PHP文件

来自分类Dev

如何使用 Ajax 将变量从 Jquery 传递到 PHP?

来自分类Dev

php-将数组从php传递到jquery ajax,然后再次将相同的数组从jquery传递到php

来自分类Dev

PHP ajax数据库:如何传递两个变量并以不同的方式获取它们的数据?

来自分类Dev

将sql变量传递给PHP变量,然后返回sql语句

来自分类Dev

将sql变量传递给PHP变量,然后返回sql语句

来自分类Dev

如何将两个记录计数从Execute SQL任务返回到SSIS包中的User变量

Related 相关文章

  1. 1

    使用下拉列表将两个变量从php传递到ajax

  2. 2

    PHP-将变量传递到一个域,然后再次返回

  3. 3

    将两个 php 变量从链接传递到另一个页面

  4. 4

    如何一键处理两个ajax函数将变量传递给php表单

  5. 5

    AJAX将2个变量传递到php文件中

  6. 6

    将变量从javascript(Ajax)传递到PHP

  7. 7

    通过AJAX调用PHP文件,将$ _GET变量传递到MySQL查询中,然后回显到响应中

  8. 8

    从php文件将json返回到ajax

  9. 9

    将数组从 PHP 返回到 jQuery 从 Ajax

  10. 10

    PHP在两个文件之间传递变量

  11. 11

    PHP在两个文件之间传递变量

  12. 12

    jQuery通过Ajax将两个数组数据传递给php,并提取两个前缀

  13. 13

    PHP无法使用Ajax将两个参数传递给另一个PHP

  14. 14

    PHP返回新的自两个变量

  15. 15

    将两个指针返回到动态数组

  16. 16

    如何使用Ajax调用将变量从PHP传递到Javascript

  17. 17

    将变量从PHP传递到AJAX成功函数

  18. 18

    使用ajax post方法将变量从javascript传递到php

  19. 19

    在yii中使用ajax将变量从JavaScript传递到PHP

  20. 20

    将变量从PHP传递到AJAX成功函数

  21. 21

    jQuery ajax将js变量传递到php中

  22. 22

    通过AJAX将变量传递到PHP脚本

  23. 23

    Ajax Jquery将变量传递到PHP文件

  24. 24

    如何使用 Ajax 将变量从 Jquery 传递到 PHP?

  25. 25

    php-将数组从php传递到jquery ajax,然后再次将相同的数组从jquery传递到php

  26. 26

    PHP ajax数据库:如何传递两个变量并以不同的方式获取它们的数据?

  27. 27

    将sql变量传递给PHP变量,然后返回sql语句

  28. 28

    将sql变量传递给PHP变量,然后返回sql语句

  29. 29

    如何将两个记录计数从Execute SQL任务返回到SSIS包中的User变量

热门标签

归档