25 Kasım 2017 Cumartesi

Codeigniter-Database Veri Ekleme-9

İlk olarak phpMyAdmin de yeni bir database oluşturup kullanici adında bir tablo oluşturuyoruz.




Codeignater da veri tabanına ekleme işlemi yapabilmek için ilk olarak config klasöründeki autoload.php dosyasında libraries e database i eklememiz lazım.

Daha sonra yine config klasörü altındaki database.php içinde veri tabanımızın konfigrasyonlarını yapmamız gerekmektedir.

$db['default']['hostname']   ==>veritabanı_host_adi
$db['default']['username']   ==>veritabanı_kullanici_adi
$db['default']['password']   ==>veritabanı_kullanici_sifresi
$db['default']['database']    ==>veritabanı_adı

Benim veri tabanı ayarlarım aşağıdaki gibi sizde kendinize göre değişiklikleri yapın.


Şimdi Model sınıfımızı oluşturalım.Model sınıfı yazmak için ilk olarak CI_Model sınıfından extend ediyoruz. Controler da da üst sınıfın yapıcı fonksiyonunu çağırıyoruz.

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;
    }
}
 ?>
View sınıfımız için daha önceki derslerimizde yaptığımız formu kullanacağız. welcome_message.php kodumuz.

<!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/add_Kullanici") ?>" method="post">
  <input type="text" name="kullanici_adi"> <br>
  <input type="text" name="kullanici_soyadi"> <br>

 <button type="submit" >Gönder</button>
</form>

</div>

</body>

</html>





Şimdi controler sınıfımızı yazalım.Yine welcome.php controlırında add_kullanici() diye bir metot oluşturup aşağıdaki gibi dolduralım.

<?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.

  $this->load->view('welcome_message');
 }
   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");

         }

        }
}
?>






Son olarak ekleme işlemi başarılı ise yükleme yaptığımız kısım kullanici.php dosyası.

<!DOCTYPE html>

<html lang="en">
<head>
 <meta charset="utf-8">
 <title>Welcome to CodeIgniter</title>
</head>
<body>
<div id="container">
 <h1>Ekleme işlemi başarılı!</h1>
</div>
</body>
</html>



Son olarak ekran görüntülerimiz ilk olarak kullanıcı adı ve soy adını yazıp gönder butonuna basıyoruz.

Evet ekleme işlemimiz başarı ile gerçekleştirildi.


Veritabanımıza eklenen değerimiz.

                                       

Evet model,view ve controler ı kullanarak ekleme işlemini yaptık.Umarım faydalı olmuştur.Sonraki dersimizde görüşmek üzere.


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...