• 締切済み

ランダムな文字列を生成しその文字列をメール送信したいのですが・・・

ランダムな文字列を生成し、その文字列をURLに組み込み、 そのURL自体をメール送信したいのですが、どうもうまく行きません。 恐らく初歩的な間違いをしているのだとは思いますが、 PHP 初心者ですのでどこがどう間違っているのか全くわかりません。 今やろうとしている事は ( 下記プログラム参照↓ ) 生成したランダムな文字列を $randam に代入し、 $randam を URL の中に取り込んで、これを $url に代入。 さらにこの $url をメール本文としてメール送信したいのですが うまく行きません。 どなたかアドバイス頂けませんでしょうか? 宜しくお願い致します。 今、作成している内容は以下の通りです。 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ ## ランダムURLを生成 開始 ↓ -------------------------------------------- # * マイクロ秒により乱数器に種まき */ function make_seed() { list($usec, $sec) = explode(' ', microtime()); mt_srand((float) $sec + ((float) $usec * 100000)); } /** * パスワードを生成する * @param int $len パスワードの長さ * @param string $str パスワードに使う文字の並び * @return string パスワード */ function make_password($len, $str) { $l = strlen($str) - 1; $psw = ""; for ($i = 0; $i < $len; $i++) { $n = (int)mt_rand(0, $l); $psw = $psw . substr($str, $n, 1); //1文字追加 } return $psw; } $randam = make_password(10, "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"); $url = "http://●●●●●.com/$randam.html"; ## ランダムにURLを生成 終了 ↑ ------------------------------------ # ## 設定項目 開始 ↓ -------------------------------------------- # $mTo = $_POST[mail]; $user_id = $_POST[usr]; $password = $_POST[pass]; ## メールの件名 $mSub = 'Test Program'; ## メール本文 $mMes = '↓お申し込みの内容は以下の通りです。 '.$mTo.' '.$user_id.' '.$password.' '.$url.' ## 送信元アドレス $mFrom = 'mail@●●●●●.com'; ## 設定項目 終了 ↑ -------------------------------------------- # if (empty($mTo)) : ?> <?php else : $mFrom = "From: ".$mFrom."\nX-Mailer: PHP"; mail ($mTo, $mSub, $mMes, $mFrom); ?>

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>うまく行きません。 なにがどううまくいかないか書いた方がいいですね。 とりあずランダムのところは動いているみたいですけど。 (ランダムなファイル名というのが実効性があるかどうかはべつとして)

KENZ_0000
質問者

補足

ご回答有難うございます。 何がうまくいかないかといいますと、 $url がメール本文中に出てこないのです。 これは何故なのでしょうか? お教え頂けると有難いです。 お願い致します。

関連するQ&A