PHPでページの一部の文言だけを更新する方法
2024/07/26
サイトのページの一部だけをブラウザから更新したい、だけどCMSとか入れるほどでもない。
なおかつテキストだけで良いというときのための忘備録。
なお、参考サイトは https://qiita.com/tatsukikane/items/01bd58478ad9eb7ca2fd です。
ありがとうございます。
ディレクトリ分けしておいてログイン機能をつけて運用した方が良いです(SSL+BASIC認証などが簡単です)。
input.php、output.php、success.php、data.txt(はじめは空ファイルでOK)、display.phpの5つで構成しています。
input.php、output.php、success.php、data.txtの4つはeditディレクトリを作り、その中に格納し、
display.phpのみ上位ディレクトリにおいてください。
そうしておけば、editディレクトリ自体にパスワードをかけることも可能で、display.phpのみ閲覧者にパスワード無しで表示させることができます。
input.phpコード例
フォームに前回のデータを読み込み、デフォルト表示(value=での表示)させます。※初回は空白
name属性で付けた名称と下記のoutput.phpの配列要素の項目名と順序は必ず同じにしてください。
また、value属性の $data[xx] の部分も上から順番に0,1,2…と並べてください。
余談ですが、コード内の³はエスケープシーケンスと言って特殊文字表示用です(3乗の表記をしています)。
入力されたデータは送信ボタン押下でoutput.phpに送信されます。
output.phpコード例
フォームから送信されたデータを受け取り、カンマ区切りの文字列に変更し、ファイル(data.txt)に書き込みます。
なお、書き込みは上書き保存なので前回保存したデータは上書きされます。
入力値はエラー処理皆無なので必要な場合はデータの受け取り後にでも行ってください。
27-29行目でファイル書き込み後にページ遷移します。
不必要であればsuccess.phpを使わず、代わりにecho “書き込み完了しました”; みたいな表示をしても良いと思います。
success.phpコード例
success.phpはphpコードは必要でなく、テキストファイルへの書き込み完了したときに表示したいページとします。
特に処理がない場合は普通のHTMLファイルとして
書き込み完了しました。
display.phpコード例
display.phpはeditディレクトリの上位にあるので、data.txtを指定する際はedit/data.txtと指定してください。
読み込んだカンマ区切りデータを配列変換して要素一つずつを$data[0]、$data[1]、$data[2]…という風に格納しています。
格納されたデータをechoで表示する感じです。
いじょう。
関連記事
-
-
WEBサイトのスクリーンショットをサムネイル化する
弊社の制作実績を登録していこうと思ったのですが、直近のものだけでも軽く30を超え …
-
-
続・WordPress 不正アクセスとの飽くなき戦い
WordPressへの不正アクセスと引き続き戦う、だいすけです。こんにチワワ! …
-
-
新着情報などでAll-in-One Event Calendarのカテゴリ名を表示する方法
ハマりました。 ドハマリしました。侮ってました。 「カテゴリ出力するだけでしょ。 …
-
-
mb_substr()使ってもサムネイルの見出しがズレるじゃん!という話
またしても忘備録。 WordPressでよくある、こういう感じの記事表示方法。 …
-
-
ショートコードの出力結果が固定ページや投稿の上部に表示される
またもやWordPress覚書。もはやメモ帳代わり。 固定ページなどの途中でPH …
-
-
.htaccessに最低限設定しておいたほうが良いこと
簡単で結構効果のあるセキュリティとして.htaccessの設定がありますが、最低 …
-
-
【ご注意】WordPressの不正コード改ざん
WordPressを狙った不正コードによる下記動画のような改ざんが横行しているよ …
-
-
WP_Queryの使い方
WP_Queryの使い方はちょくちょく忘れますので忘備録。 WP_Queryの使 …
-
-
ワードプレスのサイト引越し時に500エラー
毎度おなじみのワードプレス備忘録です。 表題の通り、よくある(よくあってほしくな …
-
-
マルチサイト化でよくあること・・・参加サイトに表示されない!
WordPressでマルチサイト化すると、左上の「参加サイト」にマウスオーバーし …