25 Kasım 2017 Cumartesi

Codeigniter-Database Kullanıcı Güncelleme-12

İlk olarak  kullanici_model.php sınıfımıza update()  metodunu  ve güncelleyeceğimiz kişinin bilgilerini çekmek için get() metodunu ekliyoruz.
<?php

class kullanici_model extends CI_Model
{
 //model yapıcı fonksiyonumuz
 public function __construct()
    {
        parent::__construct();
   // ekleme yapacağımız tablomuzun adını burda ekliyoruz
    //her defasında yazmıyalım diye
        $this->table = "kullanici"; 
    }
//veritabanına ekleme işlemini yaptığımız metotumuz
//parametre olarak bir array alıyor
    public function insert($data=array()){
//ilk parametre eklenecek tablo,ikincisi eklenecek data
     $insert=$this->db->insert($this->table,$data);
     return $insert;

    }
     public function getAll(){
//veri tabanımızdan kullanici adlı tablodan tüm sonuçları getiren sorgu
        $select=$this->db->get($this->table)->result();
        return $select;
    }
//id ye göre kullanıcı getiren metot
 public function get($where=array()){
//kullanıcıyı getiren satır sadece tek satır döndürür
$row = $this->db->where($where)->get($this->table)->row();
        return $row;
    }
     public function delete($where=array()){
//veri tabanından parametre olarak gelen id deki kişiyi silen kısım
//delete metodunda ilk parametre tablo ismi diğeri where kısmı kisi neye göre silinecekse o biz gelen id değerine göre sileceğiz.
        $delete=$this->db->delete($this->table,$where);
        return $delete;
    }
       public function update($where=array(),$data){
    //veri tabanından parametre olarak gelen id deki kişiyi güncelleyen kısım
     $this->db->where($where);
     $update=$this->db->update($this->table, $data);
        return $update;
    }
}

 ?>




Daha sonra controler sınıfımızda güncelleme yapacağımız sayfayı  çağırdığımız update_kullaniciPage() metodunu oluşturuyoruz.Bu metot viewden tıklanan kişinin id sine göre model sınıfımızdan kişi bilgilerini çekip viewimizi çağırarak kişi bilgilerini gönderir.İkinci olarak çağrılan viewde güncelle butonuna basıldığında çalışan metodumuz da update_kullanici() metodunu çağırıyoruz.Bu metot güncellenen bilgileri alıp modelin update() metodunu çağırarak veritabanında güncelleme yapar.

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');



class Welcome extends CI_Controller {
//sınıfımızın yapıcı fonksiyonu

