2011-06-26 23 views
1

https://www.bitcoins.lc/と同じ方法で動作するphpのサイトを作成したいと思いますが、各ページのレイアウトは同じですが、リンクやページを変更すると内容が変わる私はこれをPHPでlayout.phpとindex.phpとheader.phpで設定しますか?PHPファイルのレイアウト/デザイン

私はMVCフレームワークについて読むように言われましたが、私はそれをすべて実際に理解していません。

何か助けや助言をいただければ幸いです。

<?php 
include('header.php'); 
?> 
Welcome to my page 
<?php 
include('footer.php'); 
?> 

はheader.phpの中で、ヘッダーとナビゲーションを入れて、footer.phpフッター:

ジェイソンは

+0

'http:// stackoverflow.com/cores/6480947/ layout-of-a-simple-php-mysql-website'のクローン? – levu

+0

このトピックを読んでみてください[リンク](http://stackoverflow.com/q/953675/815295) – redexp

答えて

-2

最も単純なアプローチは、Sjoerdによって説明したものです。 ページにいくつかの要素しか含まれていない場合は、スイッチまたはif文に間違いがあります。

のindex.php:

<html> 
    <body> 

     <!-- Wrapper div --> 
     <div id="wrapper> 


      <!-- Header div --> 
      <div id="header"> 
       <?php 
        include('header.php'); // File containing header code 
       ?> 
      </div> 

      <!-- Content div --> 
      <div id="content"> 


       <!-- Left Colon div --> 
       <div id="leftCol"> 
        <?php 
         include('leftMenu.php'); // File containing the menu 
        ?> 
       </div> 


       <!-- Center colon --> 
       <div id="centerCol"> 
        <?php 
         $page = $_GET['page']; // To get the page 

         if($page == null) { 
          $page = 'index'; // Set page to index, if not set 
         } 
         switch ($page) { 

          case 'index': 
           include('frontPage.php'); 
           break; 

          case 'about': 
           include('about.php'); 
           break; 

          case 'contact': 
           include('contact.php'); 
           break; 
         } 

        ?> 
       </div> 

      </div> 

      <!-- Footer div --> 
      <div id="footer"> 
       <?php 
        include('footer.php'); // File containing the footer 
       ?> 
      </div> 
     </div> 
    </body> 
</html> 

はheader.phpの:

<?php 
    echo "This is header"; 
?> 

leftMenu.php:

+0

URLを書き換えてフロントコントローラを作成する必要があります。それ以外のあなたのURLはかなり醜いです –

-1

あなたは、ヘッダーと、各ページでフッターを含めることができます。

+0

この方法では、header.phpとfooter.phpで比類のないhtmlタグを持っています –

0

複雑なドキュメントを読んでいるときにMVCが心配していることを願っています。 MVCフレームワークを簡単に理解して作成するのに役立つドキュメンテーションを参照することをお勧めします。プロジェクトの基本を理解せずにプロジェクトを進めると、それはうまくいかないでしょう。次の記事を見て、助けてくれたら教えてください。サポートが必要な場合はお気軽にお問い合わせください。

http://www.henriquebarroso.com/how-to-create-a-simple-mvc-framework-in-php/

+0

ありがとうございました!昼食後に読んでください。 –

+0

素晴らしい。それが役に立てば幸い:) –

+0

アイブ氏はそれを通過し始めたが、アイブ氏は、問題を抱えて、私はこのコードでNetBeansでエラー警告を取得:関数loadViewメソッド($ビュー、$ VARS =「」)を \t { \t \t(場合is_array($ vars)& & count($ vars)> 0) \t \t \t extract($ vars、EXTR_PREFIX_SAME、 "wddx"); \t \t require_once( 'view /'.$ view。'。php '); \t} –

2

<?php 
    echo "<a href='index.php/?page=index'>Front Page</a>"; // set page to index 
    echo "<a href='index.php/?page=about'>About</a>";  // page = about 
    echo "<a href='index.php/?page=contact'>Contact</a>"; // page = contact 
?> 

ので、ここで私は、一般的に取るアプローチですこれまで:

FILES:

  • のlayout.php
  • のindex.php
  • ビュー
    • _index.php

のlayout.php:

<html> 
<head> 
    <title><?php echo $title; ?></title> 
</head> 
<body> 
    <?php include($childView); ?> 
</body> 
</html> 

_index.php:

<section> 
    Some page content 
</section> 

インデックス。PHP:

<?php 
    $title = 'Home'; 
    $childView = 'views/_index.php'; 
    include('layout.php'); 
?> 

基本的には、ページ自体がコンテンツ領域に挿入するビューをレイアウトに伝えます。これは、ASP.NET ContentPlaceholder要素の使用方法に似ています。