提交之前如何使用JS保留PHP表单中的变量

我对PHP还是很陌生,因此对未完全了解代码结构表示歉意。

在一个PHP文件中,我有一个表格,该表格的下拉菜单中的选项是从数据库查询中填充的(基于参赛者的数量来进行多少轮比赛)。用户为一轮固定装置选择了一个选项后,他们希望查看该选项作为变量传递,以确定在表单提交时显示的内容。在表单上,​​提交其余页面更改,以显示数据库中与用户从下拉列表中选择的回合相关的固定装置。

我的挑战是,从下拉菜单中选择轮数之后,我必须单击两次提交按钮-一次分配变量,然后第二次提交以使用该变量作为显示过程的一部分来自数据库的灯具信息。

我知道可以使用JS来存储一个变量,然后可以在表单提交中使用该变量,但是我不确定如何将其与表单/的编写方式集成。

在浏览了Web上的一些地方(例如W3Schools)之后,我有了一些基本的JS并尝试了该方法,但是我认为用户选择和存储可在单击提交时使用的变量之间仍然存在脱节。

//Basic JS
<script>
function getFormIndex() {
  document.getElementById($_POST['roundselect']).innerHTML =
  document.getElementById("roundselect").selectedIndex;
}
</script>

//PHP Elements

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

$roundnum = $_POST['roundselect']; }

<?php
function setround(){

    $roundnum = $_POST['roundselect'];
    echo $roundnum;        
    }
?>  

//Form

<div class="h2_select">
                <?  if($fnum) { 
                    $select_opt = (isset($_GET['round'])) ? $_GET['round'] : 1;                 
                ?>
                    <form method="post" action="/tournaments/<?=$lid; ?>/fixtures/<?= $roundnum; ?>" name="rf">
                        <!--<input type="hidden" name="id" value="/<?=$lid; ?>" />
                        <input type="hidden" name="page" value="/fixtures" /> -->


                            <span class="minput">Select Round
                            <select size=1 class="mselect"  name="roundselect" onChange=getFormIndex();>
                                <? for($i=1; $i <= $total_rounds; $i++) { ?>
                                    <option value="<?= $i ?>" <?php if($i == $select_opt){ echo 'selected'; } ?> > <?= $i?> </option>
                                <? }
                                ?>
                            </select>&nbsp;
                            <input type="submit" name="submit" value="<?= $lang[185] ?>" class="minput"/>
                    </form>              
                <? } ?>
            </div>

为了确认,该表格起作用并显示正确的信息。问题是我目前需要单击“提交”两次。

谢谢

评论