2012-09-11 30 views
-1

我有一個選擇框有三個選項。當選擇一個選項時,點擊一個保存按鈕,在該字段上執行數據庫更新。這將涉及以一種形式提供兩個提交按鈕。我已經創建了每個提交按鈕上不同的動作,這將是保存按鈕:從選擇框中選擇選項單擊保存按鈕執行數據庫更新

if ($_POST['update_status'] == 'Save') { 
    $keys = array_keys($_POST['order_status']); 
    //perform the database update to change the option value 
} 

if(isset($_POST['order_selected'])) { 
    //send email 
} 

在我的每個選項的選擇框嵌入在一個表像的那一刻:

echo '<select name="order_status[] id="id"">'; 
echo '<option value = "Pending" name="order_status['.$i.']" class = "pending"' .  ($row['status'] == 'Pending' ? ' selected=selected' : '') . '>Pending</option>'; 
echo '<option value = "Approved" name="order_status['.$i.']" class = "approved"' . ($row['status'] == 'Approved' ? ' selected=selected' : '') . '>Approved</option>'; 
echo '<option value = "Disapproved" name="order_status['.$i.']" class ="disapproved"' . ($row['status'] == 'Disapproved' ? ' selected=selected' : '') . '>Disapproved</option>'; 
echo '</select>'; 

現在在更新查詢工作的那一刻,除了它是在表單之外並且通過從數據庫發佈唯一訂單ID並且然後執行他更新來工作。但我只能做'批准'。 'pending'不是問題,因爲我已經在創建訂單時在數據庫中設置了一個標誌,作爲默認掛起。

我不想在表單外部使用此功能,我想要蘋果選擇一個下拉項目,點擊保存,然後運行數據庫更新查詢,在同一表單中的選擇框中更改值,如果這是可能的?

此刻我有查詢,它看起來像的形式以外提交按鈕:

<?php 
    if (!empty($_POST)) { 
     $id = intval($_POST['approval']); 
     $query = "UPDATE Orders SET status = 'Approved' WHERE id = $id"; 
     mysql_query($query); 
    } 
    $query = "SELECT ID, Orderno, status FROM Orders WHERE status = '0'"; 
    $result = mysql_query($query); 
?> 

<select name="approval"> 
<?php while ($row = mysql_fetch_assoc($result)): ?> 
<option value="<?php echo $row['ID']; ?>"><?php echo $row['Orderno']; ?></option> 
<?php endwhile; ?> 
</select> 
<input type="submit" action ="" value="Approve Order" /> 

非常感謝,我上應如何解決這個任何指針讚賞。

回答

0

我很困惑你的問題,但如果你試圖讓數據庫查詢運行而不讓用戶離開頁面,然後更新一些HTML元素的屬性,你將不得不使用AJAX。

+0

是的,這是正確的,目前我正在批准訂單,刷新頁面和更改都存在。這將是最佳的,我會繼續尋找。謝謝 – m1243

相關問題