PHP一般用的是MYSQL數據庫,ASP用的大多是ACCESS或者MSSQL,你可以使用PHP鏈接上2種數據庫進行數據的對導,或則你也可以用PHP輸出成XML格式用ASP去取數據,再或者找個數據導入軟件直接導入
作為一家“創(chuàng)意+整合+營銷”的成都網站建設機構,我們在業(yè)內良好的客戶口碑。成都創(chuàng)新互聯公司提供從前期的網站品牌分析策劃、網站設計、成都做網站、網站建設、外貿營銷網站建設、創(chuàng)意表現、網頁制作、系統開發(fā)以及后續(xù)網站營銷運營等一系列服務,幫助企業(yè)打造創(chuàng)新的互聯網品牌經營模式與有效的網絡營銷方法,創(chuàng)造更大的價值。
如果你的空間只支持PHP的話,你吧ASP代碼傳上去是不能正常運行的。
對于數據庫來說,ASP和PHP都只是使用數據庫,他們本身并不是數據庫。在網上看到PHP一樣可以連ACCESS數據庫,而ASP也一樣可以使用MYSQL數據庫。
不過我按照那些方法實驗一直沒有成功過,不知道是何原因。
這個問題還真不知道。不過為了幫助你,在網上找了一個參考資料希望適合你: 用Microsoft.XMLHTTP調用本地PHP文件runphp.php,并向runphp.php提交要執(zhí)行的php代碼
當然,在runphp.php 中要用到eval()來執(zhí)行提交的代碼;相當簡單吧
具體細節(jié)實現:
1.用Microsoft.XMLHTTP調用本地PHP
程序代碼 function runphp(command)
on error resume next
dim Http
dim serPhp
serPhp="http://" Request.ServerVariables("SERVER_NAME") mid(Request.ServerVariables("PATH_INFO"),1,instrrev(Request.ServerVariables("PATH_INFO"),"/")) "runphp.php"
command=URLEncoding("phpcommand=" command)
set Http=server.createobject("Microsoft.XMLHTTP")
Http.open "POST",serPhp,false
Http.setrequestheader "content-length",len(command)
Http.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
Http.send command
if Http.readystate4 then
exit function
end if
runphp=BytesToBstr(Http.responseBody,"gb2312") '注意WAP網頁用utf-8,WEB用gb2312
set http=nothing
if err.number0 then err.Clear
end function
'2、轉換亂瑪,直接用xmlhttp調用有中文字符的網頁得到的將是亂瑪,可以通過adodb.stream組件進行轉換
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
在提交的命令中,我們用的是post方法,會被urlencoded,那些",',\,還有中文.會在eval中執(zhí)行錯誤,所以還需要進行處理,下面是編碼處理函數:
程序代碼 Function URLEncoding(vstrIn)
strReturn = ""
For i = 1 To Len(vstrIn)
ThisChr = Mid(vStrIn,i,1)
If Abs(Asc(ThisChr)) HFF Then
strReturn = strReturn ThisChr
Else
innerCode = Asc(ThisChr)
If innerCode 0 Then
innerCode = innerCode + H10000
End If
Hight8 = (innerCode And HFF00)\ HFF
Low8 = innerCode And HFF
strReturn = strReturn "%" Hex(Hight8) "%" Hex(Low8)
End If
Next
strReturn=replace(strReturn,chr(34),"%22")
strReturn=replace(strReturn,chr(39),"%27")
URLEncoding = strReturn
End Function
下面是runphp.php文件內容:比較簡單
程序代碼 ?
if($_SERVER["HTTP_HOST"]==$_SERVER["SERVER_NAME"]){
$phpCommand=StripSlashes($_POST["phpcommand"]);
if(trim($phpCommand)!="")eval($phpCommand);
}
?
第一句 if($_SERVER["HTTP_HOST"]==$_SERVER["SERVER_NAME"])是為了限至命令只能從本地服務器提交,有一定的安全措施