+ Yanıtla
Sayfa Düzeni: 1 / 2
1 2 SonSon
Toplam 12 sonuçtan 1 ile 10 arası olanlar

Konu Başlığı: Php'de unlink komutuyla dosya silme

  1. #1

    Php'de unlink komutuyla dosya silme

    Merhaba, yazdığım scriptte, bir klasörün içindeki resimler görüntüleniyor. Scriptin içine;

    Kod:
    if($_GET["sil"])
    unlink($_GET["sil"])
    
    kodlarını ekledim ve "Dosyayı Sil" linki olarak;

    Kod:
    ?sil=dosyaadi
    
    kullandığım zaman rahatça o dosyayı silebiliyorum.

    Yalnız en büyük sorun şu. Yalnızca yukardaki kodu kullanırsam herkes dosya silebiliyor Yani her önüne gelen index.PHP?sil=dosya yazdıgında dosyalar silinebiliyor bunu nasıl sadece admin tarafından silinebilir hale getirebilirim. Sanırım oncelikle şifre korumalı bir admin girişi yaptırıp, daha sonra Cookie ile post yaptırmam lazım. Acaba MySQL kullanmadan buna nasıl bir admin girişi ekleyebilirim?

    PHP'den pek anlamıyorum, yavaş yavaş öğrenmeye başladım, anlamsız ifadeler kullandıysam Affola
    kişisel sitem: yusufozturk.info

  2. #2

    Re: Php'de unlink komutuyla dosya silme

    Aklıma bi fikir geldi, mesela admin girişi yerine, ayar.PHP dosyasının içersine girilen bir doğrulama kodu ile bu işi halledebilir miyiz?

    Örneğin ayar.PHP içinde;

    $dogrulamakodu = " ";

    şeklinde bir bölüm ekleyip, buraya admin'nin belirleyeceği silme kodu girilse (örn; 123) daha sonra sil koduna tıklandıgında, "Silmek istediğinize emin misiniz?" şeklinde açılan hata penceresi yerine;

    "Lütfen doğrulama kodunu giriniz" şeklinde bir hata penceresi açılsa, o pencereye 123 değeri girilip, Onayla butonuna basılsa, sonrasında, index.PHP dosyasına yollanacak form şu şekilde olsa;

    http://domain.com/index.PHP?sil=$dosya&dogrulamakodu=123

    eğer yukardaki şekilde yapılırsa ve buna uygun bir Get fonksiyonu kullanılırsa;

    http://domain.com/index.PHP?sil=$dosya&dogrulamakodu=4223 şeklinde bir link işe yaramayacak ama;

    http://domain.com/index.PHP?sil=$dosya&dogrulamakodu=123 linki işe yarayacak ve dosya silinecektir

    //////////////////////

    Umarım düşüncemi birisi anlar ve olup olmama ihtimalini söyler..
    Tekrar teşekkürler..
    kişisel sitem: yusufozturk.info

  3. #3

    Re: Php'de unlink komutuyla dosya silme

    Silme islemi yapan dosyayı bir kullanıcı girişi (kullanıcı adı / şifre, belki sadece bir şifre) sağladıktan sonra session kontrolü yaparak çalıştırabilirsin. Yani bir yönetici login formu hazırlar, daha sonra da login formuna doğru şifre yi girip geçen kullanıcı için bir session oluşturup, silme işlemini yaptığın kodun başında session in varolup olmadığını kontrol edebilirsin.

    Yoksa ben yapmak istediğini yanlış mı anladım?
    http://www.kimindir.com - Alan adı sorgulama (whois) servisi... [v0.4 beta]

  4. #4

    Re: Php'de unlink komutuyla dosya silme

    yok doğru anladın delizeka, bu dağıtılacak bir script olacağı için bir doğrulamanın yapılmasını istiyorum. Yalnız admin girişini nasıl yapacağımı ve session işlemini nasıl gerçekleştireceğimi bilmiyorum. Sence benim dediğim işlem yapılamaz mı. Yani 2 tane _GEt çekmek. ?sil=dosya&kod=123 şeklinde. işe yarar mı bu acaba?
    kişisel sitem: yusufozturk.info

  5. #5

    Re: Php'de unlink komutuyla dosya silme

    Başka bir fikir, ?sil=dosyaadi yapıldıgı zaman, aktive kodunun girileceği kısım acılabilir ve forma girilen 123 şifresi ile postlanarak, linkin;

    ?sil=dosyaadi&dogrulamakodu=123 şeklinde yapılabilir ve link silinir

    tabi bunlar aklıma gelenler, işe yarar mı acaba :S
    kişisel sitem: yusufozturk.info

  6. #6

    Re: Php'de unlink komutuyla dosya silme

    BAŞARDIMMM Ne admin panel, ne de MySQL kullanmadan sadece onaylama kodu ile dosya sildirebilmeyi sağladım. Böylelikle forma onay kodu girilmeden, resim silinmiyor
    kişisel sitem: yusufozturk.info

  7. #7

    Re: Php'de unlink komutuyla dosya silme

    Nerede kullanacağınızı ve nasıl kullanacağınızı bilmiyorum ancak bahsettiğiniz metodun şöyle bir sakıncası var: 1 tane sabit onay kodundan bahsediyorsunuz ve bunu girince dosyayı sildireceksiniz. Ve onay kodu querystring ile gidiyor. Dolayısıyla bir kez onay kodu girilen bir browser ın history sinde onay kodu görülebilecektir. Bu da aynı browser ı kullanan başka insanların dosya isimlerini bildikleri takdirde dosyaları silmesini sağlar.

    Tabi bu durum sizin için ne kadar önemli bilmiyorum, çünkü yaptığınız sayfanın nerede niçin kullanılacağını bilmiyorum. Ama gene de hatırlatmak istedim.

    Kolay gelsin
    http://www.kimindir.com - Alan adı sorgulama (whois) servisi... [v0.4 beta]

  8. #8

    Re: Php'de unlink komutuyla dosya silme

    evet haklısın delizeka, history'de kalıyor, ama bu kişisel kullanım amaçlı bişey, en çok History Delete yapılır ve olay halledilir
    kişisel sitem: yusufozturk.info

  9. #9

    Re: Php'de unlink komutuyla dosya silme

    Dosya silme scriptinin olduğu dizine en azından bir .htaccess dosyası koyarak güvenliği sağlamalsın Google da ".htaccess" diye aratabilirsin nedir ne değildir diye, gayet basit ve yeterli.

  10. #10

    Re: Php'de unlink komutuyla dosya silme

    Eğer uğraşırım dersen doğrulama kodunu rasgele ürettirip (hatta şifreleyip) mail olarak kendine gönderirsin. Böylelikle herseferinde değişen ve sadece senin mail yoluyla öğrenebileceğin bir doğrulama kodun olur.

+ Yanıtla
Sayfa Düzeni: 1 / 2
1 2 SonSon

Bu konu başlığı için etiketler

Mesaj Seçenekleri

  • Yeni başlık açamazsınız
  • Cevap yazabilirsiniz
  • Dosya ekleyemezsiniz
  • Mesajlarınızı değiştiremezsiniz