2017-01-10 6 views
-3

php includeを使用して、私のWebページにヘッダーとフッターを含めています。私はすべてのヘッダーにnavbarを持っていて、header.phphに特定のページのnav項目の一部が表示されないようにする方法があるかどうかを知りたがっています。たとえば、連絡先ページから連絡先ページに移動する必要がないため、このナビゲーション項目は不要です。誰かが助けてくれることを望みます。これを行うにはPHPは含まれていますが、特定のもののみ

のindex.php

<?php 
include('header.php'); 
?> 
<div class="third_bar"> 
    <div class="second_image"> 
    </div> 
    <div class="form"> 
     <form action= "search.php" method="post"> 
      <input type="text" id="search_bar" placeholder="" value="Search" max length="30" autocomplete="off" onMouseDown="active();" onBlur="inactive();"/><input type="submit" id="search_button" value="Go!"/> 
     </form> 
    </div> 
</div> 

<?php 
include ('footer.php'); 
?> 

header.phpの

!doctype html> 

<html> 
    <head> 
     <meta charset="utf8"> 
     <link rel="icon" href="http://www.com/favicon.png?v=2"/> 
     <title>Wcom</title> 
     <link rel= "stylesheet" href="style5.css"/> 
    </head> 
    <script type="text/javascript"> 
     function active() { 
      var search_bar= document.getElementById('search_bar'); 
      if(search_bar.value == 'Search here') { 
       search_bar.value='' 
       search_bar.placeholder= 'Search here' 
      } 
     } 

     function inactive() { 
      var search_bar= document.getElementById('search_bar'); 
      if(search_bar.value == '') { 
       search_bar.value='Search here' 
       search_bar.placeholder= '' 
      } 
     } 
    </script> 
    <div id="container"> 
     <div class="top_section"> 
      <div class="first_image"> 
       <a href="#"><img src="logo.png"/></a> 
      </div> 
     </div> 

     <div class="nav_bar"> 
      <a href ="#"> About us</a> 
      <a href ="#"> Products & Pricing</a> 
      <a href ="contactpage.php"> Contact us</a> 
      <a href ="#"> login</a> 
     </div> 

<!doctype html> 
<html> 
    <head> 
     <meta charset="utf8"> 
     <link rel="icon" href="http://"/> 
     <title>?.com</title> 
     <link rel= "stylesheet" href="style5.css"/> 
    </head> 
    <script type="text/javascript"> 
     function active() { 
      var search_bar= document.getElementById('search_bar'); 
      if(search_bar.value == 'Search here') { 
       search_bar.value='' 
       search_bar.placeholder= 'Search here' 
      } 
     } 

     function inactive() { 
      var search_bar= document.getElementById('search_bar'); 
      if(search_bar.value == '') { 
       search_bar.value='Search here' 
       search_bar.placeholder= '' 
      } 
     } 
    </script> 
    <div id="container"> 
     <div class="top_section"> 
      <div class="first_image"> 
       <a href="#"><img src="logo.png"/></a> 
      </div> 
     </div> 

     <div class="nav_bar"> 
      <a href ="#"> About us</a> 
      <a href ="#"> Products & Pricing</a> 
      <a href ="contactpage.php"> Contact us</a> 
      <a href ="#"> login</a> 
     </div> 
+0

賞賛! –

+0

誰かが、その辛い人生を持っています。 – Bill04

+1

何を表示するかを決定する 'header.php'コード内にロジックを実装する必要があります。あなたは、クライアント側のロジックを使って、隠すことができます。 – arkascha

答えて

2

一つの簡単な方法は、あなたのheader.phpのページ上の条件を追加することです。

は、あなたが「contactpage.php」上のインスタンスのためのページ名が含まれている各ページの先頭で変数を持っていると言う:

$page = 'contact'; 

(注意の名前を取得する方法もあります$_SERVERスーパーグローバル変数に現在のページ)

次にあなたがconditionnallyナビゲーションバーにあなたのリンクを印刷することができます。ウイスキーのためのウェブサイト上で作業するための

<div class="nav_bar"> 
<a href ="#"> About us</a> 
<a href ="#"> Products & Pricing</a> 
<?php if ($page !== 'contact') { ?> 
<a href ="contactpage.php"> Contact us</a> 
<?php } ?> 
<a href ="#"> login</a> 
+0

OP:このナビアイテムは不要なので、連絡先ページから連絡先ページに移動する必要はありません。 – Progrock

+0

@Progrock yupは反対の感謝を意味しました! –

+0

ピエールありがとう、助けてくれてありがとう。今私が持っている問題は、私のヘッダのスタイルシートが私のインデックスページのスタイルシートを上書きするということだけです。私はインデックス、コンタクトページなどのためのスタイルシートを持っています。現時点では2ページのサイトしかありません。すべてのページに1つのスタイルシートが必要ですか? – Bill04

関連する問題