如何将更新查询从mysql更改为pdo?

如何将更新查询从mysql更改为pdo?

问题描述:

我正在使用波纹管查询进行更新,但是现在我尝试将其更改为pdo,但无法正常工作 请您提供任何帮助

I am using the bellow query to update but now I tried to change it to pdo and it failed to work Please any help will be appreciated

 function updateonlinesession(){            
    if(isset($_SESSION['username']['id'])){
    $uid = $_SESSION['username']['id'];
    $page = $_SERVER['REQUEST_URI'];
    $ip = $_SERVER['REMOTE_ADDR'];
    $username = $_SESSION['logged'];

    mysql_query("UPDATE site_user SET dateupdated  = now(),ip = '$ip' WHERE 
    username = '".mysql_real_escape_string($_SESSION['username'])."'"); 
    }

    }   

这是我尝试使用pdo的方法

Here is what I tried with pdo

function updateonlinesession(){         
if(isset($_SESSION['username']['id'])){
$uid = $_SESSION['username']['id'];
$page = $_SERVER['REQUEST_URI'];
$ip = $_SERVER['REMOTE_ADDR'];
$username = $_SESSION['logged'];

$update = ("UPDATE site_user SET dateupdated  = now(),ip = '$ip' WHERE 
username = '".($_SESSION['username'])."'");
$sth_update= $con->prepare($update);
$sth_update->execute();
}

}

?>

$stmt = $db->prepare("UPDATE site_user SET dateupdated=now(), ip=? WHERE username=?");
$stmt->execute(array($ip, $_SESSION['username']));
$affected_rows = $stmt->rowCount();

其中$db是您的联系人

:出色的教程