在提交表单php后保留下拉列表(动态而非硬编码)值


Retain dropdown list(dynamic not hard coded) value after submitting the form php

我需要在提交后保留下拉列表值,其中下拉列表的值是从数组中读取填充的,而不是硬编码的。

这是我填充下拉列表的代码:

 <?php        
            foreach ($catalogueArray as $cataloguePDFName) {    
                echo '<option value="'. $cataloguePDFName . '">' . $cataloguePDFName . '<option />';                     
            }                                       
        ?>  
        <label>Template</label>
        <select name="templatepdfs" />
        <?php
            foreach ($templateArray as $templatePDFName) {    
                echo '<option value="'. $templatePDFName . '">' . $templatePDFName . '<option />';                     
            }
        ?>       
        <input type="submit" name="submit" value="Submit">

有人能指导我如何回显所选的下拉值吗。我已经看到了当值被硬编码时如何做到这一点的例子,但由于某种原因,我在尝试动态下拉列表时遇到了错误。如有任何帮助,我们将不胜感激。

感谢

你的意思是这样的吗?

将您的代码放入:

if(array_key_exists('submit' , $_POST))
{
 echo $_POST['templatepdfs'];
}
else
{
?>
<form method='post' action=''>
<--Your code here-->
</form>
<?php
}

或:

<form method='post' action=''>
    <label>Template</label>
    <select name="templatepdfs" />
    <?php
        foreach ($templateArray as $templatePDFName) {
            echo '<option value="'. $templatePDFName . '"';
              if($templatePDFName == $_POST['templatepdfs']) echo ' SELECTED';
            echo '>' . $templatePDFName . '<option />';                     
        }
    ?>       
    <input type="submit" name="submit" value="Submit">
</form>