Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.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 参数不匹配mysql\u fetch\u assoc()_Php_Html_Mysql - Fatal编程技术网

Php 参数不匹配mysql\u fetch\u assoc()

Php 参数不匹配mysql\u fetch\u assoc(),php,html,mysql,Php,Html,Mysql,sql查询中很可能存在错误,原因是mysql\u fetch\u assoc返回bool(很可能为false,例如查询失败)。使用mysql\u error函数查找问题 mysql.*已折旧,请切换到mysqli.* 使用mysqli中的准备好的查询来转义所有输入,或者至少使用Escape\u string来避免SQL注入 注意,mysql_uu函数已弃用,将随即将发布的php版本7一起删除。 检查$result,然后将其传递给mysql\u fetch\u数组。您将发现它是false,因为查询

sql查询中很可能存在错误,原因是
mysql\u fetch\u assoc
返回bool(很可能为false,例如查询失败)。使用
mysql\u error
函数查找问题

  • mysql.*
    已折旧,请切换到
    mysqli.*

  • 使用
    mysqli
    中的准备好的查询来转义所有输入,或者至少使用
    Escape\u string
    来避免SQL注入


  • 注意,mysql_uu函数已弃用,将随即将发布的php版本7一起删除。

    检查
    $result
    ,然后将其传递给
    mysql\u fetch\u数组
    。您将发现它是false,因为查询失败。有关可能的返回值以及如何处理这些返回值的建议,请参阅mysql_查询文档

    请参阅此示例:

    <?php
        include('connection/connection.php');
    
        $uname=$_POST['uname'];
        $password=$_POST['password'];
    
        $sql=mysql_query("SELECT * FROM elemschool_admin WHERE admin_UName='$uname' AND admin_pass='$password'");
        $sql1=mysql_query("SELECT * FROM elemschool_faculty WHERE facultyID='$uname' AND faculty_password='$password'");
        $row=mysql_fetch_assoc($sql1);
    
        $cout=mysql_num_rows($sql);
        $cout1=mysql_num_rows($sql1);
    
        if($cout>0){
            $_SESSION['id']=$uname;
            header("location: modules/admin/index.php");
        }
        else{
            ?>
            <script>
                alert("Wrong Input!");
                window.location="index.php";
            </script>
            <?php
        }
    ?>  
    

    很多事情都可能导致这个问题。也许您的POST变量是空的,也许它们需要转义。。。
    $username = mysql_real_escape_string($_POST['username']);
    $password = $_POST['password'];
    $result = mysql_query("SELECT * FROM Users WHERE UserName LIKE '$username'");
    
    if($result === FALSE) { 
        die(mysql_error()); // TODO: better error handling
    }
    
    while($row = mysql_fetch_array($result))
    {
        echo $row['FirstName'];
    }