2010年10月8日金曜日

Call to a member function bindParam() on a non-object に悩まされて。

 Call to a member function bindParam() on a non-object
というエラーに悩まされました。
SQLiteで。

要するに、ちゃんと変数なりが代入されていない,sql文として正しくないちゅうことですね。

郵便番号から住所取得するために、

       $sql="select zip,addr1,addr2,addr3 from zip where zip like ':search' order by zip asc";
        $stmt=$conn->prepare($sql);
        $stmt->bindParam(":search",$search);
        $stmt->execute();

のようにしていました。

いろいろやってみて、
':search'のクオーテーションを外してやったらOKでした。

bindParamしたパラメーターは、クオーテーションで囲んじゃいけないんですね。

       $sql="select zip,addr1,addr2,addr3 from zip where zip like :search order by zip asc";
としたら無事OKに。


良かった。

0 件のコメント:

コメントを投稿