php ile dosya upload ve veritabanına dosya ismini yazdırmak

WebMaster bölümünde yer alan bu konu hortLak tarafından paylaşıldı.

  1. hortLak

    hortLak c ε ή κ

    form.php

    Kod:
    [COLOR=#000000]<html>  
    <body>  
    <form name="yuklemeformu" method="post"  action="yukle.php" enctype="multipart/form-data">  
    <fieldset style="width: 336px; height: 128px">  
      <legend>Resim Dosyası</legend>  
        <p align="center">  
    <input type="file" name="file">&nbsp; <br>  
        <br>  
        <input type="submit" value="Gönder" name="B1"><br>  
    &nbsp;</fieldset>  
    </form>  
    </body>  
    </html> [/COLOR]


    connect.php

    Kod:
    [COLOR=#000000] [COLOR=#0000bb]<?   
    $dbhost [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#dd0000]'localhost'[/COLOR][COLOR=#007700];  
    [/COLOR][COLOR=#0000bb]$dbusername [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#dd0000]'veritabanı_kullanici_adi'[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#ff8000]// buraya veritabanı kullanıcı adınızı yazın  
    [/COLOR][COLOR=#0000bb]$dbpasswd   [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#dd0000]'sifre'[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#ff8000]// buraya veritabanı kullanıcı şifrenizi yazın  
    [/COLOR][COLOR=#0000bb]$database_name [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#dd0000]'database_name'[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#ff8000]//buraya veritabanı adınızı yazın  
    [/COLOR][COLOR=#0000bb]$connection [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]mysql_pconnect[/COLOR][COLOR=#007700]([/COLOR][COLOR=#dd0000]"$dbhost"[/COLOR][COLOR=#007700],[/COLOR][COLOR=#dd0000]"$dbusername"[/COLOR][COLOR=#007700],[/COLOR][COLOR=#dd0000]"$dbpasswd"[/COLOR][COLOR=#007700])   
        or die ([/COLOR][COLOR=#dd0000]"Db bağlantısı yok."[/COLOR][COLOR=#007700]);  
    [/COLOR][COLOR=#0000bb]$db [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]mysql_select_db[/COLOR][COLOR=#007700]([/COLOR][COLOR=#dd0000]"$database_name"[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000bb]$connection[/COLOR][COLOR=#007700])  
        or die([/COLOR][COLOR=#dd0000]"Dbye bağlanamadı."[/COLOR][COLOR=#007700]);  
    [/COLOR][COLOR=#0000bb]?>[/COLOR] [/COLOR] 
    


    yukle.php

    Kod:
    [COLOR=#000000] [COLOR=#0000bb]<?php  
    [/COLOR][COLOR=#007700]include([/COLOR][COLOR=#dd0000]"connect.php"[/COLOR][COLOR=#007700]);  
    [/COLOR][COLOR=#ff8000]//"resim bilgileri"  
    [/COLOR][COLOR=#0000bb]$kaynak      [/COLOR][COLOR=#007700]=[/COLOR][COLOR=#0000bb]$_FILES[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'file'[/COLOR][COLOR=#007700]][[/COLOR][COLOR=#dd0000]'tmp_name'[/COLOR][COLOR=#007700]];[/COLOR][COLOR=#ff8000]//Burası resminiz kök klasörünün yerini verir  
    [/COLOR][COLOR=#0000bb]$isim        [/COLOR][COLOR=#007700]=[/COLOR][COLOR=#0000bb]$_FILES[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'file'[/COLOR][COLOR=#007700]][[/COLOR][COLOR=#dd0000]'name'[/COLOR][COLOR=#007700]]; [/COLOR][COLOR=#ff8000]//Resminizin adını verir  
    [/COLOR][COLOR=#0000bb]$tip         [/COLOR][COLOR=#007700]=[/COLOR][COLOR=#0000bb]$_FILES[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'file'[/COLOR][COLOR=#007700]][[/COLOR][COLOR=#dd0000]'type'[/COLOR][COLOR=#007700]]; [/COLOR][COLOR=#ff8000]// Resminizin tipini verir  
    [/COLOR][COLOR=#0000bb]$buyukluk    [/COLOR][COLOR=#007700]=[/COLOR][COLOR=#0000bb]$_FILES[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'file'[/COLOR][COLOR=#007700]][[/COLOR][COLOR=#dd0000]'size'[/COLOR][COLOR=#007700]]; [/COLOR][COLOR=#ff8000]//Büyüklüğünü verir  
    //Örneğin bir kış resmi yüklediniz isim = "230bt.Kiş.jpg" olarak çıkıyor. Yani rastgele sayı oluşturarak  
    //Aşağıda resmin değerlerini ekrana yazdırıyoruz..  
    [/COLOR][COLOR=#0000bb]$rand [/COLOR][COLOR=#007700]=[/COLOR][COLOR=#0000bb]substr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]md5[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]uniqid[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]rand[/COLOR][COLOR=#007700]())),[/COLOR][COLOR=#0000bb]0[/COLOR][COLOR=#007700],[/COLOR][COLOR=#0000bb]5[/COLOR][COLOR=#007700]);  
    [/COLOR][COLOR=#ff8000]//Burada oluşturduğumuz rastgele sayıyı yüklediğimiz resimle birleştiriyoruz.  
    //Burada istediğimiz formattaki resimleri bir diziye atıyor  
    [/COLOR][COLOR=#0000bb]$desteklenenformatlar [/COLOR][COLOR=#007700]= array ([/COLOR][COLOR=#dd0000]"image/jpeg"[/COLOR][COLOR=#007700],[/COLOR][COLOR=#dd0000]"image/pjpeg"[/COLOR][COLOR=#007700],[/COLOR][COLOR=#dd0000]"image/png"[/COLOR][COLOR=#007700],[/COLOR][COLOR=#dd0000]"image/gif"[/COLOR][COLOR=#007700]);  
    [/COLOR][COLOR=#0000bb]$kaydedilecekyer [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#dd0000]"/resimler"[/COLOR][COLOR=#007700];  
    [/COLOR][COLOR=#ff8000]//in_array fonksiyonu size bir degerin o dizinin icinde olup olmadigini bulmanizda yardimci olur  
    [/COLOR][COLOR=#007700]if ([/COLOR][COLOR=#0000bb]in_array [/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]$_FILES[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'file'[/COLOR][COLOR=#007700]][[/COLOR][COLOR=#dd0000]'type'[/COLOR][COLOR=#007700]], [/COLOR][COLOR=#0000bb]$desteklenenformatlar[/COLOR][COLOR=#007700]))  
    {  
    [/COLOR][COLOR=#ff8000]//Burada gördüğünüz fibi ilkönce kaydedilecekyeri daha sonra yukarıda yaptığımız  
    //random sayıyı yeni resmimizin önüne ekliyoruz.  
    [/COLOR][COLOR=#0000bb]$dosya [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000bb]$kaydedilecekyer [/COLOR][COLOR=#007700]. [/COLOR][COLOR=#dd0000]"/"[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]$rand[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000bb]$_FILES[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'file'[/COLOR][COLOR=#007700]][[/COLOR][COLOR=#dd0000]'name'[/COLOR][COLOR=#007700]];  
    [/COLOR][COLOR=#ff8000]//Burada ise move_uploaded_file fonksiyonu ile dosyamızı yukarıda belirttiğimiz yere taşıyoruz  
        [/COLOR][COLOR=#007700]if ([/COLOR][COLOR=#0000bb]move_uploaded_file [/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000bb]$_FILES[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'file'[/COLOR][COLOR=#007700]][[/COLOR][COLOR=#dd0000]'tmp_name'[/COLOR][COLOR=#007700]], [/COLOR][COLOR=#0000bb]$dosya[/COLOR][COLOR=#007700]))  
            {  
                echo [/COLOR][COLOR=#dd0000]"<font color = '#009900'><b>Dosyaniz basarili bir sekilde yuklendi!</b></font>"[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]"<br/><br/>"[/COLOR][COLOR=#007700];  
                echo [/COLOR][COLOR=#dd0000]"<b>Dosyanizin ismi :</b> "[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]"$isim"[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]"<br/>"[/COLOR][COLOR=#007700];  
                echo [/COLOR][COLOR=#dd0000]"<b>Dosyanizin tipi : </b>"[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]"$tip"[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]"<br/>"[/COLOR][COLOR=#007700];  
                echo [/COLOR][COLOR=#dd0000]"<b>Dosyanizin buyuklugu : </b>"[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]"$buyukluk"[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]"kb'tir"[/COLOR][COLOR=#007700].[/COLOR][COLOR=#dd0000]"<br/>"[/COLOR][COLOR=#007700];  
            }  
    }  
    [/COLOR][COLOR=#ff8000]//Mutlu Son Veritabanına Kayıt ;-)  
    [/COLOR][COLOR=#007700]if ([/COLOR][COLOR=#0000bb]mysql_query[/COLOR][COLOR=#007700]([/COLOR][COLOR=#dd0000]"INSERT INTO resim (id,resim) VALUES ('null', '$dosya') "[/COLOR][COLOR=#007700]))  
                {  
                    echo [/COLOR][COLOR=#dd0000]"<br><br>Veritabanına Kayıt Edildi !"[/COLOR][COLOR=#007700];  
                }  
                else {  
                    echo[/COLOR][COLOR=#dd0000]"<br><br>Veritabanına Kayıt Edilemedi !"[/COLOR][COLOR=#007700];  
                }  
    [/COLOR][COLOR=#0000bb]?>[/COLOR] [/COLOR] 
    

    Kolay Gelsin