,我然後重定向到網頁B與它發送$ _ POST數據。我已經看到,我可以從這樣的表單中序列化發佈數據$("form").serialize()
或this.serialize()
,但我不想從我需要從$ _POST獲取的表單中檢索數據。我怎樣才能從當前頁面上存在的表單序列化$ _POST數據?
回答
我發現一個解決方案,以防萬一有人想知道如何做到這一點。 var post_info = [];
創建一個數組來保存所有的$ _POST變量。 這是採取所有後變量,並把它們放入一個json數組爲ajax post_info = <?php echo json_encode($_POST); ?>;
。阿賈克斯看起來很正常。
"ajax": {
"url": "ajax/test.php",
"type": "POST",
"data": {post_info: post_info}
},
在PHP端我沒必要json_decode因爲AJAX將以此爲$ _ POST變量。除了它現在是一個多維數組,因此訪問變量看起來像這樣$_POST['post']['item']
。你去了。我從未回答過我自己的問題。
當有人提交表單,除非您使用JavaScript來覆蓋默認瀏覽器的行爲,他們將採取頁B.你定義「法」與形式的「行動」得到你想要的行爲。因此,要使用method =「POST」發佈數據並轉至pageb.php,您將設置action =「/ pageb.php」。然後在pageb.php中,您可以從pagea上的表單訪問POST變量。例如。
網頁A:
<form name="aform" action="/pageb.php" method="POST">
<input type="text" name="name" />
<input type="submit" value="Submit" />
</form>
中輸入您的姓名,點擊提交,重定向到pageb.php。然後在頁面上:
<?php
$name = $_POST["name"];
echo $name;
?>
您看到名稱。雖然不是很令人興奮。
你可以選擇使用Ajax和jQuery的序列化功能來發送表單數據,不留網頁A對pageb.php。
你可以做這樣的事情:
<form id="aform" action="/pageb.php" method="POST" onsubmit="return submitForm(event)">
<input type="text" name="name" />
<input type="submit" value="Submit" />
</form>
<script type="text/javascript">
function submitForm() {
event.preventDefault();
$.post('/pageb.php', $("#aform").serialize(), function(response) {
// Do something with the response
});
};
</script>
這是非常基本的,但是它停止的形式表現正常,序列化的形式,並將其發送到網頁B。 pageb.php將不得不輸出某種類型的文本,純文本或JSON可能取決於你想實現什麼。
上這是我在做什麼。當我打到pageb.php時,我正在做一個ajax調用來查詢數據庫並填充數據表。在pageb.php表單不見了,但我有$ _POST數據。整個情況的問題是數據表。我無法加載頁面而沒有填充數據表或數據表將永遠說「加載」,而不是在頁面上渲染任何東西。 – moe
我認爲你已經添加了一個額外的步驟。用PHP啓動pageb以執行數據庫查詢,然後重定向到另一個頁面或將pageb呈現爲HTML。在您更改頁面後,無需發送Ajax調用 – Taintedmedialtd
- 1. 數據未從阿賈克斯POST
- 2. PHP:排序阿賈克斯數據
- 3. 如何在阿賈克斯
- 4. HTML重定向與阿賈克斯
- 5. 鐵軌阿賈克斯重定向
- 6. 如何設置序列化數據到$阿賈克斯.post的方法
- 7. 在阿賈克斯數據
- 8. 從阿賈克斯
- 9. 阿賈克斯
- 10. 從阿賈克斯
- 11. 阿賈克斯
- 12. 如何追加序列化與FORMDATA在阿賈克斯
- 13. 從阿賈克斯
- 14. PHP從來沒有在阿賈克斯
- 15. 阿賈克斯通過PHP
- 16. 在阿賈克斯
- 17. 阿賈克斯
- 18. 在阿賈克斯
- 19. 阿賈克斯
- 20. 阿賈克斯負載PHP
- 21. asp.net從阿賈克斯後
- 22. 阿賈克斯
- 23. 阿賈克斯後數據
- 24. 通數據阿賈克斯
- 25. 如何在WordPress與阿賈克斯發送大量POST數據?
- 26. 更新數據庫阿賈克斯PHP
- 27. 阿賈克斯不會從PHP
- 28. 如何在阿賈克斯
- 29. 如何在阿賈克斯
- 30. 通JSON從PHP阿賈克斯()
請編輯此問題,並要求更清楚,這是令人困惑 –
你爲什麼這樣做?也許你可以通過AJAX發送信息,在收到響應後,使用這些信息創建另一個信息?但我仍然不明白它的用法。 –
你如何發佈數據?阿賈克斯?否則,我不知道如何使用JS將序列化數據和「重定向」(我假設你發佈)到另一個頁面使用POST方法?告訴我們你的代碼。 –