Re: Mysql PDO statement with params in HAVING problem
| From: | Tamara Temple | Date: | Sat, 29 Jun 2013 01:24:15 +0000 |
| Subject: | Re: Mysql PDO statement with params in HAVING problem | ||
| References: | 1 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-48769@lists.php.net to get a copy of this message | ||
Alexander Pletnev <pletnev.rusalex@gmail.com> wrote:
> Hi everyone, im new here, so please correct me if i created or formated
> topic incorrectly.
>
> I found a problem. I have a simple query for my needs:
>
> $stmt = $dbh->prepare("SELECT concat(first_name,' ',last_name) as
> full_name,t.* FROM
specialists
> t HAVING full_name like '%john%'");
> $stmt->execute();
> while($row = $stmt->fetch())
> {
> echo '<pre>'; var_dump($row); echo '</pre>';
> }
>
> It works fine, until i add a param to my query:
>
> $stmt = $dbh->prepare("SELECT concat(first_name,' ',last_name) as
> full_name,t.* FROM specialists
> t HAVING full_name like '%:query%'");
> $stmt->execute();
> $query = 'londo';
> $stmt->bindParam(':query',$query);
> while($row = $stmt->fetch())
> {
> echo '<pre>'; var_dump($row); echo '</pre>';
> }
>
> Now there is nothing in fetch(). Is it a bug ?
Yes. You put the execute before you bound the
parameters. prepare->bind->execute.