我有一個XML(mydata.xml)文件存儲賬戶信息如下XML登錄腳本和會話中的PHP
<?xml version = "1.0" encoding="Windows-1252" standalone="yes"?>
<MYData>
<login_details>
<unique_ref>1-61</unique_ref>
<login_name>tomme</login_name>
<login>me</login>
<password>me</password>
<file1>Test</file1>
<file2/>
<file3/>
<file4/>
</login_details>
<login_details>
<unique_ref>1-61</unique_ref>
<login_name>tony</login_name>
<login>tony</login>
<password>tony</password>
<file1>Test1</file1>
<file2/>
<file3/>
<file4/>
</login_details>
</MYData>
我有一個登錄文件進入細節
<html>
<head>
<title>Administrator Login Page</title>
<style type="text/css">
@import "style.css";
</style>
</head>
<body>
<h1>Administrator Login Page</h1>
</br></br></br></br></br></br></br>
<form action="admin_verify.php" method="post">
User Name: <input type="text" name="admin_name" />
</br></br>
Password: <input type="password" name="admin_password" />
</br></br>
<input type="submit" value="Login"/>
<input type="reset" value="Reset"/>
</form>
</body>
</html>
我也有一個admin_verify文件
<?php
session_start();
$mydata = simplexml_load_file("xml/mydata.xml");
$login = "";
$password = "";
$loginname = "";
for($i = 0; $i < count($mydata); $i++){
$login = $mydata->login_details[$i]->login;
$password = $mydata->login_details[$i]->password;
$loginname = $mydata->login_details[$i]->login_name;
if(empty($_POST["admin_name"]))
{
header("Location:login.php");
return false;
}
if(empty($_POST["admin_password"]))
{
$this->HandleError("Password is empty!");
return false;
}
if(($_POST["admin_name"] == $login) && ($_POST["admin_password"] == $password)){
$_SESSION['name'] = "$loginname";
header("Location:admin_panel.php");
}
}
//as we have exited for loop (and therefore not been directed) we have a invalid login
echo "invalid username or password";
?>
問題是與admin_panel中的會話,因爲我試圖從$ loginname回來m XML文件到它通過'tomme'的admin_verify文件,但是admin_panel文件是我丟失的地方我也正在打算在xml文件中傳遞'tomme'的細節以顯示file1的內容關於如何實現的任何想法這一點,如果我硬編碼$登錄名在所有會話頁面的管理,然後它工作正常,但我想動態傳遞的信息 的admin_panel如下
<html>
<head>
<title>Administrator Panel</title>
<style type="text/css">
@import "style.css";
</style>
</head>
<body>
<h1>Administrator Panel</h1>
<?php
session_start();
$mydata = simplexml_load_file("xml/mydata.xml");
for ($i=0; $i < count($mydata);++$i)
$loginname = $mydata->login_details[$i]->login_name;
if($_SESSION['name']=="$loginname")
{
echo "Welcome ".$_SESSION['name'];
echo " ";
echo "<a href='logout.php'>Logout</a>";
}
else
{
header("Location:login.php");
}
echo " ";
echo "</br></br></br>";
?>
</body>
</html>
任何幫助,將appritiated
我忘了加上admin_panel代碼 – user2033464 2013-02-10 17:26:13
請把你的代碼(問題)到一個更合適的形式對於編程問題。將問題簡化爲摘錄,這是一個很好的例子,可以幫助更多的人蔘考,而不僅僅是在這個地方。 – hakre 2013-02-10 20:25:32
我可以知道什麼是您的php(admin_verify)代碼中的login_details? – Illaya 2014-04-19 07:20:59