对于PHP来说 你发送的甭管什么格式的XML都是一堆文本
解决方案 »
- 做了一个upload的php网页,上传数据到phpmyadmin上面去,出了点问题
- res://ieframe.dll/http_404.htm# 问题
- php snoopy采集遇到的问题 :bad request your browser sent a request that this server could not understand
- 超牛的问题---在线等!!!
- 最方便,最强大的JAVASCRIPT数据校验平台(广告,打扰了)
- 用PHP做BLOG网站,会涉及到哪些技术问题,或有无参考代码?急,thx
- 如何使从mysql中查找的字串不区分大小写?
- 如何接收POST过来的XML数据
- MYSQL Warning: Can't create UNIX socket
- 急!!!调用imagecreate,imagecoloallocate等函数出错
- 菜鸟求问基础问题
- 请教如何隐藏php, phtml等标示
$_POST和$_GET都没有
$fp = fopen('php://input', 'rb');
while (!feof($fp)) {
$data .= fread($fp, 1024);
}
Warning: fopen("php://input", "rb") - Inappropriate ioctl for device
$buffer = file_get_contents("php://input");
if(!empty($buffer))
{
echo $buffer;
exit;
}
?><script>
function loadXML(v)
{
var xmlHTTP = new ActiveXObject("Microsoft.XMLHTTP");
xmlHTTP.open("POST","test.php",false);
xmlHTTP.setRequestHeader("Content-type","text/xml"); xmlHTTP.send(v);
var s = xmlHTTP.responseBody;
view.innerHTML = s;
if(xmlHTTP.responseText.indexOf("error:")!=-1)
{
alert(xmlHTTP.responseText);
}
}</script>
<input type=button onclick="loadXML(this.value)" value="test1">
<input type=button onclick="loadXML(this.value)" value="test2">
<input type=button onclick="loadXML(this.value)" value="test3"><br>
receive:<span id="view"></span>
编码需要转换
file_get_contents需要4.3以上版本的支持
没法测试
if (!function_exists("file_get_contents"))
{
function file_get_contents($filename, $use_include_path = 0)
{
$file = @fopen($filename, "rb", $use_include_path);
if ($file)
{
if ($fsize = @filesize($filename))
{
$data = fread($file, $fsize);
}
else
{
$data = "";
while (!feof($file)) $data .= fread($file, 1024);
}
fclose($file);
}
return $data;
}
}
?>
后来我查了一下
原来是php://input也是在php4.3以上版本才支持
所以说这也不行啊
即使是php4也到了php4.4.1了
还抱着php4.2.x不放,不知是何原因
我已经绝望了
算了
还是换思路吧我们现在是对以前开发的系统进行补充和完善
不知道将php升级后对现有系统的冲击有多大
所以也不敢贸然