2017-04-13 87 views
0

客戶要求我們將可編輯頁面添加到他們的站點,並通過外部cms進行更新。那裏沒有戲劇;我可以通過include「filename.php」輕鬆地調用它。函數,但是我陷入困境的是這個外部文件需要在登錄後面,所以除非將它作爲現有$ usermessage變量的一部分包含在內,否則它將不斷顯示,無論是否登錄。將php包含在變量中

我不得不編輯一個現有的,以前建成的網站(這是幾年前),所以我有點卡住目前的方式它的設置,但有沒有一種方法,我可以包括該文件作爲$的一部分usermessage?

請參見下面的代碼,並感謝您的幫助......

<?php 
require_once "header.php"; 
#require_once "onlinearchive.php"; 

if (isset($_SESSION['loginid']) && isset($_SESSION['email'])) 
{ 
    $session_email = $_SESSION['email']; 
    $query = sprintf("SELECT name FROM login WHERE email = '%s' LIMIT 1", 
    mysql_real_escape_string($session_email)); 

    $result = mysql_query($query); 
    $username = ''; 
    $usermessage = ''; 
    $intevents = ''; 

    while ($row = mysql_fetch_array($result)) { 
     // Print out the contents of each row into a table 
     $username = $row['name']; 
    } 

    if ($username) 
    { 
     $username = 'Welcome ' . $username; 
    } 
    $usermessage = '<p><span class="green"><strong>'.$username.'</strong></span> 
<strong> to the Member’s Area. </strong><br><br>Here you’ll be able to view 
news and notifications unique to IPA Members, so please check back regularly 
for updates.<br><br></p>'; 

} 
else 
{ 
    $usermessage = '<p><span class="green"><strong>To access the Member’s Area, 
please <a href="login.php">Log in</a> or <a href="login.php">register</a> 
</strong></span><br>'; 
} 

?> 
<div id="page-title"><p>IPA Member’s Area</p></div>   

<div id="container" class="clearfix"> 


    <div id="content"> 
     <?php echo $usermessage; ?> 


    </div> <!--end content--> 
+0

爲什麼不在檢查會話之前定義一個布爾變量,並將其設置爲true/false,以驗證用戶是否通過驗證。之後,根據它的價值,您可以在回顯$ usermessage後選擇是否包含頁面。 – Sebastian

+0

感謝您的反饋塞巴斯蒂安。我的PHP是有限的,所以任何方向的語法將不勝感激。 Thx – eanno

+0

實際上,雖然我還沒有完全解決它,但我已經將它的所有現有內容移動到包含文件中,然後單獨調用包含該變量的變量。我的問題是我無法讓變量顯示HTML和包括在一起(作爲一個字符串?)。我仍然不確定自己想要做的事情是否可能,但我的解決方法是達到目的的手段......對嗎?再次感謝你的幫助。 – eanno

回答

0

如果你的文件filename.php的結構是這樣的:filename.php的

例子:

<?php 
//Example of filename.php 

$usermessage_to_return = "here the message to return"; 
return $usermessage_to_return; 

在另一個文件中導入filename.php的內容:

<?php 
//Example to import filename.php 

$usermessage = require 'filename.php'; 
echo $usermessage; 
//here the message to return 

訣竅是filename.phpreturn