5.簡単メールフォーム ソースの説明 2
前回までの説明は理解できましたか?
PHPでプログラムを書く為の基礎と文字を変数に格納する方法を紹介しました。
さて、今回は前回より少し難しいかもしれません。
でも、プログラム=難しくて分からないと言う考えは捨てましょう。
基本を覚えてしまえば簡単です。
中学生の頃、This is a pen. これはペンです。
なんて英語を習いませんでしたか?
そう、プログラム言語なんていう言葉があるようにコンピュータと会話するものと考えて下さい。
そして、海外では、かろうじて通じた英語が電話だと全く通じないなんて経験をした事がある人も、いるかも知れません。
それは、ジェスチャーが通じないから・・・
管理人も海外に行くと、一応、かろうじて、なんとか、会話が出来るのですが、それはジェスチャーが90%だからなのです・・・
ところが、電話ではジェスチャーは通じません。
だから、海外ではかろうじて通じた英語も電話では通じなくなるのです。
コンピュータって、実は、すっごく頑固者。
だから、ジェスチャーなんて全く通じないのです。
融通が利かないので、正確に実行して欲しいことを伝えなければなりません。
それが、プログラムが難しいと感じる一つの要因かもしれませんね。
でも、間違えずに情報を伝えてあげれば、自分が寝てるときも、ご飯を食べているときも、せっせと仕事をしてくれる働き者なのです。
だから、しっかりとコンピューターと対話できるように頑張りましょう。
きっと、プログラムを書く労力以上の仕事をしてくれます。
ただ、会話の仕方さえ覚えれば良いのです。
さて、話がそれましたが本題に戻ります。
<?php
$set = $_POST['set'];
$name = $_POST['name'];
$mail = $_POST['mail'];
$title = $_POST['title'];
$main = $_POST['main'];
$my_mail = 'めーる@アドレス';
if ($set == 'post'){
if($name != '' && $mail != ''){
mb_language('Japanese');
mb_send_mail($my_mail,$title,$main,'From: '.$mail.'\'');
}
}
?>
今回は
if ($set == 'post'){
if($name != '' && $mail != ''){
mb_send_mail($my_mail,$title,$main,'From: '.$mail.'\'');
}
}
の部分です。
まず『if』
英語では、もしも~ならば、なんて意味ですよね。
実はPHPでも同じ意味なのです。
書き方は
if ($aaa == $bbb){○○}
これは、もしも$aaaと$bbbが同じなら○○しなさい、という意味です。
if ($aaa != $bbb){○○}
なら、もしも$aaaと$bbbが同じもので無ければ○○しなさい、という意味です。
$aaa == $bbb 同じならば
$aaa != $bbb 違えば
$aaa > $bbb $aaaが$bbbより大きければ
$aaa >= $bbb $aaaが$bbb以上なら
$aaa < $bbb $aaaが$bbbより小さければ
$aaa <= $bbb $aaaが$bbb以下なら
となります。
if ($set == 'post'){
if($name != '' && $mail != ''){
mb_send_mail($my_mail,$title,$main,'From: '.$mail.'\'');
}
}
を訳すと
もし$setがpostなら○○しなさい。
そして、○○の部分にまたifがあるので
if($name != '' && $mail != '')を訳すと
$nameが''でなくて、更に $mailが''で無ければ、となります。
ちなみに''は'と'の間に何もありませんよね?
分かりやすくすると、$nameに何かが書いてあって、更に $mail !に何かが書いてるとき。
となるわけです。
名前やメールアドレスの無いメールが届いたら嫌でしょ?
だから、名前とメールに何か書いてある事を確認しているのです。
さて、今のところをまとめると、
もし、$setがpostで、$nameと$mailに何か書いてあれば
mb_language('Japanese');
mb_send_mail($my_mail,$title,$main,'From: '.$mail.'\'');
を実行しなさいと言うことです。
