php WEB上创建网站

 更新时间:2016年11月25日 16:30  点击:2298
我们用php来控制iis并且,在WEB上创建网站,管理删除等功能哦。

<?
 

# PHP控制站点程序
 #
 # 编写人:韩湘子
 #
 # 邮箱:hanxiangzi@gmail.com
 #
 # MSN:hanxiangzi@gmail.com
 #
 # QQ:220670        
 #
 # 欢迎大家互相联系讨论
?> 
<link href="image/css.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
body {
 background-color: #D4D0C8;
}
-->
</style>
<table width="980" border="0" cellpadding="5" cellspacing="1" bgcolor="#000000">
  <tr height=26>
    <td width="177" bgcolor="#E8E6E1">站点名称</td>
    <td width="229" bgcolor="#E8E6E1">绑定域名</td>
    <td width="210" bgcolor="#E8E6E1">网站目录</td>
    <td width="116" bgcolor="#E8E6E1">标识符</td>
    <td width="97" bgcolor="#E8E6E1">站点状态</td>
    <td colspan="2" bgcolor="#E8E6E1"><div align="center">管理</div></td>
  </tr>
<?php

 $LocalHostObject = New Com ("IIS://localhost/w3svc") ;

 

 //删除站点
 iF($Opt=="del"){
  $LocalHostObject->Delete("IIsWebServer",$ServerID);
  echo "<script>window.location='3.php';</script>";
 }

 //启动和停止站点
 iF($Opt=="Status"){
  $Site2 = New Com ("IIS://LocalHost/w3svc/".$ServerID);
  $Site2->$Status;
 }


 //创建新站点
 iF($Submit){

  //创建目录
//  mkdir(stripslashes($ServerDir));


  //添加用户
  $usernameobj = New Com("WinNT://iim");
  $user = $usernameobj->Create("user",$ServerComm);


  //设置用户名
  $user->SetInfo();

  //设置密码
  $user->SetPassword($ServerComm);
 // $user->UserFlags('&H0040');
  $user->SetInfo();

  $usernameobj1 = New Com("WinNT://iim/".$ServerComm);
  $user->Description ="本用户名由iiM在线管理系统创建.";
  $user->SetInfo();

  #就差一个把用户加载到目录上的权限问题了################################################################################################

 


  //创建站点


  $iissite = $LocalHostObject->Create("IIsWebServer",$ServerID);

  $aa = explode(",",$ServerBin);

//  //先设定站点的基本资料
  $iissite->ServerBindings = $aa;
  $iissite->ServerComment = $ServerComm;
  $iissite->AnonymousUserName = $ServerComm;
  $iissite->AnonymousUserPass = $ServerComm;
  $iissite->KeyType = "IIsWebServer";
  $iissite->EnableDefaultDoc = True;
  $iissite->DefaultDoc = "default.htm,default.asp,index.htm,index.html";
  $iissite->LogFileDirectory = "d:\";
  $iissite->MaxBandwidth = '102400';
  $iissite->MaxConnections = '100';
  $iissite->LogType = "0";
  $iissite->AppIsolated = 0;
  $iissite->AuthBasic = False;
  $iissite->AuthNTLM = True;
  $iissite->HttpErrors = "404,*,FILE,C:WINDOWShelpiisHelpcommon404b.htm";
  //加上脚本映射
  foreach($scriptmapsubmit as $script){
   Switch($script){
    Case "asp";
     $sc[] = ".asa,C:WINDOWSsystem32inetsrvasp.dll,5";
     $sc[] = ".asp,C:WINDOWSsystem32inetsrvasp.dll,5";
     break;
    Case "php";
     $sc[] = ".php,E:softphp-5.2.3-Win32(1)php5isapi.dll,5";
     $sc[] = ".php3,E:softphp-5.2.3-Win32(1)php5isapi.dll,5";
     $sc[] = ".php4,E:softphp-5.2.3-Win32(1)php5isapi.dll,5";
     $sc[] = ".php5,E:softphp-5.2.3-Win32(1)php5isapi.dll,5";
     $sc[] = ".php6,E:softphp-5.2.3-Win32(1)php5isapi.dll,5";
     break;
    Case "cgi";
     echo "cgi<br>";
     break;
    Case "aspnet";
     echo "asp.net<br>";
     break;
    Case "html";
     echo "html";
     break;

   }
   
  }
  $iissite->ScriptMaps = $sc;
  $iissite->SetInfo();

  //再设定站点目录
  $iisdir = $iissite->Create("IIsWebVirtualDir","ROOT");
  $ServerDir1 = stripslashes($ServerDir);
  $iisdir->Path = $ServerDir1;
  $iisdir->AppCreate(True) ;
  $iisdir->AccessRead = True;
  $iisdir->EnableDirBrowsing = False;

  //允许父路径,也就是允许.
  $iisdir->AspEnableParentPaths = True;
  $iisdir->AccessScript = True;
  $iisdir->AppFriendlyName = "默认应用程序";
  $iisdir->SetInfo();
 
  //启动站点
  $Site1->Start;

  echo "<script>window.location='3.php';</script>";

 }

 //列出所有网站
 ForEach($LocalHostObject as $WebSiteName){
  iF($WebSiteName->Class == "IIsWebServer"){
   $Site = New Com ("IIS://localhost/w3svc/".$WebSiteName->Name) ;
   //站点状态
   $SiteStatus1 = $Site->Status ;
   Switch($SiteStatus1){
    Case "2" ;
     $SiteStatus = "<a href=?Opt=Status&Status=stop&ServerID=$Site->Name>正常</a>" ;
     break;
    Case "6" ;
     $SiteStatus = "<a href=?Opt=Status&Status=start&ServerID=$Site->Name><font color=red>暂停</font></a>" ;
     break;
    Case "4" ;
     $SiteStatus = "<a href=?Opt=Status&Status=start&ServerID=$Site->Name><font color=red>停止</font></a>" ;
     break;
   }


?>
  <tr height=26>
    <td bgcolor="#F4F3F2" ><?php Echo $Site->ServerComment ; ?></td>
    <td bgcolor="#F4F3F2">
<?php
 //得出绑定的域名
   $BinDings = $Site->ServerBinDings;
   ForEach($BinDings as $BinDing){
    List($ip, $Port, $Domain) = Explode(":",$BinDing);
    Echo $Domain ."<br>";
   }

?> </td>
    <td bgcolor="#F4F3F2">
<?
 //网站目录

 $getRootDir = $Site->GetObject("IIsWebVirtualDir","ROOT");
 echo $getRootDir->Path;
?></td>
    <td bgcolor="#F4F3F2"><?php Echo $Site->Name ; ?></td>
    <td bgcolor="#F4F3F2"><?php Echo $SiteStatus ; ?></td>
    <td width="40" bgcolor="#F4F3F2"><div align="center"><a href=?Opt=del&ServerID=<?php Echo $Site->Name?>>删除</a></div></td>
    <td width="33" bgcolor="#F4F3F2"><div align="center"><a href=33.php?ServerID=<?php Echo $Site->Name ; ?>>管理</a></div></td>
  </tr>
<?php
  }
 }
 unset($LocalHostObject);
 unset($Site);
 unset($Site1);
 unset($Site2);
