初學php,求各位大神解答?
一個網頁里有多個表單需要提交,用ajax獲取數據之後是不是每個表單都得建一個php文件傳輸到資料庫
一個PHP文件可以處理多個表單操作,比如:
登錄表單: index.php?action=login
註冊表單: index.php?action=signup
index.php只需判斷$_GET["action"]就能處理不同表單.
同理,你可以進一步進行URL路由設計,比如:
index.php?c=usera=login
index.php?c=usera=signup
其中c表示控制器controller,a表示控制器里的動作(方法)action(method).
對$_GET["c"]和$_GET["a"]進行判斷即可實現路由,比如:
require載入user控制器類,執行裡面的login方法.
完全沒問題嘛。
&輸入了:" . $_POST["text"] . "&
}
?&>
& &
如果你是用TP的話就直接新加一個方法就好了,一個PHP文件就行,如果是原生的話,你可以考慮在ajax加入一個標識來給php做switch選擇,這樣就可以實現單PHP獲取了。簡要寫一下。
var db = {form1: {}, form2: {}}
db.form1.username = document.querySelector("#username1")
db.form1.password = document.querySelector("#password1")
db.form1.submit = document.querySelector("#submit1")
db.form2.username = document.querySelector("#username2")
db.form2.password = document.querySelector("#password2")
db.form1.submit.addEventListener("click", function(e){
e.preventDefault()
$.ajax({
url: "localhost/ajaxFetch.php",
data: {
mark: "form_01",
username: db.form1.username.value.trim(),
password: db.form1.password.value.trim()
},
dataType: "json",
success: data =&> {
console.log(data)
}
})
}, false)
後台php就根據form_01標記來做switch,對應處理不同的表單。
$mark = $_REQUEST["mark"]
swith($mark){
case "form_01":
$username = $_REQUEST["username"];
$password = $_REQUEST["password"];
//存入資料庫等相關操作
....
break;
case "form_02":
//同上處理
....
}
大半年沒寫PHP了,以上代碼沒運行過,不通就請自行調bug。
你用tp 框架了嗎?用了?所有數據是屬於同一個表中的欄位嗎?是?一個php
否?有幾個表寫幾個。
沒用tp?直接用ajax非同步提交到一個php文件,分別插入個個表中?謝邀。
多個表單需要多個處理邏輯。
一個PHP文件可以有任意個處理邏輯。
當然要區分提交來的表單,最簡單的方案是給每一個表單標識符,在一個PHP文件中根據標識符的不同跳轉給不同的函數處理。每個函數是一個表單的處理邏輯,接受不同的參數。
*.php只是文件。
傳參數啊大哥,管你幾個表單,我一個php方法給你搞定
肯定不是,post數據該往哪個表存就往哪個表存就行了。
$name = $_POST["name"];
$mobile = $_POST["mobile"];
//假設name 存進人員表,mobile存進信息表,那就分開存就可以了
推薦閱讀:
※rabbitmq與gearman有什麼不同之處?
※寫了個基於 PHP 的 Linux 圖形化性能監視器 Holy Lance