使用$ _POST值作为新表单的输入

时间:2017-09-06 20:54:23

标签: php

我有一个带有单个输入和提交的初始表单。选项来自数据库专栏'诊所'。用户选择诊所并通过点击NEXT提交。

  1. 提交的$_POST值会转到变量$clinic
  2. $clinic变量用于查询数据库并获取$clinic_hours变量。
  3. 然后,用户被重定向到一个新表格,其中文本输入预填充$clinic值,并带有标签,表示"诊所:综合医院可用时间:7.4",这是$clinic$clinic_hours
  4. 用户填写表单的其余部分并提交,但这会导致2个变量未定义,并且无法提交表单。有谁知道如何保留$_POST值,以便我可以在表单中提交它们?
  5. 这是我的代码:

    表单1:

    <form action="session.php" method="POST">      
    
        <select id="clinic" name="session_clinic">      
    
              <?php              
              while ( $row = mysqli_fetch_assoc($get_org_query) )                           
                {                      
                   echo '<option 
           value="'.$row['name'].'">'.$row['name'].'</option>';                                
                }                                                 
              ?> 
           </select>
    
              <input type="submit" id="clinic_submit" 
              name="clinic_submit" value="Next">                         
    </form>  
    

    表格2:

     <form action="session.php" method="POST">  
    
        <label for="session_clinic" class="clinic_label">Clinic: <?php echo 
         $clinic ?> (Available: <?php echo $clinic_hours ?> hours)</label>
              <br>            
    
              <input type="text" id="session_clinic" 
           class="session_clinic" name="session_clinic" value="<?php 
            echo $clinic ?>">              
    
              <input type="date" name="session_date">
    
              <input type="text" id="session_duration" 
              class="duration" name="session_duration">
    
              <textarea name="session_note" id="session_note" cols="56" rows="7"></textarea>                          
    
              <input type="radio" name="status" value="Billable"> Billable<br>
              <input type="radio" name="status" value="Not Billable"> Not Billable<br>
    
              <input type="submit" name="session_submit" value="Submit">
    </form>      
    

2 个答案:

答案 0 :(得分:0)

您可以使用隐藏的输入来传递第二种形式的值:

<input type="hidden" name="session_clinic" value="<?php echo $clinic; ?>">

只要它们与第一个表单具有相同的名称,您就应该可以在$_POST数组中再次访问这些值。

答案 1 :(得分:0)

在第二种形式中,您应该创建隐藏字段并发送$clinic$clinic_hours

 <input type="hidden" name="clinic" value="<?php echo $clinic; ?>">
 <input type="hidden" name="clinic_hours" value="<?php echo $clinic_hours; ?>">