2013-02-27 40 views
0

我目前做一個簡單的網站,我有一個叫做「的functions.php」文件,在那裏我存儲一些簡單的功能,這一段代碼PHP代碼存儲在一個PHP變量中,這可怎麼工作的?

<div id=\"topContactPan\"> 

<div id=\"topMenuPan\"> 
    <div id=\"topMenuLeftPan\"></div> 

    <div id=\"topMenuMiddlePan\"> 
<a href= <?Php if(!admin_class::isadmin()){ 
echo "\"userprofile.php\" >User Profile</a></li>";} 
else { echo "\"adminprofile.php\" >Admin</a>"; } ?> 

我需要逃避所有的「,因此將其解釋正確的,因爲這是一個PHP文件中,所有這一切都被存儲在內部變量$頂部,所以每當我創建我的網站,我只是回聲$頂部和回聲$底部的一個新的頁面,只有那裏有頭球頂和底部的頁腳,內容丟失。

但上面的代碼,我想在導航欄上的鏈接之一切換其中指向取決於如果誰被登錄的一個是管理員或普通用戶。但似乎只有當我點擊鏈接時,標題變爲http://localhost/YMMLS/<?Php

有什麼建議嗎?非常感謝

+0

EVAL。但爲什麼不使用函數,top()和bottom()而不是變量? – mario 2013-02-27 03:05:39

+2

我不會推薦使用'eval'。另外,爲什麼不移動標籤外的雙引號? – Kermit 2013-02-27 03:06:37

+1

當你知道自己在做什麼時,Eval就可以。通過你的代碼,你可能會打開很多安全漏洞。現在不要使用它。 – itachi 2013-02-27 03:11:03

回答

0

我會做這樣到functions.php:

<?php 
function template() { 
    ?> 
    <div id="topContactPan"> 

    <div id="topMenuPan"> 
    <div id="topMenuLeftPan"></div> 

    <div id="topMenuMiddlePan"> 

    <a href="<?php checklink(); ?>"> <?php checkuser(); ?></a> 
    <?php 
} 

function checklink() { 
    if(!admin_class::isadmin()) { 
     echo "userprofile.php"; 
    } else { 
     echo "adminprofile.php"; 
    } 
} 
function checkuser() { 
    if(!admin_class::isadmin()) { 
     echo "User Profile"; 
    } else { 
     echo "Admin"; 
    } 
} 
?> 

然後在你的文件,你只是包括它並調用它的功能:

<?php 
include('functions.php'); 
template(); 
?> 

這不是也許是最好的解決方案。 :d

2

化妝2個文件。

的header.php和footer.php

每個那些裏面寫你的HTML,你通常會 - 然後在你的食指或什麼都頁只說

include('header.php'); 
<p>YOUR HTML PAGE AND DOC<p> 
include('footer.php'); 

沒有必要去通過逃避一切。