Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将“条带标签”自动附加到所有db select查询?_Php_Mysql_Mysqli_Strip Tags - Fatal编程技术网

Php 如何将“条带标签”自动附加到所有db select查询?

Php 如何将“条带标签”自动附加到所有db select查询?,php,mysql,mysqli,strip-tags,Php,Mysql,Mysqli,Strip Tags,我在phpdb.php中有这个 $mysqli = new mysqli($hostname, $user, $pass, $bd); foreach($_POST as $key => $value){ if (!is_array($value)){ $_POST[$key] = strip_tags($value); } } 首先是我的db连接,然后是一个简单的foreach,用于从所有帖子中删除html标记。此页面包含在所有其他需要db连接的页面中 我是否可以更改

我在phpdb.php中有这个

$mysqli = new mysqli($hostname, $user, $pass, $bd);

foreach($_POST as $key => $value){ 
  if (!is_array($value)){
   $_POST[$key] = strip_tags($value);
  }
}
首先是我的db连接,然后是一个简单的foreach,用于从所有帖子中删除html标记。此页面包含在所有其他需要db连接的页面中

我是否可以更改此函数以将“strip_tags”应用于所有mysqli选择,而不是post并删除其中的所有标记

e、 g


我不认为有一种方法可以自动完成。您可以这样做:

数据库连接, 准备SQL查询 对于每个参数,清除标记, 绑定参数执行查询
另一个选择是使用一些ORM。例如,允许指定在保存实体之前调用的函数。您可以在那里剥离标签。

您可以将其包装在函数中:

function wrapp($sql){
  // You could add more stuff to change like htmlspeciclchars
  return strip_tags($sql);
}
您可以在每次执行查询时调用此函数

$mysqli->query(wrapp($sql));
如果你想进一步解决你的连接问题,最好为它建立一个类,并实现上面提到的功能。据我所知,如果不调用函数或类似的东西,就无法自动执行此操作

$mysqli->query(wrapp($sql));