-
اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
تو این اموزش قصد این رو دارم ، تا با هم سعی کنیم یه خورده از برنامه نویسی معمول ما php کارای مبتدی فاصله بگیرم و برنامه نویسیمونو از حالت درهم برهم یا همون اسپاگتی ((ماکارونی خودمون)) به یه حالت استانداردتر که مدیریت کدهامونو راحت ترو بهتر میکنه برسونیم.
در اخر این اموزش ما علاوه بر این که به صورت عملی با ساخت یک گالری داینامیک بر طبق الگوی mvc اشنا میشیم ، با مفاهیمی مثل فریم ورک ، الگوی طراحی ، وب 1 و 2 و 3 ، PDO و htaccess نیز اشنا میشیم.
شما میتونید فایل PDF اموزش رو از لینک زیر دانلود کنید:
http://blog.pitm.net/downloads/mvc-gallery.pdf
همچنین فایل پروژه رو از لینک زیر میتونید دانلود کنید:
http://blog.pitm.net/downloads/mvc-gallery.zip
خوشحال میشم نظراتتونو راجع به اولین فایل اموزشیم تو وبلاگ http://blog.pitm.net ببینم
موفق باشید
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
از اونجایی که کسی نظر فنی نداد من خودم امروز موقع مطالعه کتاب برنامه نویسی پیشرفته در php5 از انتشارات دیباگران تهران به چند نکته رسیدم!
در واقع چند اشتباه!
من هیچ کدی رو در لایه نمایشم نیاوردم و همه رو در کنترل هام نوشتم که این خودش اشتباه!
بر اسا نکات کتاب:
وارد کردن منطق نمایش در کد برنامه بهتر از وارد کردن منطق برنامه در کد نمایش نیست!
mvc در مورد حذف تمام منطق از نمایش بحث نمیکنه ، بلکه در مورد حذف منطق کار از نمایش صحبت میکند.فرق گذاشتن بین منطق نمایش و کار همیشه ساده نیست.
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
سلام و درود خدمت همه من طبق تجربیات ومطالب موجود مقاله ای نوشتم که در ادرس زیر میتوانید دانلودش کنید لطفا نظر بدید
info@gata-co.ir
http://www.gata-co.ir/index.php?opti...sign&Itemid=28
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
نقل قول:
نوشته شده توسط
pesarkhobeee
تو این اموزش قصد این رو دارم ، تا با هم سعی کنیم یه خورده از برنامه نویسی معمول ما php کارای مبتدی فاصله بگیرم و برنامه نویسیمونو از حالت درهم برهم یا همون اسپاگتی ((ماکارونی خودمون)) به یه حالت استانداردتر که مدیریت کدهامونو راحت ترو بهتر میکنه برسونیم.
در اخر این اموزش ما علاوه بر این که به صورت عملی با ساخت یک گالری داینامیک بر طبق الگوی mvc اشنا میشیم ، با مفاهیمی مثل فریم ورک ، الگوی طراحی ، وب 1 و 2 و 3 ، PDO و htaccess نیز اشنا میشیم.
شما میتونید فایل PDF اموزش رو از لینک زیر دانلود کنید:
http://blog.pitm.net/downloads/mvc-gallery.pdf
همچنین فایل پروژه رو از لینک زیر میتونید دانلود کنید:
http://blog.pitm.net/downloads/mvc-gallery.zip
خوشحال میشم نظراتتونو راجع به اولین فایل اموزشیم تو وبلاگ
http://blog.pitm.net ببینم
موفق باشید
تمامی لینک ها مشکل دارند لطفا بررسی کنید
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
من دیروز بود تو سایت ا apress دیدم یه کتاب برای php MVC زده. خودم که وقت نکردم دانلود کنم و نگاهش کنم. اما اینطور کتابه ا واقعا غنیمت (قنیمت! نمی دونم با کدوم ق هست) است. کاش اسن کتاب را زودتر می زدند:
http://www.apress.com/web-development/php/9781430241645
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
با سلام
لینک های آموزش mvc خرابه:گریه::ناراحت:
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
سلام
این ساختار یا منطق کلی درسته؟ منظورم الگوی تجزیه آدرس توی روتر و کنترلر که همه چیز توش انجام میشه.
یعنی میشه با استفاده از الگوی که توی این برنامه بکار رفته شروع کرد به طراحی؟یا نه بریم سراغ یه فریمورک؟ میشه سادش رو معرفی کنید؟
میگن CI و کیک برای شروع خوبه حالا از دوستان که با اینها کار کردن کدامش آسانتر ؟
با تشکر
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
با سلام
نميتونم فايلها رو دانلود کنم فکر کنم لينک ها مشکل دارن
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
دوست عزیز شروع این آموزش کار خیلی خوبیه ولی جان من اگه قراره مثل خیلی از آموزش های دیگه ای که دوستان شروع می کنن باشه که اوایلش هم خیلی عالی پیش میرن بعد یه دفعه غیبشون میزنه و دیگه نصفه نیمه ولش می کنن اصلا شروعش نکنیم بهتره
از حرفهام ناراحت نشی
اگه تا آخرش هستی تا ماهم این تاپیک رو دنبال کنیم و سعی کنیم توی مباحث شرکت کنیم
با آرزوی موفقیت
-
1 ضمیمه
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
سلام! من خودم تجربه و سواد چندانی در این زمینه ندارم ولی به قدر دونسته های خودم مطلب می زارم.
نحوه کار کردن مدل mvc رو می تونید به صورت زیر مشاهده کنید.
ضمیمه 90069
این مدل یک مدل سه لایه است .
کلیه درخواست ها از صفحه index.php شروع میشه و یک شی روتر ساخته میشه که وظیفه اش تجزیه آدرس url ها هست .در ادامه بر اساس تجزیه آدرس url که در متغیر سراسری
نقل قول:
$_SERVER['REQUEST_URI']
قرار داره کنترلر و action مناسب میشه و بنابراین یک شی از کنترلر مربوطه ایجاد میشه که وظیفه این کنترلر لود ویو مناسب و قرار دادن داده های لازم فراخوانی شده از دیتابیس ویا فایل و.... در این ویو می باشد.بعد از انجام مراحل فوق خروجی نهایی که حاوی فقط کد html هست به مرورگر کاربر ارسال می شود.
حالا فکر کنم کلیات رفتار مدل MVC روشن تر شده است.
------------------------------------------------------------------
چند تا منبع نسبتا عالی رو هم معرفی می کنم.
http://www.nathandavison.com/posts/v...1-introduction
http://johnsquibb.com/tutorials/mvc-...-hour-part-one
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
دوباره سلام!ما در اینجا زیاد کد نویسی محض نمی پردازیم وفقط به مفاهیم و مثال های خوب اکتفا می کنیم.
هر آدرس معمولا و بهتر هست به صورت زیر در نظر گرفته شود
http://localhost/controller/action/param1/param2/...
البته این که گفتم وحی منزل نیست یعنی به صورت های دیگه هم میشه استفاده کرد ولی این سبک زیباتر و کاربر پسند تر و بهتر قابل مدیریت هست.
کنترلر:
گفتیم که کنترلر داده های لازم رو از کلاس model استخراج کرده و همچنین ویو مناسب رو بر اساس action که کلاس روتر مشخص کرده انتخاب می کنه این دوتا رو به صورت یک خروجی واحد به مرورگر ارسال می کنه.
حالا معمولا اکثر کلاس های کنترلر چند تا چیز رو با هم مشترک هستند بنابراین برای جلوگیری از دوباره کاری و استفاده مناسب از تفکر شی گرایی یک کلاس پایه به نام BaseController ایجاد می کنیم که صفات مشترک رو داراست و در نهایت بقیه کنترلر ها رو از این کلاس مشتق (ارث بری ) می کنیم که اون صفات رو به ارث ببرن.
البته چون کلاس کنترلر یک طرح کلی است و از اون شی نمی سازیم به صورت abstract تعریف می کنیم.
<?php
abstract class baseControlelr
{
private $model;
private $View;
public function __construct()
{
//code................
}
public function getName()
{
return 'BaseController';
}
}
?>
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
کلاس کنترلر:
include 'BaseController.php';
class HomeController extends BaseController
{
public function __construct()
{
parent::__construct();
$this->model='hello world';
$this->view=new home_view($this->model);
}
public function index()
{
//code............
}
public function action_1()
{
//code................
}
public function action_2()
{
//code................
}
}
البته در پست های بعدی home_view و کلاس روتر و.... رو توضیح می دم.خدا حافظ.
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
سلام
خیلی ممنون که توجه کردید ؟
من با این کد عمل روتر رو انجام میدم اما نمیدونم چرا کار نمیکنه ؟
<?php
class Router
{
private $registry;
private $path;
private $args=array();
private $file;
private $controller;
private $action;
function __construct($registry)
{
$this->registry=$registry;
}
function setPath($path)
{
if(is_dir($path) == false)
{
throw new Exception('invlide controller path:'.$path.'');
}
$this->path = $path;
}
public function loader()
{
$this->getController();
if(is_readable($this->file) == false)
{
$this->file = $this->path.'/error404.php';
$this->controller = 'error404';
}
include $this->file;
$class=$this->controller.'Controller';
$controller= new $class($this->registry);
if(is_callable(array($controller,$this->action)) == false)//function exists in class
{
$this->action='index';
}
else
{
$action=$this->action;
}
$controller->$action();
}
/*$route=(empty($_GET['rt'])) ? '' : $_GET['rt'];*/
private function getController()
{
echo $_SERVER['REQUEST_URI'];
$base="/meysam_mvc/";
$route=$_SERVER['REQUEST_URI'];
$route=str_replace($base,"",$route);
if(empty($route))
{
$route='index';
}
else
{
$parts=explode('/',$route);
$this->controller = $parts[0];
if(isset($parts[1]))
{
$this->action = $parts[1];
}
}
if(empty($this->controller))
{
$this->controller = 'index';
}
if(empty($this->action))
{
$this->action = 'index';
}
$this->file=$this->path.'/'.$this->controller.'.php';
}
}
?>
با تشکر
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
مشکلتون چی هست؟ یعنی منظور تون اینه که error می ده ؟ خطاچی هست؟
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
کلاس BaseView:
برای اینکه تعدای صفات بین کلاس های view مختلف مشترک هست همانند بخش کنترلر ها یک کلاس پایه با نام BaseView در نظر می گیریم
<?php
abstract class BaseView
{
protected $file;
protected $model;
public function __construct()
{
//code............
}
}
?>
کلاس Home.View.php:
<?php
class Home_View extends BaseView
{
/**
*
*
*@The Constructor Function
**/
public function __construct()
{
$this->file='./Home.view.php';
$this->index();
}
// render $this->file
public function index()
{
require $this->file;
}
public function __destruct()
{
}
}
مثال های که زده می شه ساده ولی کاربردی است اگر صبر کنید به مطالب مهمتر و جذاب تر در MVC هم خواهیم رسید.
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
مرسی که پاسخ دادید
آره error میده کنترلر و اکشن رو نمیتونه تشخیص بده ؟قبلا از این استفاده میکردم
$route=(empty($_GET['rt'])) ? '' : $_GET['rt'];
url هام اینجوری بود localhost/meysam_mvc/?rt=blog/view
اما الان از این استفاده میکنم درست جواب نمیده ؟error not found 404
$base="/meysam_mvc/";
$route=$_SERVER['REQUEST_URI'];
$route=str_replace($base,"",$route);
localhost/meysam_mvc/blog/view
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
سلام!
من که دسترسی به کل پروژه شما ندارم و قضاوت در مورد یک تکه کد سخت هست ولی فکر کنم که:
if(is_readable($this->file) == false)
{
$this->file = $this->path.'/error404.php';
$this->controller = 'error404';
}
یعنی فایل رو پیدا نمی کنه ممکنه مسیر و یا نام فایل رو اشتباه فراخوانی می کنید.
و یا ممکنه مربوط به این تکه کد هم باشه .
$parts=explode('/',$route);
$this->controller = $parts[0];
if(isset($parts[1]))
{
$this->action = $parts[1];
}
یعنی ببنیدکه واقعا
$parat[0]
داخلش چی هست ؟من فکر می کنم که باید
$this->controller = $parts[1];
استفاده کنید تقریبا من هم قبلا به چنین مشکلی بر خورده بودم.البته اگه سورس کامل رو اپلود کنید بهتر می شه کمک کرد.
if(isset($parts[1]))
{
$this->action = $parts[2];
}
فعلا معذرت می خوام رو ظاهر فقط قضاوت کردم.اگه سورس رو قرار بدید بهتر می تونم کمکتون کنم.
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
سلام
آقا دمت گرم درسش کردم
میشه درباره اسمارتی توی ویو صبحت کنید که چطور میشه از اسمارتی توی ویو استفاده کرد.(نمیدونم درست گفتم جمله رو)
بازم تشکر
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
بهتره از لینک زیر برای اشنایی و نحوه نصب استفاده کنید.
http://articles.tahlildadeh.com/post...te-Engine.aspx
من خودم زیاد کار نکردم و لی سختی چندانی نداره حالا که لینک فوق رو مطالعه کردید می تونید ویوها را مثل فایل test.tpl بسازید و در فولدرtemplate ذخیره کنید بعد در یک فولد دیگر مثل view فایل پی اچ چی اونو قرار بدید و موارد لازم رو تخصیص بدید در نهایت بقیه کار ساده است و فراخوانی هریک از صفحات (ویو) که فایل پی اچ پی هستند مثل همون حالت ساده mvc می باشد....
موفق باشید.
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
سلام دوستان
میشه یه منبع که MVC رو بطور کامل آموزش داده باشه معرفی کنید؟
انگلیسی یا فارسی فرقی نمیکنه.
مرسی.
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
من میونم با کتاب یا سایت های آموزشی بهتره تا اموزش های ویدئویی پولی.
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
اگه یه نگاهی به نظرات کاربرانی که اون پکیج رو تهیه کردن (توی لینکی که گذاشتن) بندازین، احتمالاً نظرتون عوض میشه ولی بهرصورت اگه دنبال کتاب یا سایت آموزشی هستین میتونید از کتاب Pro PHP MVC استفاده کنید.
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
رو اینکه آموزش هاتون خوب هستن شکی نیستن
منتها روالی که من دارم برای فراگیری یک مبحث ، بیشتر یادگیری از منابع انگلیسی . علی الخصوص آموزش متنیه و نمیتونم با آموزش های مالتی مدیا یا ویدئویی خیلی ارتباط برقرار کنم.
البته صد درصد فاکتور مالی هم دخیله!:بامزه:
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
نقل قول:
نوشته شده توسط
farhadfery
کتابش پولیه http://books.google.com/intl/en/goog...ew_button1.gif
- Print Book Price: $54.99
- eBook Price: $38.99
:ناراحت:
-
نقل قول: اموزش استفاده از الگوی طراحی mvc در php همراه با مثال عملی
نقل قول:
نوشته شده توسط
MMSHFE
اگه یه نگاهی به نظرات کاربرانی که اون پکیج رو تهیه کردن (توی لینکی که گذاشتن) بندازین، احتمالاً نظرتون عوض میشه ولی بهرصورت اگه دنبال کتاب یا سایت آموزشی هستین میتونید از کتاب Pro PHP MVC استفاده کنید.
لینک دانلود کتاب Pro PHP MVC
http://www.google.com/url?sa=t&rct=j...69837884,d.bGQ