首頁 > 易卦

PHP 插入資料庫處理和注意事項

作者:由 文江部落格 發表于 易卦日期:2022-08-12

php資料庫怎麼匯入

PHP 插入資料庫一般我們都會處理一下,一般會把一些字元轉義,防止 SQL 注入和伺服器入侵,PHP 自帶了多個處理字串的函式,我們一起來看看。

特殊字元轉義

入庫時

$str=addslashes($str);$

sql

=“insert into `tab` (`content`) values(‘$str’)”;

出庫時

$str=stripslashes($str);

顯示時

$str=htmlspecialchars(nl2br($str));

去首尾空格

對於標題、關鍵字和描述等欄位的儲存,我們必須去除字串中的空格、換行和回車字元,保持純文字的字串即可。

function trans_string_trim($str){ $str = trim($str); $str = eregi_replace(“‘”,“’‘”,$str); $str = stripslashes($str); return $str;}

過濾HTML程式碼

有時候使用者提交資料中帶有很多 HTML 標籤,其實這些標籤是沒有用的,因為根本就沒有給這些標籤設定樣式,僅僅是使用者從別處複製來的,而最嚴重就是有人惡意提交程式碼,比如 Spam 提交很多評論,而這些內容中帶有很多連結,我們可以透過 PHP 的 htmlspecialchars() 函式過濾掉這些不安全的標籤。

function trans($string){ $string=htmlspecialchars($string); $string = ereg_replace(chr(10), “
”, $string); $string = ereg_replace(chr(32), “”, $string); return $string;}

更多字串處理函式

顯示在 WEB 頁面,不過濾 HTML 程式碼;

function trans_web($string){ $string = ereg_replace(chr(10),“
”,$string); $string = ereg_replace(chr(32),“”,$string); return $string;}

顯示在 WEB 頁面,過濾 HTML 程式碼及頭尾空格,主要用於顯示使用者暱稱

function trans_trim($string){ $string = trim($string); $string = htmlspecialchars($string); $string = ereg_replace(chr(10),“
”,$string); $string = ereg_replace(chr(32),“”,$string); return $string;}

顯示在 span 中;

function trans_span($string){ $string = ereg_replace(chr(10),“n”,$string); $string = ereg_replace(chr(32),“”,$string); $string = ereg_replace(’“‘,”“”,$string); return $string;}

在 WEB 上顯示 cookie 過濾 html

function trans_cookie($str){ $str = trans($str); $str = stripslashes($str); $str = eregi_replace(“’‘”,“’”,$str); return $str;}