- ベストアンサー
phpで携帯にURLをメール送信したい
php初心者です。お世話になっています。 上手く説明できないかもしれないですが、 20.phpというページで、20.txtからランダムにURLを取り出しています。 この取り出したURLをmail.phpによって 携帯にメール送信したいと思います。 --------20.php---------------- <?php srand((double)microtime()*1000000); $url = "http://*******/?f="; $ad_list1 = file("20.txt"); $ad_key1 = array_rand($ad_list1, 2); $ad1 = $ad_list1[$ad_key1[0]]; $array_ad1 = explode(" ", $ad1); // 表示 echo "<a href=\"$url" . $array_ad1[0] . "\">" . $array_ad1[1] . "</a>"; ?> <form action="mail.php" method="POST" class="form" target="_blank"> <input name="mail1" type="text" class="size-300px" value="あなたの携帯アドレス" style="color:#666666;" onfocus='ClearText1(this, 1)'><br> <input type="submit" name="Submit" value=" 送信 "> </form> --------20.txt------------------ 111 あああ 222 いいい 333 ううう --------mail.php---------------- <?php mb_language("Ja") ; mb_internal_encoding("Shift_JIS") ; $mailto=$mail1; $subject="URL"; $content="ご利用有難う御座います\n紹介者は$array_ad1[1]\n こちらからどうぞ\n$url.$array_ad1[0]"; $mailfrom="From:" .mb_encode_mimeheader("aaaa") ."<http://xxxxxxxx/index.html>"; mb_send_mail($mailto,$subject,$content,$mailfrom); ?> ------------------------------------------- ソースはこんな感じで、メール送信もできました。 メール本文内に「あああ」や「http://*******/?f=111」といった形で文字を代入したいのですが これだけが上手くいきません。 ご指導よろしくお願いしますm(_ _)m
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
20.phpのフォーム内に <input type="hidden" name="url" value="<?= $url" . $array_ad1[0] ?>"> <input type="hidden" name="txt" value="<?= $array_ad1[1] ?>"> と書き、mail.php の $mailto ~ $content 部分を、 $mailto = $_POST["mail1"]; $subject = "URL"; $content = "ご利用有難う御座います\n"; $content .= "紹介者は" . $_POST["txt"] . "\n"; $content .= "こちらからどうぞ\n"; $content .= $_POST["url"]; と書き換えます。
その他の回答 (1)
- ttyp03
- ベストアンサー率28% (277/960)
mail.php 内で $array_ad1 や $url が初期化されてないようですが…。 20.php で取得したデータを引き継ぐのであれば、セッションに登録する、もしくは hidden で埋め込む必要があります。 セッションを使うのであれば session_start() をしたあと $_SESSION 変数を使えばOKです。 設定するときは、 $_SESSION['url'] = "xxxxx"; 取得するときは、 echo $_SESSION['url']; フォーム内に埋め込む場合は、 <input type="hidden" name="url" value="xxxxxx">
お礼
ご回答有難うございます。 本当に初心者なので(php3日目)、初期化やセッションなど全く無知でした。 セッションを調べてみてなんとなく雰囲気はわかった感じがするのですが 実際どのようにソースの中に加えれば良いのか、 色々とやってみたのですが上手くいきませんでした。 フォーム内にも埋め込んだのですが、思い通りの結果が出ませんでした。 もしよろしければ、噛み砕いて説明頂けると有難いです。 また、今回のケースに近いようなセッションの説明が載っているサイトがあれば教えてください。 度々申し訳ないですが、よろしくお願いします。
お礼
kaiwarepon様、またまた有難うございますm(_ _)m エラーが出てしまったので、 ほんの少しだけ修正したら上手くいきました!! phpってきちんと動作すると楽しいですね^^ またちょこちょこと質問すると思いますので 見かけたらよろしくお願いします。