Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 16 su 16
  1. #11
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    è inutile ke uppi visto ke nn c'è soluzione...anche se invia un qualcosa al server, lo script non può intercettarlo in quell'instante...e poi cosa ti frega sapere se quello a finito di scarica o no?

  2. #12
    Originariamente inviato da FinalFantasy
    .....cosa ti frega sapere se quello a finito di scarica o no?
    Sto realizzando uno script per la gestione “sicura del download”, partendo dal principio che ogni url fornita a tale scopo è rintracciabile è che l'utente (loggato) potrebbe decidere di comunicare l'url del file ad altri e vanificare ogni tentativo di riservatezza, volevo duplicare il file in questione e restituire il file duplicato (UNA VOLTA TEMINATO IL DOWNLOAD) cancellare il file...
    ed è a punto a questa fase che mi sono bloccato...
    nel mio caso l'utilizzo di .htaccess e impensabile data la mole (1000 e +) file.

    il “mio” script:


    Codice PHP:
    <?php 
    function forceDownload( &$file ) {
        
    /**
         * Function forceDownload:
         *    download any type of file if it exists and is readable
         * -------------------------------------
         * @author        Andrea Giammarchi
         * @date        18/01/2005 [13/04/2005]
         * @compatibility    PHP >= 4.3.0
         */
        
    if( file_exists$file ) == true && is_readable$file ) == true ) {
            
    $filename = &basename$file );
            if( 
    strpos$_SERVER['HTTP_USER_AGENT'], 'MSIE' ) !== false ) {
                
    $parsename = &explode'.'$filename );
                
    $last count$parsename ) - 1;
                
    $filename = &implode'%2E'array_slice$parsename0$last ) );
                
    $filename .= '.'.$parsename[$last];
            }
            
    $content = &file_get_contents$file );
            
    header'Content-Type: application/octet-stream' );
            
    header'Content-Disposition: attachment; filename="'.$filename.'"' );
            
    header'Content-Length:'.strlen$content ) );
            
    header'Content-Transfer-Encoding: binary' );
            echo 
    $content;
            exit(
    0);
        }
    }
    //*****************************|
    function make_seed() { 
        list(
    $usec$sec) = explode(' 'microtime()); 
          return (float) 
    $sec + ((float) $usec 100000); 

    function 
    make_password($pass_len) { 
        
    mt_srand(make_seed()); 
        
    $password ""
        for (
    $loop 0$loop $pass_len$loop++) { 
            switch(
    mt_rand(02)) { 
                case 
    0$password .= mt_rand(09);         break; // Number (0-9) 
                
    case 1$password .= chr(mt_rand(97122)); break; // Alpha Lower (a-z) 
                
    case 2$password .= chr(mt_rand(6590));  break; // Alpha Upper (A-Z) 
            

        } 
      return 
    $password
    }
    //*****************************|
    function temp_file$file_root$file_dir$file_name$file_type ) {
        
    $file $file_root $file_dir $file_name;
        
    $newfile $file_root $file_dir make_password(10) . $file_type;
        if (!
    copy($file$newfile)) {
            echo 
    "Copia di $file non riuscita ...\n";
        }
        
    forceDownload($newfile);
    }
    //*****************************|

    // Preset
        
    $file_root $_SERVER["DOCUMENT_ROOT"];
        
    $file_dir "/test_vari/Secure_download/my_file/";
        
    $file_name "AnsiC.pdf";
        
    $file_type substr($file_namestrrpos($file_name,chr(46)), strlen($file_name));
    // chiamata
        
    temp_file$file_root$file_dir$file_name$file_type );
        
    ?>


    cichity74

  3. #13
    up

  4. #14
    last up... :master:

  5. #15
    Uppo io x te...
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  6. #16
    Tratto da: http://www.apogeonline.com/libri/88-503-2114-7/scheda
    Capitolo 1 Pagina 12 - 13

    ACK, NAK e altri messaggi
    L'IP non fa alcun tentativo per assicurare che il pacchetto arrivi a destinazione, pertanto il TCP richiede che la destinazione invii un messaggio Acknowledged (ACK) per avvertire l'host mittente che il messaggio è arrivato.
    Se la ricezione del pacchetto non va a buon fine, il TCP richiede che il destinatario invii un messaggio Not Acknowledged (NAK).

    Mi rendo conto che tali informazioni in se non presentino una soluzione ma al limite una base di partenza, non me ne vogliano i più esperti, per il quale tali informazioni (accademiche) sono il pane quotidiano.
    Per quanto mi riguarda continuerò a studiare e a postare info utili al progetto, spero che le presenti siano uno spunto valido.

    cichity74

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.