使用带有PDO的mysql INSERT不起作用并且不返回任何错误

时间:2016-11-17 18:54:22

标签: php mysql pdo

我有一个功能:

function report_error($db, $uid, $companyid, $function, $input, $error ){
        try {
        $submit = new PDO("mysql:host=".$db['server'].";dbname=".$db['db'], $db['mysql_login'], $db['mysql_pass'], array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
        $submit->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $stmt=$submit->prepare ("INSERT INTO error_log (companyid, uid, funct, input, error, datetime) VALUES (:companyid, :uid, :function, :input, :error, NOW());");
        $stmt->bindParam(":uid", $uid);
        $stmt->bindParam(":input", $input);
        $stmt->bindParam(":companyid", $companyid);
        $stmt->bindParam(":error", $error);
        $stmt->bindParam(":function", $function);
        $stmt->execute();
        }
        catch(PDOException $e) {
            echo "error: ".$e->getMessage();
            //report_error ($db, $uid, $companyid, "report_error", $e->getMessage());
        }
    }

当我调用该函数时:

report_error ($db, $_SESSION['uid'], $companyid, "update_company_rate", "car_category: $car_category, rate: $rate, companyid: $companyid", $error);

没有任何反应:没有错误消息,http日志中没有警告,没有。每当我使用navicat或其他SQL客户端运行它时,查询本身都能正常工作。

我已经在这个工作了3个小时,不能再思考了,请看这里有什么问题。

0 个答案:

没有答案