Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/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
mysqli num行的php问题不起作用_Php_Ajax - Fatal编程技术网

mysqli num行的php问题不起作用

mysqli num行的php问题不起作用,php,ajax,Php,Ajax,这个函数mysqli_num_rows()有问题,因为有时候对我来说效果很好,有时候它让我头脑发热,我真的不知道它有什么问题 这是我的PHP文件: <?php include 'dbh.php'; function get_font_class() { global $conn; if ( isset($_POST['dataSearchBox']) ) { $searchKeyword = $_POST['d

这个函数
mysqli_num_rows()
有问题,因为有时候对我来说效果很好,有时候它让我头脑发热,我真的不知道它有什么问题

这是我的PHP文件:

<?php  

    include 'dbh.php';

    function get_font_class() {
        global $conn;
        if ( isset($_POST['dataSearchBox']) ) {
            $searchKeyword = $_POST['dataSearchBox'];
            $sql = ' SELECT * FROM fontawesomeicons WHERE name LIKE ' .$searchKeyword. '%; ';
            $result = mysqli_query($conn, $sql);
            if ( mysqli_num_rows( $result ) > 0 ) {
                while ( $row = mysqli_fetch_assoc( $result ) ) {
                    echo '<i class=' .$row['class']. '></i>';
                }
            } else {
                echo "There Are No Icons At The Moment!";
            }
        }   
    }
    get_font_class();
将sql编写为

$sql = "SELECT * FROM fontawesomeicons WHERE name LIKE '%".$searchKeyword."%'" ;

在atribute类前后使用双引号
    include 'dbh.php';

    function get_font_class() {
        global $conn;
        if ( isset($_POST['dataSearchBox']) ) {
            $searchKeyword = $_POST['dataSearchBox'];
            $sql = ' SELECT * FROM fontawesomeicons WHERE name LIKE ' .$searchKeyword. '%; ';
            $result = mysqli_query($conn, $sql);
            if ( mysqli_num_rows( $result ) > 0 ) {
                while ( $row = mysqli_fetch_assoc( $result ) ) {
                    echo '<i class="' .$row['class']. '"></i>';
                }
            } else {
                echo "There Are No Icons At The Moment!";
            }
        }   
    }
    get_font_class();
包括“dbh.php”;
函数get\u font\u class(){
全球$conn;
如果(isset($_POST['dataSearchBox'])){
$searchKeyword=$\u POST['dataSearchBox'];
$sql='从fontawesomeicons中选择*,其中的名称类似于'$searchKeyword.%;';
$result=mysqli\u查询($conn,$sql);
如果(mysqli_num_行($result)>0){
while($row=mysqli\u fetch\u assoc($result)){
回声';
}
}否则{
echo“目前没有图标!”;
}
}   
}
获取字体类();

这有遭受SQL注入攻击的风险。不要将输入数据直接用于查询。然后更好地解释您的实际问题…您的SQL无效。使用错误报告。如果语法正确,您也可以接受SQL注入。到底是什么问题?仍然无效的SQL…和SQL可注入..并且您更改了类似于
s的功能。从用户的角度来看,这是无效的。他的问题不是sql注入,而是在页面上显示结果。
%
的打开错误,
'%
的关闭错误。另外,前导的
%
可能太松散,不允许使用索引。您仍然更改了功能。%关键字%将匹配与关键字%不同的结果。然而,无论如何,我希望我们不要用绷带而不是坏代码。