PHPで会員登録するとパスワードを自動生成するようにしたいのですが、パスワードが表示されません。

また、エラーに書いてある意味が分かりません。
どこが間違っていますか?仮にアップしました。
http://atarukamo.hustle.ne.jp/

<?php
// IPアドレス、登録日時取得
$MIP = getenv(”REMOTE_ADDR”);
$TM = date(”Y/m/d H:i:s”);

// パスワード自動生成
srand(time());
$passchars = ”23456789abcdefghikmnopqrstuwxyz”;
$len = strlen($passchars);
$i = 0;
$pass = ””;
while ($i < 8) {
$pass .= substr($passchars, rand(0, $len - 1), 1);
$i++;
}
?>

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/09/18 12:12:00
  • 終了:--

回答(2件)

id:miyazi No.1

miyazi回答回数30ベストアンサー獲得回数02005/09/18 13:55:34

ポイント20pt

46行目がおかしい?

id:kakunoshin

46行目ですか・・・

質問に書いた部分ではないみたいですね。

う〜ん。。。

2005/09/18 14:49:12
id:xnissy No.2

xnissy回答回数1029ベストアンサー獲得回数2032005/09/18 15:44:56

ポイント40pt

46行目で mysql_num_rows() を使っているかと思います。

その引数には、MySQLのクエリーの結果を与えるわけですが、それが不正だ(not a valid MySQL result resource)というエラーが出ています。


46行目以前で実行した select が成功しているか、それを受け取った変数を書き間違えたりしてないか等をチェックしてみるとよいのでは?

id:kakunoshin

そういう意味でしたか。

見直してみます。

ありがとうございました。

2005/09/18 16:13:35
  • id:xnissy
    間違いではありませんが

    srand(time());
    だと、同じ秒に発行されたパスワードは全て同じになってしまいますので、microtime()を使った方がベターだと思います。下記リンクにサンプルがあります。

    なお、回答に書き忘れましたが、パスワード自動生成の部分は正常に動作しているようです。ちゃんと8文字のパスワードが生成されました。
    http://jp2.php.net/manual/ja/function.srand.php

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません