• User

    creare pagine per download file

    visto che questo forum è fatto benissimo e ha molti spunti vi chiedo un consiglio prima di iniziare a lavorarci su .
    devo realizzare una sezione sul mio sito download dove inserire una serie di file .zip o pdf dove gli utento poi possano visualizzare il tutto suddiviso per argomenti e scaricare i file relativi.

    volevo avere tutto su una tabella con nome file icona relativa al formato peso del file piccola descrizione e se possibile quante volte è stato scaricato .

    io uso dreamweaver asp access e sono su un server di aruba .

    grazie anticipatamente dei consigli

    a presto


  • User

    scusate non era mia intensione duplicare il posts ho avuto un problema con il pc e pensavo non lo avesse inserito


  • Super User

    Scusami ma il problema quale sarebbe? Basta che fai la tabella e relative query.


  • User

    il problema è che non lo ho mai fatto e vorrei dei suggerimenti su come progettare il tutto .
    non è poi così semplice, per me , come controllo per esempio i download di un determinato file ecc . la dimensione ? ecc l'upload del file e l'inserimento nel db ..............

    spero di non chiedere troppo

    grazie


  • Super User

    in che linguaggio devi farlo?


  • User

    asp vb script si DB access
    questo linguaggio lo conosco già e almeno so di che parliamo per poter procedere anche un pò da solo


  • Super User

    Ok, inizia pure poi quando avrai scritto qualcosa e avrai ddei problemi rispondo alle tue domande. oppure non riesci nemeno a partire?


  • User

    posso partire anche da solo dammi lo schema logico da seguire per non perdere tempo inutile del tipo

    la struttura del db come deve essere ?
    cosa dovo inserire per poter fare quello che mi serve ?
    i file su aruba devono essere messi tutti in una cartella chiamata publish quindi con l'upload io devo inserire il file in quella cartella e compilare le info del db .

    nome file
    argomento
    descrizione
    note
    dimesioni file
    visitato

    va bene in questo modo ?

    per iniziare

    vorrei realizzare una cosa tipo
    agesci.org/index.php?dnd_path=17&dnd=19 se puoi dargli uno sguardo

    grazie


  • Super User

    Nella tabella manca per lo meno l'id del file. Forse ti conviene inserire anche un path, a meno che non lo metti su /public/argomento/nomefile

    agesci.org/index.php?dnd_path=17&dnd=19

    dnd_path e dnd cosa sono? Se uno dei due è il path, l'id a cosa serve? O meglio, non basta l'id del file?


  • User

    l'id lo avevo dato per scontato
    mi metto a lavoro poi ci sentiamo :figo2:


  • Super User

    Ok buon lavoro!


  • User

    passo passo così è utile anche ad altri

    preparo la form di inserimento dati in questo modo (correggimi se mancano dati che potrebbero essere utili per le varie query )

    id
    Nome File :
    Data :
    Kb File :
    Categoria :
    Riservato : si no
    Tipo File zip pdf

    penso siano sufficienti come info no ?

    ovviamente il db corrisponde


  • Super User

    Id meglio lo metti tu in maniera automatica. per il resto credo ci siamo


  • User

    eccoci quà primo problema ( cosa che ho già fatto ma ora non vuole proprio funzionare )

    preparata form di inserimento faccio il test ed inserisce tutti i dati bene

    ora inserisco un campo file per sflogliare e cercari i file da inserire ...
    ho l'estensione Pure ASP File Upload 2.1.4 per l'upload ( che va un po modificata ma non problem )

    ora il file va nella cartella public di aruba tutto ok ma il db non si compila perchè ????

    se tolgo il campo fine il db viene compilato di nuovo

    la form ha come tipo di codifica = multipart/form-data

    la pagina di test si trova :
    roma122.it/areadownload/Untitled-1.asp

    se vuoi provare ora si inserisce il file ma non si compila il db come puoi vedere dal raconrset in fondo alla pagina .

    ecco il codice della pagina :

    <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
    <!--#include virtual="/Connections/Download.asp" -->
    <!--#include virtual="/ScriptLibrary/incPureUpload.asp" -->
    <%
    
    '*** Pure ASP File Upload 2.1.4
    Dim GP_uploadAction,UploadQueryString
    PureUploadSetup
    If (CStr(Request.QueryString("GP_upload")) <> "") Then
      Dim pau_thePath,pau_Extensions,pau_Form,pau_Redirect,pau_storeType,pau_sizeLimit,pau_nameConflict,pau_requireUpload,pau_minWidth,pau_minHeight,pau_maxWidth,pau_maxHeight,pau_saveWidth,pau_saveHeight,pau_timeout,pau_progressBar,pau_progressWidth,pau_progressHeight
      pau_thePath = """/public/Download"""
      pau_Extensions = ""
      pau_Form = "form1"
      pau_Redirect = "Untitled-1.asp"
      pau_storeType = "file"
      pau_sizeLimit = ""
      pau_nameConflict = "error"
      pau_requireUpload = "true"
      pau_minWidth = ""
      pau_minHeight = "" 
      pau_maxWidth = ""
      pau_maxHeight = ""
      pau_saveWidth = ""
      pau_saveHeight = ""
      pau_timeout = "600"
      pau_progressBar = "fileCopyProgress.htm"
      pau_progressWidth = "300"
      pau_progressHeight = "100"
      
      Dim RequestBin, UploadRequest
      CheckPureUploadVersion 2.14
      ProcessUpload pau_thePath,pau_Extensions,pau_Redirect,pau_storeType,pau_sizeLimit,pau_nameConflict,pau_requireUpload,pau_minWidth,pau_minHeight,pau_maxWidth,pau_maxHeight,pau_saveWidth,pau_saveHeight,pau_timeout
    end if
    %>
    <%
    ' *** Edit Operations: (Modified for File Upload) declare variables
    
    Dim MM_editAction
    Dim MM_abortEdit
    Dim MM_editQuery
    Dim MM_editCmd
    
    Dim MM_editConnection
    Dim MM_editTable
    Dim MM_editRedirectUrl
    Dim MM_editColumn
    Dim MM_recordId
    
    Dim MM_fieldsStr
    Dim MM_columnsStr
    Dim MM_fields
    Dim MM_columns
    Dim MM_typeArray
    Dim MM_formVal
    Dim MM_delim
    Dim MM_altVal
    Dim MM_emptyVal
    Dim MM_i
    
    MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME"))
    If (UploadQueryString <> "") Then
      MM_editAction = MM_editAction & "?" & Server.HTMLEncode(UploadQueryString)
    End If
    
    ' boolean to abort record edit
    MM_abortEdit = false
    
    ' query string to execute
    MM_editQuery = ""
    %>
    <%
    ' *** Insert Record: (Modified for File Upload) set variables
    
    If (CStr(UploadFormRequest("MM_insert")) = "form1") Then
    
      MM_editConnection = MM_Download_STRING
      MM_editTable = "ArchivioFile"
      MM_editRedirectUrl = "Untitled-1.asp"
      MM_fieldsStr  = "file|value|data|value|categoria|value|tipo|value|riservato|value"
      MM_columnsStr = "NomeFile|',none,''|Data|',none,''|Categoria|',none,''|TipoFile|',none,''|Riservato|',none,''"
    
      ' create the MM_fields and MM_columns arrays
      MM_fields = Split(MM_fieldsStr, "|")
      MM_columns = Split(MM_columnsStr, "|")
      
      ' set the form values
      For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
        MM_fields(MM_i+1) = CStr(UploadFormRequest(MM_fields(MM_i)))
      Next
    
      ' append the query string to the redirect URL
      If (MM_editRedirectUrl <> "" And UploadQueryString <> "") Then
        If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And UploadQueryString <> "") Then
          MM_editRedirectUrl = MM_editRedirectUrl & "?" & UploadQueryString
        Else
          MM_editRedirectUrl = MM_editRedirectUrl & "&" & UploadQueryString
        End If
      End If
    
    End If
    %>
    <%
    ' *** Insert Record: (Modified for File Upload) construct a sql insert statement and execute it
    
    Dim MM_tableValues
    Dim MM_dbValues
    
    If (CStr(UploadFormRequest("MM_insert")) <> "") Then
    
      ' create the sql insert statement
      MM_tableValues = ""
      MM_dbValues = ""
      For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
        MM_formVal = MM_fields(MM_i+1)
        MM_typeArray = Split(MM_columns(MM_i+1),",")
        MM_delim = MM_typeArray(0)
        If (MM_delim = "none") Then MM_delim = ""
        MM_altVal = MM_typeArray(1)
        If (MM_altVal = "none") Then MM_altVal = ""
        MM_emptyVal = MM_typeArray(2)
        If (MM_emptyVal = "none") Then MM_emptyVal = ""
        If (MM_formVal = "") Then
          MM_formVal = MM_emptyVal
        Else
          If (MM_altVal <> "") Then
            MM_formVal = MM_altVal
          ElseIf (MM_delim = "'") Then  ' escape quotes
            MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'"
          Else
            MM_formVal = MM_delim + MM_formVal + MM_delim
          End If
        End If
        If (MM_i <> LBound(MM_fields)) Then
          MM_tableValues = MM_tableValues & ","
          MM_dbValues = MM_dbValues & ","
        End If
        MM_tableValues = MM_tableValues & MM_columns(MM_i)
        MM_dbValues = MM_dbValues & MM_formVal
      Next
      MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")"
    
      If (Not MM_abortEdit) Then
        ' execute the insert
        Set MM_editCmd = Server.CreateObject("ADODB.Command")
        MM_editCmd.ActiveConnection = MM_editConnection
        MM_editCmd.CommandText = MM_editQuery
        MM_editCmd.Execute
        MM_editCmd.ActiveConnection.Close
    
        If (MM_editRedirectUrl <> "") Then
          Response.Redirect(MM_editRedirectUrl)
        End If
      End If
    
    End If
    %>
    <%
    Dim Recordset1
    Dim Recordset1_numRows
    
    Set Recordset1 = Server.CreateObject("ADODB.Recordset")
    Recordset1.ActiveConnection = MM_Download_STRING
    Recordset1.Source = "SELECT * FROM ArchivioFile ORDER BY ID DESC"
    Recordset1.CursorType = 0
    Recordset1.CursorLocation = 2
    Recordset1.LockType = 1
    Recordset1.Open()
    
    Recordset1_numRows = 0
    
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Documento senza titolo</title>
    <script language="javascript" src="../ScriptLibrary/incPureUpload.js"></script>
    </head>
    
    <body>
    <p>&nbsp;</p>
    <form action="<%=MM_editAction%>" METHOD="post" enctype="multipart/form-data" name="form1" onSubmit="checkFileUpload(this,'',true,'','','','','','','');showProgressWindow('fileCopyProgress.htm',300,100);return document.MM_returnValue">
      <table width="317" border="1" align="center">
        <tr>
          <td width="155">Nome File : </td>
          <td width="189"><p>
            <input name="NomeFile" type="text" id="NomeFile">
          </p>
            <p>
              <input name="file" type="file" onChange="checkOneFileUpload(this,'',true,'','','','','','','')">    
              </p></td>
        </tr>
        <tr>
          <td>Data : </td>
          <td><input name="data" type="text" id="data"></td>
        </tr>
        <tr>
          <td>Categoria : </td>
          <td><input name="categoria" type="text" id="categoria"></td>
        </tr>
        <tr>
          <td>Tipo File : </td>
          <td><input name="tipo" type="text" id="tipo"></td>
        </tr>
        <tr>
          <td>Byte : </td>
          <td><p>
          </td>
        </tr>
        <tr>
          <td>Riservato : </td>
          <td><input name="riservato" type="text" id="riservato"></td>
        </tr>
        <tr>
          <td colspan="2"><div align="center">
            <input type="submit" name="Submit" value="Invia">
          </div></td>
        </tr>
      </table>
    
        <input type="hidden" name="MM_insert" value="form1">
    </form>
    <p>&nbsp;</p>
    <table width="537" border="1">
      <tr>
        <td width="149">&nbsp;</td>
        <td width="4">&nbsp;</td>
        <td width="4">&nbsp;</td>
        <td width="4">&nbsp;</td>
        <td width="106">&nbsp;</td>
        <td width="230">&nbsp;</td>
      </tr>
      <tr>
        <td><%=(Recordset1.Fields.Item("NomeFile").Value)%></td>
        <td><%=(Recordset1.Fields.Item("Data").Value)%></td>
        <td><%=(Recordset1.Fields.Item("Categoria").Value)%></td>
        <td><%=(Recordset1.Fields.Item("TipoFile").Value)%></td>
        <td><%=(Recordset1.Fields.Item("Byte").Value)%></td>
        <td><%=(Recordset1.Fields.Item("Riservato").Value)%></td>
      </tr>
    </table>
    <p>&nbsp;</p>
    </body>
    </html>
    <%
    Recordset1.Close()
    Set Recordset1 = Nothing
    %>
    

  • Super User

    Mi spiace ma non saprei come aiutarti, non conosco quel'estensio per asp, io sono più ferrato su asp.net / C#...


  • User

    RISOLTO

    ora la mia domanda è come faccio ad estrarre la dimensione del file per inserirla nel db in automatico ?


  • Super User

    L'estensione per l'upload che usi non te la restituisce?


  • User

    forse è questa ..... ma poi come recupero il dato ???

    non posso inserire l'immagine per farti vedere la schermata dell'estenzione
    non è che mi puoi abilitare ci capiamo meglio


  • Super User

    Abilitarti a cosa? A mettere immagini? Io non posso farlo, ma tu puoi semplicemente mettere l'immagine su un tuo hosting e poi qui mettere l'url.


  • User

    Hai inserito un link attivo nel post; non facendo parte del gruppo VIP questo non ti è concesso in questa sezione dalle Regole.
    Per inviare il tuo post, inserisci l'url senza
    infatti se lo faccio mi dice questo ... per quello ti ho fatto la richiesta