我是編程中的新手,所以不要判斷太強大!保存cookie中的數組以便在php中重複使用
在我的本地主機上,我有一個帶有2個輸入字段的HTML表單:$ firstTerm和$ secondTerm,以及4個按鈕:Summ,Difference,Multiply,Divide。
<form>
Enter first term: <input type="number" step="0.001" name="firstTerm">
Enter second term: <input type="number" step="0.001" name="secondTerm">
<button name="summ" id="summ">Summ</button>
<button name="difference" id="difference">Difference</button>
<button name="multiply" id="multiply">Multiply</button>
<button name="divide" id="divide">Divide</button>
</form>
在這種形式下,使用GET方法,我返回$ result。
*if((isset($_GET['firstTerm']) && isset($_GET['secondTerm'])) && (isset ($_GET['summ']) || isset ($_GET['difference']) || isset ($_GET['multiply']) || isset ($_GET['divide']))){
$keysGet = array_keys($_GET);
$firstTerm = $_GET['firstTerm'];
setcookie('firstTerm', $firstTerm, time()+604800);
$secondTerm = $_GET['secondTerm'];
setcookie('secondTerm', $secondTerm, time()+604800);
$operation = $keysGet[2];
switch ($operation) {
case "summ": $result = $firstTerm + $secondTerm; break;
case "difference": $result = $firstTerm - $secondTerm; break;
case "multiply": $result = $firstTerm * $secondTerm; break;
case "divide": $result = $firstTerm/$secondTerm; break;
}
setcookie('result', $result, time()+604800);
echo "<h3>Your result is $result</h3>";
}*
使用setcookie()php函數我正在保存用戶輸入。在使用開發工具的瀏覽器中,我可以看到$ _COOKIE中存儲的3個值。
問題:如何在計算期間(當他在瀏覽器中計算同一頁面時)保存所有用戶輸入(按下按鈕後)?換句話說:每次當一個按鈕被按下時,我需要cookie中的所有值存儲在其他3個數組$ firstTermCookie [] $ secondTermCookie [] $ resultCookie []中,並從這3個新的數組中需要隨機值。
我已經試過:
$firstTermCookie = [];
$secondTermCookie = [];
$resultCookie = [];
$firstTermCookie[] = $_COOKIE['firstTerm'];
$secondTermCookie[] = $_COOKIE['secondTerm'];
$resultCookie[] = $_COOKIE['result'];
但每個操作存儲只值,清除以前的值。 使用foreach $ _COOKIE循環,它會存儲3次相同的值,同時也會擦除以前的值。 我知道$ _SESSION的可能性,但我需要從$ _COOKIE中存儲它們。
預先感謝您!
P.S. 這是我的第一個問題,如果我做錯了,我很抱歉。
要保存所有結果嗎?反對所有4個行動? – devpro
@devpro是的,所有4個行動的條款和結果。 –
比爲什麼在計算之前使用設置的cookie? – devpro