細かい所は面倒臭いんで見てませんが;
おおざっぱには大きな問題はなさそうです。
なんとなくですが、IDが被っているデータがあるんじゃないでしょうか。
DBはどんな構造になっており、
IDはどんなカンジのIDで…
そもそも登録周りがどうなっているのか、
この辺ワカラナイとなんとも言えませんが、
このテの問題は、往々にして入ってるデータまたはその呼び出し方に問題があります。
一度、いれた値が正しく出力できているのか?
その判定(マッチングというか?)は、ただしく行われているのか?
if ($row = mysql_fetch_assoc($userResult)) {
$count = $row['cnt'];
if ($count == 1) {
この辺…をチェックしてみてください。
余談ですが、
$userQuery = sprintf("SELECT count(*) as `cnt` FROM `member` WHERE `id`='%s' AND `password`='%s'",$uid,$upass);
余分な`が多すぎるような。
$userQuery = sprintf("SELECT count(*) as cnt FROM member WHERE id='%s' AND password='%s'",$uid,$upass);
コレでいけんじゃね?
とか
ここでcount(*) as cnt
としている意味がよくワカラナイ。
$userQuery = sprintf("SELECT id,user_name FROM member WHERE id='%s' AND password='%s'",$uid,$upass);
とかでも良いんじゃね?そうすれば、後でもう一回DBにアクセスする必要もなくなりますが。。。