创建PHP脚本以接收ID和返回信息
我有一个客户机,他需要能够在我的服务器上点击一个脚本,为脚本提供一个ID号,然后接收回一个包含该ID信息的XML字符串。例如,他将向“www.mywebsite.com?uid=424”发送一个请求,并接收回一个类似以下内容的XML字符串:创建PHP脚本以接收ID和返回信息,php,xml,return,Php,Xml,Return,我有一个客户机,他需要能够在我的服务器上点击一个脚本,为脚本提供一个ID号,然后接收回一个包含该ID信息的XML字符串。例如,他将向“www.mywebsite.com?uid=424”发送一个请求,并接收回一个类似以下内容的XML字符串: <client> <clientID>424</clientID> <clientName>ABC123</clientName> <contact>Joe Sc
<client>
<clientID>424</clientID>
<clientName>ABC123</clientName>
<contact>Joe Schmoe</contact>
</client>
<?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;
424
ABC123
乔施默
我以前从未这样做过,所以我想知道它是否像获取ID号一样简单,运行一个查询来获取所有信息,然后打印xml数据,或者是否有类似这样的数据返回函数。我试着用谷歌搜索,但什么都找不到。。。可能是因为我没有找到合适的东西。任何帮助都将不胜感激。使用
$\u Get获取url参数:
<?php
$id = $_GET['uid'];
?>
<client>
<clientID><?php echo $id; ?></clientID>
<clientName>ABC123</clientName>
<contact>Joe Schmoe</contact>
</client>
ABC123
乔施默
使用$\u Get
获取url参数:
<?php
$id = $_GET['uid'];
?>
<client>
<clientID><?php echo $id; ?></clientID>
<clientName>ABC123</clientName>
<contact>Joe Schmoe</contact>
</client>
ABC123
乔施默
简单地说,是的
更复杂-取决于对方正在寻找什么样的请求。如果他们可以接受html,那么是的,您就完成了。如果他们需要其他类型的输出-您可能需要更改内容类型标题。简单地说-是
更复杂-取决于对方正在寻找什么样的请求。如果他们可以接受html,那么是的,您就完成了。如果他们需要其他类型的输出-您可能需要更改您的内容类型标题。您可以根据需要简化。我会这样做:
<client>
<clientID>424</clientID>
<clientName>ABC123</clientName>
<contact>Joe Schmoe</contact>
</client>
<?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;
您可以随心所欲地简化它。我会这样做:
<client>
<clientID>424</clientID>
<clientName>ABC123</clientName>
<contact>Joe Schmoe</contact>
</client>
<?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;