v2.5.2
Giriş yap

input ile aldığım resimi js ile nasıl serverıma indirebilirim?

ismailyunlu
434 defa görüntülendi

input file ile aldığım resimi js ile nasıl serverıma indirebilirim?

Cevap yaz
Cevaplar (2)
ersiin
965 gün önce

Tek başına js upload işlemi yapamaz.

ebykdrms
968 gün önce

Eğer PHP çalıştıran bir server'iniz varsa aşağıdaki örneği inceleyebilirsiniz.
Basit bir örnek ama sorunuza tam olarak cevap veriyor.
Server'inizde index.html, kaydet.php dosyaları ve görseller adında da bir klasör var diyelim.

index.html dosyanız şu şekilde olsun:

<html>
    <head>
        <title>Görsel Yükle</title>
    </head>
    <form method="post" action="kaydet.php" enctype="multipart/form-data">
        <input type="file" name="gorsel" />
        <button type="submit">Kaydet</button>
    </form>
</html>

Bu sayfada görsel seçimi için "gorsel" adında bir input ve bir de "kaydet" yazılı buton içeren form elementimiz var. Butona basıldığında POST metoduyla kaydet.php sayfasına seçili görseli iletecektir.

kaydet.php sayfanız da aşağıdaki gibi olsun:

<?php
if(!isset($_FILES['gorsel'])) { echo "Dosya seçilmemiş"; exit(); }

$dosyaAdi = $_FILES['gorsel']['name'];
$dosyaBoyutu = $_FILES['gorsel']['size'];
$dosyaKopyasininYolu  = $_FILES['gorsel']['tmp_name'];

$dosyaUzantisi = explode('.',$dosyaAdi);
$dosyaUzantisi = end($dosyaUzantisi);
$dosyaUzantisi = strtolower($dosyaUzantisi);

if (!in_array($dosyaUzantisi, ['jpeg','jpg','png'])) { 
    echo 'Dosya uzantısı geçersiz. Lütfen jpg veya png dosya seçin'; 
    exit();
}

if ($dosyaBoyutu > 4 * 1024 * 1024) { 
    echo 'Dosya boyutu 4 mb üzerinde olamaz.'; 
    exit();
}

$dosyaYolu = 'gorseller/'.$dosyaAdi; // Bu php dosyasının olduğu aynı yerde gorseller klasörü de olmalı.
$uploadEdildi = move_uploaded_file($dosyaKopyasininYolu, $dosyaYolu);
if(!$uploadEdildi) { echo "Dosya upload edilemedi..."; exit(); }
echo "Dosya images klasörüne upload edildi.";

Buradaki kodları anladıktan sonra daha detaylı bir sorunuz varsa takıldığınız yerle ilgili yeni bir soru oluşturabilirsiniz.