Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Upload - Ma viene fatto il submit?

    Ciao a tutti, premetto che sono un novizio di PHP e di aver letto già molti post trovati sull'argomento su questo Forum, ma ancora non riesco a risolvere il mio problema.

    Sto facendo lavorare il php usando IIS come Web Server.
    Nel php.ini ho impostato: upload_max_filesize = 10M

    Ho preparato una pagina per l'upload di file che funziona perfettamente con file fino a circa 2MB, ma quando provo ad uplodare un file di dimensioni maggiori, inizia il problema.
    In questo caso la pagina, pur non producendo alcun errore, sembra quasi fare il submit per poi tornare alla visualizzazione classica con un redirect. Il problema è che non esiste alcun redirect nella pagina ed in modalità post è prevista una gestione dell'errore sui file maggiori di certe dimensioni.
    Non capisco proprio dove sia il problema, errori non ne ho, il file non viene uplodato, e la pagina non si ferma come dovrebbe nella modalità POST.

    Potete aiutarmi


    Vi posto il mio codice: VVoVe:
    Codice PHP:
    <?php
        
    include ("../inc/funzioni.php");
        include (
    "../inc/connex.inc");
        
    check_log();
    ?>
    <?
    //VARIABILI DI SETTING

    // Password
    //$psw="password";

    // Nome della directory in cui verranno salvati i files (con lo slash "/")
    $d="../file/";

    // Dimensione massima del file in bytes (15000= 15KB)    
    //$s=15000;
    $s=5242880//5242880=5 MB

    // Messaggio Trasferimento del file...
    $c="Salvataggio in Corso...";

    // Messaggio di errore (Dimensione del file al di sopra del limite imposto)
    $err="Dimensione del file al di sopra del limite imposto.
    Il limite è di " 
    . (($s/1024)/1024) . " MB";

    // Messaggio di errore (Non trovato, o Casella-Sfoglia-file vuota)
    $err1="FILE NON SELEZIONATO";


    // Messaggio di OK
    $ok="OK";

    // Messaggio torna-indietro
    $back="Inserisci altri Files";


    // Numero di uploads simulanei min=1, max=14
    $up=3;

    ?>
    <HTML>
        <HEAD>
            <TITLE>Leone Bellantese</TITLE>
            <link rel="stylesheet" type="text/css" href="style.css">
            <script language="javascript">
            <!--
                function controlla()
                {
                    if (form1.cat_download.value=="")
                    {
                        alert ("Seleziona una categoria di appartenenza per i tuoi File!!!")
                    }
                    else
                    {
                        form1.submit()
                    }
                }
            -->
            </script>
        </HEAD>

        <BODY leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" bgcolor=#ffffcc>
            




            <TABLE width=550 align=center BORDER=1 CELLSPACING=0 CELLPADDING=0 bgcolor=#ffffcc bordercolor=darkblue>
                <tr>
                    <td align="center" class="txtRisposte">
                        


                        <font class="txtDomanda">UPLOAD FILE</font>
                        


                        <?
                            
    if ($d<>'')
                            {
                                if (!(
    file_exists($d)))
                                { 
    /*if the dir does not exist...create it*/
                                    
    umask(011);
                                    
    mkdir($d,"0777");
                                    echo 
    "La Cartella $d è stata creata.";
                                }
                            }
                        
                            if (
    $_POST['a']<>'1')
                            { 
                                
    //Faccio apparire le caselle per l'UPLOAD
                                
    echo "<FORM ID=\"form1\" NAME=\"form1\" METHOD=\"Post\" ENCTYPE=\"multipart/form-data\" ACTION=\"" $_SERVER['PHP_SELF'] . "\">
                                    \n
                                    <input type=hidden name=a value=1>
                                    \n"
    ;
    //echo "controllare upload_max_filesize sul php.ini in c:/php

    ";
                                ?>                            

                                <table cellpadding="
    0" cellspacing="0" border="0" width="100%">
                                    <tr>
                                        <td class="
    txtDomanda" align="center">
                                            Seleziona La categoria per la quale vuoi inserire questi file:
                                        </td>
                                    </tr>
                                    <tr>
                                        <td align=center>
                                            <?php
                                                
    $sql="SELECT FROM download_categorie";
                                                //echo 
    $sql;
                                                
    $lista_cat=@mysql_query($sql,$conn);
                                                if (!
    $lista_cat)
                                                {
                                                    exit ("
    Errore rilevazione Categorie esistenti!
    Contattare l'amministratore del sistema!");
                                                }
                                                if (mysql_num_rows($lista_cat)==0)
                                                {
                                                    echo "<font class=testo_errore>Nessun Categoria DownLoad Esistente
    Cliccare [url='
    gest_cat_download.php']qui[/url] per creare delle categorie!!!</font>";
                                                }
                                                else
                                                {?>
                                                    <select name="cat_download" id="cat_download" class="textbox">
                                                    <option value="">Seleziona una categoria...</option>
                                                    <?php
                                                    while ($categoria = mysql_fetch_array($lista_cat))
                                                    {?>
                                                        <option value="<?php echo $categoria['
    id_cat_download']; ?>"><?php echo $categoria['nome_cat']; ?></option>
                                                    <?php
                                                    }?>
                                                    </select>
                                                <?php
                                                }
                                            ?>
                                            


                                        </td>
                                    </tr>
                                </table>

                                <?php
                                $k=1;
                                while ($k<=$up)
                                {
                                    echo "File $k: <INPUT TYPE=\"file\" NAME=\"file$k\">
    \n";
                                    echo "Descrizione: <INPUT TYPE=\"text\" NAME=\"descrizione$k\" ID=\"descrizione$k\" size=\"50\">

    \n";
                                    $k++;
                                }
                                echo "<INPUT TYPE=\"button\" value=UPLOAD onClick=\"controlla()\">\n</FORM>";
                                echo "

    <a href=\"menu.php\">Menù</a>

    ";
                            }
                            else 
                            {
                                //echo "METODO POST";
                                $categoria_dei_file=$_POST["cat_download"];
                                $k=1;
                                while ($k<=$up)
                                {
                                    
                                    echo "$c File $k 
    ";
                                    $nome_temp=$HTTP_POST_FILES["file$k"]['
    tmp_name'];
                                    $size=$HTTP_POST_FILES["file$k"]['
    size'];
                                    $nome_file=$HTTP_POST_FILES["file$k"]['
    name'];
                                    $desc=$_POST["descrizione$k"];
                                    //echo $nome_temp . "
    ";
                                    //echo $size . "
    ";
                                    //echo $nome_file . "
    ";
                                    //echo $desc . "
    ";
                                    //echo "
    ";
                                    
                                    if (!is_uploaded_file($nome_temp))
                                    {
                                        //unlink($HTTP_POST_FILES["file$k"]['
    tmp_name']);
                                        echo ": $err1";
                                    }
                                    elseif ($size > $s) 
                                    {
                                        //unlink($HTTP_POST_FILES["file$k"]['
    tmp_name']);
                                        echo ": $err";
                                    }
                                    else
                                    {
                                        echo " ($nome_file): ";
                                        copy($nome_temp,"$d$nome_file"); // Copa del file
                                        //unlink($HTTP_POST_FILES["file$k"]['
    tmp_name']);
                                        
                                        //Appena copiato il file inserisco il record nel database nella tabella '
    download file'
                                        $sql="INSERT INTO download_file SET
                                            descrizione='
    $desc',
                                            nome_file='
    $nome_file',
                                            size=$size,
                                            id_cat=$categoria_dei_file";
                                            //echo $sql . "
    ";
                                            if (!mysql_query($sql,$conn))
                                            {
                                                exit ("Errore durante L'
    inserimento dei file nel Database
    Contatta l
    'amministratore del sistema!");    
                                            }
                                        
                                        
                                        echo $ok;
                                    }
                                    echo "

    ";
                                    $k++;
                                }
                                echo "

    <a href=\"" . $_SERVER['
    PHP_SELF'] . "\">$back</a>

    ";
                                echo "<a href=\"menu.php\">Menù</a>

    ";
                            }
                        ?>
                    </td>
                </tr>
            </table>
        </body>
    </html>
    Un Grazie anticipato a chiunque saprà aiutarmi

  2. #2
    anche io ho avuto lo stesso problema ma poi facendo la pbblicazionne in remoto tutto si è risolto.

    Prova

    PS usa Apache che è meglio!
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  3. #3
    Già un po mi hai rincuorato...

    alcuno sa però il perchè questo succede.
    Non vorrei avere sorprese quando consegno questo lavoro al cliente!!

    P.S.: Una volta pubblicato comunque il sito girerà su Apache ....

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    58
    Leggendo i vari post ho trovato questo.
    Purtoppo ho necessità dei file di cui fai:

    include ("../inc/funzioni.php");
    include ("../inc/connex.inc");
    check_log();


    perchè mi da errore:

    Warning: main(../inc/funzioni.php) [function.main]: failed to open stream: No such file or directory in D:\webroot\www.miosito.it\provaup.php on line 3

    Warning: main() [function.include]: Failed opening '../inc/funzioni.php' for inclusion (include_path='.;c:\php4\pear') in D:\webroot\www.miosito.it\provaup.php on line 3

    Warning: main(../inc/connex.inc) [function.main]: failed to open stream: No such file or directory in D:\webroot\www.miosito.it\provaup.php on line 4

    Warning: main() [function.include]: Failed opening '../inc/connex.inc' for inclusion (include_path='.;c:\php4\pear') in D:\webroot\www.miosito.it\provaup.php on line 4

    Fatal error: Call to undefined function: check_log() in D:\webroot\www.miosito.it\provaup.php on line 5


    Inoltre, non è che per caso conosci uno script che mi consenta di effettuare un download di file che sono in una determinata cartella?
    Quello che vorrei fare è semplicemente:
    1) da un 'area riservata caricare dei file in una cartella con dei controlli su dimensione, estensione, che controlli l'esistenza del file nella cartella e che controlli anche la lunghezza max del nome del file con relativo avviso a rinominarlo nel caso fosse troppo lungo;
    2) da una pagina pubblica visualizzare il contenuto della cartella e i relativi link per poter scaricare i file.

    Ti ringrazio anticipatamente

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.