• 06-01-2023, 15:23:33
    #1
    Merhaba,

    Ücretsiz paylaşılan script kendim karıştırarak bir şeyler ekleyip çıkararak öğrenmeye çalışıyorum. hali hazırda çalışan script 1 dosya upload ediyorum ben çoklu dosya yükleme yapayım dedim beceremedim. dedim 2 farklı buton koyarak ayrı ayrı yükleyeyim onuda beceremedim destek olur musunuz ?



    <div class="container">
      <div class="row">
        <div class="col-md-12">
          <div class="card shadow br-1">
            <div class="card-body">
              <form action="islemler/islem.php" method="POST" enctype="multipart/form-data"  data-parsley-validate>
                <div class="form-row d-flex justify-content-center mb-3">
                  <div class="col-md-6">
                    <div class="file-loading">
                      <input class="form-control" id="sip_dosya" name="sip_dosya" type="file">
                    </div>
                  </div>
                </div>
                <div class="form-row d-flex justify-content-center mb-3">
                  <div class="col-md-6">
                    <div class="file-loading">
                      <input class="form-control" id="yuzde" name="yuzde" type="file">
                    </div>
                  </div>
                </div>
                <div class="text-center">
                  <button type="submit" name="siparisekle" class="btn btn-primary btn-lg"><i class="fa fa-save"></i> Kaydet</button>
                </div>
              </form>
            </div>
          </div>
        </div>
      </div>
    </div>
    <!-- End of Main Content -->
    <?php include 'footer.php' ?>
    
    <!--İşlem sonucu açılan bildirim popupunu otomatik kapatma giriş-->
    <script type="text/javascript">
      $('#islemsonucu').modal('show');
      setTimeout(function() {
        $('#islemsonucu').modal('hide');
      }, 3000);
    </script>
    <!--İşlem sonucu açılan bildirim popupunu otomatik kapatma çıkış-->
    <script>
      $(document).ready(function () {
        $("#sip_dosya").fileinput({
          'theme': 'explorer-fas',
          'showUpload': false,
          'showCaption': true,
          showDownload: true,
          allowedFileExtensions: ["jpg", "png", "jpeg","mp4","zip","rar"],
        });
      });
    </script>
    
    <script>
      $(document).ready(function () {
        $("#yuzde").fileinput({
          'theme': 'explorer-fas',
          'showUpload': false,
          'showCaption': true,
          showDownload: true,
          allowedFileExtensions: ["jpg", "png", "jpeg","mp4","zip","rar"],
        });
      });
    </script>
    iki adet dosya seciyorum 1 tanesi yükleniyor, sadece 2 seciyorum yükleniyor ama ikisi bir arada yükleyemedim

    if (isset($_POST['siparisekle'])) {
      if (yetkikontrol()!="yetkili" AND !$api) {
        header("location:../index.php");
        exit;
      }
      $siparisekle=$db->prepare("INSERT INTO siparis SET
        musteri_isim=:isim,
        musteri_mail=:mail,
        musteri_telefon=:telefon,
        sip_baslik=:baslik,
        sip_teslim_tarihi=:teslim_tarihi,
        sip_aciliyet=:aciliyet,
        sip_durum=:durum,
        sip_ucret=:ucret,
        sip_detay=:detay,
        sip_baslama_tarih=:sip_baslama_tarih
        ");
    
      $ekleme=$siparisekle->execute(array(
        'isim' => $_POST['musteri_isim'],
        'mail' => $_POST['musteri_mail'],
        'telefon' => $_POST['musteri_telefon'],
        'baslik' => $_POST['sip_baslik'],
        'teslim_tarihi' => $_POST['sip_teslim_tarihi'],
        'aciliyet' => $_POST['sip_aciliyet'],
        'durum' => $_POST['sip_durum'],
        'ucret' => $_POST['sip_ucret'],
        'detay' => $_POST['sip_detay'],
        'sip_baslama_tarih' => $_POST['sip_baslama_tarih']
      ));
    
    if ($_FILES['sip_dosya']["error"]=="0") {
       $yuklemeklasoru = '../dosyalar';
        @$gecici_isim = $_FILES['sip_dosya']["tmp_name"];
        @$dosya_ismi = $_FILES['sip_dosya']["name"];
        $benzersizsayi1=rand(100000,999999);
        $isim=tum_bosluk_sil($benzersizsayi1.$dosya_ismi);
        @move_uploaded_file($gecici_isim, "$yuklemeklasoru/$isim");
    
        $son_eklenen_id=$db->lastInsertId();
    
       $dosyayukleme=$db->prepare("UPDATE siparis SET
        dosya_yolu=:dosya_yolu WHERE sip_id=:sip_id ");
    
       $yukleme=$dosyayukleme->execute(array(
        'dosya_yolu' => $isim,
        'sip_id' => $son_eklenen_id
      ));
     }
     
     if ($_FILES['yuzde']["error"]=="0") {
      $yuklemeklasoru = '../dosyalar';
      @$gecici_isim = $_FILES['yuzde']["tmp_name"];
      @$dosya_ismi = $_FILES['yuzde']["name"];
      $benzersizsayi1=rand(100000,999999);
      $sip_dosya_isim=tum_bosluk_sil($benzersizsayi1.$dosya_ismi);
      @move_uploaded_file($gecici_isim, "$yuklemeklasoru/$sip_dosya_isim");
    
      $son_eklenen_id=$db->lastInsertId();
    
      $dosyayukleme=$db->prepare("UPDATE siparis SET
       yuzde=:yuzde WHERE sip_id=:sip_id ");
    
      $yukleme=$dosyayukleme->execute(array(
       'yuzde' => $sip_dosya_isim,
       'sip_id' => $son_eklenen_id
     ));
    }
     if ($ekleme) {
    
       if ($api) {
         echo json_encode(['durum' => 'ok']);
       } else {
         header("location:../siparisekle?durum=ok");
       }
    
       exit;
     } else {
      if ($api) {
        echo json_encode(['durum' => 'no','mesaj' => 'İşlem Başarısız', 'hata' => implode(",", $siparisekle->errorInfo())]);
      } else {
       header("location:../siparisekle?durum=no");
     }
     exit;
    }
    exit;
    }
  • 09-01-2023, 11:25:45
    #2
    help me
  • 09-01-2023, 13:11:06
    #3
    php resim upload ederken post verisi gönderdiğinde $_FILES ile tuttuğu için veriyi üzerine yazar. O yüzden birden fazla upload için name alanını array yapmalısın. Daha sonrada foreach ile işlemleri yapmalısın.Anca o şekilde yapabilirsin.