程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php批量修改windows目錄權限程序

php批量修改windows目錄權限程序

編輯:關於PHP編程

我們經常會碰到一些問題像目錄權限無法訪問了,這時可能有幾百或上千個文件或文件目錄,下面我寫了一個利用php來批量更改目錄權限的實例。  代碼如下 復制代碼

<?php
//獲取文件目錄列表,該方法返回數組
function getDir($dir=”) {
    $dir=empty($dir) ? getcwd() : $dir;
    $dirArray[]=NULL;
    if (false != ($handle = opendir ( $dir ))) {
        $i=0;
        while ( false !== ($file = readdir ( $handle )) ) {
            //去掉”“.”、“..”以及帶“.xxx”後綴的文件
            if ($file != “.” && $file != “..”&&!strpos($file,”.”)) {
                $dirArray[$i]=$file;
                $i++;
            }
        }
        //關閉句柄
        closedir ( $handle );
    }
    return $dirArray;
}
?>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>目錄權限批量設置</title>
<style>
body {
    font:12px/22px “Microsoft YaHei”, SimSun;
}
input, select, texteare, button {
    font-family:”Microsoft YaHei”, SimSun;
}
</style>
</head>
<body>
<?php
if(empty($_POST)){
?>
<form action=”" method=”post”  onsubmit=”return check();”>
<h2>當前目錄:<?php echo getcwd();?></h2>
<div>
  <fieldset>
    <legend>網站目錄</legend>
    <div>
      <ul>
<?php
      $dirArr=getDir();
      if(is_array($dirArr)){
          foreach($dirArr as $dir){
?>
        <li>
          <label>
            <input name=”directory[]” type=”checkbox” value=”<?php echo $dir;?>” />
           <?php echo $dir;?></label>
        </li>
<?php     
          }
      }
?>
      </ul>
        <div>
        <input id=”CheckALL” type=”button” onclick=”checkAll();” value=”全選” />
        <input id=”NoCheckAll” type=”button” onclick=”noCheckAll();” value=”全不選” />
        <input id=”inverse” type=”button” onclick=”inverseCheck()” value=”反選” />
         </div>
    </div>
  </fieldset>
</div>
<div>
  <fieldset>
    <legend>目錄權限</legend>
    <div>
      <select name=”Perm”>
        <option value=”N” selected=”selected”>N-無</option>
        <option value=”R”>R-讀取</option>
        <option value=”W”>W-寫入</option>
        <option value=”C”>C-更改(寫入)</option>
        <option value=”F”>F-完全控制</option>
      </select>
<!–
/G user:perm  賦予指定用戶訪問權限。
              Perm 可以是: R  讀取
                          W  寫入
                          C  更改(寫入)
                          F  完全控制

/P user:perm  替換指定用戶的訪問權限。
              Perm 可以是: N  無
                          R  讀取
                          W  寫入
                          C  更改(寫入)
                          F  完全控制
–>
    </div>
  </fieldset>
</div>
<div>
  <fieldset>
    <legend>來賓帳戶</legend>
    <div>
      Internet 來賓帳戶: <input name=”User” id=”User” type=”text” value=”" />
    </div>
  </fieldset>
</div>
<div style=”margin-top:20px; padding-left:20px;”>
  <input type=”submit” value=”提交” />
</div>
</form>
<script type=”text/javascript”>
    var all = document.getElementById(“CheckALL”); //全選
    var single = document.getElementsByName(“directory[]“); //選項
    var noAll = document.getElementById(“NoCheckAll”); //不全選
    var inverse = document.getElementById(“inverse”); //反選
    var User = document.getElementById(“User”); //SiteId
    function checkTrue() {
        for (var i = 0; i < single.length; i++) {
            single[i].checked = true;
        }
    }
    function checkFalse() {
        for (var i = 0; i < single.length; i++) {
            single[i].checked = false;
        }
    }
    //全選
    function checkAll() {
        if (all.disabled == false) {
            noAll.disabled = false;
            checkTrue();
        }
        else {
            noAll.disabled = true;
            checkFalse();
        }
        all.disabled = true;
    }
    //全不選
    function noCheckAll() {
        if (noAll.disabled == false) {
            all.disabled = false;
            checkFalse();
        }
        else {
            all.checked = true;
            checkTrue();
        }
        noAll.disabled = true;
    }
    //反選
    function inverseCheck() {
        noAll.disabled = false;
        all.disabled = false;
        for (var i = 0; i < single.length; i++) {
            single[i].checked = !single[i].checked;
        }
    }
    function check(){
        var checkd_sum;
        checkd_sum=0;
        for (var i = 0; i < single.length; i++) {
            if(single[i].checked ==true){
            checkd_sum++;
            }
        }
        if(checkd_sum==0){
            alert(‘請先選擇目錄!’);
            return false;
        }
        if(User.value==”"){
            alert(‘請輸入Internet 來賓帳戶!’);
            return false;
        }
        return true;
    }
</script>
<?php
}else{
    $directorys=@$_POST['directory'];
    $Perm=trim(@$_POST['Perm']);
    $User=trim(@$_POST['User']);
?>
<div>
<pre>
@echo off
<?php
$BASE_DIR=getcwd();
if(is_array($directorys)){
    foreach($directorys as $directory ){
        echo <<<EOF
echo Y|cacls {$BASE_DIR}\{$directory} /T /E /C /G {$User}:{$Perm} <br/>
EOF;
    }
}
?>
pause
</pre>
</div>
<?php
}
?>
</body>
</html>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved