当前位置:  编程技术>php
本页文章导读:
    ▪PHP脚本的10个技巧(8)       PHP和XML PHP包含支持Expat 解析器的可选XML扩展。PHP中和XML相关的函数可以让你创建一个解析器来处理有效的XML文档。如果你在使用的Apache版本在1.3.7之后,那你就不需要其他附加的函数库了。.........
    ▪用PHP实现小型站点广告管理       图片链接广告大概是最为常用的网络广告模式,但是多条广告的动态随机显示可不是那么简单的事情。PHP的文件上传函数提供了在这块468x60像素的区域(网页广告的标准尺寸)实现能够根据.........
    ▪一个域名查询的程序       (主要用了两个字符串函数implode()和explode) 我制作的域名查询的源代码,主要用了两个字符串函数implode()和explode,利用这两个函数的切割字符串的强大功能,可以查询.com,.net.,org.,cc.,tv下的域.........

[1]PHP脚本的10个技巧(8)
    来源: 互联网  发布时间: 2013-11-30
PHP和XML

PHP包含支持Expat 解析器的可选XML扩展。PHP中和XML相关的函数可以让你创建一个解析器来处理有效的XML文档。如果你在使用的Apache版本在1.3.7之后,那你就不需要其他附加的函数库了。而你所需要做的只是配置PHP--with-xml。

PHP手册中有好几个创建基于PHP的XML解析器优秀实例。此外,New Riders图书Web Application Development with PHP 4.0也对结合PHP的XML用法有详尽的阐述,该数的作者之一已经在Zend.com 上编写过这方面相当多的指南。

就象Java和COM支持一样,PHP对XML的支持还处于其幼年期,但目前这一领域成长很快。如果你早具有了Expat或LibXML方面的经验,你可以跳过以上的内容直接利用你的专门知识。

    
[2]用PHP实现小型站点广告管理
    来源: 互联网  发布时间: 2013-11-30
图片链接广告大概是最为常用的网络广告模式,但是多条广告的动态随机显示可不是那么简单的事情。PHP的文件上传函数提供了在这块468x60像素的区域(网页广告的标准尺寸)实现能够根据权值大小而随机显示广告的解决方案,从而避免了开发FTP程序或是ASP和Perl CAI中需要外挂扩展才能实现此项功能的弊端。

  本例在PHP4+MySQL+Apache for Win9x/2000下调试通过,共包括两部分:用来增加新广告的程序AddNewAd.php3以及显示广告的程序ShowAd.php3,都存放在服务器PHP文件目录下的“test/guanggao/”目录中。在guanggao目录中建立一个存放广告链接图片的子目录“adbanner/”。下面我们按步骤进行分析。

1.首先,建立MySQL数据库:guanggao

  在Windows环境下,建立一个MySQL空数据库很简单,因为每个数据库都是存在于mysql/data/目录下的一个子目录,所以只要在该目录下新建子目录guanggao就可以了,这时数据库内还没有任何表和数据。

2.建立新增广告程序:AddNewAd.php3

  设计思路:其中先用表单得到用户的新广告信息;然后用PHP函数copy()将链接图片(banner)文件上传到服务器adbanner目录下;最后将图片文件名、广告网址、说明、加权信息等写入建立的MySQL数据表ad中。该程序代码如下:

  # AddNewAd.php3——增添新的广告 #

