我创建了一个静态网站(客户请求),并在联系人页面中放入了一个电子邮件表单。表单运行良好并发送数据,但在收到的电子邮件中,我收到了sam的clover(测试数据)如何清理静态网站中的数据,以删除数据并在电子邮件中保持原样。
我试着用我的关键词来查找,但并没有根据静态部分找到任何运气。
任何帮助都会很好,谢谢这是我现在使用的vars。
$to = STRIP_TAGS($_POST['remail']);
$from = STRIP_TAGS($_POST['semail']);
$phone = STRIP_TAGS($_POST['sphone']);
$subject = STRIP_TAGS($_POST['subject']);
$message = STRIP_TAGS($_POST['message']);
$headers = "From:" . $from;
使用stripslashes()
:
它取消引用字符串的引号。因此CCD_ 2变为CCD_ 3。
$to = stripslashes($_POST['remail']);
$from = stripslashes($_POST['semail']);
$phone = stripslashes($_POST['sphone']);
$subject = stripslashes($_POST['subject']);
$message = stripslashes($_POST['message']);
$headers = "From:" . $from;
您也可以将其用于阵列:
stripslashes_deep($array_name);
点击此处阅读:http://php.net/manual/en/function.stripslashes.php
你的后处理是stripslashes(),但如果斜杠是由PHP自动从魔术引号中添加的,那么你应该检查一下,这样你的脚本就会在任何服务器上运行,而不仅仅是在有魔术引号的服务器上。
这里有一个回调函数,它将遍历所有受影响的全局变量并进行修复。您可以将其添加为初始化的一部分。
<?php
function process_gpc(&$value, $key){
//magic quotes fix
if (get_magic_quotes_gpc()) {
$key = stripslashes($key);
$value = stripslashes($value);
}
//null byte (string termination) protection
$key = str_replace(chr(0), '', $key);
$value = str_replace(chr(0), '', $value);
}
$inputs = array(&$_GET, &$_POST, &$_COOKIE, &$_REQUEST, &$_FILES);
array_walk_recursive($inputs, 'process_gpc');
?>