我无法将变量从动态列表传递到php页面进行处理.这是我不理解的逻辑问题吗

I am not able to pass variables from a dynamic list to a php page for processing. Is this a logic issue that I am not understanding?

本文关键字:处理 不理解 问题 变量 动态 列表 php      更新时间:2023-11-24

我是PHP的新手,目前只是javascript的编织者。我正在创建一个呼叫日志,用户在其中输入有关他们收到的呼叫的信息。原因和问题字段需要是动态的,因为需要处理的信息量与正在接收的呼叫类型有关,并且能够在以后使用这些信息创建有意义的报告。我可以在agentcall.php页面上传递除调用问题和调用原因字段之外的所有其他变量,这些字段是动态的,这样就可以选择问题,然后只显示该原因的选项。我希望那些从agentcall.php传递到agentprocess.php的值被发布到数据库中。但现在,如果我能让他们回应,那将是一个开始,也许我可以弄清楚我可能还需要做什么。我已经包含了一些代码片段,我认为这些代码片段将有助于解决这个问题,并找出我缺少的东西。

agentcall.php

<html>
<head>
    <link rel='stylesheet' href='css/style.css'>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
    <script>
        $(function() {
                $("#issue").change(function() {
                var $dropdown = $(this);
                $.getJSON("jsondata/data.json", function(data) {
                    var key = $dropdown.val();
                    var vals = [];
                    switch(key) {
                        case 'agent':
                            vals = data.agent.split(",");
                            break;
                        case 'compliance':
                            vals = data.compliance.split(",");
                            break;
                        case 'equipment':
                            vals = data.equipment.split(",");
                            break;
                        case 'system':
                            vals = data.system.split(",");
                            break;
                        case 'transfer':
                            vals = data.transfer.split(",");
                            break;
                        case 'disconnect':
                            vals = data.disconnect.split(",");
                            break;  
                        case 'complaints':
                            vals = data.compliants.split(",");
                            break;      
                        case 'base':
                            vals = ['Please choose an option'];
                    }
                    var $reason = $("#reason");
                    $reason.empty();
                    $.each(vals, function(index, value) {
                        $reason.append("<option>" + value + "</option>");
                    });
                });
            });
        });
    </script>
</head>
<body>
<form>
Issue Code&nbsp;<select id="issue">
            <option value="base">Please select an option</option>
            <option value="agent">Agent</option>
            <option value="compliance">Compliance</option>
            <option value="equipment">Equipment</option>
            <option value="system">System</option>
            <option value="transfer">Transfer</option>
            <option value="disconnect">Disconnected or Dropped Call</option>
            <option value="complaints">Complaints</option>
            </select>
            <br />
            <br />          
            Reason Code&nbsp;<select id="reason">
            <option>Please choose an option</option>
            </select>
            <br />      
            <br />
</form>
</body>
</html>

agentprocess.php

<?php
require conn.php;
mysqli_connect("$host", "$username", "$password")or die("cannot connect"); 
mysqli_select_db("$db_name")or die("cannot select DB");
$issue= $_GET['issue'];
$reason= $_GET['reason'];
$issue = stripslashes($issue);
$reason = stripslashes($reason);
$issue = mysqli_real_escape_string($issue);
$reason =  mysqli_real_escape_string($reason);
echo "$issue";
echo "$reason";

?>

因此,我在一个关于JSON如何工作的页面上找到了自己问题的答案,到目前为止。我确信还有其他方法可以解决这个问题,但我在代码的JSON端找到了答案。这就是我为解决这个问题而添加的内容:

$.sissue('processpage.php',issue,function(issue){alert(issue;});$.reson('processpage.php',issue,function(issue){alert(issue;});它将变量的值携带到处理页面,以便可以将其插入DB中使用。