?>
</table>
 <form id="form1" name="form1" method="post" action="">
   <table width="100%" border="0" cellspacing="0" cellpadding="3">
     <tr>
       <td width="8%">站点名称</td>
       <td width="92%"><input type="text" name="ServerComm" /></td>
     </tr>
     <tr>
       <td>站点目录 </td>
       <td><input type="text" name="ServerDir" value="F:user"/></td>
     </tr>
     <tr>
       <td>站点ID号 </td>
       <td><input type="text" name="ServerID"/></td>
     </tr>
     <tr>
       <td>Serverbin</td>
       <td><textarea name="ServerBin" cols="80" rows="5"></textarea></td>
     </tr>
     <tr>
       <td>脚本映射</td>
       <td><input name="scriptmapsubmit[]" type="checkbox" id="scriptmapsubmit" value="asp" />
ASP
  <input name="scriptmapsubmit[]" type="checkbox" id="scriptmapsubmit" value="php" />
PHP
<input name="scriptmapsubmit[]" type="checkbox" id="scriptmapsubmit" value="cgi" />
CGI
<input name="scriptmapsubmit[]" type="checkbox" id="scriptmapsubmit" value="aspnet" />
ASP.NET
<input name="scriptmapsubmit[]" type="checkbox" id="scriptmapsubmit" value="html" checked="checked" />
HTML</td>
     </tr>
     <tr>
       <td><input type="submit" name="Submit" value="Submit" /></td>
       <td>&nbsp;</td>
     </tr>
   </table>
