2013-04-22 3 views
0

내 웹 사이트에는 많은 페이지가 있습니다. 이 모든 페이지의 맨 위에 똑같은 헤더가있어 로그인 한 사용자의 옵션과 웹 사이트의 다른 섹션에 대한 링크가 표시됩니다.mySQL에서 PHP 변수를 호출하려면 어떻게해야합니까?

이 헤더의 모양을 변경하고 싶다면 변경 사항을 적용해야합니다. 이것은 피할 수있는 문제인 것 같아서 mySQL 데이터 포인트에 코드를 저장하고 각 페이지에 다시 코드를 다시 표시하기로 결정했습니다.

지금까지 인상적 이었지만, 사용자 이름 표시와 같은 PHP 코드는 결과가 아닌 실제 코드 만 반환합니다. 코드를 호출

는, 그래서 여기에 잘 작동라고되고있는 실제 MySQL의 항목입니다 :

<table width="1332" border="0" cellspacing="0"><tr> 
<td width="1002" style="background-color:#4DDB4D;"> 
<a href="http://www.AGLgaming.com/login/home"><img src="http://i378.photobucket.com/albums/oo223/Abyssion180/AGLLogoAlternate.png" alt="AGL Logo" width=170 height=90 align="left" /></a> 
<img src="http://i378.photobucket.com/albums/oo223/Abyssion180/AGLBanner.png" width=825 height=90 /> 
</td> 
<td width="330" style="background-color:#4DDB4D" align="right"> 
<div class="ex1"> 
<a href="http://www.AGLgaming.com/login/home/profile"><font color="blue" size="5">' . $user[0][0] . '</font></a>,<br> 
<font size="1">Logged in: </font><a href="http://www.AGLgaming.com/login/home/logout"><font size="2" color="blue">Logout</font></a> 
</div></td></tr> 
<tr><td valign="center" style="background-color:#6EFF6E;height:31px;"> 
<div align="left"> || 
<a href="http://www.AGLgaming.com/login/home/forums"><font color="blue" size="5">Forums</font></a> ||| 
<a href="http://www.AGLgaming.com/login/home/guides"><font color="blue" size="5">Guides</font></a> ||| 
<a href="http://www.AGLgaming.com/login/home/external"><font color="blue" size="5">External</font></a> ||| 
<a href="http://www.AGLgaming.com/login/home/members"><font color="blue" size="5">Members</font></a> ||| 
<a href="http://www.AGLgaming.com/login/home/tournament"><font color="blue" size="5">Tournament</font></a> ||| 
<a href="http://www.AGLgaming.com/login/home/constitution_of_the_AGL"><font color="blue" size="5">Constitution of the AGL</font></a></div> 
</td> 
<td valign="center" style="background-color:#6EFF6E;height:31px;"> 
<div class="ex1" align="right"> 
<a href="http://www.AGLgaming.com/login/home/profile"><font color="blue" size="3">Profile</font></a> | 
<a href="http://www.AGLgaming.com/login/home/denarii"><font color="blue" size="3">Denarii</font></a>: ' . $user[0][7] . ' | 
<a href="http://www.AGLgaming.com/login/home/messages"><font color="blue" size="3">Messages</font></a>: ' . $user[0][9]; if($user[0][10]>0) echo '<font size="2"><b>(' . $user[0][10] . ' New!)</b></font>'; . ' | 
<a href="http://www.AGLgaming.com/login/home/settings"><font color="blue" size="3">Settings</font></a> 
</div> 
</td></tr></table> 
+4

와 왜 이것이 각 페이지의 맨 위에 포함 된 별도의 PHP 파일이 아닌가? 왜 데이터베이스에 저장해야합니까? –

+0

나는 실제로 당신이 그것을 할 수 있다는 것을 몰랐습니다 - mySQL은 나의 즉흥적 인 방법이었습니다. – Seriamus

답변

4

나는이 권리가 있다면, 나는 (당신이 말하고 싶지 않은) 정말로 당신이 당신의 코드를 재고 할 것을 권고합니다. 정말로 MySQL 데이터베이스에서 HTML/PHP 코드를 쿼리하고 있습니까? 그렇다면, 내가 당신에게 단지 onne 사이트 이상 몇 가지 코드를 얻을 수있는 또 다른 방법 권 해드립니다하자 단순히 이동 한 별도의 PHP 파일에 그 코드를 삽입 - 예 header.php과 전화를 하나

<?php require_once('header.php');?> 
+1

아, 와우, Google 검색은 공식적으로 나를 실패로 만들었습니다. 하지만 나는 그 해결책이 내 자신보다 훨씬 낫다. 고마워. – Seriamus

+0

문제는 없지만 PHP는 require 및 include와 유사한 유용한 함수입니다.net) 정말 큰 문서가 있습니다. Btw, 문제를 해결하는 데 도움이된다면 답을 올바르게 표시하면 좋을 것입니다.) –

+0

예, StackOverflow를 사용하면 특정 양의 시간이 지났다. – Seriamus

0

당신이하고보다는 오히려 그래서이의 PHP의 기능을 포함 될 수있는 데이터베이스를 사용한다 무엇. 당신이

<?php 
    include "header.php"; 
?> 
1

를 넣을 수있는 당신은 파일에 다음 코드가 다른 파일 각각에

Awesome header 
<?php 
    echo "working code"; 
?> 

header.php라고했다 글쎄 그것이 무엇인지 당신이 찾고있는 것처럼 나에게 보이는 가정 템플릿 시스템의 종류. 이것을 달성하는 가장 간단한 방법은 HTML에서 특정 키워드를 사용하여 PHP가 추출하고 바꿀 수있는 방법입니다.

예를 들어 str_replace() 함수를 사용할 수 있습니다. 이 예에서

$processedHtml = str_replace('{__USERNAME__}',$userName,$htmlFromDB); 

, 당신은 당신이 $userName 변수를 표시 할 것 사방 문자열 {__USERNAME__}을 삽입합니다.


즉, 나는 당신이 다소 독특한 상황에 직면 해 있으며 데이터베이스에 HTML을 저장하는 것이 최선의 선택이 아닐 수도 있다고 생각합니다. PHP의 include() 함수를 사용하는 것이 좋습니다. 이렇게하면 현재 스크립트에 추가 파일을 삽입 할 수 있습니다. 그것은 (이름에서 알 수 있듯이) include 문을 넣은 곳의 코드를 포함시킵니다. 이렇게하면 공유 헤더 코드를 하나의 파일로 중앙 집중화하고 필요한 모든 곳에서 간단하게 "포함"할 수 있으며 하나의 파일 만 편집하면됩니다.

관련 문제