PHP | WEBデザインMATOME

Tag: PHP

【PHPフォーム制作】名前は全角限定!ハニーポットでスパムも防ぐ実用テクニック

Webフォームでは、「入力ミス」や「スパム送信」などを未然に防ぐためのバリデーションやセキュリティ対策が欠かせません。この記事では、PHPを使ったお問い合わせフォームに対し、 の2つのテクニックを紹介します。 名前欄に「全角」チェックを入れる理由 日本語名の入力欄に「半角英字や数字」が含まれていると、以下のようなトラブルを招く可能性があります これらを防ぐため、名前欄には「全角文字のみ許可する」バリデーションをサーバー側で入れておくのが理想です。 2. フォーム側のサンプルHTML 以下は、お問い合わせフォームの一部(名前欄とハニーポット)のサンプルです: <form action=”mail.php” method=”post”> <!– スパム対策用:ハニーポット(非表示フィールド) –> <input type=”text” name=”honeypot” style=”display:none;” autocomplete=”off”> <!–

Continue reading

【PHP】直接アクセスできない送信完了ページの作り方|サンクスページのセキュリティ対策付き

お問い合わせフォームの送信後に表示される「サンクスページ」。このページ、実はURLを知っていれば誰でも直接アクセスできてしまう…そんな実装、していませんか? 今回は、セッションを使って「正規ルート以外からのアクセスを遮断」する方法をご紹介します。誰でも簡単に導入できるPHPサンプル付きなので、初心者の方にもおすすめです。 なぜ送信完了ページに直接アクセスできないようにすべきか? よくある問題点 対策方針 送信処理 send.php を通った後だけ show_thanks.php で thanks.html を読み込む構造にします。これにより、直接URLを叩いても完了ページは表示されません。 ファイル構成 ファイル名 説明 form.php 入力フォーム画面 confirm.php 確認画面 send.php

Continue reading

PHPでの条件分岐のトラブル解決:詳細なURLが適用されない場合の対応

PHPでの条件分岐を使用する際、特定の条件が適用されないトラブルに直面したことはありませんか?この記事では、特にURLのパスに基づいた条件分岐を例に、一般的な問題とその解決策を解説します。 問題の背景 以下のようなPHPコードを使用して、URLに基づいた条件分岐を実装しているとします。 <?php if(strstr($sample,’example1′)==true): ?> <p>Example 1</p><?php elseif(strstr($sample,’example2′)==true): ?> <p>Example 2</p><?php elseif(strstr($sample,’/detailed/example/’)==true): ?> <p>Detailed Example</p><?php else: ?> <p>Default Example</p><?php

Continue reading

WordPressでPHP8.0以上にアップデートすると使えなくなるPHPタグ

WordPressのサイト運営において、PHPのバージョンアップは性能向上やセキュリティ強化にとって重要です。しかし、PHPのバージョンを8.0以上に上げると、一部の古いPHPタグや関数が非推奨または削除され、サイトが正常に動作しなくなる可能性があります。本記事では、PHP8.0以上にアップデートした際に使えなくなる主要なPHPタグや関数について解説します。 非推奨および削除されたPHPタグや関数 create_function() create_function()は、無名関数を作成するための関数ですが、PHP7.2以降で非推奨となり、PHP8.0で削除されました。この関数を使っているコードは、anonymous functions(無名関数)やarrow functions(矢印関数)に書き換える必要があります。 each() each()関数は配列の要素を順番に返すために使われていましたが、PHP7.2で非推奨となり、PHP8.0で削除されました。この関数を使っているコードは、foreachループに置き換える必要があります。 例: // 非推奨のコードwhile (list($key, $value) = each($array)) { echo “$key: $value\n”;}// 修正後のコードforeach

Continue reading

WordPress固定ページの内容を取得

特定の固定ページの内容を所得して表示 固定ページの内容を流用して使いたい場合や、管理画面で変更できるように固定ページでページを作成し、 PHPを使って内容を取得して表示します。 取得のソース 固定ページID確認の方法は、「固定ページ」→「固定ページ一覧」→IDを確認したいタイトル部分に マウスカーソルを乗せれば左下にURLが表示その部分にIDが表示されます。 サンプル これで完成 共通で表示したい内容などあればこれをPHPに書くだけで表示されます。 共通部分は是非試してみて下さい。 Favorite

Continue reading