本文目录一览:
- 1、AJAX提交的xml用php读取时$HTTP_RAW_GET_DATA为空,phP.INI相关项已设置
- 2、怎样查看php是否支持xml
- 3、php如何解析多级xml报文?
- 4、如何让PHP能够读取系统环境变量
- 5、php 写入ini文件(高分悬赏)
AJAX提交的xml用php读取时$HTTP_RAW_GET_DATA为空,phP.INI相关项已设置
在这里说一种找到错误的方法,而不是这个错误的解
相信对你更有用,
调试程序方法:
1)确定某段程序是否运行(这很重要),加一小段代码做个标记,
例:想知道一个循环运行几次,加$xunhuan++;echo $xunhuan;
例:想知道一个函数是否被运行,直接加,echo'fun9被运行了.';
你这个题有点特殊.就输出一个文件做判断吧, $h=fopen('1.txt','a+');
和alert("1处运行了");
如果有1.txt就是被运行了,
2)观察一个变量的值对不对,输出
1.echo输出
2.输出到数据库
3.输出到文件,fwrite("$myvar",$h);这个函数可能用错了,你找手册吧
你这个题要用3
3)做空的判断
4)做简单模拟,把大段程序中的一小块提出来,做成一个文件运行,
5)能正确运行了,也要,模拟各种情况,
6)
ajax.htm
-----------------
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=gb2312" /
/head
body
script language=javascript
function post(xmldoc,action) {
//Mozilla 浏览器
//xmlhttp = new XMLHttpRequest();
// var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
var xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
xmlhttp.Open("post",action,false);
xmlhttp.Send(xmldoc);
if (xmlhttp.status=="200") {
// alert("保存成功");
//alert(xmlhttp.responseText);
return xmlhttp.responseText;
}
else return false;
}
//上面定义函数,下面运行函数
var re;
re=post("1234","post.php?id=2");
alert(re);
/script
/body
/html
---------post.php--------
?
$str=$HTTP_RAW_POST_DATA;
$id=$_GET['id'];
echo $str;
$h=fopen('1.txt','a+');
fwrite($h,$str.$id.'\r\n');
?
怎样查看php是否支持xml
进入php源程序目录中的ext目录中,这里存放着各个扩展模块的源代码,选择你需要的模块,比如curl模块:cd curl
执行phpize生成编译文件,phpize在PHP安装目录的bin目录下
/usr/local/php5/bin/phpize
运行时,可能会报错:Cannot find autoconf. Please check your autoconf installation and
the $PHP_AUTOCONF
environment variable is set correctly and then rerun this
script.,需要安装autoconf:
yum install autoconf(RedHat或者CentOS)、apt-get install
autoconf(Ubuntu Linux)
/usr/local/php5/bin/php -v
执行这个命令时,php会去检查配置文件是否正确,如果有配置错误,
这里会报错,可以根据错误信息去排查!
php如何解析多级xml报文?
在该示例中,simplexml_load_file 函数用于加载 XML 文件并将其作为 SimpleXMLElement 对象返回。然后,我们可以使用 children() 方法访问根节点的所有子节点,并使用 getName() 方法获取每个子节点的名称。接下来,我们可以继续使用 children() 方法访问每个子节点的所有子节点,以此类推,直到达到所需的级别。-php.ini支持xml
如何让PHP能够读取系统环境变量
一般情况下,都能实现显示phpinfo()的页面。就从能够显示该页面之后出现的问题说起。php的问题都会显示在phpinfo()页面上。首先查看自己的php.ini的路径是否正确。Q:我已经配置了php.ini文件,但重新启动服务器后为什么没有任何效果?A:这个问题主要有这几种情况。第一个原因是由于系统所读取的php.ini文件与你当时修改的php.ini文件不一致造成的1、 可以通过phpinfo()的Configuration File (php.ini) Path选项查看当前PHP服务器读取的是哪一个php.ini2、 如果你要更改php.ini的文件存取位置,可参考php.ini的搜索顺序,如下所示:a) SAPI 模块所指定的位置(Apache 2 中的 PHPIniDir 指令,CGI 和 CLI 中的 -c 命令行选项,NSAPI 中的 php_ini 参数,THTTPD 中的 PHP_INI_PATH 环境变量)b) HKEY_LOCAL_MACHINESOFTWAREPHPIniFilePath(Windows 注册表位置)c) PHPRC 环境变量d) 当前工作目录(对于 CLI)e) web 服务器目录(对于 SAPI 模块)或 PHP 所在目录(Windows 下其它情况)f) Windows 目录(C:windows 或 C:winnt),或 --with-config-file-path 编译时选项指定的位置3、 一般做法:通过设置PHPRC 环境变量,a) 操作:右击我的电脑-属性-高级-环境变量b) 在系统变量下新建一个“变量名为PHPRC ,变量值为你的php.ini文件所地文件路径”的环境变量第二个原因是:PHP没有找到相应的扩展库1、 查看PHP找到的扩展库位置:在phpinfo()的extension_dir选项可以看到2、 在php.ini更改extension_dir文件第三个原因:没有完全重启IIS1、 对php.ini的修改必须完全重启IIS才能起作用,而不能只是对当前站点进行重启。2、 进入cmd,停止服务器:net stop iisadmin;启动服务器:net start w3svcQ:我的PHP怎么没有办法激活MySql扩展库A:在PHP5.0以上版本,MySQL 默认未启用,因此需要咱们进行手工激活。1、 在PHP运行MySql,必须在 php.ini 中激活 php_mysql.dll 动态连接库,另外还需要访问 MySQL 客户端连接库即libmysql.dll文件2、 可以通过php.ini中的extension激活 php_mysql.dll 动态连接库;而libmysql.dll文件必须放在Windows 的系统路径 PATH才能访问,可以通过把libmysql.dll复制到system32目录下,也可以在PATH环境变量中新增一个路径。3、 建议做法:通过设置PATH,方便以后的php升级,在系统环境变量中的PATH后增加“libmysql.dll”所在的文件夹即可。记得通过“;”号隔开4、 [案例]最近,服务器总是找不到MySql扩展库,导致程序无法运行。因此,把所有文件删除后重新配置PHP服务器。但最后在安装MySql的时候,却始终无法激活MySql扩展库。在phpinfo()中找到的信息如下:PATH:c:phpPHPRC:C:phpextension_dir:c:phpext另外,我测试了将其它的库激活,如msql、gd2、xml,在phpinfo()都可以正常显示证明PHP能找到php_mysql.dll 动态连接库,而MySql的运行的另一个条件是能够讯问MySQL 客户端连接库即libmysql.dll文件,看来问题就在这里了。我对C盘搜索libmysql.dll文件,发现在system32和php文件夹各有一个文件,做好备份后,我尝试删除system32的libmysql.dll文件,发现被锁死,无法删除,却可以重新命名,我随便修改了名称,再重新启动IIS,服务器运行正常。补充一点:如果Configuration File (php.ini) Path 显示为C:Windows就说明,php.ini文件没有读取到。另外,我发现,在用IIS整合php时,有两种方式:ISAPI与CGI模式这两种方式,我们都可以看到phpinfo页面但是使用ISAPI模式,无法读取环境变量,所以通过环境变量PHPRC设置的php.ini路径无法找到。使用CGI就可以,这样就不必把好多文件拷到系统文件下。-php.ini支持xml
php 写入ini文件(高分悬赏)
给个思路吧,第一我干的话会用xml格式,php操作xml格式很容易,第二实在要这样,建议干脆整一数据库,把ini文件数据化,然后就好办了。否则文件的读写就要用正则表达式分解再合成,或者用嵌套的explode按“[”,“]”,“=”分隔,繁琐的很-php.ini支持xml