user2429302
user2429302

Reputation: 89

query works on postgresql but not on php

Let's say, I I have this query in my postgresql.

SELECT * FROM logs WHERE user_id = 8328 AND punchin::date = '2013-06-11';

it returns successful.

But when I implent it in PHP:

$sql = "SELECT * FROM logs WHERE user_id = $user_id AND punchin::date = $date";
$record = pg_query($sql);
$row = pg_fetch_array($record);

var_dump($row) //false

what happened? how come I cant get the data?

Upvotes: 0

Views: 78

Answers (1)

peterm
peterm

Reputation: 92785

Try change

$sql = "SELECT * FROM logs WHERE user_id = $user_id AND punchin::date = $date";

to

$sql = "SELECT * FROM logs WHERE user_id = '$user_id' AND DATE(punchin) = '$date'";

Better yet use parameters

$sql = "SELECT * FROM logs WHERE user_id = $1 AND CAST(punchin AS DATE) = $2";
$result = pg_query_params($sql, array($user_id, $date));

Upvotes: 1

Related Questions