2013-07-09 2 views
0

문제는 매우 간단하다, 그러나 나는 한 시간 동안 둘러보고 아무 것도 발견되지했습니다웹 페이지가 약간 인덱스 페이지에서 변경

정확히 홈 페이지와 동일한 페이지를 만들어,하지만 특정 DIV 콘텐츠를

예를 들어 index.html을을 변경했습니다

<html> 
<head> 
    <title>title</title> 
    <style type="text/css"> 
    /* css goes here */ 
    </style> 
</head> 
<body> 
    <div id="stay">I wont change</div> 
    <div id="change">I will change</div> 
</body> 
</html> 

그래서 나는 그것이 (코드를 복사하지 않고) 인덱스 페이지에서 전체 HTML을 상속 있도록 페이지를 코딩 할 수 있도록하려면,하지만 특정 콘텐츠 (여기에는 id가 #change)와 다른 콘텐츠가 있습니다. 이 일을 어떻게 하죠?

+1

변경 사항을 트리거하는 작업은 무엇입니까? –

+0

그것은 행동이 아닙니다 ... 동일한 레이아웃과 모든 것이 인덱스 페이지와 다른 페이지이지만 하나의 divs 내용이 변경되었습니다 ...이 작업을 수행하는 유일한 방법은 전체 인덱스 페이지 코드를 다시 복사하고 변경하는 것입니다. 그 하나 div –

+1

당신은 Smarty 같은 템플릿 엔진을 봐야합니다. 여기서 템플리트를 머리와 꼬리 부분으로 나눌 수 있으며 주 내용은 페이지마다 다른 부분으로 나눌 수 있습니다. 모든 것을 훨씬 깨끗하고 쉽게 관리 할 수 ​​있습니다. – OptimusCrime

답변

3

코드 스 니펫을 "상속"하지는 않지만 페이지 콘텐츠를 다시 사용하려고하는 것으로 알고 있습니다. 게시 된 코드에서 변경 사항이 색인과 어떻게 다른지 정확히 설명하기는 어렵습니다. 콘텐츠 변경 사항 일 뿐이니 아니면 색인 페이지에 해당 div가 없습니까?

몇 가지 옵션이 있습니다. 사업부의 단지 내용이 변경되는 경우 동일한 PHP 페이지를 사용하고 DIV의 내용을 변경하기 위해 jQuery를 사용하기 때문에 뭔가

index.php를

<? php include("page.php"); ?> 

다른 페이지

같은 수
<? php include("page.php"); ?> 
// javascript to modify div 

당신은 덩어리로 페이지를 중단하고 필요에 따라 단지를 포함, 그래서 당신은

<? php include("top.php"); ?> 
<? php include("bottom.php"); ?> 
을 할 수있는 top.php과 bottom.php 및 인덱스 페이지를 가질 수 있었다 이러한 솔루션 중 어느 것도 그 상황에 조금 많이있을 수 있지만 당신은 항상, 페이지 템플릿을 생성하는 템플릿 엔진을 사용할 수 있습니다 작업하는 경우 6,

다음과 유사한 페이지

<? php include("top.php"); ?> 
// custom stuff here 
<? php include("bottom.php"); ?> 

처럼 뭔가를 할 수 있습니다.

0

나는이 질문을 php에 태그를 붙이는 것을 본다. 그래서 나는 PHP 구현을 포함하여 답을 줄 것이다.

3 페이지를 만듭니다. index.phpabout.phpfoo.php

목적은 foo.php를 포함 ... 지금 index.php에서 일부 콘텐츠 만 about.php

콜이 페이지 foo.php

<html> 
<head></head> 
    <body> 
     <p> Show this in index.php </p> 
     <?php if($_SERVER['PHP_SELF'] === 'about.php'): ?> 
     <p> Show this in about.php </p> 
     <?php endif; ?> 
    </body> 
</html> 

의 모든 콘텐츠를 표시 할이해야 할 모든 것입니다 두 페이지 모두.

0

원하는 페이지를 확인하고이 일에 대해 갈 수

파일 이름을 사용하고 하나의 페이지 인 경우 (내용을 변경할 수있는 기반
<html> 
<head> 
    <title>title</title> 
    <style type="text/css"> 
    /* css goes here */ 
    </style> 
</head> 
<body> 
    <div id="stay">I wont change</div> 
    <?php 
     if(basename($_SERVER['PHP_SELF'] == "other-page.php")){ ?> 

     <div id="change">I will change</div> 

     <?php }else{ ?> 

     <div id="change">Original div</div> 

     <?php } ?> 
</body> 
</html> 

, 그렇지 않으면 함수를 작성/클래스를 기반으로).

0

이렇게하는 방법에는 여러 가지가 있습니다. 다음은 각각 장단점이있는 두 가지입니다.

먼저 페이지를 수정하고 싶지 않으면 GET 변수를 통해 전달 된 페이지를 포함하는 작은 PHP 코드 세그먼트를 추가 할 수 있습니다. 예를

를 들어
<html> 
<head> 
    <title>title</title> 
    <style type="text/css"> 
    /* css goes here */ 
    </style> 
</head> 
<body> 
    <div id="stay">I wont change</div> 
    <div id="change"><?php require($_GET['page']); ?></div> 
</body> 
</html> 

는 URL mypage.php?page=home.php를 사용하여 자동으로 해당 사업부에 home.php라는 파일의 내용을 포함하는 것을 의미한다.

또 다른 방법은 해당 페이지를 2 개의 섹션으로 나누고 두 페이지를 모두 다른 페이지에 포함시키는 것입니다.

<html> 
<head> 
    <title>title</title> 
    <style type="text/css"> 
    /* css goes here */ 
    </style> 
</head> 
<body> 
    <div id="stay">I wont change</div> 
    <div id="change"> 

bottom.php :

</div> 
</body> 
</html> 

은 다음 PHP 파일에 다음과 같은

을 사용할 수 있습니다 예를 들어, top.php이

로,이 개 별도의 파일에 코드를 분할
require("top.php); 
MY CONTENT HERE 
require("bottom.php); 

에 해당하는 경우 echo를 사용하여이 코드를 출력해야합니다.및 ?> 태그

희망이 도움이 될 것입니다.

0

당신은 이것을 할 수 없습니다. 평범한 HTML입니다. 의 당신이 "저에게 연락"페이지를 만들고 싶어 가정 해 봅시다, 이제 (template.php)

<html> 
<head> 
    <title>title</title> 
    <style type="text/css"> 
    * css goes here */ 
    </style> 
</head> 
<body> 
    <div id="stay">I wont change</div> 
    <div id="change"><?=$main_content?></div> 
</body> 
</html> 

:

처음과 같이 템플릿 파일을 작성, PHP에서 작업을 수행하려면.

<?php 
    // in contact.php 
    $main_content = "Contact me at [email protected] 

    include "template.php"; 
?> 

이 페이지에 template.php의 내용을 작성하고

이제 DIV 번호 변경 안에 $의 main_content의 값을 에코, 이것은 일반적으로 귀하의 변수를 관리하는 것은 어려운되기 때문에 눈살을 찌푸리게한다 템플리트의 크기가 증가합니다. 일을 제정신으로 유지하려면 템플릿 엔진을 사용하여 다른 모든 대답을 제안하십시오.

관련 문제