php函数过滤输入表单

时间:2017-03-01 13:48:57

标签: php

我尝试创建一个函数来提交后过滤输入字段 数据库连接

include("includes/connect.php");

这个功能就像那样

<?php
function filter($x){
    global $conn;
    $y=strip_tags(htmlspecialchars(htmlentities(mysqli_real_escape_string($conn,$x))));
}
?>

表格

<form method="post">
<input type="text" name="txt_name">
<input type="submit" name="add" value="Add">    
</form>

代码

<?php
if(isset($_POST['add'])){
   $name= filtration($_POST['txt_name']);
   echo $name;
}
?>

当我尝试在过滤后打印$ name时,我没有任何结果

我试着这样做

strip_tags(htmlspecialchars(htmlentities($x)))

我有一个输出

但对我来说,我想使用mysqli_real_escape_string

我该如何解决这个问题??!

2 个答案:

答案 0 :(得分:1)

您需要从函数中返回值。 :)

function filter($x) {
    // do the cleaning of your string
    return $y; 
}

答案 1 :(得分:0)

替换

    $name= filtration($_POST['txt_name']);

    $name= htmlspecialchars(filter_var(trim($_POST['txt_name']), FILTER_SANITIZE_STRING), ENT_QUOTES );