Ajax 和 XML: 将 Ajax 用于聊天-使用 Ajax 和 PHP 创建聊天应用程序

 更新时间:2016年11月25日 16:08  点击:1701
了解如何使用 Asynchronous JavaScript™ + XML (Ajax) 和 PHP 在 Web 应用程序中建立聊天系统。您的客户不需要下载或安装任何专门的即时消息通讯软件,就能和您及其他客户讨论网站的内容。

Web 2.0 一词出现以来,开发人员都在说社区。不论您是否认为这有点夸大其辞,但让用户或读者能够方便地实时讨论页面主题或者销售的产品,这一想法还是很吸引人的。但是怎么办呢?能否在推销产品的页面中加入聊天,而不必让客户安装任何特殊的软件包括 Adobe Flash Player 呢?当然!实践证明,用免费的现成工具如 PHP、MySQL、动态 HTML (DHTML)、Ajax 和 Prototype.js 库就能完全做到。

不再罗嗦了,让我们立即开始吧。 


本文转自:IBM developerWorks 中国
请点击此处查看全文

http://topic.111cn.net/u/20071202/16/e53996de-4725-4dfa-bf14-c197afeed93c.html

 

 



<?php
class engage
{
    
public function getArray()
    {
        
$arr1 = array (
        
''0'' => array (''fid'' => 1, ''tid'' => 1, ''name'' => ''Name1'' ),
        
''1'' => array (''fid'' => 1, ''tid'' => 2 , ''name'' => ''Name2'' ),
        
''2'' => array (''fid'' => 1, ''tid'' => 5 , ''name'' => ''Name3'' ),
        
''3'' => array (''fid'' => 1, ''tid'' => 7 , ''name'' => ''Name4'' ),
        
''4'' => array (''fid'' => 3, ''tid'' => 9, ''name'' => ''Name5'' )
        );
        
$arr2 = array();
        
foreach ($arr1 as $key => $value)
        {
            
$arr2[$value[''fid'']][] = array(''tid'' => $value[''tid''],''name'' => $value[''name'']);
        }
        
return $arr2;
    }
    
//print_r($arr2);
    //$eString = ''open_door'';

