SAM LEVATICH: به انجمن خوش آمدید بخش این هفته است. من اندی نیست. اندی بیمار کاهش یافته است در این روز، و من شده اند از در آخرین دقیقه ای به نام به سر می برد. این فصل آنفولانزا است، بنابراین مطمئن شوید که شما اقامت تمیز، شستن دست های خود، و خوردن غذاهای سالم به طوری که شما، بیش از حد، بستری است. اما بدون بیشتر ADO، اجازه دهید شروع کنید. امروز، ما قصد داریم به بحث در مورد PHP کمی bit-- چگونه PHP مربوط به HTML، چگونه آن را مربوط به CSS، و برخی از وب چیزهای را که در آخرین ماموریت را انجام داد. ما قصد داریم به بحث کمی در مورد SQL و چگونه شما می توانید با پایگاه داده کار می کنند، که یک جزء بسیار کلیدی است P مجموعه 8-- P مجموعه 7. P مجموعه 7. و پس از آن ما قصد داریم به بحث کمی کمی در مورد چگونه نمایش کنترل کار و به همین دلیل است که یک فلسفه در پشت برخی از این صفحات وب مدرن و طرح های مختلف. بسیار زیادی از انواع برنامه های و برنامه های کاربردی شما ممکن است کشتی با استفاده از این مدل، نمایش چارچوب کنترل، که شما با استفاده از در P مجموعه 7، بنابراین من بحث کمی در مورد چرا که تبدیل به محبوب، چرا از آن مهم و خوب است. و بعد من در نهایت باید در حرکت به برخی نکات در مورد مقابله P مجموعه 7. و اگر زمان ما بیش از در سمت چپ، ما در واقع می توانید برخی از انجام بر روی آن کار با هم. بنابراین، پی اچ پی. در واقع، شما ممکن است متوجه this-- شما واقعا نمی باید به شیرجه رفتن به it-- اما P مجموعه 6 به حال برخی از PHP کد است که در رفتن شد. و چون پی اچ پی است مانند C- زبان، PHP، بر خلاف HTML و CSS، یک زبان برنامه نویسی است، در حالی که HTML و CSS استاتیک می باشد. آنها زبان های نشانه گذاری خرید و فروش هستید با سبک و طرح بصری. PHP معامله واقعی است. پی اچ پی دارای حلقه، آن را تا conditions-- تمام چیزهای که است که سرگرم کننده در مورد C. از آن است که چند چیز است که کمی هستند کمی بهتر از C، که خواهیم دید، اما من فکر می کنم ساده ترین راه برای صحبت در مورد PHP است که فقط به شیرجه رفتن در. بنابراین من قصد دارم به حق به محیط برنامه نویسی در این نقطه. اولین چیزی که ما در حال رفتن انجام دهید این است در واقع نگاه کمی در برخی از کد پی اچ پی که در P بود مجموعه 6. بنابراین راه است که ما انجام that-- قبل از آن، راهی است که ما در حال اجرا بودند سرور برای دستگاه این بود که ما را به type-- یا استفاده از پیاده سازی خود را و یا پیاده سازی کارکنان از server.c با رفتن به دایرکتوری و در حال اجرا server.c با هم هیچ arguments-- بنابراین فقط آن را در پاسخ میزبان های محلی است که آنچه شما احتمالا، انجام بسیاری از time-- و پس از آن تغذیه آن directory-- با که به عنوان ریشه آن استفاده کنید که در آن وب سایت را اجرا شود، اساسا. این هفته برای P مجموعه 7، به عنوان بزرگ به عنوان کد ما برای server.c است، مردم که در حال حاضر وجود دارد بیش از CS50 نوشته شده این همه چیز خوب که یک کمی قابلیت های بیشتر، یک برنامه سرور است که قادر از برخورد با یک کمی بیشتر از پیچیدگیهای که ما در هر دو P را ببینید 7 و 8 P تنظیم. و راهی که شما شروع به تا سرور است تنها با تایپ کردن، "apache50." و قبل از شما هیچ چیز را، شما می خواهید مطمئن شوید که آپاچی 50 است در حال اجرا به عنوان آن است بر روی دستگاه من، که من به آزمایش آن. و شما این کار را از طریق تماس با apache50. متوقف کردن، و شما خواهید دید که آن را متوقف وب سرور، اگر شما می توانید وجود دارد نگاه کنید در پایین پنجره ترمینال. و پس از آن فقط برای شروع، ما رفتن به پاسخ، "apache50 شروع می شود." و سپس ما در حال رفتن به آن غذا یک دایرکتوری. در حال حاضر، زیرا ما می خواهیم به نگاه در برخی از P مجموعه 6 کد که ما، من در واقع به اجرا درآورده بودند کپی کمی از P مجموعه 6 کد را در پوشه خود من، که شما می توانید در سمت چپ وجود دارد. آن را به نام "SECTION8" در تمام حروف بزرگ چون من فقط خیلی هیجان زده به امروز زندگی می کنند، جریان. بنابراین اگر ما این اجرا، آن را باید همه کار می کنند بسیار موثر است. این گزارش می گوید، OK، سایت ما در حال حاضر موجود در آدرس از IDE، در واقع، آن چیزی است که شما با استفاده از P تنظیم دقیقا همانطور که در P مجموعه 7-- 6. تمام شاخص های من نیز یک شاخص امروز. بنابراین ما می توانیم به که به آدرس، اگر شما به یاد داشته باشید، تنها با کلیک کردن این کمی را فشار دهید در سمت راست بالا. و شما این کد، به یاد که زمانی رخ داد که شما را به hello.php رفت. و آنچه را که کد طراحی شده است انجام دهید این است که شما را در یک نام تایپ here-- اگر شما می گویند سام چرا که name-- من و من کلیک کنید سلام، زمانی که ما را به صفحه بعد رفت، که نام قرار بود نمایش داده می شود. این می گویند: "سلام، سام" و یا "سلام"، هر نام شما قرار دادن به آن حتی اگر ما رفت به یک صفحه وب کاملا جدید است. و این نوع از چیزی است که پی اچ پی می تواند برای شما انجام دهد. PHP قادر به عبور داده است بین دو صفحات وب است. این صفحه کاملا متفاوت است. شما خواهید دید که عنوان "سلام" در اینجا. در واقع، آنها همین عنوان، اما من قول می دهم که آنها متفاوت هستند وب صفحات اگر ما به منبع. و شما می توانید داده هایی را که تصویب وارد شده در این زمینه متن، شما آن را به بعدی صفحه که در حال به نام تا، و پس از آن است که داده ها قادر به است وجود دارد در شکل فعلی آن است. در حال حاضر ما هنوز اجرا نشده این خود، که چیزی است که ما قصد داریم برای انجام در حال حاضر به مرتب سازی بر گرفتن عطر و طعم برای چگونه کار می کند پی اچ پی، اما ایده اصلی این است که شما می توانید PHP-- مرتب کردن بر اساس از آن را مانند یک تابع فکر می کنم. چیزی است که به شما اجازه می PHP بکنم این است که می توانید پارامتر را که شما ورودی را به یک صفحه HTML از طریق استفاده از PHP و فرم ها، و آن را می توانید آن را به عنوان پارامتر عبور به صفحه بعدی که لود شد. در این مورد، ما در حال بارگذاری این صفحه با "سلام" را فشار دهید. اما در حال حاضر، من در واقع برخی از این کد حذف در hello.php که اجرا شد که در واقع نمایش شد "سلام، جهان "یا" سلام، سام "و یا "سلام" هر آنچه فقط ورودی بود. بنابراین برای در حال حاضر، ما رفتن به انجام این، اساسا. ما قصد داریم به تمدد اعصاب و که برخی از قابلیت های بیشتری را نیز اضافه کنید، انجام یک کمی بیشتر با آن، نگاه کنید چه PHP است که واقعا قادر به. بنابراین ابتدا، اجازه دهید بحث در مورد این فایل، hello.php. بنابراین اگر ما در یک زوم کمی bit-- و در حال حاضر من مرتب کردن بر اساس تلاش برای حرکت تمام راه around-- وجود دارد و ما بروید. شما خواهید دید که آن را به نام hello.php، اما نحو از آن به نظر می رسد مانند یک فایل HTML. دلیل این است که PHP واقعی در این فایل است که همه گیر بین این درخواست بلوک علامت هشتک. همه چیز در اینجا نظر گرفته شده است کد PHP. و شما متوجه خواهید شد که زمانی که من یک نظر انجام داد، شما در آشنا خواهید دید دو ممیز. و اگر شما به یاد می آورند، در HTML، اگر یک نظر نوع I، به نظر می رسد چیزی برای نزدیک تر این است که یک نظر در HTML. بنابراین واقعا همه چیز بین این دو براکت زاویه اکنون کد پی اچ پی، که در واقع منعکس که این اظهار نظر نماد کوچک به نظر تبدیل شده است. بنابراین هر زمان شما ارسال کد پی اچ پی، حتی اگر هیچ کد HTML غیر خارج از آن وجود دارد، آن را همیشه برای رفتن به محصور در این براکت زاویه با علامت سوال. شما به نوعی می توانید در مورد it-- فکر می کنم که چگونه همه از کد که در برنامه های C خود را زد در یک int اصلی، از درجه اعتبار ساقط محصور شد، آکولاد، پایان بیانیه آکولاد. و شما آکولاد در دید پی اچ پی، بیش از حد، اما این است که مرتب کردن بر اساس مانند روش اصلی PHP. بنابراین در حال حاضر، ما چگونه انجام هر چیزی را در پی اچ پی؟ در حال حاضر، پی اچ پی برنامه نویسی است زبان که بسیار-C مانند، اما آن را در وب عمل می کند. بنابراین یک چیز است که شما یکی را immediately-- از اولین چیزهایی که شما واقعا با انجام C چیزهای را که چاپ شده بود، درست است؟ بنابراین در C که ما انجام دادیم که با یک تابع printf است. ما به آن یک رشته، احتمالا با یک خط جدید، و سپس ما خاتمه آن را با یک نقطه و ویرگول. پس راه که ما قصد داریم برای انجام این کار در PHP-- دلیل آن را کاملا تابع () printf است. آن را کمی از نحو متفاوت است. راه است که ما همه چیز را چاپ در پی اچ پی است که ما می گویند، "اکو سلام" و یا "پژواک" هر کلمه. و است که اثر انجام تابع () printf با یک رشته، "سلام." و می افزاید: خط جدید به آن. بنابراین اجازه دهید در حال حاضر را sure-- من زوم کردن دوباره کمی bit-- اجازه دهید مطمئن شوید که که کد در حال کار به دلیل تعداد بسیار وجود دارد ممکن است به خوبی می شود یک اشکال در این کد که ما باید برای مقابله با. بنابراین سرور در حال اجرا است. بنابراین اگر ما حرکت به پایین به پایین، آره، سرور هنوز در حال اجرا. بنابراین اگر ما فقط در این شیر حق کمی here-- welcome-- ما باید بزرگ get--. ما هنوز هم با داشتن آشنا "سلام" گفت و گو، اما زمانی که من در "سلام،" خواهیم دید که متن "سلام" در واقع چاپ، که دقیقا به عنوان ما انتظار می رود به دلیل اکو در PHP درست مثل یک دستور printf. بنابراین به کد، چگونه در P مجموعه 6 بود کد توزیع شما ارائه می شوند آن را به طوری که PHP را خروجی چیزی است که شما در روی صفحه نمایش قبلی تایپ؟ و به نوعی بررسی چرا که اتفاق می افتد، ما برای رفتن به index.html را که فایل اصلی، فایل است که نشان می دهد تا بر روی این صفحه با "سلام" را فشار دهید. شما متوجه وجود دارد که همه چیز کلاسیک ما آمده ایم تا از HTML چنین انتظار عنوان این چیزها، این دستورات محصور در براکت زاویه، مانند PHP اما بدون علامت سوال، که نشان می دهد یک چیز خاص به HTML است. ما عنوان، است که "سلام." و شما متوجه خواهید شد که چنان که دیدیم، عنوان: "سلام" در هر دو مورد است. بیایید این یک تغییر دهید به "می گویند" فقط بنابراین ما می توانید خودمان تشخیص که در آن ما هستند. اما ما یک بدن داریم. و پس از آن کمی جالب، کمی که نشان می دهد تا در HTML، این عنصر فرم است. و به این ترتیب ما یک فرم دارم. و این کلید است. این است که چگونه ما در حال کار با پی اچ پی. پارامتر عمل فرم می گوید که hello.php چیزی است که ما در حال رفتن به ارسال ارزش ها در این فرم را به. این جایی است که ما در حال عبور پارامترهای، پس به صحبت می کنند. شما یک چیز دیگر در اینجا متوجه این است که روش "دریافت کنید." دو اولیه وجود دارد روش های که خواهد شد با استفاده از پی اچ پی به انتقال داده ها میان صفحات وب websites--، rather-- در این انتساب است. و کسانی که روش ها "get" و "پست." برخی از ظریف وجود دارد تفاوت بین GET و POST که ما into-- ما خواهد "گرفتن" به، اگر شما خواهد شد. اما برای تمام مفاهیم و اهداف، GET و POST هر دو راه است که فقط به شما منتقل پارامترهای با اعدام کمی متفاوت است. در حال حاضر، ما قصد داریم به استفاده کنید چون گرفتن چیزی بود که مورد استفاده قرار گرفت در فایل PHP از P مجموعه 6. و در واقع، اگر ما در رفتن و نگاه قبل از اینکه ما از هر چیز دیگری ویرایش کرده اید، من قصد دارم برای گفتن سلام to-- نام شما چیست؟ مخاطبان: الیوت. SAM LEVATICH: اوه، خدای من. من نمی دانم که چگونه به طلسم است. می تواند شما را طلسم که برای من؟ مخاطبان: E-L-L-I-O-T. SAM LEVATICH: I-O-T؟ مخاطبان: آره. SAM LEVATICH: ایده آل. باشه. من حدس می زنم من می دانم که چگونه به طلسم است. با عرض پوزش در مورد آن. اما اگر ما می گویند: "سلام،" این نیست آن را به نشان می دهد تا بر روی صفحه نمایش اما از آنجا که ما اصلاح شده کد کمی. اما اگر ما "سلام" - خوب، پس "سلام" است در اینجا. اما اگر ما نزدیک تر در URL خود را نگاه کنید، خواهیم دید که آن را به پایان می رسد نام = الیوت با hello.php. بنابراین، این یک راه است برقراری ارتباط به صفحه وب بعدی پارامترهای که ما تصویب است. ما گفت: نام = الیوت. و این در نهایت چگونه P مجموعه 6 دیده متغیر است که ما در گذشت از طریق فرم. و این چیزی است که عجیب و غریب به یک درخواست GET است. یک درخواست GET باعث می شود پارامترهای شناخته شده در URL وب سایت. و شما یاد، بیش از حد، در P مجموعه 6 که شما تا به حال به نوشتن یک تابع که با این واقعیت پرداخته که این رشته پرس و جو می تواند پس از یک فایل وجود داشته باشد. می تواند یک علامت سوال به دنبال وجود دارد توسط اساسا هر تعداد از شخصیت. و این دقیقا همان چیزی که در اینجا. و به همین دلیل شما تا به حال به تجزیه که در اجرای خود را از server.c در P مجموعه 6 است به طوری که شما می توانید بگویید کد پی اچ پی به نام = الیوت. شما نیاز به قادر به تجزیه که از URL به طوری که فایل PHP در درخواست دانستم به چه چیزی برخورد با. پس امیدوارم این را می دهد انگیزه برای server.c حالا که ما در حال حرکت خارج از C به PHP. بنابراین اجازه دهید در واقع در دسترسی به تمرکز چیز را از طریق یک درخواست GET گذشت اکنون در این نقطه است. من قصد دارم برای نجات این. ما چیزی را تغییر دهید. به نظر می رسد که ما یک فیلد ورودی کردم. ما در حال تنظیم برخی از خواص، به عنوان ما می توانیم یک HTML است. این چیزها ساده هستند. ما این نیاز ندارد. اما ما تکمیل خودکار خاموش کردم، به که اساسا says-- که می دانید، وقتی که شما نوع چیز به وب، گاهی اوقات آن تلاش می کند به پر کردن آن در برای شما. پس از آن یک چیز خوب است. ما می خواهیم به آن را خاموش برای این منظور. که تصمیم CS50 بود. بنابراین ما می توانیم حذف کنید که اگر ما می خواستیم. فوکوس خودکار فقط چوب مکان نما در سمت راست فرم در ابتدا. باز هم، خیلی مهم نیست. اما نام = "NAME" - آن را کمی روی حیله و تزویر به خاطر آن نام و نام. اما ما می تواند تغییر داده ام این به چیز دیگری. و در واقع، که آنچه که ما در حال حاضر را انجام دهد. ما می گویند "فرد"، که مرتب سازی بر اساس مانند نام اگر یک فرد با نام خود تعریف شده است. بنابراین اجازه دهید این را ببندید، بازگشایی تا از وب سایت ما از آنجا که سرور ما هنوز در حال اجرا آپاچی 50، و ما می گویند، سلام، در اینجا الیوت دوباره. چرا که نه؟ سلام. و اگر ما تا به اینجا بروید، خواهیم دید پس از آن به جای نام = الیوت، آن را می گوید فرد = الیوت. و یک نتیجه مستقیم از این واقعیت است که ما فقط تغییر نام = "شخص". بنابراین در یک عنصر ورودی از یک فرم HTML، قسمت نام شناسه است پارامتر که در حال منتقل می شود. آن را مانند اگر شما در حال ایجاد یک تابع "اضافه کردن" که در دو عدد صحیح و جو در زمان و به شما گفت اعضای هیات و اعضای هیات ب. این امر می تواند نام یک، و اگر شما می خواستم شکل دیگری که ما می توانید تنها با کپی کردن را انجام دهد و چسباندن، سپس ما را نام ب داشته باشد. بنابراین در حال حاضر ما دو پارامتر که در حال عبور رسیدن به website-- بعدی صفحه وب بعدی، hello.php. و ما در واقع می توانید ببینید که دوباره اگر ما می خواهیم. این ساده ترین راه برای مقابله با است کد وب در IDE، اساسا. شما شروع به تا سرور، آن را دریافت در حال اجرا، و پس از آن هر زمانی که شما ایجاد برخی از تغییرات فقط نزدیک، که فایل فقط به امن است. با فشار دادن دکمه تماس است کمی مشکل دلیل آن ممکن است پیش از بارگذاری نسخه، یکی به روز شد. و سپس شما فقط اینجا را کلیک کنید را دوباره فشار دهید، پاپ حق up-- آه، و در حال حاضر دو نوع وجود دارد. خوب اگر ما نوع یک چیز به هر یک از one-- "hirshhorn جیسون،" برای instance-- ما گفتن سلام. ما نگاه کردن در پارامترهای ما است. به نظر می رسد ما باید، به عنوان انتظار می رود، = جیسون و b = hirshhorn، که نشان دهنده دو پارامتر که ما را به این تابع به تصویب رسید. بنابراین در حال حاضر اجازه دهید در واقع به اجرای که قابلیت که ما حال در P مجموعه 6. بنابراین در حال حاضر ما فقط انعکاس سلام. و این بسیار مفید است. ما می خواهیم به اکو برخی از متغیر که به ما منتقل شد. و ما می دانیم که نام این متغیر. ما یک و ما ب. بنابراین ما می تواند انتخاب کنید به اکو هم یکی. اما چگونه می توانم به آن دسترسی داشته باشیم؟ خوب، خاص وجود دارد متغیرهای جهانی در پی اچ پی. و من قصد دارم به نوشتن آنها را در نظرات اینجا. دو مهمترین آنها عبارتند از مطلع و ارسال برای اهداف ما در حال حاضر. این آرایه و یا هستند، از لحاظ فنی، لغت نامه که در آن متغیرهای ما هستند عبور به بعدی صفحه وب زندگی می کنند. و ما به زودی خواهیم دید که چگونه به استفاده از آنها. یکی دیگر از یادداشت کوتاه در مورد کد PHP و برخی از ویژگی های it-- در C، برای تعریف متغیر یا به استفاده از متغیرها، شما برای اولین بار به حال به آنها اعلام کنند. و آنچه شما تا به حال به انجام زمانی که شما اعلام آنها می گویند اعضای هیات یا کاراکتر B بود. شما تا به حال به اعلام نوع از این متغیرهای قبل از شما آنها ایجاد شده است. PHP-- شما لازم نیست که برای انجام هر گونه از آن. PHP برای بپرسید نوع متغیر است. و راه را به شما که ایجاد یک variable-- نه از گفت INT، کاراکتر، string-- که واقعا کاراکتر *، به عنوان ما دانید به جای انجام همه که، چون همه چیز است از همان نوع، بدون نوع، ما فقط می توانید با استفاده از یک شخصیت، که علامت دلار است. و شما خواهید دید که در حال حاضر ظاهر ، همه چیز تکمیل خودکار است. و آن را گفت که _GET و _POST دو گزینه که من در دسترس داشته برای من. برخی از این چیزهای دیگر دیگر متغیر های جهانی در پی اچ پی که به شما امکان استفاده از بیش از این دوره از P مجموعه 7. در حال حاضر ما در حال رفتن به تمرکز بر روی GET و POST. اما این یک مفید چیزی که IDE می کند که در آن هنگامی که شما تایپ کرده اید در علامت دلار، آن را شروع به پر کردن در متغیر های جهانی یا متغیرهای شما در حال حاضر تعریف است. بنابراین اگر شما می خواهید برای تعریف یک متغیر به نام "رشته" شما فقط می تواند آن را برابر با مجموعه "سلام." و آن را اساسا به عنوان ساده به عنوان آن است. و پس از آن ما می تواند انجام چیزی شبیه به "$ رشته اکو." محیط برنامه نویسی باید به پرتاب برخی از خطاهای اگر من انجام اشتباه، بنابراین امیدوارم من انجام همه چیز را درست. اما اشکالات همیشه بوجود می آیند. چیز دیگری که مشکل در مورد PHP است که آن را کامپایل نشده است. بنابراین با برنامه های C، شما می توانید انجام زندگی روزمره of-- در واقع، شما می ویرایشهای به کد خود را، شما می خواهم آن را ذخیره کنید، و سپس شما می توانید آن را، که در آن به بود گام که به نام کامپایلر، صدای جرنگ جرنگ، به کد خود را، این متن فایل، به یک فایل اجرایی. PHP مانند C است، اما آن را اجرا در پرواز با مرورگر وب خود را. بنابراین هیچ راهی برای دانستن وجود دارد. کسانی را پرتاب خطاهای مفید، درست است؟ آن را می خواهم، شما می شود این متغیر نیست قبل از شما سعی به استفاده از آن. شما این همه segfault بد stuff-- انجام داد، segfault، همه که مرتب سازی بر اساس زمان های سرگرم کننده که با آرایش آمد. PHP یک شمشیر دو لبه است چرا که به شما کسانی که اشتباهات را می کنید، اما این نیز بدان معنی است که شما نمی دانید واقعا چه چیزی اشتباه است با برنامه خود را اگر شما فقط آن را اجرا کنید و آن را کار نمی کند. اما باید اشاره کنم دیباگر برخی از چیزهای کوچک امیدوارم مفید نحوی که شما می توانید تعمیر. بنابراین در حال حاضر اگر ما بیش to-- رفتن بگوییم، به بستن آن. بازگشایی اندک است. و ما به اینجا. بنابراین ما یک متغیر کردم و یک متغیر B. و این در نهایت مهم نخواهد بود. ما آنها را H و G پاسخ بدون هیچ دلیل خاصی. و ما گویید. در حال حاضر آن را مانند به نظر می رسد رشته ما "سلام" است که در واقع چاپ. ما یک متغیر به نام ایجاد "رشته" تنظیم آن را برابر با "سلام." توجه داشته باشید که ما مجبور به انجام از malloc و یا یک آرایه کاراکتری. در پی اچ پی، چون متغیرها بدون نوع هستند، یک رشته همان به عنوان یک کاراکتر است تمام مفاهیم و اهداف. این می تواند "سلام." این می تواند فقط K شخصیت. این می تواند یک عدد 1. و آن مراقبت می کند. PHP مراقبت می کند مورد نوع متغیر خود را. یا، آن را به مراقبت. این اهمیت میدهد زمانی که شما سعی می کنید و انجام کارهای با آن، اما آن مراقبت می کند در گام اعلان. و درست مثل شما می توانید در C، شما می توانید اعلام رشته در پشته مثل این هر چند گفت: "پشته" کمی است کمی بد نامگذاری بالقوه هنگامی که ما در حال صحبت کردن در مورد پی اچ پی. اما ما مجبور نیست که در مورد آن نگران باشید. بنابراین ما رشته ما رو "سلام"، و ما اکو رشته است. بنابراین در حال حاضر ما متغیرهای مورد بحث است. بنابراین در حال حاضر ما نیاز به صحبت در مورد دریافت و ارسال و انجام چیزی نهایی که نیاز به واقعا این را به بالا به قابلیت های P مجموعه 6. بنابراین در حال حاضر ما بازتاب رشته، اما ما لازم این متغیر GET و POST. و از آنجایی که ما با استفاده از روش، آن را طبیعی به نظر می رسد که متغیر ما که ما علاقه مند به، هر دو A و B هستید، خواهد شد در واقع آرایه و یا فرهنگ لغت، از نظر فنی است. بنابراین اگر ما راه اندازی شبیه به این را دریافت کنید با groups-- خود را وارد کنید من فشرده و آن را دوست ندارند it-- اما در اینجا ما را دریافت کنید. و پس از دریافت از قبل وجود دارد. بنابراین ما در حال حاضر می توانید برای دسترسی شروع برخی از عناصر از دریافت کنید. اگر ما، این نحو برای آرایه ها در PHP بسیار C مانند است. در حال حاضر ما دو براکت مربع است. بنابراین اگر ما می گویند در یک نرمال آرایه، ما می تواند دسترسی شاخص صفر، شاخص است. PHP شاخص صفر است. ما می تواند صفر، یک می گویند، مسائل two-- مثل این. و من شده است و گفت که گرفتن از نظر فنی یک فرهنگ لغت. پس چه PHP در حال انجام است در زیر هود، که است که کمی بهتر از C، در حال حاضر است به شما برخی از قابلیت فرهنگ لغت، که جداول واقعا هش، و یا تلاش می کند تا، ظاهرا. و یا، از لحاظ فنی آن می تواند یک امتحان کنید و همچنین. اما PHP در حال اجرای یک جدول هش، که یک فرهنگ لغت موثر را تشکیل میدهد. و بنابراین ما می دانیم که نام متغیر ما، درست است؟ این تارنما در گذشت رشته پرس و جو توسط PHP. ما یک = H و B = G و B که در آن نام متغیر می باشد. بنابراین راه است که ما می توانید دسترسی به مقدار متناظر با کلید در فرهنگ ما است فقط با گفتن _GET_GET ["A"]. بنابراین در حال حاضر ما باید _GET ["A"]. و اگر ما فقط جایگزین در داخل اکو ما، اگر ما پژواک _GET_GET ["A"] - و ما اگر دیباگر را ببینید پرتاب هر گونه خطا در مورد this-- ما را نجات دهد که و بستن این است. باز کردن آن را. بنابراین ما فقط انجام یک راست در حال حاضر، B باید مهم نیست. "او" و "او" - "همهمه." "او" و "زمزمه". برای تلفن های موبایل است. و آن را چاپ کرد "او،" دیوانه است. اما این دقیقا همان چیزی است در P اتفاق می افتد مجموعه 6. در واقع، آنچه P مجموعه 6 بود doing-- اکو سلام، name-- که در آن آن را به حال نام متغیر و آن را فقط می پرسد شما را به تایپ که کمی از متن. نیز وجود دارد برخی کد های اضافی که در آن اگر اظهارات شامل، که ما در حال حاضر می توانید انجام دهید. می توان گفت اگر وجود دارد، که قابلیت در PHP است، _GET با تاکید، "نام" - که اساسا و گفت، چرا که "اگر نام شده است در پر" ما می تواند فقط کلیک بر روی دکمه برای ارسال فرم بدون تایپ کردن هر چیزی به این حوزه. و ما بسته بندی که در ما پرانتز دوستانه در اشکال مختلف. ما می توانیم یک بیانیه دیگری داشته باشد. و این همه در زاویه PHP براکت، علامت سوال، براکت زاویه، اگر تو بخواهی. و در حال حاضر خواهیم دید که اگر این کار می کند. من را به انتظار آن را به اشکال زدایی و تلخه بر من، در واقع، اما آن را هنوز نمی کند. شاید آن در حال حاضر چون من در مورد صحبت کردیم. آره. این در واقع،. بنابراین، هیچ چیز است تا نشان دادن. دلیلش این است که از چیزی اشتباه که من در کد پی اچ پی نوشت. و من اشکال زدایی ذکر روی حیله و تزویر است چرا که در پی اچ پی، ما آن را از قبل کامپایل نمی و کامپایلر شد را دوست ندارد، در اینجا است که اشتباهات خود را می باشد. اما آنچه ما می توانیم انجام is-- مردم به یاد داشته باشید چگونه به شبکه های مختلف نگاه درخواست که PHP-- یا که وب سایت ارسال؟ [؟ مالین؟] این در انجام سخنرانی یک یا دو بار. شما به یاد داشته باشید که در آن ما به پیدا کردن بدهی مختلف و 200 OKS، همه این کدهای که در حال ارسال از طریق HTTP از یک صفحه وب به صفحه وب؟ آیا کسی به یاد داشته باشید در آن ما به انجام این کار؟ مخاطبان: صفحه منبع. SAM LEVATICH: صفحه منبع. دقیقا. اگر شما را به کامل صفحه Source-- است. بنابراین منبع صفحه کشد تا بازرس. و من با استفاده از سافاری. بسیاری از شما احتمالا با استفاده از کروم یا فایرفاکس. اما تا زمانی که شما در هر browser-- مدرن و در صورت تمایل به دنبال همراه اگر شما می خواهید. شما می توانید تایپ کردن این کد و یا فقط در داخل مجموعه P 6 نگاه دایرکتوری برای برخی از مسائل مشابه. hello.php است که ما در حال حاضر در تقلید کار. بنابراین انواع زبانه وجود دارد. ما می توانیم در تمام منابع است. ما می توانید کد منبع را ببینید. بنابراین به نظر می رسد مانند آن را انجام نمی بدن گذشته در پایان. این خطا در PHP و آن را در بر داشت در حال بارگذاری کل صفحه وب را متوقف کرد. ما حتی نمی پایانی داشته برچسب برای HTML و یا هر چیزی. و اگر ما در شبکه نگاه کنید، ما می توانیم ببینید که ما در حال یک درخواست ارسال می شود. این دامنه است. این آدرس است. این یک سند است. ما با استفاده از روش GET. و آن را به رنگ قرمز. و یا، آن قرمز بود وقتی که من بود آن را انتخاب نمی کند. چگونه می توانم آن عدم انتخاب کنم؟ خوب، آن قرمز بود. اجازه دهید من تازه کردن. ایناهاش. در حال حاضر آن قرمز است. پس از آن به رنگ قرمز، که به معنی آن را شکست خورده است که بد است. بنابراین اجازه دهید به بررسی و چرا از آن شکست. بنابراین همه که منبع صفحه می توانید اساسا به شما بگویم چیزی که خود را کار نمی کند، که ما در حال حاضر می توانید ببینید. بنابراین ایده آل وجود دارد یک ابزار مفید تر است. و برخی از برنامه های افزودنی مرورگر وجود دارد که به شما اجازه پی اچ پی دیباگ، اما ما در حال رفتن به نوشتن یک تن از پی اچ پی، پس از آن احتمالا فقط بهترین به کد خود را نگاه کنید با دقت و فقط مطمئن شوید که آن را به هر چیز دیگری انجام نمی دهد. بنابراین اجازه دهید که اگر از این فرمت اگر بیانیه است که در آن مشکل است. من می خواهم به بار که تماس تا اینجا. سلام، سلام. بنابراین یک مشکل وجود دارد وجود دارد. بنابراین برای ترکیب صحیح از پی اچ پی، پی اچ پی است که به در که شما خواهید دید حلقه مانند C. شما اگر اظهارات را ببینید. شما همه این دوستان را ببینید که شما آشنا شده ام با بیش از دوره از این ترم CS50. اما بهترین راه برای کشف کردن که چگونه به انجام کاری در PHP است به گوگل و یا به چند نمونه از کد PHP نگاه چون شما می دانید از قابلیت های. شما می دانید آنچه شما می توانید کار با این برنامه. شما می توانید حلقه. شما می توانید حلقه چند بار که شما می خواهید. شما می توانید در تمام حلقه انواع روش های مختلف. شما می توانید توابع ایجاد کنید. شما می توانید توابع ایجاد می کند که پاسخ توابع دیگر، توابع که تماس خود را. و شما باید نام برای این مفاهیم. شما بازگشتی کردم، حلقه ها، اگر، دیگر جریان های کنترل. و به همین ترتیب گوگل بهترین دوست شما است. حتی می گویند، "اگر PHP بیانیه "و آنجا تن از پست با پاسخ به افراد دیگر که سوالات مشابه به شما تا به حال، که تنها با شروع کردن با پی اچ پی و کنجکاو در مورد یک چیز نحو می باشد. از آنجا که ما از لوکس بودن قادر به در کد امنیتی را در مجموعه ای P 6 نگاه کنید، ما در واقع آن را بالا بکشد و ببینید که خوب، در اینجا چیزی جالب است. پس این است که آنچه در آن واقع شبیه به P مجموعه 6. بنابراین اگر ما از طریق این، ما می توانید ببینید که ما را کردم چند تا از این کمی مانند PHP بیت علامت سوال است. و آکولاد وجود ندارد. می دونقطه وجود دارد. در اشکال مختلف وجود دارد و ارتودنسی در PHP، اما این یک قالب و یک راه انجام است PHP که به خوبی کار با HTML چرا که به عنوان شما خواهید دید، ما در حال بسته شدن کردن این PHP bits-- میکنم و IFS و همه that-- و سپس ما در حال interspersing HTML در داخل آنها در حالی که هنوز پس از کنترل جریان توسط PHP تعیین شده است. بنابراین من فقط رفتن به پیاده روی سریع از طریق این چرا که آن را در بسیاری از همان مفاهیم که ما قبل از انجام گرفت. ما اگر خالی نیست کردم، پرانتز، _GET_GET ["نام"]. این همه چیز همان است. ما با استفاده از فرهنگ لغت _GET که PHP ارسال می کند بنا به درخواست فرم ها، دلیل آن است که پارامترهای است عمل، و روش دریافت کنید. و پس از آن که به پایان می رسد که. روده بزرگ یک دال به انجام این کار است فقط اگر دستور if برای درست ارزیابی می کند. آن را مانند یک آکولاد است. و در واقع، آن را یک آکولاد است در زبان های دیگر مانند پایتون، که شما ممکن است روبرو می شوند اگر شما فقط انجام این کار برای پروژه نهایی خود را. و سپس این خط، سلام. بعد ما این چیز عجیب و غریب کردم. ما براکت تر کردم. هیچ HTTP there-- یا پی اچ پی وجود دارد، با عرض پوزش. اما یک علامت مساوی وجود دارد. و پس از آن ما باید یک تابع، تابع htmlspecialchars (_GEThtmlspecialchars (_GET ["نام"]). این نوع مانند یک بیشتر نسخه پیشرفته از اکو. ما به عنوان یک راه اکو بود به چاپ چیز در PHP. این یک تابع است که تعریف شده در پی اچ پی که با برخی از تند و زننده تر برخورد خواهد کرد شخصیت ها و مقادیر بایت که شما می توانید آن را منتقل می کند. این همیشه امن ترین برای استفاده از این. اما اکو این کار را انجام فقط خوب اگر ما نیست برخورد با چیزی بیش از حد تند و زننده. و این است، همان اثر در واقع، این مسائل در بین درخواست علائم توسط پی اچ پی بررسی قرار گرفت. تابع htmlspecialchars یک HTML زیبا را برمی گرداند ارزش چاپ شده از _GET_GET ["نام"]، به عنوان مثال هر چه ما در قالب تایپ. و سپس آن را می گویند سلام، فضای کاما از هم، و پس از آن است. که همه چیز بین براکت زاویه خواهد شد جایگزین هر تابع htmlspecialchars قرار می دهد از. به طوری که اساسا مشابه به آنچه که ما انجام می دهند. و ما باید یک بیانیه دیگری که سلام جهان، که حس می کند. بنابراین در حال حاضر اجازه بازگشت به ما کد و exactly-- بینم. من گفتم وجود دارد، که نه چیزی است که ما می خواستیم به انجام است. ما می خواستیم به خالی نیست. و بنابراین این باید کمی کار کمی بهتر است، نمی _GET_GET خالی ["نام"]. و آکولاد مسابقات که آکولاد. ما آکولاد ایم در اینجا. اکو سلام _GET ["نام"]. بیایید ببینید که اگر این کار کمی بهتر است. ما هنوز در حال اجرا سرور ما. سلام جیسون. سلام جیسون. و این بار آن کار کرده است. و به طوری که یک اثبات است که شما در واقع می توانید استفاده از آکولاد که شما می دانیم و عشق در کد PHP در HTML. کد پی اچ پی ارائه شده به شما در pset 6-- pset 6-- یکی دیگر از راه فراهم می کند انجام این کار چیزی است. بنابراین در حال حاضر ما قدرت. ما این قابلیت را برای پیاده سازی کد پی اچ پی که ما در pset 6 دیدم توسط خودمان، اساسا. قبل از اینکه من در حرکت، چه برخی از هستند سوالات است که شما را در این نقطه دارند؟ بله [نامفهوم]. مخاطبان: بنابراین در نسخه در pset6، هنگامی که شما آن را اجرا کنید، یک فضا وجود دارد. و من می توانید ببینید که در آن فضا است بعد از کاما. [نامفهوم] شروع براکت باز است. چگونه فضای شما را ترکیب در راه را به شما کدهای خود را نوشت؟ SPEAKER: این سوال خوبی است. و بنابراین اجازه دهید که در شکل خارج. به طوری که یک سوال واقعا خوب است و یکی که من نمی داند. اما اجازه دهید آن را با هم انجام دهید. پس اول از همه، چه من انجام با اکو است که ما فقط اکو سلام، خروجی سلام. اگر ما اکو در حال حاضر این در جداگانه دریافت خط، اجازه دهید به بررسی آنچه اتفاق می افتد. بنابراین ما این را کلیک کنید. ما در حفظ و گفت، سلام جیسون. پس دوباره، این فضا ندارد. و این به دلیل، در PHP، زمانی که ما اکو اند، بدون توجه به چند spaces-- نه، نه V-- مهم نیست که چگونه بسیاری از فضاهای ما در قرار here-- اگر ما در حال حاضر تا بار که دوباره، سلام جیسون. آره، ببینید، همه از آن فضاهای تا خورده شد. و این چیزی است که عملکرد اکو کند. بنابراین به مراقبت از که فضا، و این است یکی از دلایل چرا شما اکو استفاده نمی و شما به جای استفاده از تابع htmlspecialchars. من کنجکاو هستم آنچه را که اگر ما این که در آن ما یک فضای در یک رشته محصور شده است. من صادقانه مطمئن هستم که چه اتفاقی خواهد افتاد وقتی من این کار را. به طوری که یکی از راه های است. این یک راه برای مراقبت از آن است. اگر شما در فضای در بسته بندی یک رشته، پس از آن فضای خواهد به سادگی توسط اکو چاپ خواهد شد. امن ترین کار این است که به انجام تابع htmlspecialchars. که شرط سالم همیشه. اما در حال حاضر ما یک راه برای انجام آن را با اکو در صورت لزوم. و در یک روش مشابه، ما می توانیم اکو خطوط جدید، همه نوع از چیزهای را که انجام می دهند در PHP آشنا هستید. هر کس دیگری، هر چه بیشتر پرسش هایی که افراد دیگر در این نقطه مورد پی اچ پی؟ اگر مردم نشان داد تا کمی دیر، من خوشحال پس از کمی به ماندن هستم و بحث در مورد برخی از ابتدا. و آن را نیز همه livestreamed، و آرشیو است که دیوانه است. به هر حال، بنابراین در حال حاضر اجازه دهید برخی از انجام مسائل پیشرفته تر با PHP. و یکی از اولین چیزهایی که شما در C برای حلقه بود معرفی شدند. و PHP یک قوی تر برای حلقه به نام حلقه foreach. و آن را مانند this-- برای هر خالی به نظر می رسد به عنوان خالی، براکت، انجام کار. پس این است که اساسا یک مختصر. ببینید، برای حلقه به عنوان یک ساخت و ساز نحوی در C و مونتاژ ابداع شد زبان و چیزهایی مانند. ابداع در C، دقیقا، به عنوان یک مختصر برای بسیاری از انواع حلقه که مردم را ببینید. مانند زمانی که شما نوشت یک حلقه، وجود دارد اغلب یک گام اولیه بود درست در آغاز، یک اعدام شرایطی که در آن حلقه می stop-- و این که از ویژگی های است که فقط در یک حلقه در حالی که، یا این که یک در حالی که دقیقا درست است که پس از آن feature-- و یک گام incrementation در پایان. و بنابراین شما اغلب می خواهم به خودتان پیدا کنید نوشتن کد مانند زیر است. من قصد دارم برای پاک کردن برخی از این. اما اگر ما در حال تکرار از طریق شخصیت در یک آرایه، به عنوان مثال، ما را کردم آرایه ای از کاراکتر. با عرض پوزش برای بازگرداندن C. من می دانم، شما فکر می کنید انجام شد. اما آن را تنها به منظور از پی اچ پی یادگیری، قول می دهم. بنابراین اگر شما یک STR کاراکتر کردم طول 8، و اجازه دهید می گویند آن را می گوید Hellooo با یک بایت پوچ فرار است. بزرگ، به طوری که رشته ما است. و سپس ما یک حلقه for بود. ما اعضای هیات من برابر با 0. و ما می خواهیم برای خروج STR از من برابر با برابر نیست به تهی، چرا که ما خروج هنگامی که آن را برابر تهی. و سپس ما می توانم در هر ++ نقطه در حلقه for. انجام کاری با STR از من. بنابراین فرمول عمومی بود، ما این آرایه حال که ما می خواستم برای درمان به عنوان عناصر جداگانه. اما آنچه که ما تا به حال انجام است که ما تا به حال به اساسا یک عدد صحیح جداگانه ایجاد کنید متغیر است که شمارش شد تا هر زمان ما را از طریق حلقه رفت. و سپس ما را باید به آن پاسخ strstr های [i] که آنچه که ما واقعا می خواستم برای انجام فقط به شخصیت توسط شخصیت، درست است؟ ما نمی خواهیم به افزایش عدد صحیح و سپس استفاده از آن عدد صحیح برای دسترسی به هر یک از شخصیت به صورت جداگانه. ما واقعا می خواهید کاراکتر به کاراکتر. و به این ترتیب برای هر هوشمندانه محاسبه کرده است که برای ما. اگر ما یک آرایه، که ما می توانیم در PHP اعلام به عنوان just-- اگر ما یک متغیر نامیده می شود، اجازه دهید آن را آرایه. معجزات بدون تایپ کردن، آن را درست مانند هر متغیر دیگر. این فقط یک آرایه است. و ما باید کمی [نامفهوم] مانند 1، 2، 3، فقط یک نوع از آرایه های اولیه. این خوب است، آن حلقه foreach را دوست ندارم. اما اگر ما در واقع foreach-- من تایپ که یک اشتباه کوچک. دو راه برای انجام یک حلقه foreach وجود دارد. این نحو در و نحو وجود دارد. و ما قصد داریم برای انجام در نحو برای اولین بار، نه به عنوان. این اشتباه من است. NUM بنابراین foreach در آرایه، اکو NUM. و PHP فریاد در من به چند دلیل. این پیدا کردن غیر منتظره در در چیزی، که کمی از یک زحمت است. اما ما به شکل از چرا که در یک لحظه. بنابراین دوست ندارم. بیایید سعی کنید با استفاده از عنوان. ترجیح به عنوان نحو است به نظر می رسد. بنابراین اجازه انجام آرایه حلقه foreach به عنوان NUM. بنابراین یک توضیح کوچک از آنچه اتفاق افتاده آیا AS نحو است saying-- خب اول، اجازه دهید در چه این را چاپ کنید. بنابراین ما برای باز کردن IDE است. ما به اینجا بروید. ما می گویند، سلام جیسون. و آن را انجام داد 123، که در آن محتویات شد از آرایه که ما ایجاد تا بالا. بنابراین از غواصی به این حلقه foreach، ما باید یک آرایه متغیر به نام که آرایه ای از اعداد سه است. و سپس ما در حال انجام حلقه foreach آرایه به عنوان NUM، اکو NUM. و این بیشتر بصری از یک برای ریختن. ما در حال گفت، درمان هر یک از چیزهایی که در آرایه به عنوان NUM، من می خواهم شما به من NUM است. و این دقیقا همان چیزی که آن را انجام. PHP است که محاسبه زمانی که شما می گویند آرایه حلقه foreach، و شما در حال برخورد با یک آرایه، چه شما در حال رفتن به می خواهم به تکرار بیش از شخصیت در آن آرایه است، نوع داده int در آن آرایه است، عناصر در آن آرایه است. و آن را به شما اجازه ذخیره آن متغیرها به عنوان NUM، و NUM پس از آن فقط خروجی حق دور به جای گفتن، من یک متغیر به نام من، و پس از آن من به خروجی strstr های [i] می خواهید. و به طوری که اجازه می دهد تا ما را به انجام همه چیز سرد. مانند اساسا ما لازم نیست که به ایجاد این متغیرها مثل من و همه این مسائل incrementation در پایان. PHP طول می کشد مراقبت از همه که برای شما. بنابراین در حال حاضر اجازه دهید در مورد حلقه foreach به عنوان بحث آن را به فرهنگ لغت _GET ما اعمال می شود. بنابراین ما این سرعت اظهار نظر. بنابراین ما باید آرایه _GET ما است. در حال حاضر این متغیر. و آن را کردم برخی از مسائل در آن است. در حال حاضر، ما فقط یک متغیر گذشت آن است که نام. اما اگر ما Enter را فشار دهید، در حال حاضر ما می توانیم دو متغیر است. ما می توانیم نام و سن، به عنوان مثال، اگر ما می خواهیم به سن و همچنین نام یک فرد، funnily به اندازه کافی. بنابراین در حال حاضر _GET است برای رفتن به یک فرهنگ لغت با دو عنصر، با دو جفت ارزش کلیدی است. و key-- اول من قصد دارم به ارسال این یکی تا در هیئت مدیره است. ما فرهنگ لغت ما _GET است. با عرض پوزش، این است که کمی سخت است برای دیدن. اما در داخل فرهنگ لغت ما ما نام می باشد که به چیزی می شود که ما داده می شود. و ما سن، که آن هم رفتن به چیزی که ما داده می شود. و این تمامیت است از فرهنگ لغت ما. بنابراین آن را به دو عنصر در آن است. و به این ترتیب به دلیل حلقه foreach حلقه های هوشمند، ما ممکن است فکر، و به درستی ممکن است که فکر می کنم حلقه foreach می توانید از طریق این تکرار فرهنگ لغت، چاپ کردن ارزش با نام و سن مشخص است. بنابراین اجازه دهید در واقع انجام درست آن. بیایید ساخت یک حلقه foreach. و ما قصد داریم برای _GET به عنوان انجام دهد. و ما در حال رفتن به شرح زیر است. بنابراین اجازه دهید که اگر نوع ما چه اتفاقی می افتد کلمه فقط، و سپس می گویند کلمه اکو. ما همچنین در حال رفتن به یک خط جدید اکو فقط آن را به کمی واضح تر، چه خبره. بنابراین اجازه دهید را ببینید. آن را به من دادن هر گونه خطا است. و ما این را ببندید. در وب سایت ما، شما در حال رفتن به انجام می شود بسیاری از این در طول دوره از pset7. بنابراین ما می گویند اسم من سام است. سن و سال من 45 است. این طور نیست. اما آن را چاپ، به عنوان انتظار می رود، سام 45. و بنابراین شما متوجه خواهید شد که چه حلقه foreach did-- در اینجا، اجازه بازگشت به پس از آن تا در board-- ما _GET به عنوان کلمه. و چهار چیز را در _GET وجود دارد. اما این تنها چاپ دو چیز است. حلقه foreach، بودن خود اطلاعاتی خود، فرض که آنچه که ما واقعا می خواستم ارزش ها، نه از کلید بود. اما یک راه که ما می تواند چاپ وجود دارد از کلید به عنوان خوب، اگر ما می خواستیم. اگر ما می خواستیم به آنچه همچنین می دانیم این متغیر بودند، به نام یک راه وجود دارد که ما می توانید این نیز دسترسی داشته باشید. و راه را برای مرتب کردن بر اساس انجام این کار، بنابراین می توان گفت، اجازه می دهد تا واقعا تقسیم آن را به جفت کلید. بنابراین اجازه دهید که در حال حاضر چه اتفاقی می افتد. بنابراین ما باید کلید. ما ارزش است. ما باید یکی دیگر جدید خطوط برای خوانایی. و اجازه دهید ببینیم چه اتفاقی می افتد زمانی که ما این را در حال حاضر. من نمی دانم چند ساله جیسون است. جیسون 15. بنابراین ما باید نام جیسون، سن 15. بنابراین ما قادر به دسترسی به کلید شد و جفت ارزش این فرهنگ لغت فقط با گفتن از نقاط به عنوان کلیدی برای ارزش. و این یک نحوی حلقه foreach است کمی شکر که اجازه می دهد تا شما برای دسترسی به همه چیز در فرهنگ لغت. پس امیدوارم این نوع از بر قدرت حلقه foreach. شما می توانید پرتاب بسیار هر چیزی که به نظر می رسد iterable، مانند هر چیزی است که چند عناصر مانند یک آرایه، مثل یک dictionary-- آن دو همه چیز اولیه به شما امکان کار با هر دو در زندگی و در pset 7. بنابراین شما می توانید چیزهای که پرتاب در آن، و آن را به شکل آنچه شما می خواهید با آن انجام دهید. آن را می گویند، خوب، من برای به دست آوردن این چیزها را از داده هایی را که به من منتقل شد. و این چیزی است که شما هستید رفتن به استفاده از بسیاری از در pset 7. من قصد دارم به اسکرول سریع پایین فقط برای دیدن که من در هستم. آیا مردم سوال در این نقطه دارند؟ سوال در همه؟ بله؟ مخاطبان: بنابراین با کلید و ارزش، شما می توانید آن هر چیز دیگری نام و آن را هنوز هم کار می کند؟ SPEAKER: اوه. وای، من کاملا حذف تمام خط. کار عالی. بنابراین یک، یک. کلید و مقدار فقط یک قرارداد است. بهتر است. شما می توانید برخی طراحی کنید نقطه، شاید برخی از نقاط به سبک برای انجام این کار به دلیل آن واقعا منتقل قصد باشد. اما ما می گویند و yarp. رسید شما لازم نیست که تغییر هر چیزی در فایل HTML به منظور منعکس کننده که؟ SPEAKER: نه در همه. رسید و آن را فقط می داند که به دلیل برابر than-- بیشتر بلندگو: دارد. مخاطبان: شاخص --that که that's-- بلندگو: دارد. که یک نحو حلقه foreach است، اما بله. مخاطبان: انواع وجود ندارد. پس چه اگر شما می خواهید سن تنها یک عدد باشد؟ یک راه برای انجام این کار وجود دارد؟ SPEAKER: راه اگر برای بررسی وجود دارد متغیرهای مطابق با انواع خاصی. بنابراین PHP می پرسد کمی بیشتر از شما چون هیچ نوع در آن وجود دارد. برخی از روش های آن را کمتر می پرسد. در برخی از راه آن می پرسد. چرا که اگر شما فقط چیزی در یک متغیر، شما هیچ ایده چه نوع آن است. اما اگر شما در مورد هوشمند متغیرها که شما را به او واگذار انواع و مطمئن شوید که که توابع تنها شما return-- می خواهید توابع تنها به بازگشت یک نوع از ارزش آن به قدری که شما در واقع می تواند انتظار می رود که متغیر در پشت از یک تابع از نوع باشد که شما فکر می کنم از آن خواهد شد، اساسا. اما برخی از روش ها وجود دارد که توسط آن شما می توانید بررسی کنید. من آنها را به یاد داشته باشید از بالای سر من. من انتظار آن را به رنگ مایل به آبی. isint؟ isstr؟ روش وجود دارد ساخته شده را به PHP است که می تواند بررسی نوع متغیر برای شما. اما اگر شما متغیر اختصاص هوشمندانه، شما باید نیست باید انجام دهید این است که بیش از حد در pset 7. اما این روش وجود دارد. و این چیزی است که در خود زبان است. و من نحو دقیق یاد داشته باشید. ما حتی می تواند آن را نگاه کنید. اما زمان است که از ذات. اختصاص هر کس دیگری هر گونه سوال بیشتر؟ بله. مخاطبان: من فقط یک. بنابراین شما با اشاره به روش GET، اما شما از روش POST اشاره نمی کند. آیا ما به آینده را به که؟ SPEAKER: بله، ما شود برگشت به که. این دقیقا همان چیزی من به دنبال در گوشی من، که در حال حاضر به خواب رفت، اما من آن را پیدا کنید. فقط مطمئن شوید که ما آمار همه از یادداشت های پی اچ پی. بله، هیچ نسخه اشکال زدایی وجود دارد. بله، ما چند چیز است که ما می خواهیم انجام در حال حاضر در این نقطه است. بنابراین در مورد POST صحبت کردن، که شما اشاره کردید، تنها تفاوت بین GET و POST است که به یاد داشته باشید هنگامی که ما نگاه در این URL و ما دیدیم، آه، نام و نام خانوادگی برابر و سن برابر yarp درست در URL وجود دارد برای ما هستند. POST مخفی کمی بیشتر است با عبور دادن آن از اطلاعات است. بنابراین اگر شما یک کاربر را می خواهم نه به دانستن، به عنوان مثال، شما آیا می خواهید نام کاربری و رمز عبور از شخص در حال حاضر به سیستم وارد در نمایش داده می شود آدرس اینترنتی، که یک چیز معقول در URL را نمی خواهم، زیرا کسی که می توانید آن را ببینید. اگر آنها پیوند به کسی برای یک صفحه، شما نمی خواهید URL خود را پوشاندند وجود دارد، چون که اجازه می دهد مردم را به ورود فقط با چسباندن یک URL به جای در واقع پر کردن یک فرم. ارسال یک کمی مرموز تر است. و تنها چیزهایی که ما باید برای تغییر هستند از این روش، تغییر از رسیدن به پست. و سپس در داخل HTTP، به جای دسترسی به _GET آرایه، ما قصد داریم برای دسترسی به _POST آرایه. و ما متوجه خواهید شد که، اگر ما برای باز کردن این بالا و دوباره، جیسون به آرامی در سن کاهش می یابد. نام جیسون، سن 14. چیزهای مشابه بالا میآید. اما ما به آدرس بروید و آن متغیرها وجود ندارد. و تنها راهی که passes-- به یاد داشته باشید چگونه به منبع صفحه نگاه کنید. ما به شبکه است. ما را تازه کنید. و این چیز دیگر است که POST به شما هشدار در مورد به من بدهید. شما ممکن است را دیده اند، یک جعبه، یک متن جعبه ای مثل این را در مرورگر خود. آیا شما مطمئن هستید که میخواهید برای ارسال یک فرم دوباره؟ POST است چه خبر ارسال این اشکال. چرا که اساسا اگر شما فرستاده خود را اطلاعات کارت اعتباری به کسی، که رفتن به نشان می دهد تا در URL است. که برای رفتن به یک درخواست POST. بنابراین، هنگامی که شما صفحه را تازه، آن را ارسال مجدد که درخواست ارسال. بنابراین در حال حاضر ما نمی خواهیم به ارسال فرم بار دیگر به دلیل آن را نمی برای ایجاد هر خرید تکراری. و ما متوجه پایین که در اینجا، روش ما با استفاده از POST است. و آن را در واقع انتقال بایت است. آن منتقل 401 از آنها. برنامه بسیار کوچک است. اما هیچ جا وجود دارد که ما می توانید ببینید ارزش که می گذشت. صفحات وب خود را مشاهده می کنید، اما ما به عنوان کاربران قادر به دیدن نیست، مگر اینکه شما یک هکر است. اگر شما یک هکر خوب، شما می توانید نگاه کنید. اگر شما می دانید عمومی فرمت HTML، ارزش خواهد شد خود را در صفحات شناخته شده است. شما قادر خواهید بود برای دیدن. ارزش وجود خواهد داشت، آنها فقط یک کمی برای شما کمتر آشکار است برای دسترسی به، اساسا. آیا ما هر سوال در مورد GET، POST before-- چیزی است که ما قصد داریم برای انجام بعدی است که در واقع در برخی از کد نگاه کنید که شما در حال دادن در pset 7، صحبت در مورد چگونه آن را با استفاده برخی از این مفاهیم، و بحث در مورد چیزهایی که شما در حال رفتن به انجام یک کمی در pset 7. هر گونه سوال بیشتر قبل از آن؟ سوال بیشتر شما بچه ها؟ عالی. همه حق است، اجازه دهید نگاهی کمی در pset 7، بدون شک آنچه شما همه در مورد هیجان زده. منظور من، این چیزی است که دیوید می رود از طریق یک کمی. اما ما باید سه دایرکتوری در اند بالا، و همچنین به عنوان یک فایل پیکربندی. که برای پایگاه داده، که ما آن را صحبت در حدود پنج دقیقه در مورد. شامل، شما هرگز نیاز در این دایرکتوری اگر شما نمی خواهید به اما آن را به خوبی مطمئن شوید همه نوع از یاران وجود دارد. یاران مانند توابع مفید است. و بعد ما پیکربندی، که مجموعه برخی از مسائل. برخی از توابع است که CS50 است وجود دارد نوشته شده است که در یاور و پیکربندی می باشد. و برخی از پی اچ پی که در حال حاضر در خارج فایل خواهد شد بسیاری از مرتب کردن بر اساس بیشتر انجام کار پا از منفرجه برای شما. مانند اگر ما را به رفتن های عمومی login.php و این چیزی است که نشان می دهد تا شما را به سمت راست زمانی که pset 7 است. خواهیم دید که وجود دارد این است که این نیاز به بیانیه. و نوعی مانند یک تیز عبارتند از، برچسب اگر شما از یک نسل جدیدتر است. اما این اساسا می گوید که من نیاز به دسترسی به تمام توابع در فایل config.php. و شما می توانید یک نیاز برای تمام انواع چیزهای دیگر. در واقع نیاز به پیکربندی یاران. بنابراین هر زمان که شما نیاز پیکربندی، شما همچنین هستید از جمله و یا نیاز به یاران است. به طوری که به شما می دهد دسترسی به همه توابع سرد که ما قصد داریم برای استفاده، همه چیز دوست میشوند. در واقع من به سهولت این یک کمی. بنابراین تابع پس از آن ما رفتن به از طریق راه رفتن فقط قبل از ما در حرکت به SQL یک کمی کمی تابع login.php است، فقط زیرا با استفاده از برخی از موضوعات که ما فقط در مورد در PHP صحبت کردیم. شما می بینید اولین چیزی است که اگر $ _SERVER. این متغیر جهانی دیگر این است که شما در حال رفتن به خرید و فروش با. آن را مانند _GET و _POST، اما آنچه که سرور شامل این می تواند به شما اجازه می دانم که اگر روش درخواست A را و یا یک پست بود. مثل قبلا آنچه که ما انجام تنها در کد ما است که ما نوشت، ما فقط در حال تغییر بودند آن را به دریافت و ارسال بسته به آنچه از HTML است. اما صفحاتی که می تواند وجود دارد با هر دو نوع درخواست قابل دسترسی است. و شما ممکن است می خواهم به انجام چیزهای مختلف بسته به نوع درخواست، درست مثل ورود می کند. بنابراین شما می توانید درخواست بررسی که روش از طریق کلید دسترسی، از طریق استفاده از یک کلید و گرفتن ارزش چیزی در فرهنگ لغت _SERVER. به طوری که یکی دیگر از جهانی متغیر مانند _GET و _POST. اگر آن را دریافت کنید، ما می خواهید فرم ورود رندر. بارگزاری یک تابع است که اساسا فقط قرار می دهد تا مناسب HTML و برخی از پارامترهای عبور می کند. این عنوان یک پارامتر است که مورد استفاده در نمایش، به اندازه کافی عجیب، عنوان صفحه در درخواست، چیزی که تا اینجا، می گویند و یا سلام در مثال قبلی ما است. در حال حاضر ما یک چیز متفاوت است. دیگری اگر آن را ارسال، ما انجام برخی از چیزهای دیگر. ما با استفاده از این روش خالی است. آن وجود ندارد، آن را خالی. و که قبلا دیدیم، PHP دارای یک مقدار عادلانه از ساخته شده است در روش که دیوید will-- اگر وجود دارد روش هایی که برای شما مفید هستند، آنها را به شما هشدار داده در پیاده روی از طریق که دیوید می دهد در بررسی اجمالی آغاز، و همچنین بیت های مفید Zamyla است. او هر کس را به عقب. همه ما می توانیم شادی. عذرخواهی یک تابع به درستی به نام است که تنها اساسا چاپ برخی از پیام های خطا، به دلیل CS50 بسیار مودب است. و در حال حاضر این، این است که کمی مشکل به دلیل این جایی است که ما پرس و جو پایگاه داده باشد. در حال حاضر ما در مورد پایگاه داده صحبت نمی کند. و ما در حال رفتن به در بعدی پنج دقیقه یا بیشتر، حداکثر. اما این یک تابع است که CS50 نوشته است برای دریافت جدول اساسا از یک پایگاه داده که ما در حال کار با در pset 7. من واقعا بد با من هستم صفر نمایه سازی امروز. اما بله، 7 است. بنابراین پرس و جو آن را به بازگشت یک آرایه، اساسا بیت کلید است. و از آنجایی که این چیزها لازم نیست تایپ کردن، به طوری که ردیف آرایه ای از آرایه است. چون وقتی ما در حال فکر کردن در مورد یک جدول، آنچه که ما قصد داریم برای انجام است، که شما در به دست psets مانند بازی از 15، به هر حال که در آن شما مجبور به استفاده از آرایه دو، ما اساسا دارند مجموعه ای از دیگر آرایه باعث می شود یک جدول. و سطر و ستون به شما داریم. و پس از آن شما می توانید آنها را مانند دسترسی [0] [1]، شما می توانید از [0] [1]. مسائل عمومی مانند آن. بنابراین آنچه که ما در حال انجام در اینجا در این تابع، ما در حال درخواست از پایگاه داده اگر کاربر که تلاش برای ورود، که خواهد بود با استفاده از روش POST ارسال می شود. خواهیم دید که ما در حال گرفتن نام کاربری از _POST. آنها فرستاده اند، کاربر یا شما به یک مقدار ارسال از طریق یک فرم از طریق پست به دلیل آن نام کاربری و رمز مسائل است. ما در حال چک کردن نام کاربری برای دیدن، این است که در جدول؟ از آنجا که اگر یک کاربر ورود به سیستم در، پس از آن نام کاربری خود را باید در جدول ذخیره شده کاربران که در سایت وجود داشته باشد. بنابراین اساسا اگر کاربر در پایگاه داده، پرس و جو است که به بازگشت که ردیف است که یک آرایه. اما بخشی از مشکل این است که اگر حتی اگر آرایه دو برابر شده است فقط از یک ردیف، حتی اگر آن را یک یک ردیف آرایه مثل شما basically-- کردم اگر شما رو به یک اندازه یک آرایه که برگزاری یک آرایه، شما واقعا با یک ستون است. اما هنوز هم درمان مانند آرایه دو برابر شود. و این است که جایی که گاهی می تواند روی حیله و تزویر، چرا که ما ردیف کردم اینجا. متغیر ما ردیف است. و سپس ما در حال ایجاد یک متغیر به نام ردیف جدید و راه آن را برابر ردیف اول ردیف. و شما متوجه است که نظر می گوید که اولین و تنها ردیف است. پس این است که روی حیله و تزویر بخشی که در آن توابعی می توانید آرایه به راحتی بازگشت. این mallocs وجود ندارد. شما نمی خواهد mallocs ببینید. بنابراین شما خواهد شد گسل SEG نیست. اما هنوز هم توابع عبور خواهد بود اطراف آرایه ها و اطلاعات در گروه. و شما باید نسبت به آن چه دقیقا توابع خود را باز خواهد گشت. و حتی اگر آن را یکی ستون مانند این، پرس و جو هنوز هم برای بازگشت به یک آرایه دو برابر شود. بنابراین برای دسترسی به این column-- و یا شما می توانید از همه از این به عنوان وارونه فکر می کنم از آنجایی که ما در حال صحبت کردن در مورد ردیف. اما برای دسترسی به یک ردیف، شما نه تنها می توانید می گویند ردیف. حتی اگر آن یک ردیف است، شما را به انجام rowsrows [0] به نوعی از بین بردن این کمی خارج از آرایه و فقط یک ردیف خود را. انجام برخی چیزهای دیگر. یک تابع وجود دارد نام password_verify که تایید رمز عبور است که ارسال شده است. و سپس ما دیگر جهانی را ببینید متغیر در اینجا، _SESSION. اساسا ID را وارد نمایید این است که چگونه مسیر شما در حفظ و از اگر کسی به سیستم وارد یا نه. بنابراین در حال حاضر با login.php و ما در حال ورود به سیستم یک کاربر در. بنابراین آنچه ما می خواهیم انجام دهیم این است که ما می خواهید می گویند ID جلسه به سطر برابر است ID، که فقط حس می کند به دلیل هر سطر یک ID مختلف داشته عدد را به عنوان بخشی از جدول. ما را به SQL در یک گرفتن دوم، بنابراین اگر هر یک از این به نظر می رسد کمی شبیه اه، پس از آن تمام خواهد شد تا پاک. اما ما قصد داریم به مجموعه ای از ID برابر چیزی مناسب، ورود به سیستم کاربر در. عذر خواهی اگر هر چیزی را اشتباه می رود. و باری هدف در است زندگی به عنوان استاد مالان می گویند. به طوری که login.php بود. و بسیاری از کد پی اچ پی شما ارسال در pset 7، آنها خواهید بود کمی. فراموش نکنید که برای سطح دسترسی به مجوز مناسب. وجود خواهد داشت کمی در مورد که در آغاز از تنظیمات. اما PHP که شما هستید نوشتن است برای رفتن به انجام چیزهایی که شبیه به این. شما در حال رفتن به دسترسی به برخی از چیزهایی که در به شما داده متغیر های جهانی از پی اچ پی که در برخورد با جریان وارد شده کاربر وجود دارد، چه درخواست شده ارسال شده به این صفحه، همه چیز متفاوت شبیه به آن. و آن را نیز به طور بالقوه می شود تکرار از طریق ردیف از این چیز. در یک تابع های مختلف، پرس و جو نمی گرداند این آرایه دو برابر شود. و اگر بیشتر وجود دارد از یک ردیف در آن، اگر are-- بله، اگر وجود دارد بیش از یک ردیف در آن، سپس آن را یک جدول. و شما ممکن است می خواهم به تکرار از طریق ردیف از این آرایه با استفاده از حلقه foreach که ما توصیف کرد. بنابراین اگر شما در دو حلقه foreach آرایه، چه خواهد شد word-- در اینجا، من در واقع آن را ارسال. من آن را سریع اینجا بنویسید. اگر ما یک حلقه foreach از ردیف به عنوان ردیف، چه نوع ردیف خبر؟ آیا کسی می داند؟ فهمیدی؟ بنابراین ردیف یک آرایه دو برابر شده است. پس چه شده است حلقه foreach رفتن به استنباط که ما از این آرایه دو می خواهید اگر ما در حال تکرار بیش از آن؟ ما اساسا می تواند فرض کنیم که آن را می شود یا عناصر، و یا ردیف ها یا ستون، اساسا. و به این ترتیب سطرها و ستون ما می تواند به عنوان همان چیزی را درمان کنند. در واقع آنچه حلقه foreach است که انجام دهید این است آن را به بازگشت به ردیف. ردیف است که برای از ردیف نوع باشد، در حالی که ردیف یک آرایه دو برابر شده است. بنابراین اگر شما حلقه foreach یک آرایه دو برابر آن رفتن به تکرار بیش از یک سطح عمیق است. که در واقع می گویند اگر وجود دارد هشت سلول در این table-- 1،2 هستند، 3، 4، 5، 6، 7، 8-- حلقه foreach است رفتن را از طریق هر یک از این سلول است. چه حلقه foreach را انجام خواهد داد بود آن را از طریق این ردیف، شما تمام این ردیف است. و سپس آن را از طریق آن ردیف. پس از آن تنها یک سطح عمیق تکرار. اگر شما اضافه کردن تو در تو حلقه foreach، سپس شما می توانید هر سطر در بازگشت از درمان ردیف، شما انجام ردیف حلقه foreach به عنوان عنصر، اجازه دهید بگویم. و سپس شما می تواند به عنصر اکو. به طوری که یک مختصر است یادآوری کمی در مورد چگونگی شما ممکن است با استفاده حلقه foreach حلقه در زمینه پرس و جو. هر گونه سوال در PHP وجود دارد؟ هر چیزی در همه قبل از ما حرکت به صحبت کردن در مورد SQL و سرگرم کننده از پایگاه داده؟ احساس خوب؟ احساس خوب است. خیلی خوب. اجازه دهید در حرکت به پاورپوینت، که شما احتمالا از دست ندهید. SQL، ماهواره. افرادی که در بخش من معمولا می دانید که سرفصلهای از کلمات اختصاری همیشه فقط کلمات اول من که فکر می کنم که بازی الگوریتم که مخفف. آن یک الگوریتم است. بنابراین SQL پایگاه داده است. این زبان یک زبان است که با پایگاه داده کار می کند. و تمام پایگاه داده می باشد جداول، حداقل در راه که نشان دهنده SQL آنها. راه دیگر برای در مورد پایگاه داده فکر می کنم پایگاه داده ها مجموعه ای از کلید ها و مقادیر اساسا. شما می توانید در مورد یک پایگاه داده به عنوان فکر می کنم یک فرهنگ لغت و همچنین به عنوان یک جدول. در واقع آن یک راه برای کاردانی داده های مختلف با داده های دیگر، اغلب از طریق سطر و ستون. و این راه را که SQL بهتر کار میکند. پس این یکی نمونه از جدول است. من چند نمونه از ام از قسمت افراد در من، که من هم به تغییر ندارد. اما ما چیزهایی مانند ID کردم، نام، ابرقدرت ها، و زادگاه. من نمی دانم که در آن هر کسی در بخش من، بنابراین من فقط رفتن به فرض هر کس از نیویورک شهرستان چرا که من یک بالا آماری احتمال درست بودن. SQL به صورت خودکار خواهد مراقبت از ستون ID برای شما. اگر شما وارد یک ردیف جدید به یک پایگاه داده SQL، آن را افزایش که شماره ID و فقط در واقع شبیه به پنج نام چوب، ابرقدرت، زادگاه، هر کس را به انتهای آن جدول. بنابراین ID یک ستون است شما هرگز در مورد نگران باشید. اما، می خواهم در مورد از login.php و هنگامی که ما گرفتن ID جلسه از یک جدول و فقط با استفاده از ID، ID راه منحصر به فرد شناسایی است یک عنصر از یک پایگاه داده. بنابراین اگر ما تا به حال دو شمس، هر دو از که تدریس CS50، و هر دو از که از Milwaukee بودند، کسانی که هنوز هم شماره ID مجزا و به این ترتیب مشخص می شود متن جدول. بنابراین این چیزی است که SQL خرید و فروش با، کار با در پایان به عقب. در حال حاضر این چهار دستورات که شما نیاز به کار با SQL. و من همه آنها در یک اسلاید انداخت تا. اما ما قصد داریم از طریق رفتن همه آنها را به صورت جداگانه. اولین دستور روز رسانی است، می کند که چه شما ممکن است انتظار می رود. می گویند شما باید برخی از داده ها در جدول که خارج از تاریخ. مانند اگر شما در حال نگه داشتن آهنگ از نام مردم و سنین، اگر کسی افزایش سن، پس از آن شما در حال رفتن به می خواهم به در و به روز رسانی سن فقط آن شخص است. برای مثال که کار می کند با اولین table-- ما در مورد نوشتن همه نگران نباشید این دستورات در همان زمان. اما اگر شما به روز رسانی کردم به پایین، که می شود خوب برای این بخش، چرا که ما در حال رفتن به بازگشت به جدول. بنابراین اگر ما به بازگشت به میز، اجازه دهید چیزی که اتفاق افتاده است می گویند بود یک زلزله وجود دارد و یا خط گسل که به طور مستقیم تقسیم از طریق شهر نیویورک است. و ما می خواستیم به همه به روز رسانی که در شهر نیویورک زندگی می کردند. همه آنها به حال به حرکت به پنسیلوانیا است. این یک زادگاه نیست. همه آنها به حال به حرکت به نیوهیون. ما میرویم آنجا. پس هر کس در نیویورک به New Haven حرکت می کند. و به طوری که چیزی است که این ویرایش سه ردیف در این جدول است. اما در SQL، شما می توانید انجام که فقط در یک بیانیه. بنابراین ما به عقب برویم به روز رسانی. اجازه دهید من سریع این هیئت مدیره دوباره پاک کنید. هنگامی که ما در حال صحبت کردن در مورد به روز رسانی، وجود دارد چند قسمت از نحو که کلید می باشد. خب، همه از نحو کلیدی است. اما مسائل به رنگ سبز اختیاری است. سفید مورد نیاز است، نام پیش تعریف شده مانند. و نور آبی همه چیز که بسته به جدول. به طوری که آنچه اتفاق افتاده با رنگ در اینجا، وجود دارد. بنابراین اگر ما می خواهیم برای به روز رسانی فقط کسانی که ردیف از افرادی که در نیویورک زندگی می کنند، بنابراین آنچه که ما اگر ما گفت: UPDATE را انجام دهد؟ بنابراین جدول است که در آن ما را نام جدول ما است. اجازه دهید فقط می گویند به نام از جدول ما جدول است. بنابراین ما می خواهیم به روز رسانی جدول است. و ما می خواهیم set-- چه می خواهیم را به مجموعه ای؟ خوب ما می خواهم بگویم، PHP بنابراین column-- رفتار ردیف به عنوان شناسه منحصر به فرد. و پس از آن ستون ها در زمینه های مختلف از این عناصر پایگاه داده باشد. بنابراین اولین عنصر از پایگاه داده دارای یک نام از سام، ابرقدرت CS50، و یک شهر از میلواکی. بنابراین اگر ما مجموعه ای گفت: اجازه دهید نگاهی به پارامترهای دیگر که مجموعه ای طول می کشد. ما ستون برابر با ارزش. بنابراین ما می خواهیم می گویند برخی از به یاد داشته باشید که column-- یک field-- ما می خواهیم برای دیدن یک درست به چیزی جدید برابر است. بنابراین اگر ما فقط گفت به روز رسانی جدول 1، نام را برابر الیوت. برخی از مردم از بخش جدید در این. اما اگر ما فقط به روز رسانی جدول 1 نام و نام خانوادگی را برابر الیوت، چه نگاه جدول مانند بعد از آن؟ مردم هر گونه ایده؟ آره. رسید که همه چیز در ردیف می الیوت تبدیل شده است. SPEAKER: همه چیز که در آن ردیف؟ مخاطبان: در سطر اول. SPEAKER: در ردیف اول؟ چرا ردیف اول؟ من به این معنی نیست که به انتخاب بر شما. مخاطبان: شاید همه چیز در کل جدول. SPEAKER: همه چیز در کل جدول، بله. و من از آنجا که دقیقا درست است فقط کمک به شما بود از کمی there-- چرا که ما حذف بند اختیاری WHERE. در صورتی که شما که در آن نیست بند، چه این دستور را انجام خواهد داد است آن را با هر کار ، مجرد ردیف در جدول است. نام و نام خانوادگی هر کس خواهد شد تبدیل الیوت، اساسا، که الیوت در مورد بسیار خوشحال است. و یا یانی، یکی از این دو است. اما همگان نام تغییر خواهد کرد. پس راه استفاده می کنیم که در آن clause-- و این امر به همه از WHEREs که در هر یک از می این چیزها متفاوت است. بنابراین شما که متوجه SET دارای ارزش برابر ستون. و به این ترتیب که در آن. اما این متفاوت است نوع عبارت. بنابراین ستون برابر ارزش در SET در انتساب است. مانند ما در حال گفت ما می خواهیم به مجموعه ای نام به الیوت برابر است. اما در بند که در آن، این اظهارات برابری هستند. بنابراین اجازه دهید بگویم که ما تنها به خواست تغییر نام شخص به الیوت اگر نام خود را رایان بود، اجازه دهید بگویم. بنابراین، هنگامی که ما می گویند که در آن نام برابر رایان، که که موفقیت تنها تغییر name-- آن را تنها تغییر زمینه در ردیف نام و نام خانوادگی که در آن نام حوزه به رایان برابر است. بنابراین اگر ما چند نفر بود به نام رایان، همه از نام خود به الیوت را تغییر دهید. این شبیه به مثال است از اگر یک خط گسل تجزیه شهر نیویورک و هر کس به حرکت به نیوهیون، راه ما می توانیم که در یک بیانیه تکمیلی است table1 SET زادگاه = نیوهیون که در آن شهر برابر شهر نیویورک است. این قدرت از است بیانیه به روز رسانی. ما می توانیم هر تعداد از را انتخاب کنید ردیف طریق اظهارات درست در مورد زمینه های که در آن ردیف. ما نمی توانیم بگوییم مجموعه ای table1 UPDATE نام = الیوت که در آن ردیف = 1، جز این که ما می توانیم اگر ما می گویند ID = 1. بنابراین ما در حال رفتن به کار با برابری از زمینه ها، برابری ستون. اما با استفاده از حوزه ID یک راه برای است انتخاب ردیف فردی به طور خاص، به دلیل حوزه ID منحصر به فرد است شناسه در یک پایگاه داده SQL. بنابراین مانند به روز رسانی ردیف یکی، ID برابر با 1. به روز رسانی ردیف دو، فقط تغییر که شماره ID. اما قدرت از مکانی که در آن بیانیه ای که ما است می توانید همه چیز را بر اساس آنچه خود را به روز رسانی ارزش های فعلی از چیزهای خاصی هستند. بله الیوت؟ رسید و اگر شما می خواهید to-- دوباره، این مسئله دیگری است. اما سوال اول من بود، که در آن این اتفاق می افتد؟ جایی که من هستم به روز رسانی این؟ آیا این در یک کد پی اچ پی؟ SPEAKER: از کجا شما به روز رسانی، بله. ما قصد داریم به بحث در مورد که در آن همه از این اتفاق می افتد از یک بار ما به از طریق تمام دستورات. اما آنچه شما نیاز دارید مطمئن شوید در حال حاضر است اساسا که پایگاه داده SQL خود به عنوان چیزی وجود دارد به پرس و جو، قابل دسترسی تابع، که CS50 تعریف می کند. بنابراین اگر شما با استفاده از تابع پرس و جو، شما می توانید این جدول دسترسی داشته باشید. بنابراین شما ارسال خواهد شد این فرمان به جدول خود را در فایل های PHP از طریق تابع پرس و جو. شما همچنین می توانید در اطراف بازی با جدول خود را به طور مستقیم. و بهترین راه برای این تست این نوع از دستورات. و ما در دقیقا چگونه به برای انجام این کار در فقط یک کمی. به طوری که دستور UPDATE است. و بقیه از دستورات در حال رفتن به مرتب کردن بر اساس مشابه باشد، کار بر روی چیزهای مشابه. درج INTO است که احتمالا متفاوت ترین از به روز رسانی. من قصد دارم به ترک است که تا در آنجا برای فقط یک کمی و کار بیش از اینجا. بنابراین INSERT INTO، شما خواهید دید که جدول هنوز هم همان است. شما می خواهید برای وارد کردن به. سرمایه، SQL به حروف حساس است. بنابراین شما لازم نیست که این چیزها سرمایه گذاری. طبق قرارداد، کلمات در سفید با حروف بزرگ. اما من هم رنگ آنها را کد می شوند. تنها دلیلی که شما سرمایه گذاری آن زمانی که شما آنها را تایپ فقط به تاکید که کسانی که ثابت هستند. و به این ترتیب شما می توانید هم نگاه سرمایه و یا این واقعیت که من آنها را متفاوت رنگی ام. بنابراین ما باید INSERT INTO، اجازه دهید دوباره انجام table1. این همه در یک خط است. من فقط جدا کردن آن توسط اظهارات متفاوت است. بنابراین در مورد این واقعیت است که نگران نباشید table1 آن را بر روی خط دوم ساخته شده است. بنابراین ما می خواهیم برای INSERT به برخی از ارزش های table1. و شما متوجه اختیاری کمی، که من در یک ثانیه است. بنابراین ما ارزش کردم. بنابراین اجازه دهید بگویم ما خواهید برای اضافه کردن اندی به جدول ما، چرا که ما از دست ندهید اندی. اندی بیمار است. بنابراین اندی اضافه کردن به جدول ما. به یاد داشته باشید که شماره ID به طور خودکار به روز شد. بنابراین تنها زمینه ما نیاز به نگرانی در مورد می نام، ابرقدرت ها، و زادگاه. و به این ترتیب راه است که ما انجام این کار، به دنبال در نحو ما، این است که ما را فقط یک پرانتز، با کاما از هم مقادیر جدا شده، که هر کدام یک ارزش است. بنابراین اگر ما می خواستیم به قرار دادن اندی به ما جدول، همه ما باید انجام دهید اندی است. ابرقدرت اندی چیست، مردم در بخش اندی خبر؟ او دوست پرواز، و یا دوست سرعت، و یا چیزی. چه ما در حال حاضر وجود دارد را داشته باشد؟ ما CS50، پرواز، سرعت، و قدرت است. مخاطبان: سفر در زمان. SPEAKER: سفر در زمان، شگفت انگیز است. بنابراین ما باید اندی، زمان سفر، و زادگاه او را. این یک سوال واقعا خوب است. شهر نیویورک، مگر اینکه کسی می داند. هر کس از نیویورک است که درس را به دور از امروز. بنابراین این بیانیه قرار دادن، به عنوان یک ردیف پنجم، با سفر در زمان ابرقدرت و یک شهر از شهر نیویورک است. اما قسمت اختیاری است که اساسا یک راه برای مشخص دقیقا همان است که ستون شما به قرار دادن همه چیز در. راه است که ما در حال انجام آن در حال حاضر، اندی، زمان سفر، شهر نیویورک، است که در جهت دقیق از ما نام table--، ابرقدرت، زادگاه. و اگر شما می خواستم برای انجام چیزی دیگر از آن، مانند می گویند شما نمی دانید ابرقدرت کسی، مانند چگونه من نمی دانم در اندی ابرقدرت در ابتدا. بنابراین همه من می دانستم او بود نام و زادگاه او را. چه من می تواند انجام است من می توانم do-- من این سریع پاک کنید. من می خواهم به تنها به روز رسانی ستون. و این است که در آن اختیاری لیست ستون به بازی می آید. من فقط می خواهم برای به روز رسانی نام و زادگاه. و پس از آن من ارزش است. من اندی و شهر نیویورک را انجام دهد. اگر من در لیست ستون حذف کرده بود و فقط انجام این دو چیز، که در آن می شهر نیویورک رفته اند؟ که ستون که نیویورک شهرستان در قرار داده شده است؟ مردم هر گونه ایده؟ ابرقدرت، دقیقا. بنابراین این فقط به منظور خواهد رفت. و پس از آن به پایان می رسد از لیست، آن را فقط جلوگیری از پر کردن همه چیز را در. و ارزش است که آن را در چوب تمام ستون فقط null خواهد بود. بنابراین از آنجا که ما مشخص نام و نام خانوادگی و در شهر، ما در حال رفتن به ID 5، نام اندی، NULL ابرقدرت است. بنابراین ابرقدرت یک مقدار تخصیص داده نشده است. شما لزوما دریافت خطاهای مشابه valgrind را اگر شما سعی کنید و آن دسترسی داشته باشید. همه چیز خواهد شد به سادگی صفر ، چرا که NULL یک مقدار در SQL است. که ثابت است. و پس از آن شهر خواهد بود شهر نیویورک است. به طوری که INSERT INTO فرمان است. قبل از اینکه ما حرکت می کند، وجود دارد دو فرمان است. آیا مردم باید هر گونه سوال در مورد UPDATE، INSERT INTO در مورد، در مورد SQL به طور کلی قبل از ما حرکت بر روی بیت نهایی ما؟ مردم احساس خوب، بزرگ است. دوستش دارم. بنابراین اجازه دهید در مورد SELECT صحبت کنید. رفتن خندق UPDATE در اینجا. را انتخاب کنید و در حال رفتن به بسیار مشابه است. هدف از را انتخاب کنید، هدف SELECT در زندگی است که به شما یک دسته از ستون را که با شرایط خاص. و وقتی که من می گویند برآورده شرایط خاصی، ذهن خود را بلافاصله ممکن است بازگشت به که عبارت WHERE که در به روز رسانی شد. و بند است دقیقا وجود دارد در SELECT. اگر ما از مکانی که در آن قرار داده نشده بند و ما می گویند نام را انتخاب کنید، hometown-- املای که کمی نام wrong--، زادگاه از table1. اگر ما فقط می گویند که، چه انتخاب است که به ما می دهد این است که آن به ما یک را double-- یک جدول، نه. یک آرایه دو اگر ما فکر کردن در مورد در PHP حواس. اما آن را فقط به ما یک را آرایه دو از دو نام columns--، و در شهر. و آن را به ID را نادیده گرفت. و آن را به ابرقدرت را نادیده گرفت. و آن را فقط به ما هر را سطر های آن جدول. بنابراین اگر ما فقط قرار داده اندی، ما اندی داشته باشد. و ما اصلی چهار داشته باشد. اگر آنها به روز شده است، که خواهد شد منعکس شده است، و غیره، و غیره. پس این است که چون ما آیا بند که در آن استفاده نشده است. اما ما می توانیم آن را در دقیقا استفاده همان طور که در به روز رسانی استفاده می شود. اگر ما تنها می خواهید یک جدول از نام و قدرت فوق العاده از مردم زندگی در نیویورک، ما می توانیم یک بیانیه اجرا مانند نام را انتخاب کنید، superpower-- من فقط رفتن به ترک that-- از table1 که در آن شهر = شهر نیویورک است. بنابراین این نشان می دهد که شما می توانید دریافت ستون کاملا متفاوت است، و سپس قرار دادن ستون که شما نیست حتی گرفتن تماس در بند که در آن. ما حتی نمی خواهید زادگاه همه. اما ما می خواهیم نام و ابرقدرت مردم که زادگاه شهر نیویورک است. به طوری که چیزی است که ما می توانید با از کجا بند است ما می توانیم با ستون مقابله که ما لزوما تماس می خواهید. در راه همان در به روز رسانی، ما می توانیم مقابله با ستون که ما لزوما می خواهید برای به روز رسانی. ما می توانیم این شهرستان از همه به روز رسانی که نام سم است، برای مثال. ما می توانیم از به روز رسانی در شهرستان هر کس که ID شماره 2 است. بنابراین فقط به روز رسانی شهرستان از سطر دوم که در آن ما مجبور به مقابله با لازم سوال رایج است. و حذف است، که شما می خواهم انتظار می رود، DELETE FROM table1. و پس از آن ما یکی دیگر از عبارت WHERE کردم. بنابراین می توان گفت که در آن شناسه = 1. حذف سطر اول. و حذف همیشه یک ردیف حذف خواهد شد و یا آن را به برخی تعداد ردیف را حذف کنید. DELETE FROM جدول که در آن شهر زادگاه = نیویورک هر کس در شهر نیویورک را حذف کنید. که اگر یک وجود دارد طاعون ناگهانی غم انگیز و شما فقط می خواست به حذف همه از جدول که در شهرستان های خاص زندگی می کردند که توسط طاعون زده شد. ممکن است آنها در آرامش استراحت. این چهار دستورات SQL که شما نیاز به استفاده از. شما ممکن است حتی نیاز استفاده از همه آنها. اما این چهار که شما انتظار CS50 به راحتی با رفتن به هر دو مسابقه 1 و pset7 و pset8. این درست است که جدول وجود دارد دوباره. در این یکی، ابرقدرت روی است به پرتوهای لیزر، به روز که به عنوان مثال من استفاده کنید. من نمی دانم که یکی روی را ترجیح میدهد، اما قدرت است. روی یک ابرقدرت از قدرت است. کاترین آن را امروز را ندارد. که مایه تاسف است. اما او تا به سرعت فوق العاده. خوب است که PHP بود. قبل از اینکه ما در مورد MVC صحبت می کنید، می کند هر کسی سوال در مورد پی اچ پی داشته باشد؟ در حال حاضر SQL، PHP و یا اگر شما به طور ناگهانی آمده تا با یک سوال در مورد پی اچ پی؟ عالی. همه حق است، ما همه پس از آن تنظیم شده است. بنابراین صحبت کردن کمی در مورد مشاهده مدل کنترل، اجازه بازگشت به برخی از مسائل در pset7. پس چه مشاهده مدل کنترل is-- من نیست رفتن به ذخیره تغییرات من برای ورود چون من کاملا آن را سلاخی. اما اساسا ما دو همه چیز جداگانه در رفتن. ما یک عمومی دایرکتوری که شامل کد که رفتن به اعدام می شود و صفحات وب که باید بازدید خواهد کرد. و ما نیز این شاخه ها نمایش ها داشته باشد. و دیدگاه شامل قالب. این چیزی است که تابع است render-- ما شاهد ارائه تابع در یک دسته از کد پی اچ پی که CS50 در حال حاضر برای شما نوشته شده است، که در پارامترهای خاصی طول می کشد. آنچه که در حال انجام است کد است آن را به دیدگاه ها، که مجموعه ای از مثل کد HTML غیر از prewritten، و آن را با قرار دادن مقادیر به مکان های خاص. این است که چگونه زمانی که شما رفتن به CS50 امور مالی، هدر های مشابه در هر صفحه است. همان بالا و پایین صفحه در هر صفحه است. دلیل این است که راه که ارائه آثار است آن را خواهید به طور خودکار در که هدر پچ و بیننده است که شما می توانید در نمایش پیدا کنید. ما در واقع می تواند به هدر رفتن، و نگاه کنید، آن یک فایل HTML با یک سر است. این رو برخی از شیوه. شما لازم نیست به CSS نگاه برای pset7 اگر شما نمی خواهید به. اما شما می توانید تغییر دهید آنها اگر شما می خواهید، را امور مالی خود را نگاه کنید کمی متفاوت است. این رو برخی از PHP در هدر کمی به دیدن اگر یک عنوان های مختلف وجود دارد آن را باید در این هدر قرار داده است. اما فقط برخی از اسکریپت های دیگر، و لینک ها، و چیزهای دیگر. سر به پایان می رسد، بدن شروع می شود، و وای، ما باید این عجیب و غریب پایان کمی. و یک div وجود دارد، درست مثل یک نوع بی شکل از عنصر است که یک ایده از وسط. و پس از آن هنگامی که ما پایین صفحه را ببینید، ما باید در پایان یک DIV. ما یک پایین، که که در آن متن پایین صفحه است. پایان DIV، پایان بدن، پایان HTML. پس چه رندر است انجام شده است ارائه مرتب سازی بر اساس از وصله تا هدر، یک فایل پی اچ پی های مختلف است که را به چیزهای واقعی شامل که شما مشاهده، مانند جدول خود را از سهام اگر شما در حال خرید یا فروش سهام. و سپس آن را در پایین صفحه اضافه کنید. و مشاهده مدل ایده کنترل است که ما چگونه می خواهید برای جدا همه چیز از کد نگاه کنید. آن را ما می خواهیم برای جدا کردن ظاهر و باطن، که در آن ظاهر است چیزهای که کاربر می بیند، خوب visuals-- HTML، CSS، چیزهایی شبیه به آن، تصاویر، و غیره. و باطن PHP است. این کد که شما ارسال شده است. این جایی است که کد که انجام عملیات واقعی. این زمانی است که شما با اضافه کردن سهام به جدول خود را، هنگامی که شما خرید و فروش، که باطن است. و ما می توانیم، به عنوان شما را دیدم، از جمله PHP به طور مستقیم در HTML. بنابراین آنچه که ما می تواند برای انجام این انتساب است فقط به حال یک فایل HTML برای هر صفحه، مانند ورود به سیستم. و سپس در آن صفحه، فقط حال یک بلوک بزرگ از کد پی اچ پی، از جمله تمام از کد که که به طور خاص صفحه نیاز. و پس از آن ما می تواند داشته انجام داده است که برای نمونه کارها. ما می تواند انجام داده اند همه از خرید و فروش در صفحات فرد. اما از آنجا که ما در حال ارائه که در آن به طور جداگانه از ما در حال نوشتن بخش مدیریت کد، ما به راحتی می توانید تغییر چگونه همه چیز را بدون نگاه تغییر هر فایل واحد. ما انجام کارهایی مانند فقط اضافه کردن یک div جدید به پایین of-- سلام من بالا و پایین صفحه تغییر یافتهاست. شما فقط می توانید انجام چیزهای مانند آن. اما همچنین، شما می توانید تغییر کل طرح بصری بدون تاثیر چه رفتن در باطن. و شما می توانید تغییر کل باطن و هنوز هم آن را نگاه درست مثل آن را قبل از انجام. این است این ایده از مدل کنترل مشاهده. و این در واقع یک الگوی تحمیل در برخی از زبان های برنامه نویسی شما ممکن است مایل به استفاده از برای پروژه نهایی. اگر شما توسعه IOS، آنها دیدگاه ها، همان چیزی که شما بر روی آی فون، و پس از آن به عنوان مثل یک چیز جداگانه باطن. شما می توانید در مورد کمی فکر می کنم. در بسیاری از فایل های باینری در آن وجود دارد علوم کامپیوتر است که خنده دار، چرا که همه چیز در باینری است. من برنامه ریزی نیست. که جناس ناخواسته بود. بله، جناس در نظر گرفته نشده است. اما مانند فایل های .h و فایل های ج، وجود دارد بسیاری از جدا از چیزهایی که ما ممکن است نیاز. بنابراین ما فقط می توانید ویرایش فایل های ساعت، و یا کسی که فقط می توانید یک فایل .h بینم و می دانم دقیقا از توابع است که در می فایل C بدون اینکه لزومأ اجرای آنها. این ایده از اجزای جدا که به یکدیگر بستگی دارد اما می توانید مرتب سازی بر هر یک از دیگر دسترسی داشته باشید از طریق کانال های مختلف، عبور از متغیرها، فقط شامل بیانیه، همه چیز مانند آن، این اصل کمک می کند تا به ایجاد برنامه های است که می تواند به راحتی ویرایش توسط چند نفر، می تواند به راحتی تغییر و یا در مقیاس بزرگ اصلاح شده، و راحت تر به اشکال زدایی در بسیاری از راه. واقعا سریع، من چند راهنمایی برای pset7، که من تمام صفحه را، بنابراین شما نمی فقط به دنبال در the-- tippee نکته. که بسیاری از راهنمایی وجود ندارد. اما من ذکر PHP سخت به اشکال زدایی است. دو و سه را چک کنید. اگر کد شما است و نه فقط تا بر روی صفحه، آن را احتمالا خطای پی اچ پی، متاسفم. شما هرگز نیاز به در نگاه کنید CSS اگر شما نمی خواهید به. اما هنگامی که شما به پایان رسید، می توان آن را یک چیز سرگرم کننده کمی خوب به در رفتن و ظرف غذا با پارامترهای CSS است. CSS و HTML یک مثال از یک مدل نمایش به سبک کنترل را بیش از حد، درست است؟ شما می توانید از تگ های سبک داخل عناصر HTML. اما اگر شما مرتب کردن بر اساس برون سپاری آنها را به CSS، آنها راحت تر را ویرایش کنید، و بازی با، و از آن لذت ببرید با. درمان کمکی CS50 توابع به عنوان جعبه سیاه و سفید. شما لازم نیست که می دانم دقیقا همان چیزی رندر انجام می دهند، اما اعتماد به آن را به سمت راست همیشه چیزی با توجه به آنچه از آن بگذرند، چیزهایی مثل این. و من توصیه می کنم تماشای خرید دیوید، رفتن را از طریق تمام مسائل، نه فقط todos ها، اما شما واقعا می تواند در درمان این جعبه به عنوان سیاه و سفید. آیا به این نیست توابع دنبال اشکالات. و استقبال از بازگشت از Zamyla ارباب ما است. عالی. هر گونه سوال نهایی قبل از وجود دارد ما از برای روز گزاف گویی؟ من هنوز زندگی می کنند؟ عالی. مردم Livestream از سلام. عالی. آیا به دیگر سوالات وجود دارد؟ هیچ؟ و بعد من فکر می کنم ما خوب به امروز است. من یک کمی چوب در اطراف پس از آن اگر مردم سوال بود آنها می ترسند به آنها بخواهید در جریان بود. اما در غیر این صورت، یک روز خوب.