Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Download file zip

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    518

    Download file zip

    Buongiorno a tutti,
    devo far scaricare un file zip precedentemente inviato sul db Mysql,

    .............................
    <a href=\"actions_det.php?od=" . $dati["od"] . "\" target=\"_blank\">$oggetto</a>

    Questo invece è il codicedella pagina actions_det.php:

    <?php
    include("../inclusioni/conf.php");
    // connessione e selezione del database
    mysql_connect($dbhost, $dbuser, $dbpass)
    or die('Connessione non riuscita: ' . mysql_error());

    if(!mysql_select_db($db))
    die('Selezione database fallita!');

    // query per recuperare il file
    $query = 'SELECT * FROM allegato_det WHERE od = '.$_GET['od'];
    $risultato = mysql_query($query) or die('Query non valida: ' . mysql_error());
    $tmp = mysql_fetch_array($risultato);

    // invio una intestazione contenente il tipo MIME
    header('Content-Type: '.$tmp['Type']);

    // invio il contenuto del file
    echo $tmp['DatiBinari'];
    ?>

    Il file lo scarica correttamente, però quando si apre la finestra download del file nella riga nome: mi scrive actions_det.php, io invece vorrei che mi scrivesse il nome del file zip.
    Come posso procedere?
    grazie.

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    518
    Ti ringrazio ho risolto.

    Questo è il codice:
    $query = "SELECT DatiBinari, Nom, Type FROM allegato_det WHERE od = '" . $_GET["od"] . "'";
    $select = @mysql_query($query) or die("Query fallita !");

    $result = @mysql_fetch_array($select);

    $data = $result["DatiBinari"];
    $nom = $result["Nom"];
    $type = $result["Type"];

    // SE IL BROWSER È INTERNET EXPLORER
    if(ereg("MSIE ([0-9].[0-9]{1,2})", $_SERVER["HTTP_USER_AGENT"])) {

    header("Content-Type: application/octetstream");
    header("Content-Disposition: inline; filename=$nom");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Pragma: public");

    } else {

    header("Content-Type: application/octet-stream");
    header("Content-Disposition: attachment; filename=$nom");
    header("Expires: 0");
    header("Pragma: no-cache");

    }

    echo $data;


    Questa è la parte di codice, che mi scrive il nome:
    header("Content-Disposition: inline; filename=$nom");


    Saluti.

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.