</form>
 

php控制iis设置默认文档,我们前面讲过了用php 的new com接口来设置iis的默认文档。

<?
 # PHP控制站点程序
 #
 # 编写人:韩湘子
 #
 # 邮箱:hanxiangzi@gmail.com
 #
 # MSN:hanxiangzi@gmail.com
 #
 # QQ:220670        
 #
 # 欢迎大家互相联系讨论
?> 
<link href="image/css.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
body {
 background-color: #D4D0C8;
}
-->
</style>
<?php

 $Site = New Com("IIS://Localhost/w3svc/".$ServerID);

 iF($Submit){
  $Site->DefaultDoc = $DefaultDocList;
  $Site->SetInfo();

 }
 
?>
<table width="100%" border="0" cellspacing="0" cellpadding="3">
  <tr>
    <td><a href="3.php"><strong>返回主机列表</strong></a></td>
  </tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="3">
  <tr>
    <td><a href="33.php?ServerID=<?php echo $ServerID;?>">返回主机管理</a></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<form action="?ServerID=<?php echo $ServerID;?>" method="POST">
请输入默认文档,以英文符号,隔开 <input type=input value="<?php echo $Site->DefaultDoc;?>" size=80 name="DefaultDocList"><input type="Submit" name="Submit" value="提交">
</form>

