• 28-02-2021, 13:11:14
    #1
    Merhaba Bir Formum Var .. Hem veritabanına Dosya İsmini Kaydediyorum.. hemde php ile server a resim upload ettiriryorum...



    Upload php kodları form ile aynı sayfada yerleştirdim.. (farklı sayfayada yerleştirip denedim ama olmadı )
    Formumun başındaki kodlar bu şekilde...
    <form action="" method="post" enctype="multipart/form-data" >

    sorunum şu...
    Eğer Bu Bölümü (enctype="multipart/form-data" ) eklersem servere upload ediyor... ama veritabanına resim ismini kaydetmiyor..

    Eğer Bu Bölümü (enctype="multipart/form-data" ) eklemessem.. servere upload etmiyo.. ama veritabanına resim ismini kaydediyor..

    İkisini aynı anda yapmam lazım.. ama olmuyor.. beki basit bişey ama çözemedim.. bu konuda genel bilinen bir kural mı var...


    yani <input type="file" name="dosya" /> bu kodla hem veritabanı tabloya kaydedip hemde uploadı gerçekleştirmesi için bir eksik yoktur heralde..

    Upload ettiğim kodum da bu şekilde
    <?php
    $directory = 'upload/';
    $temp_file = $directory . basename($_FILES['dosya']['name']);
        
    if(move_uploaded_file($_FILES['dosya']['tmp_name'], $temp_file)) {
        echo "<p style='color:#1dff03;'>Dosya gönderimi tamamlanmıştır.</p>";
    }
    else{
        echo "<p style='color:#f00;'>Dosya Gerçekleşmedi.</p>";
    }
    ?>
    Formum da bu şekilde
    <form action="" method="post"  enctype="multipart/form-data" >
        
        <table class="table">
            
            <tr>
               <td></td>
              <td><input type="file" name="dosya" /></td>
            </tr>
    
            <tr>
                <td></td>
                <td><input class="btn btn-primary"  type="submit" value="Ekle"></td>
            </tr>
    
        </table>
    
    </form>
    
    
    
    <?php
    if ($_POST) {
        $dosya = $_POST['dosya'];
        if ($adsoyadsoran<>"") {
            if ($baglanti->query("INSERT INTO tabloadi (dosya) VALUES ('$dosya')"))
            {
                echo "Veri Eklendi";
            }
            else
            {
                echo "Hata oluştu";
            }
        }
    }
    ?>
    </div>
  • 28-02-2021, 14:32:01
    #2
    enctype="mulitpart/form-data" ile type="file" olan inputlarda dosya göndereceğinizi belirtiyorsunuz.

    Bu durumda $_POST['dosy'] ile o input a erişemezsiniz çünkü gelen dosyadır ve ona $_FILES['dosya'] ile erişilebilir.

    Dosya adını almak için bunu kullanabilirsiniz:

    https://pastecode.io/s/F17Ck56G6P


    Not: r10 editörü kodları saçma sapan hale getirdiği için bu şekilde pastecode üzerinden paylaştım.
  • 28-02-2021, 14:39:12
    #3
    coder63 adlı üyeden alıntı: mesajı görüntüle
    enctype="mulitpart/form-data" ile type="file" olan inputlarda dosya göndereceğinizi belirtiyorsunuz.

    Bu durumda $_POST['dosy'] ile o input a erişemezsiniz çünkü gelen dosyadır ve ona $_FILES['dosya'] ile erişilebilir.

    Dosya adını almak için bunu kullanabilirsiniz:

    https://pastecode.io/s/F17Ck56G6P


    Not: r10 editörü kodları saçma sapan hale getirdiği için bu şekilde pastecode üzerinden paylaştım.

    Üstad Biraz acemiyim.. bunu nerde kullanabilirim.. tam anlayamadım doğrusu ?
  • 28-02-2021, 14:40:46
    #4
    coder63 adlı üyeden alıntı: mesajı görüntüle
    enctype="mulitpart/form-data" ile type="file" olan inputlarda dosya göndereceğinizi belirtiyorsunuz.

    Bu durumda $_POST['dosy'] ile o input a erişemezsiniz çünkü gelen dosyadır ve ona $_FILES['dosya'] ile erişilebilir.

    Dosya adını almak için bunu kullanabilirsiniz:

    https://pastecode.io/s/F17Ck56G6P


    Not: r10 editörü kodları saçma sapan hale getirdiği için bu şekilde pastecode üzerinden paylaştım.
  • 28-02-2021, 14:45:51
    #5
    webkit adlı üyeden alıntı: mesajı görüntüle

    ben kodları görebiliyorum

    <?php
    
    $fileName = pathinfo($_FILES['dosya']['name'], PATHINFO_FILENAME);
  • 28-02-2021, 14:48:29
    #6
    alemextra adlı üyeden alıntı: mesajı görüntüle
    ben kodları görebiliyorum

    <?php
    
    $fileName = pathinfo($_FILES['dosya']['name'], PATHINFO_FILENAME);
    şuan bende görebiliyorum. o'an hata veriyordu düzenlenmiş sıkıntı yok devamke..
  • 28-02-2021, 15:54:17
    #7
    Karıştırırken kendim çözdüm....


    Bu bölümü
     $dosya= $_POST['dosya'];
    Bu şekilde değiştirmem yetti

    $dosya = $_FILES["dosya"]["name"];
    coder63 nın ismini alamıyor söylemi biraz karıştırınca çözmemi sağladı..
    tesekkür ediyorum..
  • 28-02-2021, 16:46:13
    #8
    Ben mesajınızı görene kadar çözmüşsünüz. Kolay gelsin.