Odosielanie obrázkov na server( .gif; .png; .jpg)

Formulár na odoslanie:

<html>
   <head>
      <title>Upload obrazkov</title>
   </head>
   <body>
        <form enctype="multipart/form-data" action="spracuj.php" method="post">
            <input type="hidden" name="MAX_FILE_SIZE" value="16000" />
            Odoslat tento subor: <input name="obrazok" type="file" /><br />
            <input type="submit" value="Odoslat" />
        </form>
   </body>
</html>
                                                                                                                                  

Súbor na spracovanie obrázka:

<?php
    /* Konfiguracne nastavenie */
    $max_velkost_obrazku = 50000;
    $subor_povinny = true;
   
    /* Cielovy odresar prenosu */
    $stranka_odoslania = 'upload.php';
    $cielovy_adresar = '/server/www/fileupl/';
   
    $chybova_sprava = false;
    do {
       
        /* existuje prvok so suborom? */
        if ( !isset ( $_FILES['obrazok'] ) ){
            $chybova_sprava = 'Formular bol odoslany neuplny.';
            break;
        } else {
            $obrazok = $_FILES['obrazok'];
        }
       
        /* Overenie vsetkych moznych chyb */
        switch ( $obrazok['error'] ){
           
            case UPLOAD_ERR_INI_SIZE: // veľkosť súboru prekročila limit nastavený v súbore php.ini
                $chybova_sprava = 'Velkost obrazku prekrocila povoleny limit ' .
                    $max_velkost_obrazku . 'bajtov.';
                break 2;
           
            case UPLOAD_ERR_PARTIAL: // počas načítania súboru došlo ku chybe, bola načítaná len časť
                $chybova_sprava = 'Pri odoslani suboru doslo ku chybe, ' .
                    "skuste prosim znovu <a href='{$stranka_odoslania}'></a>.";
                break 2;
               
            case UPLOAD_ERR_NO_FILE: // nepodarilo sa na server odoslať žiadny súbor
                if ( $subor_povinny ){
                    $chybova_sprava = 'Nebol vybraty ziadny subor, ' .
                        "vyberte ho <a href='{$stranka_odoslania}'>tu</a>.";
                    break 2;
                }
                break 2;
               
            case UPLOAD_ERR_FORM_SIZE:
                $chybova_sprava = 'Velkost suboru je podla skryteho pola ' .
                    $_REQUEST[MAX_FILE_SIZE] . ".";
                   
            case UPLOAD_ERR_OK:
                if ( $obrazok['size'] > $max_velkost_obrazku ){
                    $chybova_sprava = 'Obrazok je prilis velky. Nemoze obsahovat viac nez ' .
                        $max_velkost_obrazku . 'bajtov.';
                }
                break 2;
               
            default:
                $chybova_sprava = "Doslo ke neznamej chybe, " .
                    "skuste to znovu <a href='{$stranka_odoslania}'>tu</a>";
        }
       
        /* musime overit ci su obrazky PNG alebo JPEG */
        if ( !in_array ( $obrazok['type'], array ( 'image/jpeg', 'image/pjpeg', 'image/png', 'image/gif' ) ) ){
            $chybova_sprava = "Povolene su iba formaty PNG, JPEG, GIF " .
                "opakujte pokus <a href='{$stranka_odoslania}'>tu</a>.";
            break;
        }
    } while ( 0 );
   
    /* Ak nedoslo ku chybe tak presunieme subor do prijatych suborov */
    if ( !$chybova_sprava ){
        if ( !@move_uploaded_file( $obrazok['tmp_name'], $cielovy_adresar . $obrazok['name'] ) ){
            $chybova_sprava = "Chyba pri presunuti suboru do cieloveho adresara," .
                "opakujte pokus <a href='{$stranka_odoslania}'>tu</a>.";
        }
    }
?>

<html>
<head><title>spracuj.php</title></head>
<body>
    <?php
        if ( $chybova_sprava ) {
            echo $chybova_sprava;
        } else {
    ?>
    <img src="fileupl/<?php echo $obrazok['name'] ?>" />
    <?php
    }
    ?>
</body>
</html>
                                                                                                                                  

Informácie:

Autor: pizet
www: http://
Kategória: Skripty na web
Jazyk: PHP
Dátum:5/30/2010 10:35:17 AM



Komentáre:


Pridal: danciwo

Cav, dik za pekny skript.

dátum: 6/1/2010 11:17:58 AM


Pridaj komentár:

Pre vloženie komentáru sa musíte najprv prihlásiť.






 Fórum:
Hardware
Software
Programovanie
Všeobecné témy

 Programy:
C#
C/C++
Java
Pascal
PHP

Linky:

Vretenova webova stranka o programovani v Cpp,c++,C,linuxe...

Wdesign

ByteLeak.com diskusné fórum

BlueBoard.cz