下面我们来看看用php开发的一款用来在网页上控制iis并且创建删除管理站点的php 在线创建站点的文件吧。

 

  <?php

 # PHP控制IIS的相关属性

 # 收集人:韩湘子

 # 邮箱:hanxiangzi@gmail.com

 # MSN:hanxiangzi@gmail.com

 # QQ:220670                                                                                           
 

 /*站点属性和使用方法*********************************************************/
 
  $LocalHostObject = New Com ("IIS://localhost/w3svc") ;

  $Site = $LocalHostObject->Create("IIsWebServer",站点标识符);

  //站点类型
  $Site->Class;

  //站点名称
  $Site->ServerComment;
 
  //站点绑定的IP:端口:域名
  $Site->ServerBinDings;

  //站点标识符
  $Site->Name;

  //获取站点主目录
  $Site->GetObject("IIsWebVirtualDir","ROOT");
  $Site->Path;

  //匿名访问时所使用的帐号
  $Site->AnonymousUserName;

  //匿名访问时所用帐号的口令
  $Site->AnonymousUserPass;

  //日志文件的目录
  $Site->LogFileDirectory;

  //是否允许FrontPage扩展
  $Site->FrontPageWeb = True;

  //站点的类型
  $Site->KeyType = "IIsWebServer";

  //站点描述
  $Site->bewrite;

  //允许使用的带宽,1024=1K,如果是100K的话等于102400
  $iissite->MaxBandwidth = '102400';

  //允许IIS同时多少个并发数,也就是平常说的IIS连接数
  $iissite->MaxConnections = '100';

  //是否开通日志
  $iissite->LogType = "0";  //0为不开通,1为开通W3C格式的日志

  //指定404错误,Url为当前站点的文件
  $iissite->HttpErrors = "404,0,Url,/404.htm";

  //指定404错误,FILE为当前服务器绝对路径的文件
  $iissite->HttpErrors = "404,0,FILE,/404.htm";

  //指定脚本映身,有关这下面的扩展名映射可以查看默认网站的一些,复制过来即可,下面是用PHP做的例子
  $iissite->ScriptMaps = ".php,E:softphp-5.2.3-Win32(1)php5isapi.dll,5,Get,HEAD";

 /*站点的默认文档*********************************************************/

  //是否允许默认文档
  $Site->EnableDefaultDoc = True;

  //站点的默认文档
  $Site->DefaultDoc = "index.php,index.html";  //以英文标点,隔开

 /*站点的运行状态*********************************************************/

  $SiteStatus = New Com ("IIS://LocalHost/w3svc/".$ServerID);

  //站点运行状态
  $SiteStatus->Status;
  
   //运行状态返回以下几个整数值:
  
   //1代表网站运行状态为“正在启动”
   $SiteStatus->Status = 1;

   //2代表网站运行状态为“已经启动”
   $SiteStatus->Status = 2;

   //3代表网站运行状态为“正在停止”
   $SiteStatus->Status = 3;

   //4代表网站运行状态为“已经停止”
   $SiteStatus->Status = 4;

   //5代表网站运行状态为“正在暂停”
   $SiteStatus->Status = 5;

   //6代表网站运行状态为“已经暂停”
   $SiteStatus->Status = 6;

   //7代表网站运行状态为“正在继续”,就是暂停后的继续运行
   $SiteStatus->Status = 7;

   //-1代表出错
   $SiteStatus->Status = -1;

  //启动站点
  $SiteStatus->Start;
 
  //停止站点
  $SiteStatus->Stop;

  //继续站点,就是暂停后的继续运行
  $SiteStatus->Continue;

  //暂停站点
  $SiteStatus->Pause;

 /*站点的应用程序设置*********************************************************/

  $iisdir = $Site->Create("IIsWebVirtualDir","ROOT");


  //设置站点的应用程序可读,就是什么也不能执行
  $iisdir->AccessRead = True;

  //设置站点的应用程序可执行,只包括脚本,不包括执行文件
  $iisdir->AccessScript = True;

  //设置站点的WEB目录可写,这个很危险
  $iisdir->AccessWrite = True;

  //设置站点的应用程序可执行,包括脚本和执行文件
  $iisdir->AccessExecute = True;

  //设置站点的目录
  $iisdir->Path = "d:webuserwebdir";

  //创建新的应用程序
  $iisdir->AppCreate(True) ;  //在这里不能 = True;,只能用(True)

  //允许父路径,也就是允许.
  $iisdir->AspEnableParentPaths = True;

 /*应用程序池相关设置*********************************************************/

  $appList = New Com ("IIS://Localhost/w3svc/AppPools");

  //列出应用程序池的名称
  $appList->Name;

  //列出应用程序池的状态
  $appList->AppPoolState;

   //运行状态返回以下几个整数值:
  
   //1代表应用程序池运行状态为“正在启动”
   $appList->Status = 1;

   //2代表应用程序池运行状态为“已经启动”
   $appList->Status = 2;

   //3代表应用程序池运行状态为“正在停止”
   $appList->Status = 3;

   //4代表应用程序池运行状态为“已经停止”
   $appList->Status = 4;

   //5代表应用程序池运行状态为“正在暂停”
   $appList->Status = 5;

   //6代表应用程序池运行状态为“已经暂停”
   $appList->Status = 6;

   //7代表应用程序池运行状态为“正在继续”,就是暂停后的继续运行
   $appList->Status = 7;

   //-1代表出错
   $appList->Status = -1;

 /*WinNT用户和密码相关设置*********************************************************/

  $usernameobj = New Com("WinNT://iim");

  //创建一个系统用户
  $user = $usernameobj->Create("user",$UserName);

  //设置用户密码
  $user->SetPassword($UserPass);

  //设置用户全名
  $user->FullName = "用户全名";

  //设置用户说明
  $user->Description = "用户说明";

  //设置用户密码永久正确
  $user->UserFlags = &H10000

  //设置用户下次登入时须变更密码
  $user->UserFlags = &H20000

  //设置使用者不得变更密码
  $user->UserFlags = &H0040

  //设置用户帐户暂时停用
  $user->UserFlags = &H0002


  //以上动作创建一个系统用户

 


 /*执行相关动作*********************************************************/

  //执行以上的动作,但在网站运行状态里边的start,stop,pause,continue这四个动作中无须执行->SetInfo();
  $Object->SetInfo();  //$Object为你所创建的组件名称

?>

我们来看看用php 断点续传吧,这个功能很好的节省时间

 

<?php

header("Cache-Control: public");
header("Accept-Ranges: bytes");

$file = "a.rar";
$filename = "a.rar";

$size=filesize($file);
$size1=$size-1;
//获得字节范围
if(isset($_SERVER['HTTP_RANGE'])) {
   list($name, $range) = explode("=",$_SERVER['HTTP_RANGE']);
   $length=$size1-$range;
   header("HTTP/1.1 206 Partial Content");  //http协议头状态码,表示以部分内容传输
   header("Content-Range: bytes ".$range."-".$size1."/".$size);
}else{
   $length = $size;
}

header("Content-Length: $length");
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=".$filename);

$fp=fopen($file,"rb");

//设定文件指针位置
fseek($fp,$range);

while(!feof($fp)){
   set_time_limit(0);
   echo fread($fp,1024);
   flush();
   ob_flush();
}
fclose($fp);
exit;
?>

断点续传指的是在上传时,将上传任务(一个文件或一个压缩包)人为的划分为几个部分,每一个部分采用一个线程进行上传,下面我们来看看php 断点续传功能的实现方法吧。

<?php
/**
    * 作者 于恩水<yuenshui@126.com>
    * 支持断点续传下载
    * 实例代码:
    *           $down = new SD_DownLoad();
    *          $down->Down('E:/iso/MS.Office2003SP1.CHS.iso');
    **/
class SD_DownLoad {
    
     /**
         * 下载的开始点
         *
         * @access private
         * @var integer
         */
     private $mDownStart;
    
     /**
         * 文件大小
         *
         * @access private
         * @var integer
         */
     private $mFileSize;
    
     /**
         * 文件句柄
         *
         * @access private
         * @var integer
         */
     private $mFileHandle;
    
     /**
         * 文件全路径
         *
         * @access private
         * @var string
         */
     private $mFilePath;
    
     /**
         * 文件下载时显示的文件名
         *
         * @access private
         * @var string
         */
     private $mFileName;
    
     /**
         * 构造函数
         *
         * @access public
         * @return void
         **/
     public function __construct() {
     }
    
     /**
         * 下载
         *
         * @param string $pFilePath 文件全路径
         * @param string pFileName 文件下载时显示的文件名,缺省为实际文件名
         * @access public
         * @return void
         **/
     public function Down($pFilePath, $pFileName = '') {
          $this->mFilePath = $pFilePath;
          if(!$this->IniFile()) $this->SendError();
          $this->mFileName = empty($pFileName) ? $this->GetFileName() : $pFileName;
         
          $this->IniFile();
          $this->SetStart();
          $this->SetHeader();
         
          $this->Send();
     }

    
     /**
         * 初始化文件信息
         *
         * @access private
         * @return boolean
         **/
     private function IniFile() {
          if(!is_file($this->mFilePath)) return false;
          $this->mFileHandle = fopen($this->mFilePath, 'rb');
          $this->mFileSize = filesize($this->mFilePath);
          return true;
     }
    
     /**
         * 设置下载开始点
         *
         * @access private
         * @return void
         **/
     private function SetStart() {
          if (!empty($_SERVER['HTTP_RANGE']) && preg_match("/^bytes=([d]?)-([d]?)$/i", $_SERVER['HTTP_RANGE'], $match)) {
               if(empty($match[1])) $this->mDownStart = $match[1];
               fseek($this->mFileHandle, $this->mDownStart);
          }
          else {
               $this->mDownStart = 0;
          }
     }
    
     /**
         * 设置http头
         *
         * @access private
         * @return void
         **/
     private function SetHeader() {
          @header("Cache-control: public");
          @header("Pragma: public");
          Header("Content-Length: " . ($this->mFileSize - $this->mDownStart));
          if ($this->mDownStart > 0) {
               @Header("HTTP/1.1 206 Partial Content");
               Header("Content-Ranges: bytes" . $this->mDownStart . "-" . ($this->mFileSize - 1) . "/" . $this->mFileSize);
          }
          else {
               Header("Accept-Ranges: bytes");
          }
          @header("Content-Type: application/octet-stream");
          @header("Content-Disposition: attachment;filename=" . $this->mFileName);
     }
    
     /**
         * 获取全路径里的文件名部分
         *
         * @access private
         * @return string
         **/
     private function GetFileName() {
          return basename ($this->mFilePath);
     }
    
     /**
         * 发送数据
         *
         * @access private
         * @return void
         **/
     private function Send() {
          fpassthru($this->mFileHandle);
     }
    
     /**
         * 发送错误
         *
         * @access public
         * @return void
         **/
     public function SendError() {
          @header("HTTP/1.0 404 Not Found");
          @header("Status: 404 Not Found");
          exit();
     }
}
?>

[!--infotagslink--]

