Codeigniter'da post metodu ile string ifade alabilmek

By Admin
In BackEnd
20/Aralık/2020
Okuma Süresi: 3 dk.

Selamlar sevgili yoldaşlar;

Codeigniter'da bir form aracılığıyla verileri controller'a yollarken form'un action kısmında parametre yollayabiliyoruz. Bu parametreleri de controller'daki metodumuzda çekip kullanabiliyoruz. Üstelik bu işlemler için route kullanmak zorunda değiliz. Burada dikkat edilmesi gereken en önemli husus controller adı/metot adı/yollanacak veri şeklinde bir yapımızın olmasıdır. 

Örnek üzerinden gidersek form'umuzun action alanı şu şekilde olsun;

action="base_url('controllerName/index/$parametre')"

Burada metot adı index olduğu zaman genellikle yazılmıyor ve unutuluyor. Çünkü bir parametre göndermiyorsak metot adımız da index ise metot adını yazmaya gerek olmuyor. Sistem zaten o controller'ın öncelikle construct metoduna sonra da otomatikman index metoduna gidiyor ve çalıştırıyor. Halbuki bir parametre yollayacağımız zaman işler değişiyor. Metot adımız index de olsa her türlü yazmak zorundayız. Bu çok sık yapılan hatalardan biri. 

Metot adı index değilse zaten her türlü yazılıyor. O yüzden bu ihtimali değerlendirmek istemiyorum. 

controller yapımız ise şu şekilde olmalı;

public function index($parametre)
    {

formdan gelen $parametre değerini bu şekilde çekebiliyoruz. 

Bunların dışında bir de parametreleri route yardımıyla gönderebiliriz. Route ile parametre yollarken sıklıkla (:any) ve (:num)'dan yardım alıyoruz. Sadece adminlerin giriş yaptığı bir yönetici paneli kodluyorsak route konusuna çok özen göstermeyebiliriz ama ön yüzde kesinlikle route kullanmalıyız bu tarz işlemlerde. Çünkü controller adımızı ve metot adımızı bu şekilde herkese açık bir şekilde kullanmak güvenlik zaafiyeti oluşturabilir.

 


Css invert ile bir rengin tam zıttını oluşturmak
Neredeyse bütün veritabanı tablolarında olması gereken 12 sütun