İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Dosya Silme Unlink Komutunu Çalıştıramadım

quardian

0
İyinet Üyesi
Katılım
18 Nisan 2012
Mesajlar
0
Reaction score
0
Konum
Elazığ
Arkadaşlar phpmi geliştirmek için ücretsiz dağıtılmış olan Emre Çetiner Emlak Yazılımı üzerinde editleme yapıyordum. Linklerini seo uyumlu linkler haline getirdim.Scriptin fotograf silme komutu doğru çalışmıyor ve ne denediysem yapamadım . Db den kaydı siliyor ancak serverdan dosyayı silmiyor.

Ayrıca açıkları var sanırım çünki geçen gün terör örgütü taraftarı lamerler sitenin anasayfasından başka bir linke yönlendirme yapmışlardı. Bütün dosyaları silip yeniden upload ettim.

Bu komut için iki dosya var bu dosyalar ve içerikleri şöyle

Fotosil.php
PHP:
  if (@$_GET['hedef'] == "fotosil") { 
        $id = $_GET[id];
        $eid = $_GET[eid];
                      
        mysql_query("DELETE from resimler where id = '$id'") or die ("Bir hata oluştu lütfen deneyiniz.");
        
        echo "";
        }
Fotoyukle.php nin ilgili kısmı
PHP:
<a class='thumbnail' href='#thumb'><img src='../emlakfoto/kucuk/".$sonuc['resim']."' height='100px' border='0' align='center' /><span><img height='400px' src='../emlakfoto/buyuk/".$sonuc['resim']."' /></span></div><center><a href='?hedef=fotosil&id=".$sonuc['id']."&eid=".$id."'><strong>Sil</strong></a></center></td>";
if (($i % $yan == 0)) {
echo '</tr></tr>';
}
}
echo '</tr></table>
 

quardian

0
İyinet Üyesi
Katılım
18 Nisan 2012
Mesajlar
0
Reaction score
0
Konum
Elazığ
Evet arkadaşlar sorunu çözdüm en azından belki birine faydası olur diye çözümü yazıyorum.
fotosil.php de düenlem yaptım şu an sorunsuz .
HTML:
<?php     
 if (@$_GET['hedef'] == "fotosil") { 
        $id = $_GET[id];
        $eid = $_GET[eid];
        
            $sql = "select * from resimler where id = '$id'";
        $qr = mysql_query($sql);
        $rs = mysql_fetch_array($qr);
        unlink("../emlakfoto/buyuk/".$rs['resim']."");
        unlink("../emlakfoto/kucuk/".$rs['resim']."");    
         
           
     mysql_query("DELETE from resimler where id = '$id'") or die ("Bir hata oluştu lütfen deneyiniz.");
        
        
        
        echo "<script>";
        echo "alert('İşleminiz Gerçekleşmiştir.');";
        echo "window.location='?hedef=fotoyukle&id=$eid'";
        echo "</script>";            
        
        }?>
 

onder

0
İyinet Üyesi
Katılım
13 Aralık 2012
Mesajlar
119
Reaction score
2
Konum
Fethiye
tecrübelerime göre resimleri emlağın id sine göre klasörlerde saklamak daha mantıklı oluyor.

şöyle bir klasör silme fonksiyonu var, çok işe yarıyor;

PHP:
function removedir($dir) {
    if(!$dh = @opendir($dir)) return;
    while (false !== ($obj = readdir($dh))) {
        if($obj=='.' || $obj=='..') continue;
        if (!@unlink($dir.'/'.$obj)) removedir($dir.'/'.$obj, true);
    }
    closedir($dh);
	@rmdir($dir);
}

tabiki .htaccess e klasörlerin listelenmesini engellemek için şu kodları eklemekte faydalı

Kod:
# disable directory browsing
Options All -Indexes
IndexIgnore *
 

quardian

0
İyinet Üyesi
Katılım
18 Nisan 2012
Mesajlar
0
Reaction score
0
Konum
Elazığ
tecrübelerime göre resimleri emlağın id sine göre klasörlerde saklamak daha mantıklı oluyor.

şöyle bir klasör silme fonksiyonu var, çok işe yarıyor;

PHP:
function removedir($dir) {
    if(!$dh = @opendir($dir)) return;
    while (false !== ($obj = readdir($dh))) {
        if($obj=='.' || $obj=='..') continue;
        if (!@unlink($dir.'/'.$obj)) removedir($dir.'/'.$obj, true);
    }
    closedir($dh);
	@rmdir($dir);
}

tabiki .htaccess e klasörlerin listelenmesini engellemek için şu kodları eklemekte faydalı

Kod:
# disable directory browsing
Options All -Indexes
IndexIgnore *
İlginiz için teşekküer ederi hocam , Güzel bir yyöntem ancak ben sorunu çözdüm ayrıca bu fonksiyonu kullanmaya kalkarsam diğer sayfalardada editleme yapmam gerekecek. Belki başka birinin işine yarar ilginiz için teşekkür ederim.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst