![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
PHPとSmartyで、ブログサービス的なシステムを構築しております。
管理画面より書き込んだ内容をデータベースへinsertし、目的に応じてselectで反映するといったものです。
この先、管理画面よりサイト(ブログサイト的な)のデザインを予め用意しておき、数種類の中から1つテンプレートを選択し、決定をすると自動的に該当のテンプレートに切り替わるコンテンツを構築しようと考えておりますが、イマイチ良い案が思いつきません。
流れの順序としてはこの様になります。
---------------------------------------------------------------------------------
1、管理画面へログインをする。(実装済)
2、タイトルや内容等、各項目へ入力後「書き込む」ボタンをクリックしてデータベースへinsertしてselectで表示。(実装済)
3、各項目の修正と削除。(実装済)
4、複数のテンプレートの中から気に入ったテンプレートを選択して、デザインの変更を行う。←ココで悩んでいます。。。
---------------------------------------------------------------------------------
例えばカテゴリ分け等をした時に、「aaa.php」にアクセスした場合は、「aaa.tpl」を呼び出す。「bbb.php」にアクセスした場合は、「bbb.tpl」を呼び出すといった見せ方は実装できますが、
どのデザインに変更してもファイル名は変更しない様に実装できないものでしょうか?
また、「 index.php?design=design_1 」といった動的URLも避けなければいけないという条件です。
$smarty->displayをどうにかして条件分岐で実装出来ないかと考えましたが、参考になりそうな資料を見つけることが出来なかったので、非常に悩んでいます。
色々と制約があり恐縮ではございますが、何卒ご教授の程よろしくお願いいたします。
最後に念のため、データベース等のスペックをお伝えしておきます。
---------------------------------------------------------------------------------
サーバOS:Linux 2.6.x
WEBサーバ:Apache_1.3.37
PHP:5.3.3
データベース:MySQL 5.0.77
---------------------------------------------------------------------------------
No.2ベストアンサー
- 回答日時:
どうも、説明がわかりにくいとは思いましたが、少し見えました。
要は、
1、カスタマイズ操作的なものでテーマ=テンプレートを変更する
2、対象のブログに不特定多数の誰かが、アクセスした際には、変更したテンプレートが使われる
3、不特定多数なので、以前のセッションというものは存在しない
ということのようですね。
ならばむしろ、簡単になりましたね。
1、テンプレートのパスをデータベースに入れる
2、ブログのページでは、必ずDBを検索してテンプレートのパスを検索する
3、phpでテンプレートのファイル名にテンプレートのパス名を追加して呼び出す
あーなるほど!
何となくロジックは見えてきました。
>3、phpでテンプレートのファイル名にテンプレートのパス名を追加して呼び出す
に関しては、理解するのに少々時間が掛かりそうですが、
とりあえずアドバイスをいただいた方法でトライしてみようと思います。
本当にありがとうございました。
大変助かりました。(精神的な部分も含め)
また、先でつまづく事がありましたら、どうぞよろしくお願いいたします。m(_ _)m
No.1
- 回答日時:
要はテンプレートを変更しても
URLは変えないってことですよね。
しかも、GET を見せない。
普通にセッションで変数をまわすだけで良いと思いますが、
格納場所は、DBでもcookieでも良いので。
テンプレートを買えるのにファイル名を変えないだけなら、格納しているパスの名前を
ユニークにして、ファイル名を同じにするだけで良いと思います。
こういうのならフレームワークならシステム的にサポートしているので私なら
考えずにそちらを使いますかね。
この回答への補足
お忙しい中ご回答をいただき、大変感謝いたします。
「セッション」と聞いて、あれ?と思ったのですが、
それは管理画面のデザインの変更という意味でおっしゃって
いただいたのでしょうか?
もし、その様なお考えでしたなら、そうでは無く不特定多数の
閲覧者が見るページの事です。(記事が投稿されたページ)
よくある大手ブログサービスの管理画面で、自分のブログのデザインを
変更するといった形です。
もし勘違いなされていましたら、私の説明不足で大変申し訳ございませんした。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL 「掲示板のログイン画面」はPHP~MySQLに「データベース認証のシステム」方式です。 1 2022/09/27 05:00
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
- PHP PHP MySql ページング 2 2022/09/20 06:38
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- PHP どうして送信されないのでしょうか? 1 2022/12/09 05:23
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
phpMyAdminでデータの追加・更...
-
レンタル予約管理表を作りたい
-
携帯端末auのみpostで送ったデ...
-
PHPで、データを表示させるとき...
-
GETで「?」無しでパラメータの...
-
【PHP】ブログ記事をお気に入り...
-
XMLのロードに失敗する
-
PHPのif文でその処理を途中で抜...
-
【file_exists】ファイルが存在...
-
onedrive にexcelファイルをア...
-
拡張子php画像をjpg画像等に変...
-
youtubeに音声のみのmp4ファイ...
-
PHPのMySQLモジュールのインス...
-
pixivのイラスト投稿の仕方を教...
-
javascriptからphpへ変数
-
PHPで作るフレーム、どんな風に...
-
PHPで外部プログラムのバックグ...
-
FTPでのファイルとディレクトリ...
-
ファイルアップロードの上限を...
-
フレームワークの選定について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リダイレクトでPOST
-
URLの変わらないページをPHPで...
-
【WordPress】メディアの一覧出力
-
テキストリンクを2回クリックし...
-
URLでスラッシュ区切りでパラメ...
-
【PHP】ブログ記事をお気に入り...
-
会員サイトに自動ログインして...
-
PHPで、データを表示させるとき...
-
php my adminより取り出したデ...
-
LARAVEL モデル
-
レンタル予約管理表を作りたい
-
WordPress 検索結果ページのペ...
-
header関数でページ移動する場...
-
phpinfoでloaded modulesが表示...
-
GETで「?」無しでパラメータの...
-
PHPで検索結果からさらに詳細な...
-
phpでの二重投稿防止について
-
phpとpostgresを利用した検索シ...
-
PHPとSmartyで、ブログサービス...
-
リンク(URL)をクリックした後、...
おすすめ情報