Php ile Upload Scripti Yapımı
Merhaba arkadaşlar. Bu yazımda sizlere nasıl php ile upload scripti yapılır ondan bahsedeceğim. Aslında yapımı çok basit. Belirli komutlarımız var. Gerisini php kendisi hallediyor. Haydi başlayalım;
Şimdi arkadaşlar bu yazımda islem.php gibi işlemi tamamlayan bir php dosyası olmadan nasıl tek sayfa içerisinde döngüler kurarız onuda göreceğiz. Öncelikle şunu söyleyeyim; php de eğer bir işlem yarıda kaldıysa yorumcu kaldığı yerden sayfa aşağısına kadar ?> tagını arar. Eğer bulursa içinde bulduğu işlem konudu kapatıcı kod olarak görür. Karmaşık olmuş olabilir. Birde böyle bakalım;
upload.php;
<?php
if($git) {
$dosya_dizin = "dosyalar";
copy ( $dosya, "$dosya_dizin/$dosya_name" );
echo ("$dosya_size byte boyutundaki $dosya_name in uploadi tamamlandi.");
}
else {
?>
işte bu upload kodumuz yanlız burada else den sonrası eksik. işte onu taa aşağıya koyucaz. Böylece sayfaya ilk girdiğimizde hata vermeyecek.
Burada ilk önce dosyaları yükleyeceği klasörü belirttik. Daha sonra seçilen dosyanın bir kopyasınıda dizine at dedik ve ayrıca copy olayınada bir isim verdik. Bu ismi kullanarak dosya hakkında bilgileri de ekrana bastık. Şimdi buraya kadar herşey tamam. İkinci yarı kodlarımızı görelim;
<form method="post" action="panel.php" enctype="multipart/form-data" > <table> <tr> <td><input type="file" name="dosya"></td> <td><input type="submit" value="Upload et" name="git"></td> </tr> </table> </form>
Bu kısımda ise dosyaları yükleyeceğimiz component yani dosya yükleyicisi koyduk. Şimdi ise üçüncü ve son kısım;
<?php } ?>
En başta else nin kapatıcı kodu yoktu ve araya html kodları girdi. İşte else nin döndüreceği kodlar html kodları oldu. Daha sonrada } ile php işlemini kökten kapattık. Buraya kadar herşey tamam. Bundan sonra dizin içerisindeki dosyaları göstereceğiz. İsterseniz bu kodlara enjekte edebilir, istersenizde goster.php oluşturabilirsiniz. Ben daha açık anlaşılması açısından goster.php yi oluşturuyorum;
goster.php;
<?
$dosyalar_nerede = "dosyalar";
$dizinimiz = opendir ($dosyalar_nerede);
while ( gettype ( $listele = readdir( $dizinimiz ) ) !=
boolean ) {
if ( is_dir( "$dosyalar_nerede/$listele" ) )
echo " [Gerideki Dosyalar] " ;
echo ("<A href=\"$dosyalar_nerede/$listele\">$listele</A><br>\n");
}
closedir ($dizinimiz);
?>
Her zaman yaptığımız gibi ilk önce dosyalar nerede onu belirtiyoruz. Daha sonra dizini php içerisinde açıyoruz. Ardından gerideki diziler için bir veri sayımı yaptırıyoruz. Ve verilere gerekli isimleri veriyoruz.
Herkese iyi günler. Yeni yazılarımda görüşmek üzere…

07 Kasım 2009 - 21:48
güzel anlatım