folder Tahribat.com Forumları
linefolder Asp - Php - Cgi - Perl
linefolder PHP + Javascript İle Slideshow



PHP + Javascript İle Slideshow

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Ayro
    Ayro's avatar
    Kayıt Tarihi: 08/Ağustos/2005
    Erkek

    indirme : http://code.google.com/p/ayroman/downloads/detail?name=test.rar

    Bir kaç slideshow'a baktım ; ölüm ötesi. Sinir etti beni. php + javascript herşeye yeter , jQuery var dedim ve ufak birşey yaptım.

    Ben veritabanından çekip ; slideshow yapacağım. Tasarım, kodlar, javascript ona göre değiştirdim. Fakat yeni başlayanlara hem fikir olur ; hemde başka işler için değiştirebilirler.

    Dosyayı indirip açın, klasörü localhost'a atıp ; direkt girip bakabilirsiniz.

    Explorer'da da çalışıyor (hiç bir kod falan yazmadım, iE9'da denedim , sorun olacağını sanmıyorum)

    ----

    İçeriği ile ilgili bilgi vermek istiyorum.

    max height ile ; resimlerin orantısız durmasını engelledik. Yükseklik belli boyda.

    Google'dan jQuery'yi çektim. İSterseniz kendiniz indirip, dosya arasına koyup, oradan çağırabilirsiniz.

    pic diye değişken yaratıp (töbe haşa, yaratmak allaha mahsus); cinsini array yaptık.

    num adını verdiğim ve büyük iş yapacak değişken ekledik ve 0 yaptık (array'de sıfır olur).

    php'de olduğumuzdan i diye deşken ekleyip, sayaç yapacağız. Bu , sonunda kaç resim olduğunu gösterecek.

    --

    Geri kalan dosya dizin işlemi. Açtırıp , dosyaları bakıyoruz.

    getimagesize ile dosyayı okuduk. Burada array'ler var. İSterseniz başka bir yerde 

    $a = getimagesize(resimyolu);
    echo '<pre>'; print_r($a); echo '</pre'>;

    diye ne var ne yok bakabilirsiniz. Burada en, boy, tip var. Yani $fi['0'] = en, $fi['1'] = boy ve 2 tip oluyor. Tip şu şekilde ;

    1-2-3-4 olabilir. Sırasıyla : gif, jpeg, png, bmp. Eğer bu 4'ü değilse ; işlemi yapma dedim, çünkü resim değildir.

    echo 'pic[',$i++,']="'.$dir.$file.'";';

    buradaki olay ; daha önce <script> ile açtığımı için , sayfada script içinde işlem yaptıracak. pic[X]  = 'dosya adı'; şeklinde devam ediyor. X yerine $i yazdım. Yani 0 ekleyecek; ekledikten sonra artarak gidecektir.

    total = $i yazdım. Döngü sonunda total neyse o olacak. -1 eklemedim ; matematiksel. Javascripte ona göre halledicem (Değiştirebilirsiniz).

    div içine img src ekleyip birşey yazmadım ; javasript ile çağıracağım.

    fadeIn ile efektli olarak pic[0] 'ı img kısmına ekledik (jQuery kullanımı).

    dothat diye bir fonksiyon yarattım. gelen değer b ise eksilt, değilse arttır dedik. İleri / geri olayı için.

    eğer 1 yada 1'den düşükse ; son resmi ekledik (total-1 çünkü $i++, bittikten sorna arttırdı).

    Total'in moduna göre , fazlalıkta tekrar başa döndürdük.

    jQuery efekti, sonrasında da ; tıklandığında ben işlem yaptıracağım (yeni div aç vs..), onun için bir fonksiyon.

    -----------------------

    Kısaca bu. Projeye dönmem gerek, sorun; herhangi birşey varsa yazabilirsiniz.

    Kod hali : http://paste.org/61113

     

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    PHP-SEO Developer
    Erdem
    Erdem's avatar
    Kayıt Tarihi: 04/Haziran/2002
    Erkek

    İndirdim inceledim, kodlamayı incelemek isteyenler için gayet güzel bir döküman olabilir.

    Gayet sade...

     


    Php for SEO nun ardından Php for Gcode (CNC)
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SinusX
    SinusX's avatar
    Kayıt Tarihi: 14/Aralık/2010
    Erkek

    Bir öneri

    Fotoları 1 2 3 4 diye if ile kontrol etmek yerine dosya sayısının countını alıp for içinde yapabilirsin 

    4 foto yerine 10 tane koymak isteyen kodu değiştirmek zorunda kalmaz böylece

    SinusX tarafından 08/Şub/13 19:08 tarihinde düzenlenmiştir

    Si vis pacem para bellum.
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Ayro
    Ayro's avatar
    Kayıt Tarihi: 08/Ağustos/2005
    Erkek
    SinusX bunu yazdı

    Bir öneri

    Fotoları 1 2 3 4 diye if ile kontrol etmek yerine dosya sayısının countını alıp for içinde yapabilirsin 

    4 foto yerine 10 tane koymak isteyen kodu değiştirmek zorunda kalmaz böylece

    hocam if ile çektiği birşey yok zaten. Yanlış anlamışsın sanırım.

    İstediğin kadar resim ve başka dosya atabilirsin. Kodda değişiklik yapmana gerek yok ; belirlediğin klasördeki bütün resimleri otomatik olarak slideshow şeklinde bastırır. 

    yani kodu ellemeden 2 resimle; 200 resim'i gösterebilirsin.

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Ayro
    Ayro's avatar
    Kayıt Tarihi: 08/Ağustos/2005
    Erkek

    yenilik :

    Eğer yön tuşları ile sağa/sola geçmesini istiyorsanız ;

    şunu script tagının arasına ekleyin

    ----

    $(document).keydown(function(event){

        var keys = new Array(37, 39);

        var code = (event.which) ? event.which : event.keyCode;

     

        if(code == keys[0]) dothat('b');

        if(code == keys[1]) dothat();

    });

Toplam Hit: 725 Toplam Mesaj: 5