相关文章

  • 源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • 如何获取网站icon有哪些可行的方法

    获取网站icon,常用最简单的方法就是通过website/favicon.ico来获取,不过由于很多网站都是在页面里面设置favicon,所以此方法很多情况都不可用。 更好的办法是通过google提供的服务来实现:http://www.google.com/s2/favi...2014-06-07
  • index.php怎么打开?如何打开index.php?

    index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
  • mac下Apache + MySql + PHP搭建网站开发环境

    首先为什不自己分别搭建Apache,PHP和MySql的环境呢?这样自己可以了解更多知识,说起来也更酷。可也许因为我懒吧,我是那种“既然有现成的,用就是了”的人。君子生非异也,善假于物也。两千年前的荀子就教导我们,要善于利用工具...2014-06-07
  • JavaScript动态创建div属性和样式示例代码

    1.创建div元素: Javascript代码 复制代码 代码如下: <scripttypescripttype="text/javascript"> functioncreateElement(){ varcreateDiv=document.createElement("div"); createDiv.innerHTML="Testcreateadiveleme...2013-10-13
  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04
  • PHP编程 SSO详细介绍及简单实例

    这篇文章主要介绍了PHP编程 SSO详细介绍及简单实例的相关资料,这里介绍了三种模式跨子域单点登陆、完全跨单点域登陆、站群共享身份认证,需要的朋友可以参考下...2017-01-25
  • php实现网站留言板功能

    我要实现的就是下图的这种样式,可参考下面这两个网站的留言板,他们的实现原理都是一样的畅言留言板样式:网易跟帖样式:原理 需要在评论表添加两个主要字段 id 和 pid ,其他字段随意添加,比如文章id、回复时间、回复内容、...2015-11-08
  • PHP实现创建以太坊钱包转账等功能

    这篇文章主要介绍了PHP实现创建以太坊钱包转账等功能,对以太坊感兴趣的同学,可以参考下...2021-04-20
  • 网站广告怎么投放最好?首屏广告投放类型优化和广告位布局优化的案例

    网站广告怎么投放最好?一个网站中广告位置最好的是哪几个地方呢,许多的朋友都不知道如何让自己的网站广告收效最好了,今天我们就一起来看看吧。 在说到联盟优化前,...2016-10-10
  • php微信公众账号开发之五个坑(二)

    这篇文章主要为大家详细介绍了php微信公众账号开发之五个坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-02
  • JS创建Tag标签的方法详解

    这篇文章主要介绍了JS创建Tag标签的方法,结合具体实例形式分析了javascript动态操作页面HTML元素实现tag标签功能的步骤与相关操作技巧,需要的朋友可以参考下...2017-06-15
  • PHP如何通过date() 函数格式化显示时间

    这篇文章主要介绍了PHP如何通过date() 函数格式化显示时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-13
  • 什么是cookie?js手动创建和存储cookie

    什么是cookie? cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。 有关cookie的例子: 名字 cookie 当访...2014-05-31
  • ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单

    首先是数据库的设计。分类表叫cate.我做的是分类数据的二级联动,数据需要的字段有:id,name(中文名),pid(父id). 父id的设置: 若数据没有上一级,则父id为0,若有上级,则父id为上一级的id。数据库有内容后,就可以开始写代码,进...2014-05-31
  • PS如何创建变形文字 ps给文字变形的方法

    PS怎么创建变形文字?ps中想要给输入的文字变形,该怎么调整文字的显示形态呢?下面我们就来看看ps给文字变形的方法,需要的朋友可以参考下 我们在图层上输入文字后,可以...2017-07-06
  • idea 无法创建Scala class 选项的原因分析及解决办法汇总

    这篇文章主要介绍了idea 无法创建Scala class 选项的解决办法汇总,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-09-02
  • golang与php实现计算两个经纬度之间距离的方法

    这篇文章主要介绍了golang与php实现计算两个经纬度之间距离的方法,结合实例形式对比分析了Go语言与php进行经纬度计算的相关数学运算技巧,需要的朋友可以参考下...2016-07-29
  • PHP+jQuery+Ajax实现多图片上传效果

    今天我给大家分享的是在不刷新页面的前提下,使用PHP+jQuery+Ajax实现多图片上传的效果。用户只需要点击选择要上传的图片,然后图片自动上传到服务器上并展示在页面上。...2015-03-15