Öneri ve Hata Raporu



Günün Sözü Asla yalnız yürümeyeceksin

oylama 3/5 yorum 0 yorum yazar Hakan Taşan tarih 29 Haziran 2015

Bu yazıda PHP Codeigniter ile toplama işlemi yaparak güvenlik kodu oluşturacağız. Bir önceki yazıda Codeigniter Framework kullanmadan yapmıştım şimdi ise kullanarak yapacağız. Nasıl bir uygulama olacağını bu yazının yorum yap kısmında görebilirsiniz. Birkaç input ile form oluşturup toplama işlemiyle güvenlik kodunu ekleyeceğiz. Toplama işleminin sonucu session (oturum) ile kontrol edeceğiz. Eğer işlem doğruysa doğru olduğuna dair bilgi mesajı, yanlışsa da hata mesajı verecek.

Oluşturulan Form Görüntüsü

Ben "uyelikView.php" adında view ve "uyelik.php" adında controller olmak üzere 2 sayfa oluşturdum. Uygulamamızda session ve url kullanacağımız için session kütüphanesini ve url helper'ını önceden yüklemeliyiz. Bunu config klasöründeki autoload.php'den gerekli yerleri düzenleyerek yapabiliriz.

uyelikView.php içerisinde resimdeki basit tasarımı oluşturmak için HTML ve CSS kodları, sayıları oluşturmak için de PHP kodları olacak. uyelik controller'ında sayfa gelmeden oluşturulan sayıları inputlarda göstereceğiz. Ben burada sayılar değiştirilmesin diye placeholder kullandım, aynı şekilde readonly kullanmak da mümkün. Son olarak "Gönder" butonuna basıp post metoduyla formu uyelik controller'ına gönderiyoruz, eğer toplama işlemini doğru yaptıysak işlemin doğru olduğuna dair bilgi mesajı, yanlış yaptıysak hata mesajı verecek.

uyelik.php içerisinde toplama_oluştur() ve toplama_kontrol() adında 2 fonksiyonumuz olacak. toplama_olustur() içerisinde mt_rand() fonksiyonu ile sayıları oluşturacağız. Oluşturduğumuz sayıları topladıktan sonra session oluşturup toplamı session'a atayacağız. toplama_kontrol() içerisinde ise uyelikView'den alınan toplama sonucuyla (bizim girdiğimiz) ve session'da kayıtlı duran toplama sonucunu (gerçek sonuç) karşılaştıracağız. Dönen değere göre bilgi veya hata mesajı uyelikView.php içerisinde yazılacak. Mesajı yazdırma işini flashdata kullanarak yapacağız.

Kodların bir kısmını örnek olması için paylaşıyorum, uygulamayı denemek için önizlemeyi, bütün kodları indirmek için indir butonuna tıklayabilirsiniz.

toplama_olustur() Fonksiyonu

public function toplama_olustur()
{
    $toplam1 = mt_rand(1,9);
    $toplam2 = mt_rand(1,9);

    $toplam_sayi = $toplam1+$toplam2;

    $toplama = array('toplam1' => $toplam1, 'toplam2' => $toplam2);

    $this->session->set_userdata('guvenlik_kodu', $toplam_sayi); 

    return $toplama;  
}

 

toplama_kontrol() Fonksiyonu

public function toplama_kontrol()
{
    $toplama_sonuc = $this->input->post('sonuc',TRUE);

    if($this->session->userdata('guvenlik_kodu') != $toplama_sonuc)    
        $this->session->set_flashdata('bilgi', 'Hata');
    else
        $this->session->set_flashdata('bilgi', 'Doğru');

    redirect('/uyelik/index/');
    exit;
}

 

onizleme indir

paylaş Paylaş
oylama yap Oyla

makale yorumları YORUMLAR

Bu makale için yorum yazılmamış