岸和田市に所在しておりますが
全国よりご注文承っております




ランダムな画像表示し入力しないと送信できないフォームメール

英文字と数字で構成されるランダムな画像を表示し、その内容を入力しないと送信できないフォームメールのPHPです。この程度の簡単なPHPでも作成に困る方もおられるでしょうから、PHPコードを全て公表しておきます。

設置ページは、当社のHP制作申込用のページです。

(注)
一体全体何故、たかだか、単なるHP制作申込用のページにランダムな画像を表示し、その内容を入力しないと送信できないフォームメールを設置せざるを得なかったのかについては、この日のブログ記事をご覧ください。
ロシア人のバカが、弊社の問い合わせ用ページに、自動書き込みのスパムを行い、それがHP制作申込用のページにまで及んできつつありましたので、設置しました。問い合わせ用ページでは、英文字と数字からなるランダムな画像を表示し、その内容を入力しないと送信できないフォームメールでは、問い合わせが減る可能性がかなり大きいので、やむやく、一度送信したIPアドレスからは、受信拒否するPHPコードを設置しています。これについても、内容を完全に公表していますので、合わせてご覧ください。

以下が、PHPコードの全文です

@formmail.phpのコード全文

mb_language('Japanese');
mb_internal_encoding('Shift_Jis');
mb_http_output('Shift_Jis');
$namae=$_POST["name"];
$company=$_POST["company"];
$phone=$_POST["phone"];
$url=$_POST["url"];
$pattern=$_POST["pattern"];
$adress2=$_POST["adress2"];
$mail=$_POST["mail"];
$contents=$_POST["contents"];

$kazutomoji=$_POST["kazutomoji"];

$ファイル名=
str_shuffle('AaBbCcDdEeFfGgHhIiJjKkLl MmNnOoPpQqRrSsTtUuVvWwXxYyZz');

$ファイル名2=substr($ファイル名,-3, 1);
$ファイル名3=substr($ファイル名,-24, 1);

$kazu=rand(1, 9);
$kazu2=rand(1, 9);

$waku = imagecreate( 60, 30 );
$background = imagecolorallocate( $waku, 195, 195, 195 );
$text_colour = imagecolorallocate($waku, 0, 0, 0 );

imagestring( $waku, 8, 8, 8, $ファイル名2.$kazu.$ファイル名3.$kazu2, $text_colour );
imagesetthickness ( $waku, 9 );


imagepng( $waku);


imagedestroy( $waku);

$html_source3 = file_get_contents("http://www.hpcreating.com/apply/ファイル名.txt");
$domain3 = substr ( $html_source3, 0,6000000);
$aliases3 = mb_detect_encoding ($html_source3);
$mojibake3= mb_convert_encoding($domain3, "shift_jis", $aliases3);//53ここまでが検索対象でmb変換済み


if (empty($namae))
{echo "<br><br><br><br><br><br><span style='color:red;font-size:25px;'>名前を記入してください</span><br>";}


else
{if (empty($adress2))

{echo "<br><br><br><br><br><br><span style='color:red;font-size:25px;'>住所/所在地を記入してください</span><br>";}


else
{if (empty($mail))
{echo "<br><br><br><br><br><br><span style='color:red;font-size:25px;'>メールアドレスを記入してください</span><br>";}
else
{if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$mail))
{echo "<br><br><br><br><br><br><span style='color:red;font-size:25px;'>正しい形式でメールアドレスを記入してください</span><br>";}


else
{

if (!($kazutomoji===$mojibake3))
{echo "<br><br><br><br><br><br><div class='honbun'><span style='color:red;font-size:25px;'>お手数ですが、元に戻り表示される英文字と数字を入力の上、クリックしてください<br><br>
その際、@正しい英文字・数字を記入してください<br><br>英文字は、大文字・小文字を区別します。
<br><br>(例:xとXを区別しますので、表示される画像をよくご覧ください。英文字が数字より小さければ、小文字です)<br><br>
Aわかりにくければ、再読み込みボタンクリックして、他の英文字を表示してください</span></div><br><br>";}


else {
mb_language("Ja") ;
mb_internal_encoding("Shift_Jis") ;
$mailto="contact@hpcreating.com";

$subject="サイト制作申し込み";
$content="名前:$namae\n会社名・団体名:$company\n住所:$adress2\nメールアドレス:$mail\n制作コース:$pattern\n既存ホームページ:$url\n特記事項:$contents";
$headers =$mail;
mb_send_mail($mailto,$subject,$content, $headers);




echo "<br><br><br><br><br><br><div class='honbun'><span style='color:#0000ff;font-size:20px;'>申し込みありがとうございます。3営業日以内に連絡申し上げます</span></div><br>";

}}}}}

