iis6 根据过滤器名字删除过滤器的vbs

delfiltervbs

DelFilter("phpsirfilter") 

Function DelFilter ( ByVal strFilterName)
    Dim objFilterProps, objFilters
    Dim strLoadOrder
    Dim intStartFilt
    
 Err.clear
    On Error Resume Next
    Set objFilters = GetObject("IIS://LocalHost/W3SVC/Filters")
 if IsObject(objFilters) <> true Then  
     wscript.echo "GetObject Filters"
  AddFilter =false
 End If
 
    strLoadOrder = objFilters.FilterLoadOrder
 wscript.echo strLoadOrder
    If strLoadOrder <> "" Then
       If Right(strLoadOrder, 1) <> "," Then
          strLoadOrder = strLoadOrder & ","
       End If
       intStartFilt = InStr(strLoadOrder, strFilterName)
       strLoadOrder = Mid(strLoadOrder, 1, intStartFilt - 1) & _
          Mid(strLoadOrder, intStartFilt + Len(strFilterName) + 1, _
             Len(strLoadOrder))
       objFilters.FilterLoadOrder= strLoadOrder
       objFilters.SetInfo
       objFilters.Delete "IIsFilter", strFilterName
    wscript.echo "del filter end"
    objFilters.SetInfo
    End If
 wscript.echo strLoadOrder
 wscript.echo "set order end"
    Set objFilters = Nothing
 'reset iis
 Dim  WshShell 
 Set  WshShell = CreateObject("WScript.Shell") 
 WshShell.Run "iisreset /noforce" , 0, True 
 wscript.echo "restart"
 Set WshShell = Nothing
End Function

iis6 增加过滤器的vbs

iis6addfiltervbs

Dim r32wShell, r32env1 
Set r32wShell = WScript.CreateObject("WScript.Shell")
'判断环境是否是32抑或64位
r32env1 = r32wShell.ExpandEnvironmentStrings("%PROCESSOR_ARCHITECTURE%")

'取当前路径
curpath = createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path


Dim FiltersObj 
Dim FilterObj 
Dim LoadOrder 
Dim FilterName 
Dim FilterPath 
Dim FilterDesc 

FilterName = "phpsirfilter" 
FilterDesc = "phpsir filter" 

If r32env1 <> "x86" Then  
' 32bit phpsirfilter32.dll
FilterPath = curpath + "\phpsirfilter32.dll" 
Else
' 64bit phpsirfilter64.dll
FilterPath = curpath + "\phpsirfilter64.dll" 
End If

'iis 6 增加过滤器
Set FiltersObj = GetObject("IIS://LocalHost/W3SVC/Filters") 
LoadOrder = FiltersObj.FilterLoadOrder 
If LoadOrder <> "" Then 
  LoadOrder = LoadOrder & "," 
End If 
LoadOrder = LoadOrder & FilterName 
FiltersObj.FilterLoadOrder = LoadOrder 
FiltersObj.SetInfo 

Set FilterObj = FiltersObj.Create("IIsFilter", FilterName) 
FilterObj.FilterPath = FilterPath 
FilterObj.FilterDescription = FilterDesc 
FilterObj.SetInfo 



ecshop 默认第一个配送支付方式的选中

<!– {foreach from=$shipping_list key=shippingkey item=shipping} 循环配送方式 –>

<input name=”shipping” type=”radio” value=”{$shipping.shipping_id}” {if $order.shipping_id eq $shipping.shipping_id || $shippingkey eq 0 }checked=”true”{/if}   supportCod=”{$shipping.support_cod}” insure=”{$shipping.insure}” onclick=”selectShipping(this)” />

<!– {/foreach} 循环配送方式 –>

注意里面的   key=shippingkey item=shipping 和  $shippingkey eq 0 ,理解了php的数组key=>value 就明白了

 

paymentcheckdefault

文件夹空和不含子文件夹的函数php

检查某个文件夹是否是空文件夹,和检查某个文件夹是否不含子文件夹的函数

empptydir-leafdir

function dir_contains_children($dir) {
    $result = false;
    if($dh = opendir($dir)) {
        while(!$result && ($file = readdir($dh)) !== false) {
            $result = $file !== "." && $file !== ".." ;
        }

        closedir($dh);
    }

    return $result;
}

function dir_contains_children_dirs($dir) {
  $result = false;
    if($dh = opendir($dir)) {
       while (!$result && ($file = readdir($dh))) {
         $result = $file !== "." && $file !== ".." && is_dir($dir.'/'.$file);
       }
       closedir($dh);
    }

  return $result;
}

TXT下载

模板自定义函数导致dede更新出现500错误

dedecms 模板里面使用的自定义函数,如果此模板在一个原始官方的dedecms下运行,会因为函数未定义而导致出现500错误,
一般这类函数定义在 include/common.inc.php ,所以需要做相应的移植或者采用老版本的common.inc.php
因为 在include/dedetag.class.php 里面dede执行模板里面的php代码的时候采用eval调用,图中红线部分

dedeeval