致命错误:未捕获错误

时间:2016-06-27 03:44:02

标签: php mysql pdo

我在一个简单的登录中遇到了这个错误:我正在开发:

  

致命错误:未捕获错误:在D:\ xampp \ htdocs \ script \ login.php中调用未定义函数mysql_fetch_array():18堆栈跟踪:在D:\ xampp \ htdocs \ script \中抛出#0 {main}第18行的login.php

所以,这是我的login.php:

<?php
require "banco.php";
session_start();
$login = isset($_POST["login"]) ? addslashes(trim($_POST["login"])) : FALSE;
$senha = isset($_POST["senha"]) ? md5(trim($_POST["senha"])) : FALSE;
if(!$login || !$senha){
    echo "Você deve digitar sua senha e login!";
    exit;}
$SQL = "SELECT id, nome, login, senha FROM usuario WHERE login = '$login' ";
$result_id = $db->query($SQL);// or die("Erro no banco de dados!");
$total = $result_id->fetchColumn();
if($total){
    $dados = @mysql_fetch_array($result_id);
if(!strcmp($senha, $dados["senha"])){
    $_SESSION["id_usuario"]= $dados["id"];
    $_SESSION["nome_usuario"] = stripslashes($dados["nome"]);
    header("Location: index.php");
exit;}
else{
    echo "Senha inválida!";
exit;}

我该如何解决这个问题?不管怎样,谢谢!

1 个答案:

答案 0 :(得分:1)

简短的回答是mysql_fetch_array不是PDO method。它来自已弃用的mysql_* API