$sql='SELECT * FROM user_table WHERE uid=:uid OR child_uid=:uid'; $sth = $dbh->prepare( $sql ); $sth->execute( array('uid'=>$uid) );
こんな感じで同じパラメータを使いまわすことは出来ない。
このまま実行すると後ろの方のパラメータは0とか''の扱いにされてしまう。
$sql='SELECT * FROM user_table WHERE uid=:uid OR child_uid=:child_uid'; $sth = $dbh->prepare( $sql ); $sth->execute( array('uid'=>$uid, 'child_uid'=>$uid) );
横着をせずに、出てきた分だけパラメータを指定しないとだめ。