创建PHP脚本以接收ID并返回信息

时间:2012-11-12 22:16:15

标签: php xml return

我有一个客户端需要能够在我的服务器上点击脚本,为脚本提供一个ID号,然后接收一个包含该ID信息的XML字符串。例如,他会向“www.mywebsite.com?uid=424”发送请求并收回一个xml字符串,该字符串可能如下所示:

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

我之前从未这样做过,所以我想知道它是否像获取ID号一样简单,运行查询以获取所有信息然后打印xml数据,或者是否存在某种数据 - 为这样的事情返回功能。我试图谷歌它,但无法找到任何东西......可能是因为我没有找到合适的东西。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:3)

使用$_GET获取网址参数:

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

答案 1 :(得分:0)

简单地说 - 是的。

更复杂 - 取决于对方正在寻找什么样的要求。如果他们可以接受html,那么是的,你完成了。如果他们需要其他类型的输出 - 您可能需要更改内容类型标题。

答案 2 :(得分: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;