Php常见问题汇总
发布时间:2022-03-11 21:31:17 所属栏目:PHP教程 来源:互联网
导读:在提问题前请先仔细查阅PHP手册,MYSQL手册 以及PHPINFO里面的设置。 另外希望你读一下PHP编程标准。(站长书库) 精彩30问,网罗常见PHP问题,希望大家细心查看。 1:为什么我得不到变量 我在一网页向另一网页POST数据name,为什么输出$name时却得不到任何值?
在提问题前请先仔细查阅PHP手册,MYSQL手册 以及PHPINFO里面的设置。 另外希望你读一下PHP编程标准。(站长书库) 精彩30问,网罗常见PHP问题,希望大家细心查看。 1:为什么我得不到变量 我在一网页向另一网页POST数据name,为什么输出$name时却得不到任何值? 在PHP4.2以后的版本中register_global默认为off 若想取得从另一页面提交的变量: 方法一:在PHP.ini中找到register_global,并把它设置为on. 方法二:在接收网页最前面放上这个extract($_POST);extract($_GET);(注意extract($_SESSION)前必须要有Session_Start()). 方法三:一个一个读取变量$a=$_GET["a"];$b=$_POST["b"]等,这种方法虽然麻烦,但比较安全. 2:调试你的程序 在运行时必须知道某个变量为何值。我是这样做的,建立一文件debug.php,其内容如下: <?PHP Ob_Start(); Session_Start(); Echo "<pre>"; 然后在php.ini中设置:include_path = "c:/php",并将debug.php放在此文件夹, 以后就可以在每个网页里包含此文件,查看得到的变量名和值. 3:如何使用session 凡是与session有关的,之前必须调用函数session_start(); 为session付值很简单,如 <?php Session_start(); $Name = "这是一个Session例子"; Session_Register("Name");//注意,不要写成:Session_Register("$Name"); Echo $_SESSION["Name"]; //之后$_SESSION["Name"]为"这是一个Session例子" ?> 提示1: 凡是出现"........headers already sent..........",就是Session_Start()之前向浏览器输出信息. 去掉输出就正常,(COOKIE也会出现这种错误,错误原因一样) 提示2: 如果你的Session_Start()放在循环语句里,并且很难确定之前哪里向浏览器输出信息,可以用下面这种方法: 1行 <?PHP Ob_Start(); ?> ........这里是你的程序...... 2:这是什么错误 Warning: session_start(): open(/tmp/sess_7d190aa36b4c5ec13a5c1649cc2da23f, O_RDWR) failed:.... 因为你没有指定session文件的存放路径. 解决方法: (1)在c盘建立文件夹tmp (2)打开php.ini,找到session.save_path,修改为session.save_path= "c:/tmp" (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |