• 07-08-2020, 15:29:58
    #10
    5- PHP Upload Özelliğinde Belirli Uzantılara İzin Vermek


    Merhaba, bazı dosyalarımızda kullanıcıya upload yaptırmamız gerekebiliyor örneğin bir cv yükleme platformu yada profil fotoğrafı yükleme gibi.. ama buradaki önemli nokta sistem güvenliği için çeşitli uzantılara sadece izin verebilmektir. Hemen örnek kod yapımızı inceleyelim..

     if ($isim_soyisim <> "" && $telefon <> "" && $mail <> "" && $dogum_tarih <> "" && isset($_FILES['foto']))
    if ($_FILES['foto']['tmp_name'] != "") {
                    $boyut = $_FILES['foto']['size'];
                  [B]  if($tip!="image/jpeg" && $tip!="image/jpg" && $tip!="application/pdf")[/B]{
    echo 'Dosya Jpeg veya Png yada PDF formatında olmalı';
                    }elseif ($boyut > (1024 * 1024 * 30)) {
    echo 'Dosya 30MB den büyük olamaz.';
    } else {
    
    $isim = $_FILES['foto']['name'];
    $uzanti = explode('.', $isim);
    $uzanti = $uzanti[count($uzanti) - 1];
    $random = rand();
    $dosya = $_FILES['foto']['tmp_name'];
    
    $foto_url = $random . "." . $uzanti;
    
    copy($dosya, 'img/' . $foto_url);
    
    echo '';
    Standart olarak bir yükleme komutuna ek olarak şunu belirtmemiz gerekiyor

    [B]  if($tip!="image/jpeg" && $tip!="image/jpg" && $tip!="application/pdf")[/B]{
    burada diyoruz ki $tip değişkeninden gelen veriler sadece jpeg, jpg, ve pdf olabilir ama buna ek olarak " && $tip!="image/png " " de ekleyebiliriz burada cv yükleme gibi formatlarda pdf yüklememiz gerektiği için pdf formatları application olarak geçtiğinden dolayı burada image değil application kullaniyoruz ve sistemimize php uzantili hiçbirşey artık eklenemeyecektir.
  • 03-10-2020, 00:12:20
    #11
    6-) Tarih Kullanımı :
    Merhaba,

    Bu aralar iş yoğunluğundan bu konuyu biraz aksattık sanırım bu post'da ozaman tarih ve saat kullanımı yapalım

    Şimdi veritabanımızda bir işlem tarihi almak istiyoruz örneğin bir yorum, hizmet, proje adını siz koyun bir veri eklendiğinde tarih ve saat almak için işlem yapalım.. Öncellikle tablomuza tarih diye bir sütün atalım ve değerlerini görseldeki gibi verelim...


    Evet şimdi tür alanına timestamp verip varsayılan değerine current_timestamp verip + php dosyasından herhangi bir veri post etmeyeceğimiz için NULL olarak yani boş veri gitmesini sağlayalım.. Her veri eklenişinde otomatik olarak tarih ve saat değerini alacağız. Hadi ozaman şimdi veritabanından ekle diyelim ve bir test verisi alalım


    Evet gördüğünüz üzere phpmyadminden bir veri attığınız zaman oto olarak tarih ve saat alıyor.. Ama bu bizim işimizi görmüyor çünkü biz bunu TR formatına göre php alanında kullanmak istediğimiz alandan alacağız. Hemen PHP kısmına geçelim ve konuyu tamamlayalım.. Standart olarak kullandığınız listeleme koduna bakalım..

    <?php
    $sorgu = $dbh->prepare("SELECT * FROM haber ");
    $sorgu->execute();
    
    while ($sonuc = $sorgu->fetch()) {
    
    $id = $sonuc['id'];
    $haber_baslik = $sonuc['haber_baslik'];
    $haber_aciklama = $sonuc['haber_aciklama'];
    $foto = $sonuc['foto'];
    $baslikseo=seo( $sonuc['haber_baslik']);
    ?>
    
    ....
    
    <?php } ?>
    Şimdi tarih alanımızı da çekip üzerine TR formatına uygun gelecek şekilde kodumuzu yapalım

    <?php
    $sorgu = $dbh->prepare("SELECT * FROM haber ");
    $sorgu->execute();
    
    while ($sonuc = $sorgu->fetch()) {
    
    $id = $sonuc['id'];
    $haber_baslik = $sonuc['haber_baslik'];
    $haber_aciklama = $sonuc['haber_aciklama'];
    $foto = $sonuc['foto'];
    [B]$tarih = $sonuc['tarih'];
    $phpdate = strtotime( $tarih );
                    $mysqldate = date( 'd-m-Y ', $phpdate );
    $baslikseo=seo( $sonuc['haber_baslik']);[/B]
    ?>
    Eklemek istediğimiz alana ise artık " <?=$mysqldate?> " komutu ile tarihimizi listeleyebiliriz. Eğer ki saati de çekmek isterseniz

    $mysqldate = date( 'd-m-Y H:i:s ', $phpdate ); olarak kullanabilirsiniz.

  • 17-03-2021, 15:42:30
    #12
    Teşekkürler veri ekleme, güncelleme silme vs. gibi öğretici yazılarınızıda faydalı olur
  • 10-05-2021, 11:51:45
    #13
    Biproje adlı üyeden alıntı: mesajı görüntüle
    <?php
    $sorgu = $dbh->prepare("SELECT * FROM haber ");
    $sorgu->execute();
    
    while ($sonuc = $sorgu->fetch()) {
    
    $id = $sonuc['id'];
    $haber_baslik = $sonuc['haber_baslik'];
    $haber_aciklama = $sonuc['haber_aciklama'];
    $foto = $sonuc['foto'];
    $baslikseo=seo( $sonuc['haber_baslik']);
    ?>
    
    ....
    
    <?php } ?>
    Burada eğer kayıt yoksa şuan kayıt yok uyarısı nasıl ekleye bilirim.
    Merhaba else if kullanarak yapabilirsiniz. Bilgisayar başına geçebilirsem örneklendirebilirim
  • 10-05-2021, 20:55:20
    #14
    Developer
    Biproje adlı üyeden alıntı: mesajı görüntüle
    <?php
    $sorgu = $dbh->prepare("SELECT * FROM haber ");
    $sorgu->execute();
    
    while ($sonuc = $sorgu->fetch()) {
    
    $id = $sonuc['id'];
    $haber_baslik = $sonuc['haber_baslik'];
    $haber_aciklama = $sonuc['haber_aciklama'];
    $foto = $sonuc['foto'];
    $baslikseo=seo( $sonuc['haber_baslik']);
    ?>
    
    ....
    
    <?php } ?>
    Burada eğer kayıt yoksa şuan kayıt yok uyarısı nasıl ekleye bilirim.
    <?php
    $sorgu = $dbh->prepare("SELECT * FROM haber ");
    $sorgu->execute();
    
    if(!empty($sorgu->fetch)){
    while ($sonuc = $sorgu->fetch()) {
     
    $id = $sonuc['id'];
    $haber_baslik = $sonuc['haber_baslik'];
    $haber_aciklama = $sonuc['haber_aciklama'];
    $foto = $sonuc['foto'];
    $baslikseo=seo( $sonuc['haber_baslik']);
    ?>
    veri var ve başlık: <?php echo $haber_baslik; ?><br>
    <?php } ?>
    <?php }else{ ?>
    veri yok
    <?php } ?>