Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Dosya silme işlemi

Php de çok basit bir yönetim panali yapıyorum textareya giridğim dosya adını php ile silmek istiyorum kodları yazdım ancak hata veriyor

sil.php
<?php
echo '
<form action="sil2.php" method"POST">
<input type="text" name="sil"></input>
<input type="sunmit" value="sil"</input>
</form>
';
?>


sil2 php
<?php
$sil = $_POST["sil"];

$dosyasil = unlink($sil);
if(!$dosyasil){
echo "Dosya silinemedii";
}else {
echo "Dosya silindi.";
}

?>


formdan gelen sil değişkenini unlink($sil); tarzı bişey yaptım ancak çalışmadı ilgilenirseniz sevinirm.
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • GncArt adlı üyenin fotoğrafı
    3 yıl önce yazılmış
    42 cevap - 13 soru
    Uzun süredir kullandığım ve sorun yaşamadığımı bir fonksyion. Dosya dizinini veya direkt dosyayı rahatlıkla siler.

    function deleteDir($dir) {
            
            if($objs = glob($dir."/*")){
                
                foreach($objs as $obj) {
                   is_dir($obj)? rmdirr($obj) : unlink($obj);
                }
                
            }
            
            if(rmdir($dir)){ return true; }else{ return false; }
              
        }
    
    • Kaptanweb adlı üyenin fotoğrafı Kaptanweb
      Deniyeceğim
      3 yıl önce yazılmış
    • Kaptanweb adlı üyenin fotoğrafı Kaptanweb
      Çalışmıyor değişkeni yazaıyorum ancak almıyor
      3 yıl önce yazılmış
    • kucukharf adlı üyenin fotoğrafı kucukharf
      safemod u kapatarak denermisin bir de ? tekrar hata verirse, hatayı tam olarak yazabilir misin ?
      3 yıl önce yazılmış
    • Kaptanweb adlı üyenin fotoğrafı Kaptanweb
      Safemode ile alakası olduğunu düşünmüyorum çünkü sil2.php de unlink e atadığım değişken yerine unlink e bir dosya yolu atayıp sil2.php ye tarayıcıdan girince dosyayı silebiliyor yaptığım olayda sadece inpu da kullandığım değer değişkene gidebiliyor bunu get olayı ile baktımğımda görebiliyorum ama unlinke değişken atayınca değişken oraya yazılmıyor nasıl yapacam anlamadım
      3 yıl önce yazılmış
    • kucukharf adlı üyenin fotoğrafı kucukharf
      sil.php
       
      <form action="sil2.php" enctype="application/x-www-form-urlencoded" method="post">
      <input type="text" name="sil">
      <input name="submit" type="submit" id="sil" value="sil" />
      </form>
      
      


      sil2.php
       
      	<?php
      	$silinecekdosya=$_GET['sil'];
      	$sil = unlink($silinecekdosya); 
      	?>
      
      
      3 yıl önce yazılmış
    • Kaptanweb adlı üyenin fotoğrafı Kaptanweb
      Post ile veri gönderip get ile veri alma olayı yanlış ancak ecntype olayı işe yaraıyor teşekkürler bu şekilde hazırladığım kodu aşağıya yazdım.
      3 yıl önce yazılmış
    • kucukharf adlı üyenin fotoğrafı kucukharf
      yanlışlık olmuş dalgınlık
      3 yıl önce yazılmış

Cevaplar

  • huseyiniskender adlı üyenin fotoğrafı
    3 yıl önce yazılmış
    47 cevap - 20 soru
    İlk dosyada düğmenin(buton) yazımında hata yapmışsın, methodun önüne eşittir koymamışsın, form elemanlarına bitirme tagı koymuşsun sorun bunlardan kaynaklanıyor büyük ihtimal. Doğrusu aşağıdaki şekilde olmalı. Artı formdaki elemanınızın adı textarea değil textbox.

    <?php
    echo '
    <form action="sil2.php" method="POST">
    <input type="text" name="sil">
    <input type="submit" value="sil">
    </form>
    ';
    ?>
    
    
    • Kaptanweb adlı üyenin fotoğrafı Kaptanweb
      Onlardan kaynaklandığını sanmıyorum çünkü o kodu sil.php den kopyalamdım kendim yazdım sil.php de şuan dediğiniz gibi. Hata varsa sil2.php de olması lazımdır. ayrıca sunmit de gondermeye bilir ancak ben gonderiyorum diye yazdım orda yani hata sil2.php
      3 yıl önce yazılmış
    • huseyiniskender adlı üyenin fotoğrafı huseyiniskender
      Yazdığınız kodlara dayanarak öyle yazdım. İkinci dosyanızda ise bir sorun yok denedim gayet iyi çalışıyor. Bu durum karşısında hata nedeni kullandığınız hostingin izinlerinden kaynaklanıyor olabilir. Başka bir ihtimal gelmiyor aklıma.
      3 yıl önce yazılmış
    • Kaptanweb adlı üyenin fotoğrafı Kaptanweb
      şöyle bir hata geliyor

      Warning: unlink() [function.unlink]: Unable to access in dosyayolu/sil2.php on line 4
      Dosya silinemedii
      3 yıl önce yazılmış
    • huseyiniskender adlı üyenin fotoğrafı huseyiniskender
      Hatadan anladığım kadarıyla dosyaya erişemediği için silemiyor, artı unlink fonksiyonunun içine değer gitmemiş, eğer değer gitseydi atıyoru hata aşağıdaki gibi olurdu.

      Warning: unlink(dosya_yolu/denek.doc) [function.unlink]: Unable to access in dosyayolu/sil2.php on line 4

      Kodlarınızı paylaşmanız mümkünse paylaşırsanız anlamamız açısından iyi olur. Artı kullandığınız sunucu tipide önemli. Gerekli izinleriniz tammı bunuda bilmek gerek. Linuxsa silmeye çalıştığınız klasörün iznini 777 yapmanız gerek, windowssa plesk panelinizden okuma yazma ayarlarının tümünü vermeniz gerek.
      3 yıl önce yazılmış
  • Kaptanweb adlı üyenin fotoğrafı
    3 yıl önce yazılmış
    9 cevap - 12 soru
    Kendi sorunum kendim çözdüm biraz sanırım @kucukharf post ile veri gönderip get ile almaya çalışmışsınız bu yanlışlık olmuş ancak formda yazdığınız enctype kodu işe yaradı şöyle bir kod çıkardım ve sorunsuz çalışıyor.

    <?php
    
    if($_POST){
    $bolum=$_POST['sil'];
    $sil = unlink($bolum); 
    	if($sil){
    	echo 'Başarıyla silindi.';
    	}else{
    	echo 'Bir sorun oluştu.';
    	}
    }else{
    echo '<form action="" enctype="application/x-www-form-urlencoded" method="post">
    <input type="text" name="sil">
    <input name="submit" type="submit" id="sil" value="sil" />
    </form>';
    }
    
    ?>