![](/img/trans.png)
[英]Why do I get “PHP Warning: Attempt to read property ”nodeType“ on null” error on this PHP AJAX search?
[英]Why do I get an error code shows (PHP Warning)
我的问题 :
PHP Warning: preg_match() expects parameter 2 to be string, array given in *****
我的代码:
foreach ($_POST as $secvalue) {
if ((preg_match("/<[^>]*iframe*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*object*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*applet*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*meta*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*onmouseover*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]script*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*body*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]style*\"?[^>]*/", $secvalue))) {
die ($htmltags);
}
}
}
什么问题 ? 什么是正确的代码? 坦克
问题是您将数组作为第二个参数传递给preg_match()
,但preg_match()
将第二个参数作为字符串值。
检查将从发布请求中获取所有键值的波纹管代码。
foreach ($_POST as $key => $secvalue){
if ((preg_match("/<[^>]*iframe*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*object*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*applet*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*meta*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*onmouseover*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]script*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]*body*\"?[^>]*/", $secvalue)) ||
(preg_match("/<[^>]style*\"?[^>]*/", $secvalue))) {
die ($htmltags);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.