2012-08-23 43 views
0

我是新來的PHP。我最近經歷了一個在PHP登錄例子(http://net.tutsplus.com/articles/news/build-a-login-and-registration-system-with-xml/)並實現了我的測試網站的登錄頁面本地主機。如何在php頁面中傳遞xml圖像?

但現在我想assing每個用戶一個圖像讓的說我有3個用戶,我有用戶文件夾下3用戶xml和每個XML應該是這個樣子

<?xml version="1.0"?> 
<user> 
    <password>some password will come here</password> 
    <email>[email protected]</email> 
    <img>images/mynewimage.jpg</img> 
</user> 

我在XML中添加<img>節點但我不知道如何在PHP頁面上調用它。這裏最大的挑戰是我要找出每個頁面上的當前用戶,因爲登錄後我有3-4個基本頁面,並且我在每個頁面上都保持登錄狀態,所以我希望他的圖像也在我給出的所有頁面上每一頁上的代碼維護會話

<?php 
session_start(); 
if(!file_exists('users/' . $_SESSION['username'] . '.xml')){ 
    header('Location: login.php'); 
    die; 
} 
?> 

當我的用戶名<?php echo ucfirst($_SESSION['username']); ?>檢查顯示我當前的用戶名,但在相同的辦法,我無法呼叫旁邊的用戶名的圖像。

+0

你能夠獲得當前用戶的密碼和電子郵件嗎?你是否爲每個用戶維護一個xml? –

+0

是休息我可以得到的所有信息。我爲每個用戶維護一個xml。由於我的要求是10個用戶最多,我不想使用任何數據庫,所以我很好,每10個用戶10 xml。 – Ankit

+0

好,然後檢查下面的答案或獲取ima的值與獲取email的方式相同。如果您可以獲得電子郵件,那麼您也應該能夠以相同的方式獲取img,如果沒有,則將您正在使用的代碼片段從該xml獲得用戶的電子郵件 –

回答

1

使用simplexml_load_file()

$xml = simplexml_load_file('users/' . $_SESSION['username'] . '.xml'); 
echo $xml->img; 
+0

Thx mihai :)它現在完成我只是改變 回聲''; 其工作正常......再次感謝你拯救我的生命:) – Ankit

0

你必須做的第一件事是分析XML file.php有這樣的功能:

$xmls = simple_xml_load_file(your_file's_exact_path); 
$image = $xml->img; 

,如果你在你的XML文件中的許多元素IMG你必須使用foreach循環,如:

foreach($xmls as $xml) 
{ 
$xml->img; 
$image = implode(',',$$xml->img;); 
} 

此代碼解析你的XML文件和將所有圖像保存到變量$ image。現在你可以按照你的想法使用它了。確定img元素的路徑。試試這個。它會幫助你。 快樂編碼!