 public function __construct()
    {
     //ilk önce üst sınıfın yapıcı fonksiyonu çağrılır
        parent::__construct();
        //model sınıfımızı yüklüyoruz.
        $this->load->model("kullanici_model");
    } 
 public function index()
{
  //url ye controlerımızn ismi yazıldığında ilk olarak index  metodu çağrılır.
    //bir standat sınıf nesnesi oluşturup mddelden gelen değerleri atıyoruz.
    $data=new stdClass();
    $data->kullnaicilar=$this->kullanici_model->getAll();
    //viewimizi çağırıp modelden gelen değerleri viewimize gönderiyoruz
  $this->load->view('welcome_message',$data);
 }
   public function add_Kullanici(){
         $ad=$this->input->post("kullanici_adi");
         $soyad=$this->input->post("kullanici_soyadi");
//gelen verileri bir diziye aktarıyoruz "k_ad","k_soyad" veritabanımızdaki kolon adları
         $data=array("k_ad" => $ad ,
                    "k_soyad" => $soyad
          );
//aldığımız değerleri kayıt için model sınıfımızın insert metodunu çağırıyoruz
//gelen sonucu bir değişkene atıyoruz.
       $insert=$this->kullanici_model->insert($data);
//insert başarılı ise gerçekleşmişse viewimizi çağırıyoruz
      if($insert){
          $this->load->view("kullanici");
         } }
        public function delete_kullanici($id){
//model sınıfımızın delete metodunu çağırarak parametre olaraka id gönderiyoruz
          $delete=$this->kullanici_model->delete(array("id"=>$id));
//delete işlemi başarılı ise kullanıcıları çekip viewimizi çağırıyoruz
           if($delete){
            //gelen verileri tutacak sınıf nesnesi üretiyoruz
            $data=new stdClass();
            //gelen verileri nesnemize atıyoruz
           $data->kullnaicilar=$this->kullanici_model->getAll();
           //view i çağırıp gelen verileri view e gönderiyoruz
              $this->load->view('welcome_message',$data);
            }
        }
            public function update_kullaniciPage($id){
              //güncelleyeceğimiz kişinini bilhgilerini tutmak için nesne oluşutruyoruz
              $data=new stdClass();
        //id sini bildiğimiz kişinini bilgileri getiriyoruz
            $data->kullnaicilar=$this->kullanici_model->get(array("id"=>$id));
      //aldığımız bilgileri güncelleme sayfasını yükleyip bilgileri view e gönderiyoruz
              $this->load->view('kullanici_guncellePage',$data);
            }
         public function update_kullanici($id){
          $ad=$this->input->post("kullanici_adi");
          $soyad=$this->input->post("kullanici_soyadi");
//gelen verileri bir diziye aktarıyoruz "k_ad","k_soyad" veritabanımızdaki kolon adları
          $data=array("k_ad" => $ad ,
                    "k_soyad" => $soyad
           );
          $update=$this->kullanici_model->update(array("id"=>$id),$data);
//UPDATE işlemi başarılı ise kullanıcıları çekip viewimizi çağırıyoruz

           if($update){
            //gelen verileri tutacak sınıf nesnesi üretiyoruz
            $data=new stdClass();
            //gelen verileri nesnemize atıyoruz
           $data->kullnaicilar=$this->kullanici_model->getAll();
           //view i çağırıp gelen verileri view e gönderiyoruz
              $this->load->view('welcome_message',$data);
            }
        }
}
?>




Son olarak viewimize güncelle linkini ekleyip controlırımız daki update_kullanici() metoduna formun action kısmında id yi parametre olarak gönderiyoruz. kullanici_guncellePage.php dosyamız.

<!DOCTYPE html>

<html lang="en">
<head>
 <meta charset="utf-8">
 <title>Welcome to CodeIgniter</title> 
</head>
<body>
<div id="container">
 <h1>Merhaba Dünya!</h1>
<form role="form" action="<?php echo base_url("welcome/update_kullanici/$kullnaicilar->id") ?>" method="post">
  <input type="text" name="kullanici_adi" value="<?php echo $kullnaicilar->k_ad?>"> <br>
  <input type="text" name="kullanici_soyadi" value="<?php echo $kullnaicilar->k_soyad  ?>"> <br>
 <button type="submit" >Güncelle</button>
</form>
</div>

<br><br>
</body>

</html>




Son olarak YAKUP TUSKAN adlı kullanıcının bilgilerini değiştirip güncelleyelim.


Güncelle linkine tıkladığımızda kişibilgilerinin güncelleneceği sayfa açılmaktadır.Burada kişi bilgilerini değiştirip güncelle butonuna basıyoruz.Kişi bilgilerimiz id ye göre getirilerek inputlara dolduruyoruz.İsim ve soy isimi küçük harflerle yazarak güncelle butonuna basıyoruz.



Son olarak güncelleme işlemi başarılı olarak yapıldı.Ekran görüntümüz.





Hiç yorum yok:

Yorum Gönder

NodeJS-Socket.io Real Time Chat Uygulaması

Bu chat uygulmasını Node js ve socket.io kullanarak gerçekleştirdim.Veri tabanı olarak MySql kullandım.Kişiler Real time olarak birbirleriyl...