ڈوگ لایڈ: کبھی کبھی جب ہم پروگرامنگ کر رہے ہیں ہم ایسا، تو عام طور پر باتیں کرتے ہیں اکثر، اور بہت سے لوگوں اسی idea-- یا ایسا ہی کریں بات یہ ہے کہ ایک نام ہے کہ. MVC بالکل ایک ایسی چیز ہے. یہ ایک پروگرامنگ نمونہ کہا جاتا ہے. اس طرح کی ایک بہترین طریقوں پسند ہے نیچے آست کیا گیا ہے کچھ کرنے کی کوشش کی طرف سے. اس صورت میں، پر عمل درآمد صفحات کے نظام ایک صارف کے ساتھ انٹرایکٹ کر سکے کہ ایک زیادہ پیچیدہ ویب سائٹ پر. اور یہ تو عام طور پر کیا ہے یہ ایک معیار کے طور پر سفارش کی جاتی ہے دوسرے لوگوں کی پیروی کرنا چاہتے ہو سکتا ہے کہ، اور طریقوں کی ایک بہت ہی خاص سیٹ ہے کہ ایک اس پیرا میٹر کی پیروی کر سکتے. تو، MVC ایک نمونہ، اور اس کی وجہ ہے ہم اس دور تجریدی تفصیلات کرنے کے لئے ہے کا استعمال کرتے ہیں صارف کی طرف سے. کچھ چیزیں صارف واقعی کو دیکھنے کے لئے کی ضرورت نہیں ہے. وہ صرف کرنا چاہتے ہیں ایک اچھا صارف کے تجربے، اور ہم ان کے پاس کرنے کی ضرورت نہیں ہے ہر ایک فائل تک رسائی حاصل ہے کہ شاید، ہماری ویب سرور پر موجود ہے. صرف ہے کہ کچھ فائلیں موجود ہو سکتا ہے صارف کے تجربے کو کی حوصلہ افزائی کرنے کے لئے استعمال، اور دور وہ لوگ تو ہم کر سکتے ہیں تجریدی. ہم قسم کی تو ان کو چھپا سکتے ہیں صارف، ان کے ساتھ کام نہیں کر سکتے ہیں لیکن ہمارے pages-- pages-- ان کے ساتھ نمٹنے کے لئے کس طرح جانتے ہیں اور ان کو بلاؤ یا شاید ضرورت ہوتی ہے، ان، یا اس طرح کچھ کرنا چاہتا ہے. بنیادی حوصلہ افزائی MVC ڈیٹا کی حفاظت کے لئے ہے، MVC عام طور پر میں آتا ہے کیونکہ ڈیٹا بیس کے ساتھ کام کرنے کے تناظر. اور خاص طور پر ہم میں صارفین کو روکنے کے لئے چاہتے ہیں براہ راست اثر انداز ڈیٹا بیس سے. ہم صرف، بالواسطہ طور پر یہ کرنا چاہتا ہوں ہمارے فلٹریشن کے ذریعے. یا بنانے یقین ہے کہ سب ٹھیک ہے کی طرف سے ہم غلطی چیکنگ کے تھوڑا سا کر یا حفاظت پروفنگ ہم پہلے ڈیٹا بیس، جہاں پر بھیج چیزیں شاید، غلط جا سکتے ہیں ہم محتاط نہیں ہیں تو، واقعی غلط. تو MVC ماڈل دیکھیے کنٹرولر کے لئے کھڑا ہے. ان میں سے ہر کیا مطلب ہے؟ بنیادی طور پر، ماڈل آپ کے ڈیٹا بیس ہے. یہ جہاں تمام آپ کی ویب سائٹ کے لئے اہم اعداد و شمار lives-- صارف کا نام، لاگ ان، پاس ورڈ. اور تم اس کو اپ ڈیٹ اس سے رجوع کر سکتے ہیں، اس طرح بہت زیادہ سب کچھ. آپ کو ایک ڈیٹا بیس کی کیوری گا، تم سے پوچھنا چاہوں گا ڈیٹا بیس سے معلومات. اس کے model-- سب آپ کی ویب سائٹ کے اعداد و شمار کہاں رہتی ہے. لنک قسم کی طرح ہے صارف کے تجربے. یہ بعد دیکھیں صفحات وہ معلومات درخواستکردہ. تو شاید وہ پیش اپنے لاگ ان information-- جس میں انہوں نے ایک کنٹرولر میں کیا کریں گے، جس میں ہم ایک دوسرے کے بارے میں بات کریں گے. وہ شاید پیش ان لاگ ان معلومات، اور ڈیٹا بیس پوچھے ہے. معلومات کی درخواست کی ہے اور ڈیٹا بیس سے نکالا. اور پھر صارف کے انتخاب ایک بار میں، وہ ان کے گھر صفحے کو دیکھنے کے. یہ ٹھیک، ایک نقطہ نظر ہے؟ اور پھر کنٹرولر کیا ہے آپ کی ویب سائٹ کے کاروبار کی منطق بلایا. اور کاروبار منطق ہے ان شرائط میں سے ایک wishy-washy-- طرح طرح کی ہے، کاروبار کی منطق کیا مطلب ہے؟ بنیادی طور پر آپ کے کاروبار منطق آپ پی ایچ پی ہے. آپ کے صارف کی ضرورت نہیں ہے براہ راست آپ کی پی ایچ پی کو دیکھنے کے لئے، لیکن آپ پی ایچ پی شاید کیا جا رہا ہے ڈیٹا بیس کے لئے درخواستوں کو بنانے کے کیا جائے گا. تو صارف مرضی پٹ ایک نقطہ نظر کے بارے میں معلومات، کنٹرولر جو ضم کیا جائے گا. کی طرح، وہ ایک فارم میں ٹائپ کریں گے. کس طرح اس فارم عمل معلومات کنٹرولر ہے. یہ اصل میں ہے کہ پی ایچ پی کی ماڈل کی درخواست بنانے. اور پھر ماڈل فراہم کرتا ہے نقطہ نظر کے بارے میں معلومات، صارف کو فراہم کرتا ہے جس، مندرجہ ذیل کے طور پر شاید سب سے بہتر دکھایا. لہذا ہم یہاں ہیں. یہاں بائیں پر ہمارے ساتھ ہے، اور ہمارے ماڈل دیکھیں کنٹرولر نمونہ انتظام. یہ کیسے کام کرتا ہے؟ user-- us-- ایک ہے کنٹرولر کے لئے درخواست. ہم معلومات جمع ایک HTTP فارم کی طرف سے کے طور پر اس طرح کے. ، کنٹرولر کے اس کی بنیاد پر کام اس بات کا یقین کرنے کے لئے ہے دیا ہے صارف نہیں ہے کہ ماڈل نقصان کرے گا کہ کچھ. اور اس کنٹرولر جا رہا ہے اس بات کا یقین ہے کہ سب کچھ ٹھیک کر دے. یہ بہت احتیاط سے نظر آتے جا رہا ہے. کسی بھی غلطی ہے تو، یہ چیزیں روک دیں گے تو صارف کے ماڈل کے حاصل نہیں کر سکتے. لیکن سنبھالنے سب کچھ ٹھیک ہے اور یہ ایک درست استفسار ہے، کنٹرولر model-- سوال کرے گا یہ معلومات فراہم کرنے کے لئے اس سے پوچھیں گے. ماڈل فراہم کرے گا کہ ایک نقطہ نظر ہے کہ ایک صفحے پر معلومات، یہ اسے منتقل کریں گے راستہ، اور اس کے بعد دیکھیں معلومات آباد کیا جائے گا ماڈل سے درخواست کی. تو، مثال کے طور پر، ہم بات کر رہے ہیں تو اپنے فیس بک کے صفحے میں لاگ ان کے بارے، مثال کے طور پر. لنک ڈیٹا ہو جائے گا اس ماڈل سے باہر آئے کہ اپنے دوستوں اور خبر سے مراد صحیح، اس طرح کھانا کھلانا یا چیزیں؟ لیکن آپ کو کسی اور کی دیکھ نہیں کریں گے. تم اتنی getting-- جائے گا آپ کو ایک سوال جمع کرانے، آپ model-- عذر پر لاگ ان مجھے، آپ کے صفحے پر لاگ ان. کنٹرولر کا استعمال کرتا اپنی لاگ ان معلومات بنانے کے لئے ماڈل کے لئے ایک درخواست کرنے کے لئے یقین ہے کہ آپ ہیں کہ آپ ہیں جو کہتے ہیں. ماڈل کی طرح، جی ہاں، ٹھیک ہے، آپ، آپ کا کہنا ہے کہ کون ہیں تاکہ آپ کو آپ کی خبر فیڈ دے. میں آپ کے لئے خام اعداد و شمار دے گا نقطہ نظر کے لئے آپ کی خبر فیڈ، اور پھر دیکھیں یہ کرتا ہے خوبصورت، ایک راہ میں اس پر عملدرآمد ہم نمائش، کرنے کے لئے استعمال کر رہے ہیں کہ صارف کو اس کی معلومات. ہے کہ کنکشن نوٹس اس تصویر پر موجودہ نہیں. کوئی براہ راست تعلق نہیں ہے آپ اور ماڈل کے درمیان. اس بفر ہمیشہ وہاں ہے ان پٹ جانب کنٹرولر، اور ایک بفر ہے پیداوار کی طرف پر دیکھ سکتے ہیں. شاید آپ کو ایک اچھے ہیں شخص، اور تو شاید آپ کے لئے کسی بھی نقصان نہیں کرے گا ماڈل، لیکن شاید تم نہیں ہو. یا شاید وہاں کوئی کون ہے ایک درنساوناپورن صارف جو شاید کرے گا شاید، آپ کے ڈیٹا بیس کو نقصان کرنا چاہتے ہیں آپ کے ڈیٹا بیس سے سب کچھ کو خارج کر دیں، بہت مہنگا ہو سکتا ہے. ظاہر ہے، ہونے صارف کے ڈیٹا is-- صارف کے ڈیٹا رکھنے کے لئے قیمت ہے. اور ہم نے اس بفر پیش نہیں کیا اگر ایسا ہے تو صارف اور ڈیٹا بیس کے درمیان زون صارف اور model-- چیزیں ہمارے لئے اتنی اچھی طرح سے جا رہا نہیں کیا جا سکتا. اور تو اس کے لئے ضروری ہے اس پیرا میٹر کہاں صارف، ڈیٹا بیس کے ساتھ بات چیت کر سکتے اس بات کا یقین، لیکن وہ ہم سے گزرنا پڑتا ہے ایسا کرنے کے لئے. اور یہ کہ بنیادی طور پر MVC کے ساتھ خیال ہے. یہ اعداد و شمار سیکورٹی کو لاگو کرنے کی کوشش کر رہا. یہ ماڈل کی حفاظت کرنے کی کوشش کر رہا ہے نادانستہ طور پر یا جان بوجھ کر سے بدنیتی پر مبنی صارفین. تو کیا ہوتا ہے جب ہم اس مثال کا اطلاق؟ ویسے، ہم اعداد و شمار کو الگ کر رہے ہیں ہمارے website-- طرف سے کی ضرورت منطق سے model-- کہ ہماری ویب سائٹ کی لاگو controller-- functionality-- اور سادہ جمالیات اور صفحے سے پر مشتمل ہے کہ ہماری سانچوں صارف کے نقطہ نظر experience--. اس کا کیا مطلب ہے؟ ٹھیک ہے، یہ آپ کر سکتے ہیں کا مطلب ہے کہ صارف کو نظر دیکھتا. تم دور ماڈل چھپا سکتے ہیں. اور صارف controllers-- شاید براہ راست جوڑتوڑ نہیں کر سکتے ہیں. انہوں نے اپنے پی ایچ پی کوڈ تک رسائی حاصل کرنے کی ضرورت نہیں ہے. وہ صرف ایک فارم کو دیکھنے کے لئے کی ضرورت ہے جہاں وہ میں چیزیں ٹائپ کر سکتے ہیں. تو شاید شکل ہے ایک نقطہ نظر، کنٹرولر شکل میں پیش ہے کہ پی ایچ پی، کنٹرولر، ماڈل کے لئے ایک سوال ہے ماڈل زیادہ معلومات فراہم کرتا ہے ایک مختلف نقطہ نظر ہے کہ آپ کو معلومات فراہم کرتا ہے. آپ کے پروگراموں تک رسائی حاصل کر سکتے ہیں آپ کے کاروبار کی منطق کے تمام، لیکن آپ صارفین کو براہ راست نہیں کر سکتے ہیں آپ کے کاروبار کی منطق تک رسائی حاصل. اور ایک خاص طور پر، شاید، اس کے دکھائی مثال کیا تم نے کبھی موصول ہوئی ہے ہے 403 حرام غلطی. کیا تم نے کبھی ایک ویب پر چلے گئے ہیں صفحہ اور دیکھا 403 حرام؟ یہ 404 نہیں ملا کی طرح طرح ہے. حرام 403 آپ تک رسائی حاصل کرنے کی کوشش کا مطلب آپ تک رسائی حاصل نہیں ہے کہ ایک صفحے. شاید اس کی ویب سائٹ ہے MVC علیحدگی کا استعمال کرتے ہوئے اپنے کاروبار منطق دور کو چھپانے کے لئے اس ترتیب میں سرور پر موجود کرنے کی ضرورت ہے صفحہ کام نہیں کرتا، لیکن کرنے کے لئے آپ کو براہ راست اس تک رسائی حاصل کرنا چاہتے ہیں. تو آپ کو ایک 403 حرام غلطی ہو سکتا ہے. اور اس سے بھی کوئی فرق نہیں کرے گا آپ لاگ ان کر رہے تھے تو. کوئی صارف اس نقطہ پی ایچ پی فائل کو چھو کر سکتے ہیں. وہ صرف چھو کر سکتے ہیں یہ ایک، اور اس one-- وہ شاید touch-- سکتا ہے کہ ایک مقفل نیچے فائل کے ساتھ بات چیت کر سکتے زیادہ بالواسطہ صارف کے مقابلے میں. لہذا، ہم نے کبھی کبھی اس کی اجازت دیکھیں غلطی، اس 403 حرام. ہم کس طرح اتنی اجازت بدلوں چیزیں یا نہیں دیکھا جا سکتا ہے؟ ہم ایسا کرتے ہیں تو عام طور پر ایک کا استعمال کرنا ہے لینکس کمانڈ chmod-- سی ایچ جدید بلایا. ایسا کرنے کے لیے، شکل خوبصورت ہے CHMOD simple--، اجازت، اور جو فائل آپ چاہتے ہیں کرنے کے لئے اس تبدیلی کا اطلاق کرنے. تو، شاید تم کچھ دیکھنا چاہتے this-- طرح 600 helpers.php کی سے chmod. یا شاید آپ کو this-- CHMOD دیکھنا چاہتے ڈائریکٹری شامل ہے کہ ایک پلس X. یہ اگرچہ مطلب ہے تھا؟ تو، دو مختلف طریقوں سے موجود ہے عام طور پر اجازت ہو CHMOD استعمال لاگو. پہلے کہا جاتا ہے اجاداری تعداد طریقہ. یہ عام طور پر کی اجازت پر لاگو ہوتا ہے تین مختلف اقسام کے لئے ایک ہی وقت میں صارفین کی. تو CHMOD 711 فائل آپ کی اجازت دے گا صحیح، پڑھنے، لکھنے، اور پر عمل کرنے کی آپ کی فائل، کی اجازت دے گا others-- خاص آپ کے گروپ اور world-- صرف فائل پر عمل کرنے کی. کہ اس کا ترجمہ کیا ہے. وہاں سب سے پہلے نمبر آپ کر سکتے ہیں کیا ہے، دوسرا نمبر ہے آپ کے گروپ کیا کر سکتے ہیں، اور تیسری دنیا کیا کر سکتے ہیں ہے. آپ کے دورے کے ہے جو کوئی بھی صفحے، ہے کہ. ان کی تعداد کیا ہے اصل میں، اگرچہ میں ترجمہ؟ تو یہ بنیادی طور پر اس طرح کا ترجمہ. اجازت ہے صفر، کچھ نہیں ہو سکتا. یہ ایک ہے تو، آپ کو پھانسی کر سکتے ہیں کہ آپ کی اجازت ہے تو فائل. یہ دو ہے تو، آپ کو فائل لکھ سکتے ہیں لیکن آپ کو کچھ اور نہیں کر سکتے ہیں. یہ تین ہے، تو آپ لکھنے اور پھانسی کر سکتے ہیں. اور اسی طرح، آپ دیکھ سکتے ہیں کے طور پر. سات آپ کو سب کچھ کر سکتے ہیں کا مطلب ہے. تو کیوں ان اجاداری تعداد کہا جاتا ہے؟ ٹھیک ہے، تم اس کے بارے میں لگتا ہے کہ اگر، یہاں noes اور yeses کی طرح ہے، اور ہم ان کے بارے میں سوچتے ہیں تو سرخ اور سبز خانوں کے طور پر، ہو سکتا ہے کہ یہ ایک چھوٹا سا واضح کرتا. لیکن ہم لوگ ریڈ خانوں کے بارے میں لگتا ہے کہ اگر لوگوں کے طور پر zeros اور سبز خانوں کے طور پر، یہ اصل میں صرف سیٹ ہیں بائنری تعداد کے، ٹھیک ہے؟ 000 0 دشملو ترجمہ؛ 001، 1 دشملو؛ 010 تو دشملو 2 ہے، اور. اور اس طرح ہم ان اجاداری کال تعداد میں موجود ہے کیونکہ آٹھ مختلف امکانات ہیں. آٹھ ہیں ہم ہیں تو مختلف ہندسوں تین کے بارے میں بات information-- کی بٹس پڑھنے بٹ، لکھنا تھوڑا سا، اور پھانسی سا. تو اب آپ کو بائنری بات کر سکتے ہیں، دشملو، ہیکس، اور اجاداری. تو آپ کے ساتھ بات چیت کرنے کے لئے کس طرح جانتے ہیں چار مختلف تعداد میں کمپیوٹر نظام، تاکہ بہت اچھا ہے. تو، اجاداری علاوہ اجازت کی منصوبہ بندی، وہاں ہے بھی علامتی اجازت تھوڑا سا مختلف ہے جس کی منصوبہ بندی، اور عام طور پر لاگو کرنے کے لئے سب سے استعمال کیا جاتا ہے یا بورڈ بھر میں ایک اجازت ہٹانے. تو ایک پلس X فائل سے chmod حق شامل ہو سکتا ہے تینوں پر عمل کرنے کی users-- کے زمرے اپنے آپ کو، آپ کے گروپ، اور دنیا. اس کے علاوہ انہوں نے مزید کہا ہے. پھانسی دے کر حق، کہ ایکس ہے. اور حقیقت یہ ہے کہ سب کے لئے لاگو ہوتا ہے صارفین کی تین گروپوں ایک ہو جائے گا. تو ایک پلس x-- شاید جا رہا ہے this-- CHMOD 711 کے طور پر بالکل ایک ہی ہونا تم واپس جاؤ کیونکہ اگر، فائل اور اجاداری تعداد سکیم پر نظر، لوگ اور sevens ہمیں دے ایک فائل پر عمل کرنے کا حق. تو یہ شاید ایک ہی ہے. اور آپ اس کا استعمال کر سکتے ہیں کے لئے حوالہ گائیڈ کیا میں مختلف چیزیں علامتی CHMOD سے ING ساخت ہے. سبز اشیاء یہاں ہو جائے گا جہاں تمام سبز رنگ مثال ایک دوسرے پہلے تھا. نیلے ہو گا. اورنج اورنج ہو جائے گا. تو آپ کے لئے چیزوں کو درخواست دے سکتے ہیں آپ گروپ، دوسروں کو، صارف کو، یا سب کو. تم ان کو پڑھنے دے سکتے ہیں، لکھنے، اور رسائی کو پھانسی، اور آپ کو شامل یا ختم کر سکتے ہیں یا بالکل ایک سیٹ مقرر اس ماڈل کا استعمال کرتے ہوئے کی اجازت کے. ہم کیا ایک چیک کیسے فائل کی اجازت کی منصوبہ بندی ہے؟ ہم اسے تبدیل کرنے سے پہلے، یہ ہے اصل میں جاننا شاید اچھی فائل کی اجازت کیا ہیں. ایسا کرنے کا ایک طریقہ LS چلانے کے لئے ہے لیکن صرف یہ تھوڑا سا موافقت. تو میں ٹائپ کریں تو LS l-- ڈیش کہ شاید l-- ایک چھوٹے ہے کچھ اس طرح نظر آئے گا. یہ تھوڑا سا خفیہ لگ رہا ہے، لیکن ہم واقعی پرواہ اس حصے وہاں بائیں طرف سامان ہے. یہ اصل میں وضاحت کرتا ہے ایک فائل کی اجازت کی منصوبہ بندی. یہ ہے کی وجہ سے اور آپ کو شاید بتا سکتے ہیں R کی، کی W، اور ایکس کی interspersed کے ہے. ان کی پہلی three-- سب سے پہلے ایک نظر انداز ایک دوسرے، جس ہم واپس دوگنا گا. ان سب سے پہلے تین کے بعد first-- سیکنڈ اسی، تیسری، اور چوتھی حروف 10 کردار سٹرنگ کے ہے کہ آپ کی اجازت ہو. تو بظاہر میں، پڑھ سکتے ہیں لکھتے ہیں اور پی ایچ پی کی پھانسی. میں، پڑھنے، لکھنے، اور کر سکتے ہیں ، پی ایچ پی WebDev پھانسی اور میں نے پڑھا اور test.php لکھ سکتے ہیں. میرا گروپ ایسا کر سکتے ہیں. تو بظاہر ایچ پی کے ساتھ اور پی ایچ پی WebDev ڈائریکٹریز، میرے گروپ کو لکھ سکتے ہیں ان کے بعد اور کچھ نہیں. اور دنیا کچھ نہیں کر سکتے. تو ان فائلوں کے نہیں ہیں عوامی سطح پر قابل رسائی اور میں کرنے کی کوشش کی ان تک رسائی حاصل اور میں نہیں تھا اپاچی چلانے تک رسائی بنانے کے لئے، پھر میں نے ایک غلطی 403 ملے گا. یہ ایک ناکامی ہے. میں نے ایک فائل تک رسائی حاصل کرنے کی کوشش کی لیکن میں ایسا کرنے کے لئے اجازت نہیں ہے. اور یہ کہ سب سے پہلے کردار کیا ہے؟ ویسے، آپ کو شاید extrapolate کر سکتے ہیں یہاں D 'ے ڈائریکٹریز پر حوالہ دیتے ہیں کہ اور ڈیش سے مراد "باقاعدہ فائلوں." نام نہاد آپ نے جب شاید آپ اس کو دیکھا ہے RM استعمال کرتے ہوئے ایک فائل کو دور کرنے کی کوشش کی. آپ خفیہ پیغام دیکھا ہے "باقاعدہ فائل کو ہٹا دیں" - اس صورت میں، یہ test.php ہو جائے گا. باقاعدہ فائل صرف کچھ ہے کہ ایک ڈائریکٹری نہیں ہے. دوسروں کے ایک جوڑے ہیں یہاں، لیکن عام طور پر تم D 'ے ڈائریکٹریز کے لئے دیکھنے کے لئے جا اور سب سے پہلے عنصر کے لئے کچھ بھی نہیں. لیکن یہ واقعی سب وہاں ہے اس کے لئے ہے. آپ کی فائل کو چیک کر سکتے ہیں LS ڈیش L استعمال کی اجازت، آپ chmod کا استعمال کرتے ہوئے تبدیل کر سکتے ہیں. اور، کورس کی، these-- استعمال تبدیل کرنے کی اجازت اس MVC نمونہ نافذ کرنے اپنی ویب سائٹ پر ڈیٹا کی حفاظت اور صارفین کی اجازت نہیں سب کچھ تک رسائی حاصل کرنے، انہوں نے کی ضرورت ہے لیکن صرف چیزیں آپ کے صفحے کے لئے ترتیب میں تک رسائی حاصل کرنے آپ کو یہ کام کرنے کے لئے چاہتے ہیں جس طرح کام کرنے کے لئے. میں ڈوگ لایڈ ہوں. یہ CS50 ہے.