关于SESSION,我想再说一下。

 更新时间:2016年11月25日 17:36  点击:1829
  在WIN32下,不知为什么PHP4处理绝对路径总是有问题。集中表现在extension_dir、upload_tmp_dir和session.save_path这几个设置,无论你怎么设都不行,后来我设成了./,于是都可以了。
  但是问题又来了。session.save_path这个路径是对应于当前执行的PHP文件的,所以,在你使用SESSION时,如果换到了另一个目录下,那么这个SESSION也就没有了。
  当然这些在LINUX下都不存在的。因为LINUX下,都可以用/tmp。
  所以对于这位兄弟的问题,我想可以这样。首先,看你的PHP。INI的内容,session.save_path应该改成./ 。然后,你的程序也有一些问题,我加了一些注释。你可以再试一下。
<?php
session_register("abc"); //应该先给变量赋值,再执行些函数
$abc="abcdefg";     //就是说此句应该放到前面。
header("Location: go.php");
?>
//////////////////////////////////////////
//go.php
<?php
     session_register("abc");  //这一句是不需要的。
echo "您是 ".$abc." ";
?>

文件:SimpleDocumentParser.php
<?php
/**
*=========================================================
*
* @author hahawen(大龄青年)
* @since 2004-12-04
* @copyright Copyright (c) 2004, NxCoder Group
*
*=========================================================
*/
/**
* class SimpleDocumentParser
* use SAX parse xml file, and build SimpleDocumentObject
* all this pachage's is work for xml file, and method is action as DOM.
*
* @package SmartWeb.common.xml
* @version 1.0
*/
class SimpleDocumentParser
{
private $domRootObject = null;
private $currentNO = null;
private $currentName = null;
private $currentValue = null;
private $currentAttribute = null;
public function getSimpleDocument()
{
return $this->domRootObject;
}
public function parse($file)
{
$xmlParser = xml_parser_create();
xml_parser_set_option($xmlParser,XML_OPTION_CASE_FOLDING, 0);
xml_parser_set_option($xmlParser,XML_OPTION_SKIP_WHITE, 1);
xml_parser_set_option($xmlParser, XML_OPTION_TARGET_ENCODING, 'UTF-8');
xml_set_object($xmlParser, $this);
xml_set_element_handler($xmlParser, "startElement", "endElement");
xml_set_character_data_handler($xmlParser, "characterData");
if (!xml_parse($xmlParser, file_get_contents($file)))
die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xmlParser)),
        xml_get_current_line_number($xmlParser)));
