プロが教えるわが家の防犯対策術!

mb_send_mailを使ったメールフォームで分からないことが御座いますのでどなたかご教授下さい。

HTMLで入力させた宛先のアドレスにサイトのアドレスを紹介する為に使用するメールフォームです。
以下のソース部の$mlto = 'hoge@hoge.jp';の部分を
HTMLより引き継いできた$adにメールを送信したい
(イメージ的には $mlto = $ad;)
のですが、うまくいきません。
シングルクオテーションが無いからなのか、送信できません。
ちなみに、 $mlto = 'hoge@hoge.jp';のように
すれば、普通に送信できます。

どなたかご回答宜しくお願い致します。

PHP4のLINUXのレンタルサーバです。
ソースは以下の通りです。
<?php
$ad=$_POST['add'];
$mlfr = 'hogehoge@hogehoge.jp';
$mlto = 'hoge@hoge.jp';
$mlsb = 'タイトル';
$mlms = 'サイトのアドレス';
$jcph = '.';
mb_send_mail($mlto, $mlsb, $mlms, $mlfr);
header("Location: ok.html");
?>

A 回答 (2件)

mlfr = 'hogehoge@hogehoge.jp';


$mlto = $_POST['add'];;
echo "変数add:".$mlto."<BR>\n";
$mlsb = 'タイトル';
$mlms = 'サイトのアドレス';
$jcph = '.';
mb_send_mail($mlto, $mlsb, $mlms, $mlfr);

として、変数の中身はどうなっているでしょうか。
    • good
    • 0
この回答へのお礼

親切に再書き込みありがとう御座います。
私のミスでした。
引数がきちんとPHPにわたってませんでした。
HTMLの間違えだということが、YUTAKUN007殿の
おかげで判明しました。
本当にありがとう御座いました。

お礼日時:2006/01/25 22:27

私の環境では問題なく動きましたが・・・


具体的のどのようなエラーメッセージが出ますか?
エラーが起きている変数をダンプしてみると
幸せになれるかもしれません。


また、このスクリプトのままですと
エンコードされていない為文字化けしてしまいますよ。
    • good
    • 0
この回答へのお礼

上記のソースだと、おっしゃる通りうまく動作しますが、mb_send_mail()の宛先アドレスをHTMLから引き継いできた値で送信する方法を知りたいのです。
例えば、
$mlfr = 'hogehoge@hogehoge.jp';
$mlto = $_POST['add'];;
$mlsb = 'タイトル';
$mlms = 'サイトのアドレス';
$jcph = '.';
mb_send_mail($mlto, $mlsb, $mlms, $mlfr);
のようなイメージで引き継いできたアドレスに送信しようとすると、エラーは出ませんが送信がうまくいっていません。
文字化けの件は大丈夫です。

お礼日時:2006/01/25 02:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!