首页 > 解决方案 > 是否有可能在选择选项中同时使用 JavaScript 和 PHP 的解决方案?

问题描述

我在两种不同的编码语言 JavaScript 和 PHP 之间遇到了问题。现在,正如您从网页下面的图片中看到的那样,我有一个选择列表和一个添加列表

菜单

在选择列表中,我正在查询数据库以获取值,如下所示:

<select name="opt_lable" id="select";>

      <?php foreach ($distinctResult as $post) {?>
           <option value="<?php echo $post['label'];?>"><?php echo $post['label'];?></option>
      <?php };?>

</select>

现在对于我拥有的输入表单,我Add list从数据库中添加值,并且该值出现在选择选项中,当我添加值时,我正在创建一个全新的文件,如下代码所示:

<?php
    include "conn.php";

    if(isset($_POST['AddList'])){

        $addLabelList=mysqli_real_escape_string($conn,$_POST['add_list_for_label']);

        if(empty($addLabelList)){

            header("LOCATION:../admin-panel.php");

        }else{


        $list=fopen("../".$addLabelList.".php","w");
        $OpenExtPhp="<?php \n";
        $CloseExtPhp="?>\n";

        $Header="include 'header.php' ;\n";
        $SidePanel="include 'side-Panel.php' ; \n";
        $PostWindow="include 'post-Window.php';\n";
        $CreatList="include 'create-list.php';\n";
        $Footer="include 'footer.php';\n";

        fwrite($list,$OpenExtPhp);
        fwrite($list,$Header);
        fwrite($list,$SidePanel);
        fwrite($list,$PostWindow);
        fwrite($list,$CreatList);
        fwrite($list,$Footer);
        fwrite($list,$CloseExtPhp);

        $query="INSERT INTO posts(label) VALUES('$addLabelList')";
        mysqli_query($conn,$query);
        header("LOCATION:../admin-panel.php");

        }

    }elseif (isset($_POST['CancelList'])) {

        header("LOCATION:../admin-panel.php");

    };

我做的最后一件事是将选项列表的值链接到我在提交值期间创建的单个值 - 如下面的最后一个代码所示,它是一个 javascript 文件:

var sel=document.getElementById("select");

sel.onchange=function(value){
    if(this.value=="home"){

        var w=window.location.href="admin-Panel.php";

    }else if(this.value=="Netherlands"){
        window.location.href="Netherlands.php";
    };
}

我是否能够将使用表单创建的每个值链接addList到将在提交过程中创建的页面?感谢任何可以帮助我解决这个问题的人

标签: javascriptphp

解决方案


如果我理解您的问题,您希望将所选项目的值发送到处理 POST 数据的 php 文件。如果是这种情况,您有两种选择

  1. 您可以使用所选项目设置隐藏表单输入(输入类型=“隐藏”值=“”)并获取处理POST数据的文件中的值
  2. 您可以使用 $.ajax({}) 发布表单数据。这将允许您将选择数据作为 POST 数据添加到您的表单

推荐阅读