you have to change the quotes like that:
$query="INSERT INTO mytable (user_id, user_datetime)
VALUES ( '".$_SESSION['user_id']."', NOW())";
SET is for update Not insert.
if you want insert also time_zone
$query="INSERT INTO mytable (user_id, user_datetime ,time_zone)
VALUES ( '".$_SESSION['user_id']."', NOW() ,'+05:30' )";
if you already have values you may look for update.
$query="UPDATE mytable SET time_zone = '+05:30'
WHERE user_id ='".$_SESSION['user_id']."' ";
Edit: you cant run two queries in one . you must run both queries
$query1="SET time_zone = '+05:30' " ;
$query="INSERT INTO mytable (user_id, user_datetime)
VALUES ( '".$_SESSION['user_id']."', NOW())";