將Javascript 陣列傳送到PHP
當嘗試使用POST 將陣列從JavaScript 傳送到PHP 時,必須了解非同步AJAX) 操作。
要 POST 數組,您可以使用以下 JavaScript 程式碼:
<code class="javascript">function sendToPHP() { $.post("index.php", { "variable": toSearchArray }); }</code>
但是,在 PHP 端,您應該避免使用 $_POST['variable '] 直接存取數組。相反,建立一個自訂 PHP 函數來接收和處理數組:
<code class="php"><?php function receiveArray() { if (!empty($_POST['variable'])) { $myval = json_decode($_POST['variable'], true); print_r($myval); } } ?></code>
此函數將解碼 JSON 編碼的數組並使其可在 $myval 變數中存取。
在 PHP 中處理 POST
在 PHP 中建立一個函數來處理 POST 請求非常重要。這可確保僅在必要時執行 PHP 程式碼。
<code class="php"><?php if (!empty($_POST)) { receiveArray(); } ?></code>
receiveArray() 函數現在將處理 POST 請求並回顯數組。
使用單獨的 PHP 和HTML 檔案
為了清晰和維護,建議將 PHP 和 HTML 程式碼分離到不同的檔案中。
PHP 檔案:
<code class="php"><?php function receiveArray() { // Handle the POST request and echo the array } ?></code>
HTML 檔案:
<code class="html"><html> <head> <script src="jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function() { $('#btn').click(function() { $.post('phpfile.php', { "variable": toSearchArray }); }); }); </script> </head> <body> <input type="text" id="txt"> <input type="button" id="btn"> <pre id="response">