我为这个问题和链接所做的研究:
How do you send console messages and errors to alert?
jQuery AJAX form using mail() PHP script sends email, but POST data from HTML form is undefined
代码示例:
function handleError(evt) {
if (evt.message) { // Chrome sometimes provides this
$.ajax({
type: "POST",
url: "email.php",
data: evt.message,
success: function(){
$('.success').fadeIn(1000);
}
});
} else {
$.ajax({
type: "POST",
url: "email.php",
data: evt.type,
success: function(){
$('.success').fadeIn(1000);
}
});
}
}
问题)“email.php”需要什么类型的验证才能确保电子邮件不是恶意的(在可能的范围内)IE:您是否有一个漏洞,您正在使用此漏洞功能。 如果有一个内置的机制来改变javascript中错误日志的位置,那也会回答这个问题。
答案 0 :(得分:0)
我假设您将其发送到已知的电子邮件地址,因此不需要检查电子邮件?
filter_var($email, FILTER_VALIDATE_EMAIL)
然后清除要从您的电子邮件停止正常运行的任何内容发送的数据。
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$data = clean_string($data);
之后剥离html标签以防止发送html(阻止javascript作为示例发送)。
$data = strip_tags($data);
数据应该可以安全地发送到电子邮件中,现在请记住,数据不安全但尚未发送到sql数据库,如果你确实将它发送到数据库使用预处理语句,那么数据就不能做了sql注射。