xml_parser_free($xmlParser);
}
private function startElement($parser, $name, $attrs)
{
$this->currentName = $name;
$this->currentAttribute = $attrs;
if($this->currentNO == null)
{
$this->domRootObject = new SimpleDocumentRoot($name);
$this->currentNO = $this->domRootObject;
一、PHP/MySQL简介
  您应该听说过开放源代码软件(OSS),除非最近六到八个月来您一直住在火星上。这场运动有着巨大的冲击力,已引起一些大公司的注意。象Oralce、Informix,还有多家公司都开始把他们的主力数据库产品移植到OSS的产物之一 - Linux操作系统上。
  如果您有足够的技术力量,拥有一个复杂庞大的关系数据库系统(RDBMS)则是如虎添翼。但是也许您对数据库还刚刚入门,您刚刚读了Jay的文章,决定自己也来搞一个数据驱动的网站。可是您也许会发现您缺乏必要的资源来运行ASP服务器或昂贵的数据库系统(您也不需要这些东西)。您需要一些免费的、支持Unix的东西。
  那么我建议您使用PHP和MySQL。这两样东西加在一起,对于开发数据驱动的网站这项工作而言,真是最佳组合。其实用不着我多费唇舌解释。一项由Netcraft组织的非官方调查显示,应用PHP的主机数目由1998年6月的7,500台跃升至1999年3月的410,000台。不错吧?这两种软件的组合还在Webcon98大会上赢得了年度数据库产品大奖,还得了一座漂亮的奖杯。
  MySQL是一个小巧灵珑的数据库服务器软件,对于小型(当然也不一定很小)应用系统是非常理想的。除了支持标准的ANSI SQL语句,它还支持多种平台,而在Unix系统上该软件支持多线程运行方式,从而能获得相当好的性能。对于不使用Unix的用户,它可以在Windows NT系统上以系统服务方式运行,或者在Windows 95/98系统上以普通进程方式运行。
  PHP是一种服务器端解释的脚本语言。如果你接触过ASP的话,那么您对于在HTML页面中嵌入代码应该是比较熟悉了。PHP代码在服务器一端被解释转变成普通的HTML页面内容,送给浏览器一端。这种模式使得我们可以用它来完成相当复杂的功能。
  除了免费这一点(当然,MySQL也有一些使用许可方面的限制),PHP-MySQL的组合还可以跨平台运行,这意味着您可以在Windows上开发,然后在Unix平台上运行。另外,PHP也能作为标准的CGI进程来运行,此时它是一个独立的脚本解释器,或者是Apache的一个嵌入模块。
  如果您有兴趣使用其他数据库服务器的话,PHP也支持Informix、Oracle、Sybase、Solid和PostgreSQL ,以及通用的ODBC。
  PHP支持Internet开发的一些前沿技术。这些技术包括身份认证、XML、动态图象生成、WDDX、共享内存,以及动态PDF文档等等,不一而足。如果您还不满意的话,PHP是很容易扩展的,所以只要您有编程能力,您尽可以自己大展身手一番。
这里很多人用的Apache,很少人放出2000的简单配置说明,我就写出来了一点点,也算是共享吧!
先安装mysql,默认安装路径为:c:mysql; 安装完成后,打开“开始”按钮中的“运行”,输入命令:C:mysql/bin/winmysqladmin,并执行; 在第一次用它时,需要建立管理员名及密码,我分别设置为root和(yourpassword)。关闭它后,程序自动在状态行下建立一个“红绿灯”的小图标。
现在开始安装php4,将软件包先用winrar解压到c:php4下,再将目录下的所有dll文件拷到c;winntsystem32下,不要覆盖已有的dll文件;接着将目录下的php.exe和php.ini两个文件拷到c:winnt下; 修改php.ini中的 ; cgi.force_redirect = 1 为 cgi.force_redirect = 0 保存. 打开“开始”按钮下的“程序”=》“管理工具”=》“internet服务管理器”,选中“默认web站点”,打开它的“属性”窗口。在“web站点”页下,改变“IP地址”:“全部未分配”为“(您机子的ip地址,例如:202.195.243.131)”;“TCP端口”为“80”。
 接着,选中“主目录”页,单击“应用程序设置”下的“配置”按钮后,在新窗口下单击“添加”按钮;在“可执行文件”中输入“C:WINNTphp.exe %s %s”,在“扩展名”中输入“.php”,点击“确定”。
 接着,选中“ISAPI筛选器”页,单击“添加”按钮;在“筛选器名称”中输入“php”,在“可执行文件”中输入“C:WINNTsystem32php4isapi.dll”,点击“确定”。
 接着,选中“文档”页,单击“添加”按钮;在“默认文档名”中输入“index.php”,点击“确定”,并将其提高到最高级。您还可以添加常用的php文件名,如:“default.phtml”、“index.php3”等。
 关闭所有窗口,重启系统后,可打开IE浏览器进行测试。
PHP 怎么这么红
    最近 PHP(Personal Hypertext Preprocessor) 似乎已经成了这一两年来 Linux/Unix 上最广为大家所使用的网页处理语言╋它的方便、强大功能与 OpenSource 的特性使得它正逐渐侵蚀到传统 CGI 甚至是 MicroSoft ASP(Active Server Page)的市场╋几乎各大网站征招人才莫不以会 PHP 作为基本条件。
    PHP 确实有这个资格可以这么红╋原因有下面数点 :
    PHP 是 OpenSource 软件╋完全免费╋可以自由散布╋因此吸引了极多的人来使用╋也因为如此╋吸引到了商业公司为其发展更好的引擎与最佳化软件(请参考 http://www.zend.com/)。
    PHP 本身非常简单易懂╋浅显的指令语法╋外加一些基本的对象导向处理能力╋让新手足以在最短时间内学会。
    PHP 提供了相当多的功能╋包含了数学处理、字符串处理、网络相关功能、各种数据库的支持、影像处理功能、有为数众多的发展者正为 PHP 发展各式各样的新功能╋扩充性极佳。
    PHP 非常容易与 Apache 相结合╋作为 Apache 的模块来使用╋设定安装上相当简单╋也因为 Apache 目前已经占据了 Web Server 全球 60% 的市场╋PHP 自然而然成为 Apache 最佳搭配。
    不过╋这次要讲的主题不是 PHP 在网页设计上的应用╋而是 PHP 在 Shell Script 上的应用╋一般所知的 Shell Script 大约就是 tcsh、bash、perl 或是 python 这几类语言╋我所要谈的就是将 PHP 当成 Shell Script 来使用。
    PHP 执行档的安装
    一般 PHP 作为网页处理语言都是要编译成 Apache 的模块╋这里当然不么做╋也因此编译起来很简单╋只要以 root 的身分进行如下动作 :
    解开 php-3.0.xx.tar.gz
    cd php
    configure
    make
    编译完之后╋在 php 目录下有一个可执行档╋档名为 php╋将它 copy 到 /usr/local/bin 下即可。注意╋如果档案太大╋可以使用 strip 指令将 php 的方式将不必要的信息去除╋这样档案就会小得多了。
    第一个程序
    开始撰写我们的第一个 PHP Shell Script 程序╋这个例子印出 "Hello world !" :
[!--infotagslink--]

相关文章

  • PHP session_start()很慢问题分析与解决办法

    本文章来给各位同学介绍一下关于PHP session_start()很慢问题分析与解决办法,希望碰到此问题的同学可进入参考。 最近在做东西的时候发现一个问题 有一个接口挂...2016-11-25
  • Rstudio中安装package出现的问题及解决

    这篇文章主要介绍了Rstudio中安装package出现的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
  • C#路径,文件,目录及IO常见操作汇总

    这篇文章主要介绍了C#路径,文件,目录及IO常见操作,较为详细的分析并汇总了C#关于路径,文件,目录及IO常见操作,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • PHP分布式框架如何使用Memcache同步SESSION教程

    本教程主要讲解PHP项目如何用实现memcache分布式,配置使用memcache存储session数据,以及memcache的SESSION数据如何同步。 至于Memcache的安装配置,我们就不讲了,以前...2016-11-25
  • Visual Studio 2015下载和安装图文教程

    这篇文章主要为大家详细介绍了Visual Studio 2015下载和安装图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-22
  • 关于Visual Studio无法打开源文件"stdio.h"问题

    这篇文章主要介绍了关于Visual Studio无法打开源文件"stdio.h"问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-04-03
  • 详解C#中的session用法

    这篇文章主要介绍了C#中的session用法 ,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • Python3使用Selenium获取session和token方法详解

    这篇文章主要介绍了Python3使用Selenium获取session和token方法详解,需要的朋友可以参考下...2021-02-17
  • C#客户端程序Visual Studio远程调试的方法详解

    这篇文章主要给大家介绍了关于C#客户端程序Visual Studio远程调试的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2020-06-25
  • 编程新手必须掌握的:session与cookie的区别

    session和cookie是网站浏览中较为常见的两个概念,也是比较难以辨析的两个概念,但它们在点击流及基于用户浏览行为的网站分析中却相当关键。基于网上一些文章和资料的参阅,及作者个人的应用体会,对这两个概念做一个简单的阐述...2013-09-11
  • PHP中如何使用session实现保存用户登录信息

    session在php中是一个非常重要的东西,像我们用户登录一般都使用到session这个东西,相对于cookie来说session 要安全很多,同时我们购物车经常使用session来做临时的记录保存哦。使用session保存页面登录信息1、数据库连接...2015-10-21
  • Vue使用axios引起的后台session不同操作

    这篇文章主要介绍了Vue使用axios引起的后台session不同操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-14
  • Android Studio真机无线连接USB设备调试运行详解流程

    你在Android Studio写app时是否也有想过如果可以不用数据线连接手机调试运行就好了?如果需要取出数据线插接的话我肯定是嫌麻烦的,但是模拟器有时候需要测试一些需要硬件支持的功能时又不管用,所以最好的测试还是在真机上,本篇教你扔掉数据线来无线调试...2021-11-04
  • 解决Visual Studio 2012 Update 4 RC启动调试失败的方案

    这篇文章主要为大家详细介绍了Visual Studio 2012 Update 4 RC启动调试失败的解决方案,感兴趣的小伙伴们可以参考一下...2021-09-22
  • TypeScript前端上传文件到MinIO示例详解

    这篇文章主要为大家介绍了TypeScript前端上传文件到MinIO示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...2022-10-12
  • php中session常见问题分析

    PHP的session功能,一直为许多的初学者为难。就连有些老手,有时都被搞得莫名其妙。本文,将这些问题,做一个简单的汇总,以便大家查阅。 1. 错误提示 引用 代...2016-11-25
  • Android Studio Build Output 栏内汉字出现乱码的解决方案

    先上个图就是图中红框内显示的毛病,Build Output栏中的汉字出现了乱码,其它地方都没有乱码。移动开发...2020-05-02
  • AndroidStudio升级4.1后启动失败Plugin问题解决

    这篇文章主要介绍了AndroidStudio升级4.1后启动失败Plugin问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-10-18
  • php设置session生存时间详解

    要设置php生存有效时间我们可以利用session_set_cookie_params函数或修改php.ini文件哦,下面小编来介绍一下。 第一种方法:session_set_cookie_params 函数原型 voi...2016-11-25
  • Android Studio 配置忽略文件的方法实现

    这篇文章主要介绍了Android Studio 配置忽略文件的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-10-14