Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

xanburzum

organizando os downloads

Recommended Posts

Utilize esse Script em seu site para organizar os downloads que você tem.inserindo no banco de dados os valores do seu arquivo que será feito o download.

 

 

 

Em uma estrutura de dados, como abaixo:

 

banco de dados:

download

 

Tabelas:

 

1- downloads

como os campos:

DownloadID - Numeração Automática

DownloadCategoryID - Número

DownloadTitle - Texto

DownloadSize - Número

DownloadAuthor - Texto

DownloadDescription - Memorando

DownloadCount - Número

DownloadURL - Texto

 

2 - MOnitor

com os campos:

MonitorID - Numeração Automática

MonitorDownloadID - Número

MonitorTime - Data/Hora

MonitorIP - Texto

MonitorError - Sim/Não

 

 

 

Abaixo o code:

 

<%
Dim DataConn, cmdDC, rsDC
Dim Item
Dim iFieldCount, iLoopVar
Dim strLTorGT, iCriteria, strSortBy, strOrder
Dim sRequestIP

' ID value da página 
FileToDownload=Request.QueryString("DownloadID")

' solicitar informações
sRequestIP=Request.ServerVariables("REMOTE_ADDR")

' Definir variáveis gerais
FoundRecordCount=0
sDataSource = "d:\databases\download.mdb" '  Path Database
BackgroundColor="FFFFFF"
RecordFound=0

' Criar e estabelece conexão de dados
Set DataConn = Server.CreateObject("ADODB.Connection")
DataConn.ConnectionTimeout = 15
DataConn.CommandTimeout = 30


DataConn.Open "DBQ=" & sDataSource & ";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;MaxBufferSize=8192;Threads=20;", "username", "password"


' Criar e vincular comando objeto para conexão de dados, em seguida, definir os atributos e consulta SQL
Set cmdDC = Server.CreateObject("ADODB.Command")
cmdDC.ActiveConnection = DataConn
cmdDC.CommandText = "SELECT * FROM downloads WHERE (DownloadID = " & FileToDownload & ");"
cmdDC.CommandType = 1

' recordset 
Set rsDC = Server.CreateObject("ADODB.Recordset")
' Abrir recordsert com cursor forward-only (0) read-only mode (1)
rsDC.Open cmdDC, , 1, 1
%>


<%
If Not rsDC.EOF Then rsDC.MoveFirst

iFieldCount = rsDC.RecordCount

if iFieldCount > 0 then
response.write "<HTML>"
response.write "<HEAD>"
response.write "<META HTTP-EQUIV='refresh' CONTENT='3; URL=" & rsDC.Fields("DownloadURL") & "'>"

response.write "</HEAD>"

response.write "<BODY style='font-family: Arial; font-size: 12pt'>"

response.write "<p align='center'>Downloading <B>" & rsDC.Fields("DownloadTitle") & "</B> (" & rsDC.Fields("DownloadSize") & " bytes)<BR>" 
response.write "<a href='" & rsDC.fields("DownloadURL") & "' target='main'>"
response.write "Clique aqui se o seu download não começar em 3 segundo</a></p>"

response.write "</BODY>"
response.write "</HTML>"


' Salve o download clique informação

Dim objRecordset
Set objRecordset = Server.CreateObject("ADODB.Recordset")

DB_CONNECTIONSTRING = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & sDataSource & ";"

objRecordset.Open "monitor", DB_CONNECTIONSTRING, 1, 2, &H0002
' objRecordset.Open "monitor", DB_CONNECTIONSTRING, adOpenKeyset, adLockPessimistic, adCmdTable

objRecordset.AddNew

objRecordset.Fields("MonitorDownloadID") = FileToDownload
objRecordset.Fields("MonitorTime") = Now()
objRecordset.Fields("MonitorIP")= sRequestIP

' todos os detalhes atualizar o recordset
objRecordset.Update

objRecordset.Close
Set objRecordset = Nothing


else
response.write "<HTML>"
response.write "<HEAD>"
response.write "</HEAD>"

response.write "<BODY style='font-family: Arial; font-size: 12pt'>"

response.write "Erro Baixando Este Arquivoe"

response.write "</BODY>"
response.write "</HTML>"

' Salve o download clique informação

Set objRecordset = Server.CreateObject("ADODB.Recordset")

DB_CONNECTIONSTRING = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & sDataSource & ";"

objRecordset.Open "monitor", DB_CONNECTIONSTRING, 1, 2, &H0002
' objRecordset.Open "monitor", DB_CONNECTIONSTRING, adOpenKeyset, adLockPessimistic, adCmdTable

objRecordset.AddNew

objRecordset.Fields("MonitorDownloadID") = FileToDownload
objRecordset.Fields("MonitorTime") = Now()
objRecordset.Fields("MonitorIP")= sRequestIP
objRecordset.Fields("MonitorError")= -1


objRecordset.Update

objRecordset.Close
Set objRecordset = Nothing

end if
%> 


<%
' fecha Data Access 
rsDC.Close
Set rsDC = Nothing
Set cmdDC = Nothing
DataConn.Close
Set DataConn = Nothing
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

uma forma de deixar mais organizado os downloads

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.