jQuery kullanarak AJAX Form dosya adı kontrolü

Merhaba arkadaşlar,

Bugün uzun zamandır kullandığım ve de öğrendikçe gittikçe hayran olduğum jquery kütüphanesinde basit bir ders yazacağım.

Bu dersin temelinde formdan gelen bir verinin değerini nasıl alacağınızı, veriyi nasıl işleyecfeğiniz, veriyi nasıl böleceğinizi, büyük harf küçük harf dönüşümnü nasıl yapacağınızdan bahsedeceğim.

Aslında bahsedeceğim şey plugin kullanmadan freelance bir işte ufak bir formda sunucu bazlı ön kontrol içindi, formdan <input type=”file”… > şeklinde yüklenen dosyaların yüklenmeden önce uzantılarını almam lazımdı. Aslında bu ve benzeri işler için jQuery ile yazılmış jquery form validation isimli şahane bir eklenti var, fakat ben sadece böyle ufak bir şey için çağırmak istemedim onu.

her neyse, lafı daha da uzatmadan koda geçiyorum, açıklamalar ve anlatım kodun içinde:

?View Code HTML
1
2
3
4
<form enctype="multipart/form-data" method="post">
<input type="file" name="photo" id="photo" class="textbox" style="width: 160px;" />
<input type="submit" id="soulgonder" name="soulgonder" value="gönder" />
</form>
?View Code JAVASCRIPT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<script type="text/javascript">
//soulsmasher.net
        $(document).ready(function() {
            $('#soulgonder').click(function() {
              //ben her selectore id atadım, $('input[name=soulgonder]') şeklinde de seçilebilir, ama tüm sayfayı taradığından sevmiyorum öyle kullanmayı ben
              //bu click eventi ile tıklandı mı çalışacak
              var resimadi = $('#resim').val();
              //resim adını aldık, şimdi ama soulsmasher.jpg olabilir, soulsmasher.JPG olabilir, onun için resim adını ufaltacağız
              resimadi = resimadi.toLowerCase();
              //artık her türlü resim adı ufak, şimdi uzantıyı alalım, yine jqueryden faydalanacağız
              var array = resimadi.split('.');
              //resim adını split metodu ile böldüm, şimdi uzantıyı alalım
              var uzanti = array[array.length-1];
              //klasör adında da nokta olabilir, masaustu/soul.smasher/resim.jpg gibi, bu yüzden son noktayı alıyoruz, length metotu phpdeki count() a eşdeğer
              if (uzanti!="gif" && uzanti!="jpg" && uzanti!="jpeg" && uzanti!="png") {
                //sanırım burayı anlatmama gerek yok :)
                alert('Geçersiz resim');
              }  
            }); 
        });
        </script>

afiyet olsun ;)

GD Star Rating
a WordPress rating system
GD Star Rating
a WordPress rating system
jQuery kullanarak AJAX Form dosya adı kontrolü, 8.4 out of 10 based on 12 ratings