您有一個包含多個輸入欄位的PHP 表單,其數量由使用者定義。為了有效地將這些資料輸入資料庫,Ajax 是一個可行的解決方案。這是針對您的特定場景量身定制的解決方案。
實作以下 Ajax功能來滿足您的需求:
function MyFunction(){ var i = 1; var x = $('#num_to_enter').val(); var formData = new FormData; while (i <= x){ var name = $('#fname[i]').val(); var lname = $('#lname[i]').val(); var email = $('#Email[i]').val(); formData.append("fname[" + i + "]", name); formData.append("lname[" + i + "]", lname); formData.append("email[" + i + "]", email); i++; } $.ajax({ url: 'process.php', type: "POST", data: formData, processData: false, contentType: false, success : function(data){ window.setTimeout(function() { $('#SuccessDiv').html('Info Added!'); $('#data').css("display","block"); $('#data').html(data); }, 2000); } }); return false; }
您提供的表單結構仍然有效:
echo "<form method='post'>"; $i=1; while($i <= $num_to_enter){ $form_output .= "First Name: <input>
在
while ($i <= $x){ $x = $_POST['num_to_enter']; $fname = $_POST['fname[$i]']; $lname = $_POST['lname[$i]']; $email = $_POST['email[$i]']; $sql = "INSERT INTO `mytable` (`firstname`, `lastname`, `email`) VALUES ('$fname[$i]', '$lname[$i]', '$email[$i]');"; $i++; }資料庫插入在資料庫插入腳本中,確保相應地包含Ajax資料:結論這個支援Ajax 的解決方案可以有效地從動態產生的資料中擷取使用者輸入表單並將其轉送到您的PHP 腳本以進行資料庫插入。
以上是如何使用 Ajax 和 PHP 從具有多個輸入的動態表單填入資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!