增添新广告

    //表单用来输入新增广告信息,并交给下面的PHP程序处理;
    //其中,加权值priority数字愈大,载入页面图片出现的机率就愈高,默认为1。


    广告 Banner:  

    广告网址URL:  

    图片链接说明ALT:  

    显示加权:  

     


    //处理表单数据的PHP程序;
         //图片banner名和链接地址不能为空;
    if (( banner!="") & ( url!="")) {
    //若广告链接和图片名已被使用,必须另选;
    if (file_exists("adbanner/". banner_name)) {
    echo "广告图片. banner_name.已被使用,请另选!";
    exit;
    };
    //上传链接图片文件名到adbanner目录;
    copy( banner,"adbanner/". banner_name);
   //连接MySQL数据库;
     connection = mysql_connect();  
   //选择数据源guanggao,执行查询;;
   mysql_select_db("guanggao", );  
    query="SELECT * FROM ad";
    result=mysql_query( query);
   //如果数据表ad不存在,则按以下结构创建新数据表ad;
   if(!result){
   mysql_query("
   create table ad(
   url varchar(100) not null,
   banner varchar(150) not null,
   alt varchar(100) null,
   priority  tinyint(4) default '1' not null  
   )") or die(mysql_error());  
   }
   //向数据表ad中插入来自于表单的新数据;
    query="insert into ad(url, banner, alt, priority) values(' url', ' banner_name', '
  alt', ' priority')";
   //插入成功则显示以下信息;
    try=mysql_query( query);
   if( try){
   echo "一条广告新增完成,详细信息:
";
   echo "
";
   echo "广告网址:  url
广告链接说明:  alt
显示加权:  priority ";
    }
    }
    ?>

3.建立显示广告程序:ShowAd.php3

  设计思路:得到数据库表中所有各列信息分别存到相应的一维数组中,将所有广告的权值相加得到一个最大随机数,每次载入页面用srand() 产生一个随机树种子,再用rand()函数产生一个从1到最大随机数之间的一个随机数,然后按照一定的规则随机显示不同广告条,权值越大被显示的机会越大。

    # ShowAd.php3——随机显示广告 #
         //连接选择数据库;
     connection = mysql_connect();  
    mysql_select_db("guanggao",  connection);
    //执行查询得到广告条数;
     query="SELECT url, banner, alt, priority FROM ad where priority > 0";
     result=mysql_db_query("guanggao",  query);
     numrows=mysql_num_rows( result);
   //使用mysql_fetch_object()函数获取有用的列信息并存到相应数组中;
    while( row = mysql_fetch_object( result)) {
     adurl[]= row->url;
     adbanner[]= row->banner;
     adalt[]= row->alt;
     adpriority[]= row->priority;
    }
    //初始化中间变量;
     numcheck= numrows;
     i= pricount=0;
    //得到最大随机数;
    while( numcheck) {
     pricount+= adpriority[ i];
     i++; numcheck--;
   }
   //程序执行时的百万分之一秒产生随机数种子;
   srand((double)microtime()*1000000);
   //得到1到最大随机数之间的一个随机数;
    pri = rand(1, pricount);
   //中间变量清零;
     pricount=0;
    //按加权值不同,产生用来显示广告的、元素为字串的数组;
    for(  i=0;  i< numrows-1;  i++) {
     pricount +=  adpriority[ i];
    if ( pri <=  pricount) {
     ad[]="";
    }
    }
    //显示广告,权值越大,显示机会越大;
    echo  ad[0];
    ?> 

    
[3]一个域名查询的程序
    来源: 互联网  发布时间: 2013-11-30
(主要用了两个字符串函数implode()和explode)
我制作的域名查询的源代码,主要用了两个字符串函数implode()和explode,利用这两个函数的切割字符串的强大功能,可以查询.com,.net.,org.,cc.,tv下的域名whois。
<?php
echo '<center><form>';
echo '<input type="text" name="string">';
echo '<input type="submit" value="查询">';  
echo "</form>";
if (isset($string))  
{
$url = "http://networksolutions.com/cgi-bin/whois/whois?STRING=".$string."&STRING=Search";  
$str = implode("",file($url));        
$aa= explode("<pr",$str);      
$bb=$aa[1];
$cc=explode("re>",$bb);
$dd= $cc[0];
$ee=explode("e>",$dd);
$ff=implode("<pre>",$ee);
$hh=explode("</p",$ff);
$jj=implode("</pre>",$hh);
$kk=explode("Registrant",$jj);
$ll=implode("<font color=red>注册人</font>",$kk);
$mm=explode("Domain Name",$ll);
$nn=implode("<font color=red>域名</font>",$mm);
$oo=explode("Administrative Contact",$nn);
$pp=implode("<font color=red>管理联系人</font>",$oo);
$qq=explode("Technical Contact",$pp);
$ii=implode("<font color=red>技术联系人</font>",$qq);
$ss=explode("Record last updated on",$ii);
$tt=implode("<font color=red>最后更新日期:</font>",$ss);
$uu=explode("Record expires on",$tt);
$vv=implode("<font color=red>域名到期日期:</font>",$uu);
$ww=explode("Record created on",$vv);
$xx=implode("<font color=red>域名注册日期:</font>",$ww);
$yy=explode("Database last updated on",$xx);
$zz=implode("<font color=red>数据库更新日期:</font>",$yy);
$aaa=explode("Record updated on",$zz);
$bbb=implode("<font color=red>记录更新日期:</font>",$aaa);
$ccc=explode("Admin Name",$bbb);
$ddd=implode("<font color=red>管理联系人</font>",$ccc);
$eee=explode("Tech Name",$ddd);
$whois=implode("<font color=red>技术联系人</font>",$eee);
}
echo '<center><table width="50%" border="0" cellspacing="1" cellpadding="0" bgcolor="#FF6666">';
echo '<tr bgcolor="#ffcc33">';
echo "<td>";
echo '<div align="center">域名whois查询系统</div>';
echo "</td>";
echo "</tr>";
echo '<tr bgcolor="#FFFFFF">';  
echo "<td>";
echo '<div align="left">';
echo "<br>";
echo $whois;
echo "</div>";
echo "</td>";
echo "</tr>";
echo '<tr bgcolor="#ffcc33">';
echo "<td>";
echo '<div align="center"><a href="http://www.phpcode.net"><font face="Verdana, Arial, Helvetica, sans-serif">PHPcode.net</font></a></div>';
echo "</td>";
echo "</tr>";
echo "</table>";
?>
 

    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php提交表单到当前页面、提交表单后页面重定... iis7站长之家
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3