2017-03-06 92 views
1

我有一個動態選擇列表,它是從MySQL生成的。我列出他們沒有問題,但我提交表單時似乎無法得到它的價值。這是我的選擇腳本:PHP從動態選擇列表中獲取值

<div class="form-group"> 
    <select class="form-control" id="make" name="make"> 
     <option value="">Make</option> 
      <?php 
      if ($result->num_rows > 0) { 
       $x = 1; 
       While($row = $result->fetch_assoc()) { 
      ?> 
      <option value="<?php $row[fmake];?>" <?php if($_POST['make'] == $row[fmake]) echo 'selected="selected" '; ?>><?php echo $row[fmake];?></option> 
      <?php 
      $x = $x + 1; 
       } 
      }?> 
    </select> 
</div> 

而這裏的腳本來得到它的值:

if ($_POST["submit"]) { 
    $make = $_POST['make']; 

當我爲$做回聲使,我沒有得到任何東西。什麼地方出了錯?所有幫助讚賞。由於

+0

你檢查'select'元素的源代碼?什麼是節目? –

+0

你有沒有使用'

'開啓和關閉標記 –

+0

忘記了echo $ row ['fmake']; –

回答

1

你忘了回聲$行[ 'fmake']和引號的錯誤。

改變這種

<option value="<?php $row[fmake];?>" <?php if($_POST['make'] == $row[fmake]) echo 'selected="selected" '; ?>><?php echo $row[fmake];?></option> 

通過

<option value="<?php echo $row['fmake'];?>" <?php if($_POST['make'] == $row['fmake']) echo 'selected="selected" '; ?>><?php echo $row['fmake'];?></option> 
+0

我的錯誤。謝謝! – AndrewTsang

0

它不應該是$row['fmake'],而不是$row[fmake]

<option value="<?php $row['fmake'];?>" <?php if($_POST['make'] == $row['fmake']) echo 'selected="selected" '; ?>><?php echo $row['fmake'];?></option> 
0

相信你錯過了迴音。

value="<?php $row[fmake];?>" 

應該是:

value="<?php echo $row[fmake];?>"