如何将更新查询从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
是您的联系人