Aimages.phpのコード全文

$ファイル名=str_shuffle('AaBbCcDdEeFfGgHhIi
JjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz');

$ファイル名2=substr($ファイル名,-3, 1);
$ファイル名3=substr($ファイル名,-24, 1);

$kazu=rand(1, 9);
$kazu2=rand(1, 9);

$waku = imagecreate( 60, 30 );
$background = imagecolorallocate( $waku, 195, 195, 195 );
$text_colour = imagecolorallocate($waku, 0, 0, 0 );

imagestring( $waku, 8, 8, 8, $ファイル名2.$kazu.$ファイル名3.$kazu2, $text_colour );
imagesetthickness ( $waku, 9 );

header( "Content-type: image/png" );
imagepng( $waku);

imagecolordeallocate( $text_color );
imagecolordeallocate( $background );
imagedestroy( $waku);



$fp = fopen("ファイル名.txt", "w");
fwrite($fp, $ファイル名2.$kazu.$ファイル名.$kazu2);
fclose($fp);

多少解説しておきます。

バカらしいほど簡単です。

1.まず、images.phpでよく見るような、英文字と数字を組み合わせ、ページの読み込みごとにランダムに表示内容が変わる画像用のPHPコードを入れています。

2.次に、images.php中で、ファイル名.txtに同じ英文字と数字を組み合わせを上書きモードで書き込みます

3.formmail.phpでは、file_gets_contents関数で、ファイル名.txtの内容を取得し、一致しない場合には、送信できないPHPコードをいれます()

4.ところが、そのままですとPHPで変な表示がでますので、CSSでbodyのmargin-top:-20px;として、表示されないようにしています。(ソースで見ると当然表示されています。外そうとしましたが、面倒なので、CSSで対応しました)

[このブログは、読む人は、ほとんどいませんが、広告のつもりです。]

ウェブ制作会社の代表者様

PHP外注しませんか?格安費用で承ります。試しに、この程度の非常に簡単なPHP作成を従業員に命じてみてください。

1時間ででできなければ、当方に外注頂く方が絶対にコスト削減になります。迅速・格安で制作します。

デザイン担当のPHP勉強中の女性従業員であれば、半日もかかるかもしれません。無駄ではないでしょうか?。



2019年6月
      1
2345678
9101112131415
16171819202122
23242526272829
30      

最近の記事

日付は、降順

韓国への制裁について
韓国のビザ免除国からの除外について
朝鮮人の遺伝子の異常性を明確に示す論文(アメリカ食品医薬品局)
朝鮮人の遺伝子の異常性とヒトゲノム
Y遺伝子から見た日本人男性と朝鮮人・中国人男性との差
韓国海軍の火器管制レーダー照射に関する中央日報の報道の推移
ノーベル賞から見た韓国の異常性
大韓民国臨時政府について
朝鮮人ー 私たちから「遠い民族」
北朝鮮と朝鮮総連そして原発
スマホ・パソコンの画像を表示し、一部を切り取り
新たなサーチエンジン Ahoo Japan 登場
表示内容入力しないと送信不可フォーム
問い合わせ用ページへのロシアから攻撃
空母大鳳と原発事故ーその設計思想
「坂の上の雲」の謎
土生滝だんじり新調A続報
土生滝だんじり新調
GMOのSEO
SEOとブログ
curl関数
formのvalueを変数へ
関数の上書きをする方法
str_replaceの複数語句変
拡張子指定サイト内ファイル一覧
stringのみ対象をvariablesへ
directory関数で拡張子指定
Directory内のファイル名取得
複数ページを取得し検索
Htmlメール文字化け防止
Formから他のFormへ自動入力
平成27年2月26日の独り言
いくつかのifを並列し他はelse
PHPリロード対策
PHPの文字化け対策のまとめ
外部ファイルデータを配列へ
今日から始まるカレンダー