您有一個包含多個輸入欄位的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 和 PHP 從具有多個輸入的動態表單填入資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!