Visualizzazione risultati 1 fino 17 di 17

Discussione: un script php consente di cancellare i file

  1. #1
    Guest

    Unhappy un script php consente di cancellare i file

    salve a tutti!! ho trovato questo script su un sito web funziona benisimo, su tutte le sue funzioni, lo posto anche, cosi potrebbe essere utile a qualche utente, ma cmq la cosa strana e che se modifico la cartella per visualizari i file :
    Codice HTML:
    $upload_dir = "tipocartella/";
    $upload_url = $url_dir."tipocartella/";
    $message ="";
    if (!is_dir("tipocartella")) {
    cosi non mi consente piu di cancellare i file con il tasto (X), ma upload continua a funzionare, e visualizare i file nella cartella, ma non funziona piu il tasto per eliminare i file se cambio il nome della cartella, non riesco a capire dove sia errore, cosa cambia se gli modifico la cartella.
    Codice PHP:
    <?php

    $MAX_SIZE
    = 2000000;
    $FILE_EXTS = array('.jpg','.gif','.png');
    $DELETABLE = true;

    $site_name = $_SERVER['HTTP_HOST'];
    $url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
    $url_this = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];

    $upload_dir = "files/";
    $upload_url = $url_dir."files/";
    $message ="";

    if (!
    is_dir("files")) {
    if (!
    mkdir($upload_dir))
    die (
    "upload_files directory doesn't exist and creation failed");
    if (!
    chmod($upload_dir,0755))
    die (
    "change permission to 755 failed.");
    }

    if (
    $_REQUEST[del] && $DELETABLE) {
    $resource = fopen("log.txt","a");
    fwrite($resource,date("Ymd h:i:s")."DELETE - $_SERVER[REMOTE_ADDR]"."$_REQUEST[del]\n");
    fclose($resource);

    if (
    strpos($_REQUEST[del],"/.")>0); //possible hacking
    else if (strpos($_REQUEST[del],$upload_dir) === false); //possible hacking
    else if (substr($_REQUEST[del],0,6)==$upload_dir) {
    unlink($_REQUEST[del]);
    print
    "<script>window.location.href='$url_this?message=deleted successfully'</script>";
    }
    }
    else if (
    $_FILES['userfile']) {
    $resource = fopen("log.txt","a");
    fwrite($resource,date("Ymd h:i:s")."UPLOAD - $_SERVER[REMOTE_ADDR]"
    .$_FILES['userfile']['name']." "
    .$_FILES['userfile']['type']."\n");
    fclose($resource);

    $file_type = $_FILES['userfile']['type'];
    $file_name = $_FILES['userfile']['name'];
    $file_ext = strtolower(substr($file_name,strrpos($file_name,".")));

    if (
    $_FILES['userfile']['size'] > $MAX_SIZE)
    $message = "The file size is over 2MB.";

    else if (!
    in_array($file_ext, $FILE_EXTS))
    $message = "Sorry, $file_name($file_type) is not allowed to be uploaded.";
    else
    $message = do_upload($upload_dir, $upload_url);

    print
    "<script>window.location.href='$url_this?message=$message'</script>";
    }
    else if (!
    $_FILES['userfile']);
    else
    $message = "Invalid File Specified.";

    $handle=opendir($upload_dir);
    $filelist = "";
    while (
    $file = readdir($handle)) {
    if(!
    is_dir($file) && !is_link($file)) {
    $filelist .= "<a href='$upload_dir$file'>".$file."</a> - URL: <b>$upload_url$file</b>";
    if (
    $DELETABLE)

    $filelist .= " Added at ".date("d-m H:i", filemtime($upload_dir.$file))
    .
    "";
    $filelist .= " <a style='text-decoration:none; font-weight:bold' href='?del=$upload_dir".urlencode($file)."' title='delete'>x</a>";
    $filelist .="<br>";
    }
    }

    function
    do_upload($upload_dir, $upload_url) {

    $temp_name = $_FILES['userfile']['tmp_name'];
    $file_name = $_FILES['userfile']['name'];
    $file_name = str_replace("\\","",$file_name);
    $file_name = str_replace("'","",$file_name);
    $file_path = $upload_dir.$file_name;

    //File Name Check
    if ( $file_name =="") {
    $message = "Invalid File Name Specified";
    return
    $message;
    }

    $result = move_uploaded_file($temp_name, $file_path);
    if (!
    chmod($file_path,0777))
    $message = "change permission to 777 failed.";
    else
    $message = ($result)?"$file_name was uploaded successfully." :
    "Something is wrong with uploading the file.";
    return
    $message;
    }
    ?>

    <html>
    <head>
    <title>Simple uploader</title>
    <link rel=stylesheet href=style.css>
    </head>
    <body>
    <br><br>
    <center>
    <font color=red><?=$_REQUEST[message]?></font>
    <br>
    <form name="upload" id="upload" ENCTYPE="multipart/form-data" method="post">
    Upload File <input type="file" id="userfile" name="userfile">
    <input type="submit" name="upload" value="Upload">
    </form>

    <br><b><u>Uploaded files:</b></u><br><br>

    <?=$filelist?><br>
    <a style="text-decoration:none"</a>
    </sup></small>
    </center>
    http://lnx.webskey.it/image/image/upload.php
    ecco un essempio dello script ho cercato di modificare la cartella e funziona tutto tranne che il (X) per cancellare i file dopo uploadati

  2. #2
    Guest

    Predefinito

    Un error_reporting(E_ALL); all'inizio dello script non guasta mai.

    In secondo luogo, prova a cambiare $_REQUEST[del] in $_GET['del']


  3. #3
    Guest

    Predefinito

    provato ma non funziona piu neanche lo script se cambio $_REQUEST[del] in $_GET['del']

  4. #4
    Guest

    Predefinito

    Ed aggiungendo la funzione che ti ho consigliato all'inizio dello script, cosa ricevi?


  5. #5
    Guest

    Predefinito

    ciao grazie per rispondermi e cercare di darmi un aiuto, ma il fatto e che non ricevo nessun errore, solo non e quello il problema se hai aperto il link vedi che non funziona il tasto X, che pero se invece non modifico lo script funziona, cerco solo di capire dalla script originale come posso fare per cambiargli la destinazione da /files in /cartella vorrei solo cambiare il nome tutto qui, ma lo script che ho postato funziona a meraviglia, il problema sta nel tasto x che dovrebbe cancellare i file ma non li cancella se cambio nome alla cartella di esecuzione, come mostrato su gli script php..

    cmq ho inserito il error_reporting(E_ALL);
    e mi da il seguente messaggio:

    Notice: Use of undefined constant del - assumed 'del' in /web/htdocs/www.webskey.it/home/image/image/upload.php on line 43 Notice: Use of undefined constant del - assumed 'del' in /web/htdocs/www.webskey.it/home/image/image/upload.php on line 48 Notice: Use of undefined constant del - assumed 'del' in /web/htdocs/www.webskey.it/home/image/image/upload.php on line 49 Notice: Use of undefined constant del - assumed 'del' in /web/htdocs/www.webskey.it/home/image/image/upload.php on line 50


    Notice: Use of undefined constant message - assumed 'message' in /web/htdocs/www.webskey.it/home/image/image/upload.php on line 132 Notice: Undefined index: message in /web/htdocs/www.webskey.it/home/image/image/upload.php on line 132
    Ultima modifica di webskey : 30-01-2012 alle ore 10.38.30

  6. #6
    L'avatar di EuroSalute
    EuroSalute non è connesso AlterVistiano
    Data registrazione
    12-05-2003
    Messaggi
    969

    Predefinito

    il problema è a questa linea di codice:
    Codice PHP:
    else if (substr($_REQUEST[del],0,6)==$upload_dir) {
    sostituiscila con questa:
    Codice PHP:
    else if (substr($_REQUEST[del],0,strlen($upload_dir))==$upload_dir) {
    LOTTO MATEMATICO-SCENTIFICO che FUNZIONA:
    Scripts di Calcolo Automatico Metodologie http://eurosalute.altervista.org

    VINCI OGNI SETTIMANA CON IL NUOVO METODO 5
    FAI IL TEST CON L'ANALISI VINCITE

  7. #7
    Guest

    Predefinito

    incredibile!!! si funziona grazie 1000 :-))) sarebbe magnifico pero se ci sarebbe un metodo per far comparire i file dentro una textarea, e magari far in modo che non compaia la directory dei file,(url:) ma solo la data e il nome
    Ultima modifica di webskey : 30-01-2012 alle ore 17.02.41

  8. #8
    L'avatar di EuroSalute
    EuroSalute non è connesso AlterVistiano
    Data registrazione
    12-05-2003
    Messaggi
    969

    Predefinito

    in una textarea stamperebbe l'html corrispondente....
    es:
    Codice HTML:
    <a href='files-img/Tree.jpg'>Tree.jpg</a> -  Added at  30-01 16:55 <a style='text-decoration:none; font-weight:bold'  href='?del=files-img/Tree.jpg' title='delete'>x</a><br><a href='files-img/Forest.jpg'>Forest.jpg</a> -  Added at  30-01 16:59 <a style='text-decoration:none; font-weight:bold'  href='?del=files-img/Forest.jpg' title='delete'>x</a><br><a href='files-img/1043_51.jpg'>1043_51.jpg</a> -  Added at  30-01 16:54 <a style='text-decoration:none; font-weight:bold'  href='?del=files-img/1043_51.jpg' title='delete'>x</a><br>
    bisogna utilizzare javascript...

    oppure inserire un inline frame e puntare l'src ad un file.html o php che richiama il valore di $filelist precedentemente salvato in un file.txt o inviato via query string.....

    per javascript consiglierei questo script:
    http://www.dynamicdrive.com/dynamici...lbar/index.htm

    da implementare e provare....

    non so se esiste qualche altro metodo...

    sostituisci questa linea:
    Codice PHP:
    $filelist .= "<a href='$upload_dir$file'>".$file."</a> - URL: <b>$upload_url$file</b>";
    con :
    Codice PHP:
    $filelist .= "<a href='$upload_dir$file'>".$file."</a> - ";
    LOTTO MATEMATICO-SCENTIFICO che FUNZIONA:
    Scripts di Calcolo Automatico Metodologie http://eurosalute.altervista.org

    VINCI OGNI SETTIMANA CON IL NUOVO METODO 5
    FAI IL TEST CON L'ANALISI VINCITE

  9. #9
    Guest

    Predefinito

    a un altra cosa scusa se chiedo troppo :-)
    sarebbe possibile far in modo che quando si preme su un file che viene uploadato, anzichè far aprire il file, far in modo che compaia il download del file... sarebbe stupendo

  10. #10
    L'avatar di EuroSalute
    EuroSalute non è connesso AlterVistiano
    Data registrazione
    12-05-2003
    Messaggi
    969

    Predefinito

    un modo semplice è forzare il download con gli header:

    modifichi la linea seguente così:
    Codice PHP:
    $filelist .= "<a href='download.php?file=$upload_dir$file'>".$file."</a> - ";
    poi crei un nuovo file e lo chiami download.php con il codice seguente:

    Codice PHP:
    <?php
    // definisco una variabile con il percorso alla cartella
    // in cui sono archiviati i file
    //$dir = "/root/www/download/";

    // Recupero il nome del file dalla querystring
    // e lo accodo al percorso della cartella del download
    $file = $_GET['file'];

    // verifico che il file esista
    if(!file_exists($file))
    {
    // se non esiste chiudo e stampo un errore
    die("Il file non esiste!");
    }else{
    // Se il file esiste...
    // Imposto gli header della pagina per forzare il download del file
    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-Disposition: attachment; filename= " . $file);
    header("Content-Transfer-Encoding: binary");
    // Leggo il contenuto del file
    readfile($file);
    }
    ?>
    Ultima modifica di EuroSalute : 30-01-2012 alle ore 22.17.23 Motivo: correzzioni gramm...+ file_exists
    LOTTO MATEMATICO-SCENTIFICO che FUNZIONA:
    Scripts di Calcolo Automatico Metodologie http://eurosalute.altervista.org

    VINCI OGNI SETTIMANA CON IL NUOVO METODO 5
    FAI IL TEST CON L'ANALISI VINCITE

  11. #11
    Guest

    Predefinito

    ciao scusami forse io ho fatto un po di confusione, nel mandarle un messagio in pvt per quelli heander non era rivolto a questo post ma a questo http://forum.it.altervista.org/i-ser...ltervista.html....

    url di esecuzione: http://webskey.altervista.org/img/image/upload.php
    cmq ho trovato un altro script php che funziona migliore, solo che ha lo stesso problema che se cambio la cartella di esecuzione, non funziona piu la cancellazione dei file, stavo cercando anche qui questa riga ma non ce
    Codice PHP:
    else if (substr($_REQUEST[del],0,6)==$upload_dir) {
    deve essere un altra cosa che pero crea lo stesso difetto, mica per favore mi ci dareste un occhiata, per vadere quale riga script crea questo conflitto, posto lo script php:
    Codice PHP:
    upload.php <?


    class Upload {

    ## User edited variables ##

    public $upload_dir = 'cartella/'; // Name of the upload directory - create it yourself and chmod it to 777
    public $deletable = true; // Are files deletable ? true or false
    public $file_extensions = array('.zip','.jpg','jpeg','.png','.gif','.doc'); // File extensions allowed to be uploaded
    public $max_size = 200000000; // Maximum file size

    ## Stop editing passed this point unless you know what you are doing ##

    function index() {
    if (isset(
    $_REQUEST['delete'])) {
    $this->delete($_REQUEST['delete']);
    }
    if (isset(
    $_REQUEST['action']) && $_REQUEST['action'] == 'upload') {
    $this->do_upload();
    } else {
    echo
    '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US">
    <head>
    <title>Sava\'s Place - Simple Upload</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <style type="text/css">body {margin: 0 auto;padding: 0;color: #3C475B;font-family: "segoe ui", tahoma, sans-serif;font-size: small;}a:link { color: #0a4e96; }a:visited { color: #0a4e96; }a:hover { color: #333; }a:active { color: #000; }#content { margin: 0 auto; padding: 1em 2em 1em 2em;}#content table { border:1px solid #ccc; min-width:600px; text-align:center;}#header h1 { margin: 0; padding: 25px 0 0 0;}#header p { font-weight: bold; margin: 0; padding: 0 0 80px 0;}#footer { border-top: 1px dashed #ccc; font-size: 11px; color: #999; align:center;}</style>
    </head>
    <body>
    <div id="content">
    <div id="header">
    </div>'
    ;
    $this->show_message();
    $this->show_upload_form();
    $this->show_files();
    }
    }

    function
    do_upload() {
    $site_name = $_SERVER['HTTP_HOST'];
    $url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
    $url_this = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
    $upload_dir = $this->upload_dir;
    $upload_url = $url_dir.$this->upload_dir;
    $temp_name = $_FILES['userfile']['tmp_name'];
    $file_name = $_FILES['userfile']['name'];
    $file_name = str_replace("\\","",$file_name);
    $file_name = str_replace("'","",$file_name);
    $file_path = $this->upload_dir.$file_name;
    $file_ext = strtolower(substr($file_name,strrpos($file_name,".")));
    $file_type = $_FILES['userfile']['type'];
    if (
    $file_name == "") {
    $message = "Invalid File Name Specified";
    header("Location: ".$url_this.'?message='.$message);
    }
    elseif (
    $_FILES['userfile']['size'] > $this->max_size) {
    $message = "The file size is over 2MB.";
    header("Location: ".$url_this.'?message='.$message);
    }
    elseif (!
    in_array($file_ext, $this->file_extensions)) {
    $message = "Sorry, $file_name($file_type) is not allowed to be uploaded.";
    header("Location: ".$url_this.'?message='.$message);
    }
    else {
    $result = move_uploaded_file($temp_name, $file_path);
    if (!
    chmod($file_path,0777)) $message = "change permission to 777 failed."; else $message = ($result)?"$file_name was uploaded successfully." : "Something is wrong with uploading the file.";
    header("Location: ".$url_this.'?message='.$message);
    }
    }

    function
    show_message() {
    if(isset(
    $_REQUEST['message'])) {
    echo
    $_REQUEST['message'];
    }
    }

    function
    show_upload_form() {
    echo
    '<form action="'.$_SERVER['PHP_SELF'].'?action=upload" name="upload" id="upload" enctype="multipart/form-data" method="post">
    Upload File <input type="file" id="userfile" name="userfile" />
    <input type="submit" name="upload" value="Upload" />
    </form>'
    ;
    }

    function
    show_files() {
    $handle=opendir($this->upload_dir);
    $url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
    $upload_url = $url_dir."/files/";
    $filelist = "<h3>Uploaded files</h3>";
    $filelist .= '<table class="table"><tr><th>Name</th><th>Added at</th><th>Actions</th></tr>';
    while (
    $file = readdir($handle)) {
    if(!
    is_dir($file) && !is_link($file)) {
    $filelist .= '<tr><td>'.$file.'</td>';
    $filelist .= '<td>'.date("d-m-Y H:i", filemtime($this->upload_dir.$file))."</td>"."";
    $filelist .= '<td><a style="text-decoration:none; font-weight:bold" href="'.$upload_url.$file.'" target="_blank">dowload</a> ';
    if (
    $this->deletable) {
    $filelist .= "<a style='text-decoration:none; font-weight:bold' href='?delete=$this->upload_dir".urlencode($file)."' title='delete'>Delete</a></td></tr>";
    } else {
    echo
    '</td>';
    }
    }
    }
    $filelist .= '</table>';
    echo
    $filelist;
    }

    function
    delete($todelete) {
    if (
    strpos($todelete,"/.")>0);
    else if (
    strpos($todelete,$this->upload_dir) === false);
    else if (
    substr($_REQUEST[del],0,strlen($upload_dir))==$upload_dir) {
    if(
    unlink($todelete)) {
    $message = 'Deleted succesfully';
    header('Location: '.$_SERVER['PHP_SELF'].'?message='.$message);
    }
    }
    }
    }

    // Start your engines
    $upload = new Upload();

    // Go go go
    $upload->index();
    ?>
    scusate ho risolto, :-) il problema e che sono io cecco, non riuscivo a vedere la riga di script php, cmq ora funziona, pero sarebbe sempre mitico se si riuscirebbe a creare una funzione con il tasto (dovnload) anziche aprire le foto, far partire il dowload delle foto:-)))))
    Ultima modifica di webskey : 31-01-2012 alle ore 12.53.35

  12. #12
    L'avatar di EuroSalute
    EuroSalute non è connesso AlterVistiano
    Data registrazione
    12-05-2003
    Messaggi
    969

    Predefinito

    per il download...

    sostituisci questa linea di codice nella funzione show_files():
    Codice PHP:
    $filelist .= '<td><a style="text-decoration:none; font-weight:bold" href="'.$upload_url.$file.'" target="_blank">dowload</a> ';
    con:
    Codice PHP:
    $filelist .= '<td><a style="text-decoration:none; font-weight:bold" href="download.php?file='.$upload_url.$file.'">dowload</a> ';
    il codice del file download.php precedentemente postato.
    LOTTO MATEMATICO-SCENTIFICO che FUNZIONA:
    Scripts di Calcolo Automatico Metodologie http://eurosalute.altervista.org

    VINCI OGNI SETTIMANA CON IL NUOVO METODO 5
    FAI IL TEST CON L'ANALISI VINCITE

  13. #13
    Guest

    Predefinito

    ho cambiato quella riga script e poi creato la pagina download.php ma pultroppo mi dice sempre che il file non esiste :-(
    url: http://webskey.altervista.org/img/image/upload.php
    Codice PHP:
    <?php
    // definisco una variabile con il percorso alla cartella
    // in cui sono archiviati i file
    $dir = 'cartella/';

    // Recupero il nome del file dalla querystring
    // e lo accodo al percorso della cartella del download
    $file = $_GET['file'];

    // verifico che il file esista
    if(!file_exists($file))
    {
    // se non esiste chiudo e stampo un errore
    die("Il file non esiste!");
    }else{
    // Se il file esiste...
    // Imposto gli header della pagina per forzare il download del file
    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-Disposition: attachment; filename= " . $file);
    header("Content-Transfer-Encoding: binary");
    // Leggo il contenuto del file
    readfile($file);
    }
    ?>
    Ultima modifica di webskey : 31-01-2012 alle ore 20.50.28

  14. #14
    L'avatar di EuroSalute
    EuroSalute non è connesso AlterVistiano
    Data registrazione
    12-05-2003
    Messaggi
    969

    Predefinito

    non devi specificare nessuna root.....quello è un commento come le altre linee di codice precedute da //, quando costruisco uno script commento quello che faccio, i commenti non sono codice attivo e servono solo per spiegare quello che uno sta facendo.....e per ricordarsi quello che ha fatto.

    era uno script fatto a suo tempo, i commenti se vuoi puoi cancellarli....

    diventa:
    Codice PHP:
    <?php

    $file
    = $_GET['file'];


    if(!
    file_exists($file))
    {

    die(
    "Il file non esiste!");

    }else{

    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-Disposition: attachment; filename= " . $file);
    header("Content-Transfer-Encoding: binary");

    readfile($file);
    }
    ?>

    dice che il file non esiste, in quanto $upload_url è l'url preceduto da http, e file_exists() non funziona per gli url, quindi prova a sostituire $upload_url con $upload_dir

    la linea diventa:
    Codice PHP:
    $filelist .= '<td><a style="text-decoration:none; font-weight:bold" href="download.php?file='.$upload_dir.$file.'">dowload</a> ';
    devi inoltre aggiungere alla funzione show_files() questa linea di codice:
    Codice PHP:
    $upload_dir = $this->upload_dir;
    un test qui:
    http://eurosalute.altervista.org/tes...va-upload2.php
    Ultima modifica di EuroSalute : 31-01-2012 alle ore 22.14.01 Motivo: piùinfo
    LOTTO MATEMATICO-SCENTIFICO che FUNZIONA:
    Scripts di Calcolo Automatico Metodologie http://eurosalute.altervista.org

    VINCI OGNI SETTIMANA CON IL NUOVO METODO 5
    FAI IL TEST CON L'ANALISI VINCITE

  15. #15
    Guest

    Predefinito

    funziona grazie 1000 :-) scusa mi piace di piu come e impostato il tuo upload, la grafica e stupenda metteresti tutto archivio sul tuo server in formato zip per farmelo scaricare, so che forse sto a chiedere troppo :-)) ti prego e piu bella la grafica .css che hai creato te... cio per far in modo di avere qualla grafica e con la barra di scorrimento, che ci hai inserito te come posso fare?
    Ultima modifica di webskey : 01-02-2012 alle ore 00.26.30

  16. #16
    L'avatar di EuroSalute
    EuroSalute non è connesso AlterVistiano
    Data registrazione
    12-05-2003
    Messaggi
    969

    Predefinito

    di seguito è il codice completo con le modifiche...

    ho caricato alla pagina di prova i file immagine e .css e .js necessari per il javascript, che trovi anche a questo indirizzo:
    http://www.dynamicdrive.com/dynamici...lbar/index.htm

    Codice PHP:
    <?php

    class Upload {

    ## User edited variables ##

    public $upload_dir = 'files-img/'; // Name of the upload directory - create it yourself and chmod it to 777
    public $deletable = true; // Are files deletable ? true or false
    public $file_extensions = array('.zip','.jpg','.jpeg','.png','.gif','.doc','.js','.css'); // File extensions allowed to be uploaded
    public $max_size = 200000000; // Maximum file size

    ## Stop editing passed this point unless you know what you are doing ##

    function index() {
    if (isset(
    $_REQUEST['delete'])) {
    $this->delete($_REQUEST['delete']);
    }
    if (isset(
    $_REQUEST['action']) && $_REQUEST['action'] == 'upload') {
    $this->do_upload();
    } else {
    echo
    '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US">

    <head>
    <title>Sava\'s Place - Simple Upload</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <style type="text/css">body {margin: 0 auto;padding: 0;color: #3C475B;font-family: "segoe ui", tahoma, sans-serif;font-size: small;}a:link { color: #0a4e96; }a:visited { color: #0a4e96; }a:hover { color: #333; }a:active { color: #000; }#content { margin: 0 auto; padding: 1em 2em 1em 2em;}#content table { border:1px solid #ccc; min-width:600px; text-align:center;}#header h1 { margin: 0; padding: 25px 0 0 0;}#header p { font-weight: bold; margin: 0; padding: 0 0 80px 0;}#footer { border-top: 1px dashed #ccc; font-size: 11px; color: #999; align:center;}</style>



    <link href="js/slickscroll.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
    <script src="js/jquery.mousewheel.js" type="text/javascript"></script>
    <script src="js/jquery.slickscroll.js" type="text/javascript">
    </script>

    <script type="text/javascript">

    var scroll1, scroll2, short

    $(document).ready(function () {
    scroll1 = $("#divMain1").slickscroll({ "verticalscrollbar": true });
    scroll2 = $("#divMain2").slickscroll({ "horizontalscrollbar": true });
    short = $("#divShort").slickscroll({ "verticalscrollbar": true });

    $("#btnAdd").click(function () {
    $("#divShort").append("blah blah blah blah blah blah blah blah blah blah blah blah blah blah");
    short.InValidate();
    });
    });


    </script>

    <style>

    /* CSS for demo containers. Remove/ edit if desired */

    #divMain1
    { position:absolute;
    width: 600px;
    height: 150px;
    background-color: #CFFDCE;
    overflow:hidden;
    }

    #divMain2
    {
    position:absolute;
    right:25px;
    top: 25px;
    width: 600px;
    height: 150px;
    background-color: #CFFDCE;
    overflow:hidden;
    }

    #divShort
    {
    width: 200px;
    height: 200px;
    margin-bottom: 2em;
    background-color: black;
    color: white;
    overflow:hidden;
    }

    </style>
    </head>
    <body>
    <div id="content">
    <div id="header">
    </div>'
    ;
    $this->show_message();
    $this->show_upload_form();

    //modifica:
    $filelist=$this->show_files();

    echo
    '<div id="divMain1" class="slickscroll">';
    echo
    $filelist;
    echo
    '</div>';
    /*echo '<div id="divMain2" class="slickscroll">';
    echo $filelist;
    echo '</div>';*/
    echo '</div></body></html>';

    }
    }

    function
    do_upload() {
    $site_name = $_SERVER['HTTP_HOST'];
    $url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
    $url_this = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
    $upload_dir = $this->upload_dir;
    $upload_url = $url_dir.$this->upload_dir;
    $temp_name = $_FILES['userfile']['tmp_name'];
    $file_name = $_FILES['userfile']['name'];
    $file_name = str_replace("\\","",$file_name);
    $file_name = str_replace("'","",$file_name);
    $file_path = $this->upload_dir.$file_name;
    $file_ext = strtolower(substr($file_name,strrpos($file_name,".")));
    $file_type = $_FILES['userfile']['type'];
    if (
    $file_name == "") {
    $message = "Invalid File Name Specified";
    header("Location: ".$url_this.'?message='.$message);
    }
    elseif (
    $_FILES['userfile']['size'] > $this->max_size) {
    $message = "The file size is over 2MB.";
    header("Location: ".$url_this.'?message='.$message);
    }
    elseif (!
    in_array($file_ext, $this->file_extensions)) {
    $message = "Sorry, $file_name($file_type) is not allowed to be uploaded.";
    header("Location: ".$url_this.'?message='.$message);
    }
    else {
    $result = move_uploaded_file($temp_name, $file_path);
    if (!
    chmod($file_path,0777)) $message = "change permission to 777 failed."; else $message = ($result)?"$file_name was uploaded successfully." : "Something is wrong with uploading the file.";
    header("Location: ".$url_this.'?message='.$message);
    }
    }

    function
    show_message() {
    if(isset(
    $_REQUEST['message'])) {
    echo
    $_REQUEST['message'];
    }
    }

    function
    show_upload_form() {
    echo
    '<form action="'.$_SERVER['PHP_SELF'].'?action=upload" name="upload" id="upload" enctype="multipart/form-data" method="post">
    Upload File <input type="file" id="userfile" name="userfile" />
    <input type="submit" name="upload" value="Upload" />
    </form>'
    ;
    }

    function
    show_files() {
    $handle=opendir($this->upload_dir);
    $url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);

    //modifica:
    $upload_dir = $this->upload_dir;
    $upload_url = $url_dir.$upload_dir;

    $filelist = "<h3>Uploaded files</h3>";
    $filelist .= '<table class="table"><tr><th>Name</th><th>Added at</th><th>Actions</th></tr>';
    while (
    $file = readdir($handle)) {
    if(!
    is_dir($file) && !is_link($file)) {
    $filelist .= '<tr><td>'.$file.'</td>';
    $filelist .= '<td>'.date("d-m-Y H:i", filemtime($upload_dir.$file))."</td>"."";

    //$filelist .= '<td><a style="text-decoration:none; font-weight:bold" href="'.$upload_url.$file.'" target="_blank">dowload</a> ';

    //modifica:
    $filelist .= '<td><a style="text-decoration:none; font-weight:bold" href="download.php?file='.$upload_dir.urlencode($file).'" title="Download">Dowload</a> ';

    if (
    $this->deletable) {
    $filelist .= "<a style='text-decoration:none; font-weight:bold' href='?delete=$upload_dir".urlencode($file)."' title='Delete'>Delete</a></td></tr>";
    } else {
    echo
    '</td>';
    }
    }
    }

    $filelist .= '</table>';

    //modifica:
    /*echo '<div id="divMain1" class="slickscroll">';
    echo $filelist;
    echo '</div>';
    echo '<div id="divMain2" class="slickscroll">';
    echo $filelist;
    echo '</div></body></html>';*/

    return $filelist;


    }

    function
    delete($todelete) {
    if (
    strpos($todelete,"/.")>0);
    else if (
    strpos($todelete,$this->upload_dir) === false);
    else if (
    substr($_REQUEST[del],0,strlen($upload_dir))==$upload_dir) {
    if(
    unlink($todelete)) {
    $message = 'Deleted succesfully';
    header('Location: '.$_SERVER['PHP_SELF'].'?message='.$message);
    }
    }
    }
    }

    // Start your engines
    $upload = new Upload();

    // Go go go
    $upload->index();
    ?>
    LOTTO MATEMATICO-SCENTIFICO che FUNZIONA:
    Scripts di Calcolo Automatico Metodologie http://eurosalute.altervista.org

    VINCI OGNI SETTIMANA CON IL NUOVO METODO 5
    FAI IL TEST CON L'ANALISI VINCITE

  17. #17
    Guest

    Predefinito

    grazie :-) sei un genio stupendo

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •