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で表示する感じです。
いじょう。
関連記事
-
-
Instant WordPress入れてみる
Instant WordPressという、ネット上のサーバーではなくローカルPC …
-
-
カスタム投稿を使うときのメモメモφ(..)
カスタム投稿タイプとは 通常の「投稿」「固定ページ」等とは違うタイプの投稿方法。 …
-
-
WordPressでよく使うコードまとめ
完全に自分用です。 View the code on Gist.
-
-
ワードプレスのサイト引越し時に500エラー
毎度おなじみのワードプレス備忘録です。 表題の通り、よくある(よくあってほしくな …
-
-
子カテゴリに親カテゴリのテンプレートを引き継がせる
WordPressって基本的に親カテゴリを指定すると、それにぶら下がっている子カ …
-
-
別ページのカスタムフィールドの値を取りたいときー
トップページにカスタムフィールドの値を出したい時ってありますよね? そんな時は固 …
-
-
GravatarでWordPressのアバターを作ろう
最近物忘れがヒドイ、だいすけです。 テーレッテレー!! ついこの前、ワードプレス …
-
-
外部画像URLもアイキャッチに「Featured Image From URL」
外部画像URLをアイキャッチに出来るプラグインを発見したのでご紹介。 Featu …
-
-
続・WordPress 不正アクセスとの飽くなき戦い
WordPressへの不正アクセスと引き続き戦う、だいすけです。こんにチワワ! …
-
-
WordPressで勝手に画像リサイズされる
いつもの防備録です。 本当に間抜けな話なんですが、これってほぼ間違 …