我把一個變量(價格)從數據庫中放到一個html表單中。 然後用戶更改價格並提交表單並在數據庫中更新變量。 我想保留以前的值(最後的狀態,並在窗體中顯示),但如果我更新表單變量不斷更新。保留變量的過去值
什麼是最好的方法來記住變量的前一個值(例如在數組中)?
我把一個變量(價格)從數據庫中放到一個html表單中。 然後用戶更改價格並提交表單並在數據庫中更新變量。 我想保留以前的值(最後的狀態,並在窗體中顯示),但如果我更新表單變量不斷更新。保留變量的過去值
什麼是最好的方法來記住變量的前一個值(例如在數組中)?
如果您要在實際數據庫中更新此數據,則應創建一個保存上一行值的並行表。
否則,如果你只更新一個數組,你可以更新陣列之前創建一個副本:http://codepad.org/SvlasJ7f
<?php
$array = array('Old Value');
$lastarray = '';
updateArray($array,'New Value');
function updateArray(&$a,$v) {
$GLOBALS[lastarray] = $a;
$a = array($v);
}
?>
我在實際列旁邊做了一個平行列。我將嘗試創建數組並每次將新值(作爲鍵值)推送到數組的開始(或結尾)。 – phpJs
如果您想保留最後的值並在屏幕上顯示出來,結合這兩個!只需在表單中的readonly
input
字段中顯示以前的值。這樣,每次提交表單時都會保留以前的值。
<form action="process.php" method="POST">
<input type="text" name="Current" value="...">
<input type="text" name="Last" value="..." readonly="readonly">
</form>
或者我錯過了什麼?
但我從數據庫中獲得變量的值,所以如果我更新它的形式,它會在db中更新並因此在html中。但我所做的解決方案是製作兩列(靜態和更改)並從靜態列中獲取原始值。無論如何 - 我想製作一系列changin值 - 所以每一個變化都會被記住 - 我已經考慮過這個問題了:) – phpJs
你想每次更新它到數據庫時,用戶都會改變它?爲什麼不只是當他們完成時?你在評論中說:「用戶可以改變價格,直到他確定爲止」。所以只有在確定時才保存該值。這將爲您節省大量的查詢數據庫。 –
每次他們改變它,並按下它被寫入數據庫。如果他們確定,他們不會改變。系統不知道什麼時候完成 - 或者每次都可以。我不得不嘗試更多的工作 – phpJs
你想記住以前的價值多久? – Crontab
用戶可以更改價格,直到他確定爲止。他/她應該看到最初的金額。 我可以用最初的價格做一列,並保持不變。 仍然如何顯示最後的價值。 – phpJs