使用php变量时无法执行SQL更新

我只是注意到当我从链接“我的代码”中使用PHP变量时,我无法执行SQL更新(我没有注意到任何错误,也没有错误输出)


<?php


if ($_POST && isset($_POST['hdduid'], $_POST['status'])) {

    $dbhost = 'localhost';

    $dbuser = 'root';

    $dbpass = 'L24wmc1nJBVP90q9yY';

    $dbname = 'watt';


    try {

        // Try to connect

        $dbh = new PDO(

            'mysql:host='.$dbhost.';dbname='.$dbname,

            $dbuser,

            $dbpass

        );


        // Data

        $hdduid = $_POST['hdduid'];

        $status = $_POST['status'];


        // query

        $sql = "UPDATE users SET paid=':status' WHERE hdduid=':hdduid'";

        $q = $dbh->prepare($sql);

        $q->execute(array(

            ':message' => $message,

            ':email' => $email

        ));


        // Null connection

        $dbh = null;

    } catch (PDOException $e) { // if exception

        print "Error!: " . $e->getMessage() . "<br/>";

        die();

    }


?>

我编辑了代码,它仍然无法正常工作


慕后森
浏览 144回答 2
2回答

守着星空守着你

您需要使用&nbsp;mysqli_real_escape_string&nbsp;Not&nbsp;mysql_real_escape_string&nbsp;不能将mysql与MySQLi混合使用
打开App,查看更多内容
随时随地看视频慕课网APP