php - PDO Prepared statement insert 1 instead of string -
i have query no matter $relocation['persons_id']
is, updates residents
1
.
the following code in example echo 11,13
, set residents
1
:
$query = $db->prepare('update `apartments` set `residents` = :persons_id , `occupation_date` = :occupation_date `id` = :apartments_id'); echo $relocation['persons_id']."<br>\n"; $query->bindparam(':persons_id', $relocation['persons_id']); $query->bindparam(':occupation_date', $relocation['occupation_date']); $query->bindparam(':apartments_id', $relocation['apartments_id']); $query->execute();
the field residents
has datatype varchar(200)
.
can please explain doing wrong?
the problem lies here
set `residents` = :persons_id , `occupation_date` = :occupation_date
which means, operator precedence
update `apartments` set `residents` = (:persons_id , `occupation_date` = :occupation_date) `id` = :apartments_id
so residents
updated boolean value (0/1).
maybe want use ,
update `apartments` set `residents` = :persons_id, `occupation_date` = :occupation_date `id` = :apartments_id
Comments
Post a Comment