1

我想出了以下脚本来清理我的 php 邮件联系表格。想知道是否还有其他建议我应该放在这里。这只是代码的一个片段,因为我还预先匹配每个字段以只允许允许的字符,但就从一开始就清理注入而言 - 关于更改的任何建议?

我意识到我没有包含 /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;
}
4

0 回答 0