1

フレームなしのホームページを作成したいのですが、index.php でデザインを分割して、header.php/footer.php にし、すべてのページに含めるだけでよいでしょうか?

4

5 に答える 5

5

はい、index.phpをheader.php / footer.phpに分割して、すべてのページに含めることができます。1つのスクリプトで複数のページを表示するために、ページを静的HTMLではなくphpスクリプトにすることができることに注意してください。
私はまた、のようなありふれた構造を持たないことをお勧めします

include 'header.php';
//do some stuff
include 'footer.php';

しかし、別の構造、はるかに便利です:

//do some stuff, retrieve all data.
include 'header.php';
include 'page.php'; //include page template
include 'footer.php';
于 2010-03-13T11:05:56.217 に答える
2

フレームワークを使用することをお勧めします。ほとんどのフレームワーク (すべてではないにしても) には単純なテンプレート システムがあるため、コードを繰り返す必要はありません。

于 2010-03-13T12:46:55.603 に答える
1

サイトのすべてのページにコンテンツを含めるという提案された解決策の問題は、サイドバーなど、別のものを含める場合は、サイトのすべてのページを更新する必要があることです。

スクリプトとページの接続をまったく行わないことをお勧めします。したがって、表示したいページごとにphpファイルを作成することはありません。代わりに、1つのフロントコントローラーファイルを使用します。ほとんどの場合、Webサイトのルートにあるindex.phpを使用します。次に、Apache mod_rewriteまたはその他のサーバー技術を使用して、サイトのURLに柔軟性を持たせます。次に、index.phpにさまざまなURLリクエストをマッピングさせてさまざまなページを提供します。その後、サイトのすべてのページをデータベースまたは別の場所に配置できます。

このように、ヘッダーとフッターのテンプレートを含むサイト内のポイントは1つだけなので、簡単に変更できます。サイトのルートを使用して、HTMLではなくJSONを出力するAJAXリクエストを処理できます。例えば。

Afaikこれはそれについて行く良い方法です。

于 2010-03-13T12:29:54.413 に答える
-1

そのためのセッションを設定することができます。セッション変数は、訪問者が Web サイトにいる限り存在します。

<?php
    session_start(); // Remember that session_start(); must be the first line of your PHP and HTML-code

    if($add_a_message){
        $_SESSION['message'] = 'Message';
    }

    if($destroy_message){
        $_SESSION['message'] = '';
    }

    // echo this message
    if(isset($_SESSION['message']) && strlen($_SESSION['message']) > 0){
        echo '<strong>' . $_SESSION['message'] . '</strong>';
    }
?>
于 2010-03-13T10:40:17.057 に答える