php 清空表單,清理和驗證表單php

2021-10-25 22:34:51 字數 1588 閱讀 9236

完全陷入了困境-php的新手,並進行了簡單的表單提交(建立帳戶頁面)以傳送到mysql資料庫,因此對問題的寬恕表示歉意。

我不確定在傳送資料之前如何正確驗證和清除資料。但是我在插入資料庫時​​使用的是pdo和佔位符,所以我認為這一方面已經涵蓋了。

這被傳送到乙個名為createaccount.php的單獨的php檔案,該檔案執行使用者名稱檢查,如果成功執行,則將乙個字段傳送到我的dbhandler類中的insert函式中的函式。

session_start();

include('connect.php');

$username = $_post['createusername'];

$password = $_post['password'];

$password_confirm = $_post['confirmpw'];

$firstname = $_post['fname'];

$surname = $_post['sname'];

$email = $_post['useremail'];

if ($dbh->checkusername($username)) else {

$dbh->createaccount($username, $password, $password_confirm, $firstname, $surname, $email);

header('location: login.php');

exit();

所以我的問題是。我應該使用

以我的形式動作嗎?如果是這樣的話。我需要在createaccount.php上執行此功能,因為我無法將其傳送到另乙個php檔案?

我應該使用filter_var嗎?和/或我應該在傳送到表單的變數中使用修剪,反斜槓或其他任何內容嗎?我該怎麼做呢?我的理解是

$name = test_input($_post['createusername']);

$password = test_input($_post['password']); .. etc

function test_input($data) {

$data = trim($data);

$data = stripslashes($data);

$data = htmlspecialchars($data);

return $data;

另外,這是我的插入功能。這是安全的/正確編寫的嗎?

function createaccount($username, $pw, $confirmpw, $fname, $sname, $email) {

$sql = "insert into `room_project`.`user` (`username`, `pass`, `confirmpw`, `fname`, `sname`, `email`) values (?, ?, ?, ?, ?, ?);";

$query = $this->connection->prepare($sql);

$query->execute(array($username, $pw, $confirmpw, $fname, $sname, $email));

我非常感謝任何建議!再次請您原諒這個性質:)

php 表單和驗證

表單的作用 通過表單 發布和收集 資訊.對html表單進行編碼 只是有效接受使用者輸入的必要操作的 一部分 必須由 伺服器端 元件來處理 一 標頭函式 header 標頭 header 是 伺服器 從http協議 傳html資料到瀏覽器 在 標頭 和 html檔案 之間 需空一行分隔.header ...

php表單驗證

html表單驗證的 如下 注意 使用者向伺服器傳送請求的方式有兩種 post和get,兩者的區別是get傳送的時候,攜帶的資料是連線在url後面。有資料大小的限制,並且get不能上傳檔案,而post傳送比較隱蔽的,url看不到,沒有資料大小的限制,用來上傳檔案給伺服器。在php中,獲取傳送來的資料,...

php驗證表單

class class post str true false 驗證是否為指定長度數字 function fun text2 num1,num2,str i str true false 驗證是否為指定長度漢字 function fun font num1,num2,str string retur...