lostyazilim
tr.link

Php mvc

7 Mesajlar 882 Okunma
lstbozum
tr.link

plastikbeyin plastikbeyin WM Aracı Kullanıcı
  • Üyelik 09.08.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek Öğrenci
  • Konum Kocaeli
  • Ad Soyad S** T**
  • Mesajlar 9
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)
Merhaba arkadaşlar MVC yapısını anlamak için kendi PHP MVC Frameork'umu yazmaya çalışıyorum. Ama takıldığım bazı noktalar var. Bunlardan biri sayfalar arasında değişken değerini taşımak.

class Index_Model extends Model {

public function __construct() {
parent::__construct();
}

public function index() {
$query = $this->db->prepare("SELECT p.*,a.* FROM post as p, author as a WHERE p.author_id = a.author_id");
$query->setFetchMode(PDO::FETCH_ASSOC);
$query->execute();
$row = $query->fetchAll();
return $row;
}
}


Buradan index metodundan dönen değeri, view'da göstermek istiyorum ama yapamadım. Bana bir yol gösterir misiniz?
 

 

wmaraci
reklam

MertKoseoglu MertKoseoglu Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 12.07.2013
  • Yaş/Cinsiyet 29 / E
  • Meslek x
  • Konum Ankara
  • Ad Soyad M** K**
  • Mesajlar 659
  • Beğeniler 120 / 168
  • Ticaret 3, (%100)
CodeIgniter öğrenmeni tavsiye ederim. Fazla karışık değil, mantığını anlamana yardımcı olur.
 

 

mesutusenmez89 mesutusenmez89 WM Aracı Kullanıcı
  • Üyelik 20.05.2016
  • Yaş/Cinsiyet 35 / E
  • Meslek Bilgisayar Mühendisi
  • Konum Kocaeli
  • Ad Soyad M** Ü**
  • Mesajlar 39
  • Beğeniler 0 / 3
  • Ticaret 0, (%0)
Merhabalar,

MVC bir object oriented design pattern dır. MVC den önce object oriented programming e de göz atmalısın.

Öncelikle View.php de require_once ile Index_Model.php import et. daha sonra yeni bir Index_Model instance ı yarat. sonra bu instance ile metodu çağır.

Bir de not: Framework demek soyutlama demektir. Bu şekilde yazarsan framework olmuş olmaz.
 

 

emirbugra emirbugra Entrepreneur Kullanıcı
  • Üyelik 14.01.2014
  • Yaş/Cinsiyet 35 / E
  • Meslek Web ve Mobil Geliştirme
  • Konum İzmir
  • Ad Soyad E** K**
  • Mesajlar 210
  • Beğeniler 39 / 38
  • Ticaret 3, (%100)
Ne hatası alıyosun tam olarak?
 

 

wmaraci
wmaraci

HapyMan HapyMan Full Stack Developer Kullanıcı
  • Üyelik 14.05.2016
  • Yaş/Cinsiyet 32 / E
  • Meslek What do you do exactly ?
  • Konum İstanbul Avrupa
  • Ad Soyad T** T**
  • Mesajlar 561
  • Beğeniler 171 / 208
  • Ticaret 0, (%0)
yukarıda arkadaşın bahsettiği gibi önce nesne tabanlı programlama öğrenmelisin daha sonra mvc işlemlerini daha kolay yapabilirsin.
 

 

plastikbeyin plastikbeyin WM Aracı Kullanıcı
  • Üyelik 09.08.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek Öğrenci
  • Konum Kocaeli
  • Ad Soyad S** T**
  • Mesajlar 9
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)

mesutusenmez89 adlı üyeden alıntı

Merhabalar,

MVC bir object oriented design pattern dır. MVC den önce object oriented programming e de göz atmalısın.

Öncelikle View.php de require_once ile Index_Model.php import et. daha sonra yeni bir Index_Model instance ı yarat. sonra bu instance ile metodu çağır.

Bir de not: Framework demek soyutlama demektir. Bu şekilde yazarsan framework olmuş olmaz.


Öncelikle herkese cevaplardan ötürü teşekkür ederim. Sizin dediğiniz gibi yaptım oldu. Her view'da model'ı sayfaya sizin dediğiniz gibi çağırmam mı gerekiyor? Ayrıca soyutlama derken ne demek sitediğinizi biraz açar mısınız neden framework olmaz?

Ek Olarak:

emirbugra adlı üyeden alıntı

Ne hatası alıyosun tam olarak?


Hata almıyorum fakat istediğim değerleri yazdıramıyorum
 

 

mesutusenmez89 mesutusenmez89 WM Aracı Kullanıcı
  • Üyelik 20.05.2016
  • Yaş/Cinsiyet 35 / E
  • Meslek Bilgisayar Mühendisi
  • Konum Kocaeli
  • Ad Soyad M** Ü**
  • Mesajlar 39
  • Beğeniler 0 / 3
  • Ticaret 0, (%0)
Framework yani Türkçe adıyla yazılım çatısı demek aynı ortamda(web, desktop, mobil, vs.) birçok farklı uygulama geliştirmeye olanak veren bir yapıdır. Sen burada çalıştırmak üzere spesifik bir sql gömmüşsün. Ayrıca PDO kullanıyorsun PDO zaten MVC yapısının model kısmını üstlenmiş durumda view ve controller yazsan kurtarır. Ama tamamen sana ait bir Framework olmaz.

Tahminen Model diye bir class tan extends edip böyle bir class yazmışsın ve Model class ın db connect işlemini yapıyor.

Burada soyutlama derken

SELECT p.*,a.* FROM post as p, author as a WHERE p.author_id = a.author_id

direk çalıştırmıcaksın. Mesela table, cond, select, join, limit, value, attr, attr_type, vs gibi sql değişkenleri tanımlayıp bunları constant larla eşleştirip kullanacaksın ki senin model in her türlü sql i direk parametre vererek çalıştırabilsin. Ayrıca çok iyi bir validation ve error handling yapısı kurman gerekiyor.

Velasıl kelam benim basit bir php framework u yazmam 1 yılımı aldı. Kendi açından değerlendirip ne ölçüde ihtiyacın olduğuna bakıp karar verebilirsin.

Son olarak yazılım dünyasında kullanılan tüm altyapılar(embeded ve embeded a yakın yazılımlar hariç) design pattern larla oluşturulur.
 

 

wmaraci
wmaraci
Konuyu toplam 2 kişi okuyor. (0 kullanıcı ve 2 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al