我有一個預覽輸入數據的腳本,在用戶接受同一個腳本之前,它需要重新發布表單數據才能最終處理它,其中一些數據是數組形式&我找了一個高效的函數來執行的,是我沒找到,所以我創造了這個:
function repost_array ($value, $key, $mkey) {
echo draw_hidden_field($mkey.'[' . $key . ']', htmlspecialchars(stripslashes($value)));
}
/* Re-Post all POST'ed variables */
reset($_POST);
while (list($key, $value) = each($_POST)) if (!is_array($_POST[$key])) echo draw_hidden_field($key, htmlspecialchars(stripslashes($value)));
reset($_POST);
while (list($key, $value) = each($_POST)) if (is_array($_POST[$key])) array_walk_recursive($_POST[$key], 'repost_array', $key);
請告知,如果有更好的辦法,或者如果我錯過了什麼(I`ve沒有測試如何遞歸函數的功能將會起作用)。
我不確定你到底在做什麼。您正在收到帖子,但是希望用戶再次發帖爲什麼? – Webeng
不要求用戶重新發布它。將它保存在一個會話變量中,當它們確認時只使用會話變量。 – Barmar
或保存在數據庫表中,其中包含isProcessed –