2012-11-12 31 views
0

我有一個客戶端需要能夠在我的服務器上點擊一個腳本,爲腳本提供一個ID號,然後接收一個帶有關於該信息的XML字符串ID。例如,他會發送一個請求到「www.mywebsite.com?uid=424」,並接收返回的可能是這個樣子的XML字符串:創建一個PHP腳本來接收一個ID並返回信息

<client> 
    <clientID>424</clientID> 
    <clientName>ABC123</clientName> 
    <contact>Joe Schmoe</contact> 
</client> 

我從來沒有做過,所以我想知道它是否像獲取ID號一樣簡單,運行查詢以獲取所有信息,然後打印xml數據,或者是否存在某種類型的數據返回函數。我試圖谷歌它,但無法找到任何東西...可能是因爲我沒有尋找正確的東西。任何幫助將不勝感激。

回答

3

$_GET獲取URL參數:

<?php 
$id = $_GET['uid']; 
?> 
<client> 
    <clientID><?php echo $id; ?></clientID> 
    <clientName>ABC123</clientName> 
    <contact>Joe Schmoe</contact> 
</client> 
0

簡單地說 - 是的。

更復雜 - 取決於對方尋找什麼樣的請求。如果他們可以接受html,那麼你就完成了。如果他們需要其他類型的輸出 - 您可能需要更改您的內容類型標題。

0

你可以使它變得簡單,只要你想。我會這樣做:

<?php 
//Your sql connection 
$db = new PDO("mysql:dbname=testdb;host=127.0.0.1", "user", "pass"); 

//Get the id from the url and cast it to an integer 
$id = (int) $_GET['id']; 

//select the stuff from your database 
$q = $db->prepare("SELECT `name`,`id`,`contact` FROM `blabla` WHERE id = ?"); 
$q->execute(array($id)); 
$client = $q->fetch(2); 

//Output as xml 
header("Content-type: text/xml; charset=utf-8"); 
echo 
"<?xml version="1.0"?> 
    <client> 
    <clientID>{$client['id']}</clientID> 
    <clientName>{$client['name']}</clientName> 
    <contact>{$client['contact']}</contact> 
</client>"; 
exit; 
相關問題