我想出了以下脚本来清理我的php邮件联系表单。想知道是否还有其他建议我应该放在这里。这只是代码的一小部分,因为我还将每个字段预先设置为仅允许允许使用的字符,但是对于get get的清理注入 - 任何有关更改的建议?
我意识到我没有包含/ r,/ n,%0a和%0d,但是当我这样做时,它会在我发布到自身时创建表单问题并包含“错误”和“无效”注释那些有错误的字段,包括原文,因此可以更正,另外我想在表格的评论“文本区域”中允许输入和换行。
// remove any possible inections
foreach($values as $key => $input){
$values[$key] = cleaninjections($input);
}
// perform on each field of the form
function cleaninjections($test)
{
// Remove injected headers
$find = array("/bcc\:/i",
"/content\-type\:/i",
"/mime\-version\:/i",
"/cc\:/i",
"/from\:/i",
"/to\:/i",
"/content\-transfer\-encoding\:/i");
$ret = preg_replace($find, "", stripslashes($test));
return $ret;
}