我有一個表單,我想要做驗證。但是有一個我想驗證編寫查詢的字段。我不想要表單回發,因爲在回發之後,表單中填寫的所有值都丟失了。有沒有什麼辦法,我可以寫一個查詢沒有回發,或者如果我必須回發如何保留值?請幫助PHP:如何在沒有表單回傳的情況下執行查詢?
0
A
回答
2
如果您使用AJAX(jQuery),則可以發佈XML請求而無需刷新瀏覽器,如果這是您所需的。 爲此,只需創建一個表單的一些文本框和一個提交按鈕,傾其所有的ID,並添加一個點擊監聽器的按鈕:
$('#submit-button').click(function() {
var name = $('#username').val();
$.ajax({
type: 'POST',
url: 'php_file_to_execute.php',
data: {username: name},
success: function(data) {
if(data == "1") {
document.write("Success");
} else {
document.write("Something went wrong");
}
}
});
});
如果在用戶點擊按鈕與「提交按鈕「-ID,這個函數被調用。然後,使用POST將文本字段的值發送到php_file_to_execute.php。在這個.php文件中,你可以驗證用戶名並輸出結果:
if($_POST['username'] != "Neha Raje") {
echo "0";
} else {
echo "1";
}
我希望我能幫助你! :)
0
你可能想要改寫你寫的,它有點不清楚。僅供參考我是這樣做的;
<form method="post">
Text 1: <input type="text" name="form[text1]" value="<?=$form["text1"]?>" size="5" /><br />
Text 2: <input type="text" name="form[text2]" value="<?=$form["text2"]?>" size="5" /><br />
<input type="submit" name="submit" value="Post Data" />
</form>
而當我處理數據時,就是這樣;
<?php
if ($_POST["submit"]) {
$i = $_POST["form"];
if ($i["text1"] or .....) { $error = "Something is wrong."; }
if ($i["text2"] and .....) { $error = "Maybe right."; }
if (!$error) {
/*
* We should do something here, but if you don't want to return to the same
* form, you should definitely post a header() or something like that here.
*/
header ("Location: /"); exit;
}
//
}
if (!$_POST["form"] and !$_GET["id"]) {
} else {
$form = $_POST["form"];
}
?>
通過這種方法,數值不會丟失,除非你設置它們迷路。
0
使用jQuery的$.post()
方法:
$('#my_submit_button').click(function(event){
event.preventDefault();
var username = $('#username').val();
$.post('validate.php', {username: username, my_submit_button: 1}, function(response){
console.log(response); //response contain either "true" or "false" bool value
});
});
在validate.php從您的形式獲取用戶名作爲異步像這樣:
if(isset($_POST['my_submit_button']) && $_POST['my_submit_button'] == 1 && isset($_POST['username']) && $_POST['username'] != "") {
// now here you can check your validations with $_POST['username']
// after checking validations, return or echo appropriate boolean value like:
// if(some-condition) echo true;
// else echo false;
}
注意:請考慮安全性瞭解相關漏洞以及在使用AJAX執行數據庫更改腳本之前的其他問題。
相關問題
- 1. DocumentDB:如何在沒有超時的情況下運行查詢
- 2. 如何在沒有問題的情況下執行大量的SQL查詢?
- 3. 查詢在沒有錯誤但沒有觸發的情況下執行
- 4. 如何在沒有表單的情況下將數據從HTML傳遞到PHP?
- 5. 如何在不聲明XML的情況下執行子查詢?
- 6. 如何在不顯示結果的情況下執行查詢?
- 7. 如何在沒有表單的情況下向URL發送查詢數據?
- 8. 如何在沒有回傳的情況下觸發dropdownlist的SelectedIndexChanged?
- 9. DropDownList的SelectedIndexChanged()如何在沒有回傳的情況下工作?
- 10. 如何在沒有子查詢的情況下爲以下查詢編寫sql
- 11. php和DB在沒有Ajax的情況下查詢
- 12. 如何在沒有密碼提示的情況下執行mysqldump?
- 13. 如何在沒有隨機化的情況下執行uvm_do_on?
- 14. 如何在沒有shell的情況下執行.py程序?
- 15. GDB如何在沒有斷點的情況下停止執行?
- 16. 如何在沒有構建文件的情況下執行Ant
- 17. 如何在沒有eval的情況下執行此操作()
- 18. 如何在沒有櫃檯的情況下執行此程序?
- 19. 如何在沒有事務的情況下執行sproc?
- 20. 如何在沒有kexec的情況下執行linux內核?
- 21. 如何在沒有引導的情況下執行Angular代碼?
- 22. 如何在沒有WIN32 API的情況下執行此操作?
- 23. 如何在不依賴PHP循環的情況下執行此查詢?
- 24. 在沒有帳戶的情況下在SQL Server上執行查詢
- 25. 如何在沒有Linq的情況下查詢DataGridView
- 26. 如何在沒有Scala的情況下測試Spark SQL查詢
- 27. 如何在沒有條件的情況下讓查詢返回任何內容?
- 28. 如何在沒有實際執行查詢的情況下測試查詢數據庫的方法?
- 29. 如何在沒有任何子查詢的情況下重寫SQL查詢?
- 30. 在沒有VBA的情況下向Oracle進行直通查詢
當你說「回傳」時,你是什麼意思? – Andrew