    public function getString($eString = null)
    {
        
$eString = explode(''_'',$eString);
        
$eString = array_map("ucfirst",$eString);
        
$eString = implode($eString,'''');
        
return  $eString;
    }
    
/**
     * 冒泡排序 
     * @return unknown
     
*/
    
public function getBubble()
    {
        
$isOver = false;
        
$bubbleArray =  array(10,2,36,14,10,25,23,85,99,45);
        
$bubbleResult = $bubbleArray;
        
do{
            
$bubbleArray = $bubbleResult;
            
$isOver = true;
            
foreach ($bubbleArray as $key => $value)
            {
                
if ($value < $bubbleResult[$key-1])
                {
                    
$bubbleResult[$key]=$bubbleResult[$key-1];
                    
$bubbleResult[$key-1]=$value;
                    
$isOver = false;
                }
            }
        }
while (!$isOver);
        
return $bubbleResult;
    }

}
$engage = new engage();
print_r($engage->getArray());
echo $engage->getString(''make_by_id'');
print_r($engage->getBubble());
?>
</pre>

 

 



<?php
/**
 * 第二题正则替换实现.
 *
 
*/
function getString($eString = null)

    
$eString = preg_replace(array("/(^[a-z]{1}|_[a-z]{1})/e",''/_/''),
                            
array("strtoupper(''1'')",''''),
                            
$eString);
    
return  $eString;
}
?>


< 忙了一整天都没有成果,突然想起看一下appserv的配置文件,果然通过了。欢喜中。。。记下来先。
使用软件版本:
apache_2.2.6-win32-x86-openssl-0.9.8e.msi
mysql-5.0.45-win32.exe
php-5.2.5-Win32.zip
phpMyAdmin-2.11.2.2-all-languages.zip

1.安装apache到d:serverapache2.2
2.安装MySQL到d:servermysql5
3.解压php到d:serverphp
4.拷贝php文件夹下的libmysql.dll到c:windowssystem32目录下;
5.拷贝php文件夹下的php.ini-recommended到c:windows下并改名为php.ini
--------------------------------------------------------------------
6.打开apache的配置文件httpd.conf
    a.在有许多LoadModule处添加一行:
        LoadModule php5_module d:/Serverphpphp5apache2_2.dll
    b.修改DocumentRoot "e:/www" 这是放置网页的根目录,自己想设置在什么地方就设置在什么地方。
    c.# This should be changed to whatever you set DocumentRoot to.
        <Directory "e:/www">
       找到这里以后,把原来<Directory "">中的路径改成和b一样的路径。
    d.在DirectoryIndex index.html处添加index.htm index.php
    e.最后在<IfModule></IfModule>附近添加再添加一段
        <IfModule mod_php5.c>
              AddType application/x-httpd-php .php
              AddType application/x-httpd-php .php3
              AddType application/x-httpd-php-source .phps
        </IfModule>
------------------------------------------------------------------------
7.打开在c:windows下的php.ini文件
    a.将一下语句前的;符号去掉
        extension=php_dbase.dll
        extension=php_gd2.dll
        extension=php_mbstring.dll
        extension=php_mysql.dll
        extension=php_mysqli.dll
        extension=php_sockets.dll
 &nbs 随着adobe的FLEX和ROMTING的开源化又引起一场的RIA风波,我作为传统的WEB开发人员被其深深的吸引,作为web开发人员很关注flash如何和后台连接,在网上苦苦寻找终于发现了,在AS3下如何和后台通信,其实FLASH ROMTING 和JAVA DWR设计很相似都是通过中间来转化后台和前台对象,今天我就以一个金典的HELLOWORLD程序来展现这个框架。
        首先到http://www.amfphp.org下 什么是 GUID?

全球唯一标识符 (GUID) 是一个字母数字标识符,用于指示产品的唯一性安装。在许多流行软件应用程序(例如 Web 浏览器和媒体播放器)中,都使用 GUID。

GUID 的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。例如:6F9619FF-8B86-D011-B42D-00C04FC964FF 即为有效的 GUID 值。

为什么要用GUID?

世界上的任何两台计算机都不会生成重复的 GUID 值。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。在 Windows 平台上,GUID 应用非常广泛:注册表、类及接口标识、数据库、甚至自动生成的机器名、目录名等。

asp下生成guid的代码
<%

Dim objTypeLib

Set ōbjTypeLib = CreateObject("scrīptlet.TypeLib")

Response.Write objTypeLib.Guid

%>
php下生成guid要用到class .
guid.class.guid
<?
class  System
{
    function  currentTimeMillis()
      {
          list($usec,  $sec)  =  explode("  ",microtime());
          return  $sec.substr($usec,  2,  3);
      }
}
class  NetAddress
{
      var  $Name  =  ''localhost'';
      var  $IP  =  ''127.0.0.1'';
      function  getLocalHost()  //  static
        {
           $address  =  new  NetAddress();
           $address->Name  =  $_ENV["COMPUTERNAME"];
           $address->IP  =  $_SERVER["SERVER_ADDR"];
            return  $address;
        }
      function  toString()
       {
           return  strtolower($this->Name.''/''.$this->IP);
        }
}
class  Random
{
    functi
[!--infotagslink--]

相关文章

  • C#开发Windows窗体应用程序的简单操作步骤

    这篇文章主要介绍了C#开发Windows窗体应用程序的简单操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-12
  • 图解PHP使用Zend Guard 6.0加密方法教程

    有时为了网站安全和版权问题,会对自己写的php源码进行加密,在php加密技术上最常用的是zend公司的zend guard 加密软件,现在我们来图文讲解一下。 下面就简单说说如何...2016-11-25
  • ps怎么使用HSL面板

    ps软件是现在很多人都会使用到的,HSL面板在ps软件中又有着非常独特的作用。这次文章就给大家介绍下ps怎么使用HSL面板,还不知道使用方法的下面一起来看看。 &#8195;...2017-07-06
  • Plesk控制面板新手使用手册总结

    许多的朋友对于Plesk控制面板应用不是非常的了解特别是英文版的Plesk控制面板,在这里小编整理了一些关于Plesk控制面板常用的使用方案整理,具体如下。 本文基于Linu...2016-10-10
  • 使用insertAfter()方法在现有元素后添加一个新元素

    复制代码 代码如下: //在现有元素后添加一个新元素 function insertAfter(newElement, targetElement){ var parent = targetElement.parentNode; if (parent.lastChild == targetElement){ parent.appendChild(newEl...2014-05-31
  • jQuery 1.9使用$.support替代$.browser的使用方法

    jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support 。 在更新的 2.0 版本中,将不再支持 IE 6/7/8。 以后,如果用户需要支持 IE 6/7/8,只能使用 jQuery 1.9。 如果要全面支持 IE,并混合...2014-05-31
  • 使用percona-toolkit操作MySQL的实用命令小结

    1.pt-archiver 功能介绍: 将mysql数据库中表的记录归档到另外一个表或者文件 用法介绍: pt-archiver [OPTION...] --source DSN --where WHERE 这个工具只是归档旧的数据,不会对线上数据的OLTP查询造成太大影响,你可以将...2015-11-24
  • 使用GruntJS构建Web程序之构建篇

    大概有如下步骤 新建项目Bejs 新建文件package.json 新建文件Gruntfile.js 命令行执行grunt任务 一、新建项目Bejs源码放在src下,该目录有两个js文件,selector.js和ajax.js。编译后代码放在dest,这个grunt会...2014-06-07
  • 如何使用php脚本给html中引用的js和css路径打上版本号

    在搜索引擎中搜索关键字.htaccess 缓存,你可以搜索到很多关于设置网站文件缓存的教程,通过设置可以将css、js等不太经常更新的文件缓存在浏览器端,这样访客每次访问你的网站的时候,浏览器就可以从浏览器的缓存中获取css、...2015-11-24
  • C#注释的一些使用方法浅谈

    C#注释的一些使用方法浅谈,需要的朋友可以参考一下...2020-06-25
  • MySQL日志分析软件mysqlsla的安装和使用教程

    一、下载 mysqlsla [root@localhost tmp]# wget http://hackmysql.com/scripts/mysqlsla-2.03.tar.gz--19:45:45-- http://hackmysql.com/scripts/mysqlsla-2.03.tar.gzResolving hackmysql.com... 64.13.232.157Conn...2015-11-24
  • 安装和使用percona-toolkit来辅助操作MySQL的基本教程

    一、percona-toolkit简介 percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括: 检查master和slave数据的一致性 有效地对记录进行归档 查找重复的索...2015-11-24
  • 将c#编写的程序打包成应用程序的实现步骤分享(安装,卸载) 图文

    时常会写用c#一些程序,但如何将他们和photoshop一样的大型软件打成一个压缩包,以便于发布....2020-06-25
  • php语言中使用json的技巧及json的实现代码详解

    目前,JSON已经成为最流行的数据交换格式之一,各大网站的API几乎都支持它。我写过一篇《数据类型和JSON格式》,探讨它的设计思想。今天,我想总结一下PHP语言对它的支持,这是开发互联网应用程序(特别是编写API)必须了解的知识...2015-10-30
  • 使用jquery修改表单的提交地址基本思路

    基本思路: 通过使用jquery选择器得到对应表单的jquery对象,然后使用attr方法修改对应的action 示例程序一: 默认情况下,该表单会提交到page_one.html 点击button之后,表单的提交地址就会修改为page_two.html 复制...2014-06-07
  • PHP实现无限级分类(不使用递归)

    无限级分类在开发中经常使用,例如:部门结构、文章分类。无限级分类的难点在于“输出”和“查询”,例如 将文章分类输出为<ul>列表形式; 查找分类A下面所有分类包含的文章。1.实现原理 几种常见的实现方法,各有利弊。其中...2015-10-23
  • php类的使用实例教程

    php类的使用实例教程 <?php /** * Class program for yinghua05-2 * designer :songsong */ class Template { var $tpl_vars; var $tpl_path; var $_deb...2016-11-25
  • 双冒号 ::在PHP中的使用情况

    前几天在百度知道里面看到有人问PHP中双冒号::的用法,当时给他的回答比较简洁因为手机打字不大方便!今天突然想起来,所以在这里总结一下我遇到的双冒号::在PHP中使用的情况!双冒号操作符即作用域限定操作符Scope Resoluti...2015-11-08
  • 浅析Promise的介绍及基本用法

    Promise是异步编程的一种解决方案,在ES6中Promise被列为了正式规范,统一了用法,原生提供了Promise对象。接下来通过本文给大家介绍Promise的介绍及基本用法,感兴趣的朋友一起看看吧...2021-10-21
  • PHP mysql与mysqli事务使用说明 分享

    mysqli封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法。应用比较多的地方是 mysqli的事务。...2013-10-02