1 00:00:00,000 --> 00:00:05,720 2 00:00:05,720 --> 00:00:07,620 >> DOUG LLOYD: ดังนั้นในของเรา วิดีโอเกี่ยวกับไวยากรณ์ PHP, 3 00:00:07,620 --> 00:00:10,480 เราพูดคุยกันมากเกี่ยวกับวิธี PHP สามารถนำมาใช้ในบรรทัดคำสั่ง 4 00:00:10,480 --> 00:00:13,620 รันโปรแกรมในลักษณะที่ เราคุ้นเคยกับสวยจากซี 5 00:00:13,620 --> 00:00:15,370 แต่ที่ผมยังกล่าวถึง ในวิดีโอที่ PHP 6 00:00:15,370 --> 00:00:19,572 ได้รับการพัฒนาในขั้นต้น ใช้การเขียนโปรแกรมเว็บเว็บไซต์ 7 00:00:19,572 --> 00:00:21,780 และในวิดีโอนี้เรา จะพูดคุยเกี่ยวกับวิธีการที่เรา 8 00:00:21,780 --> 00:00:23,890 ใช้ PHP ในบริบทการพัฒนาเว็บ 9 00:00:23,890 --> 00:00:26,360 >> เรารู้อยู่แล้วจาก วิดีโอของเราใน HTML, 10 00:00:26,360 --> 00:00:29,820 ว่าเว็บไซต์ที่ถูกสร้างขึ้น ออกจากชุดของแท็กของ HTM​​L ที่เป็น 11 00:00:29,820 --> 00:00:32,850 ความหมายที่กำหนด โครงสร้างของหน้าเว็บ 12 00:00:32,850 --> 00:00:35,910 แต่เว็บไซต์ที่ สร้างขึ้นด้วยความบริสุทธิ์ HTML 13 00:00:35,910 --> 00:00:39,510 ต้องทนทุกข์ทรมานจากการมาก ข้อ จำกัด ที่ร้ายแรงมาก 14 00:00:39,510 --> 00:00:42,690 >> และแสดงให้เห็นถึงข้อ จำกัด นี้ ให้พิจารณาต่อไปนี้ 15 00:00:42,690 --> 00:00:45,665 ดังนั้นตอนนี้ฉันต้องการที่จะสร้างหน้าเว็บ ว่าทุกครั้งที่ผู้ใช้เข้าชมได้ 16 00:00:45,665 --> 00:00:49,760 มันทำให้ฉันปัจจุบัน เวลาในเคมบริดจ์, Mass. 17 00:00:49,760 --> 00:00:52,620 แสดงให้นาทีล่าสุด 18 00:00:52,620 --> 00:00:57,910 ถ้าผมทำนี้ในขณะนี้ ผมอาจจะพูดอะไรบางอย่างเช่นนี้ 19 00:00:57,910 --> 00:01:01,330 เวลาปัจจุบันใน Cambridge-- เพื่อให้ฉันมี แท็ก, แท็กหัว, แท็กชื่อ 20 00:01:01,330 --> 00:01:04,610 ร่างกาย tags-- ปัจจุบัน เวลาในเคมบริดจ์เป็น 14:08, 21 00:01:04,610 --> 00:01:06,690 เวลาพิมพ์ออกทางทหาร 22 00:01:06,690 --> 00:01:11,390 >> ที่เกิดขึ้นถ้ามันเป็นสิ่งที่ตอนนี้ 02:09, 14:09? 23 00:01:11,390 --> 00:01:16,470 ดีเพื่อให้ห่างไกลกับ HTML ฉันมี ที่จะไปในและเปลี่ยนเป็น 14:09 24 00:01:16,470 --> 00:01:19,390 และจากนั้นหนึ่งนาทีต่อมา ฉันต้องเปลี่ยนอีกครั้ง 25 00:01:19,390 --> 00:01:22,132 และจากนั้นหนึ่งนาทีต่อมา ฉันต้องเปลี่ยนอีกครั้ง 26 00:01:22,132 --> 00:01:24,590 และในขณะที่คุณสามารถจินตนาการว่า อาจจะเป็นงานที่เลวร้ายที่สุดที่เคย 27 00:01:24,590 --> 00:01:29,420 คุณเว็บมาสเตอร์สำหรับหน้าเว็บ และทุกนาทีตลอด 24 ชั่วโมงต่อวัน 28 00:01:29,420 --> 00:01:35,970 คุณจำเป็นต้องปรับปรุงเวลาปัจจุบันโดย ตนเองเปิด time.html และการเปลี่ยนแปลง 29 00:01:35,970 --> 00:01:41,750 เพียงตัวอย่างของรหัสที่จะพูด เวลาปัจจุบันในชั่วโมงและนาที 30 00:01:41,750 --> 00:01:45,850 ที่อาจไม่มาก ใช้ประโยชน์จากทรัพยากรของเรา 31 00:01:45,850 --> 00:01:48,880 ทั้งมนุษย์และการคำนวณ 32 00:01:48,880 --> 00:01:51,297 >> เว็บไซต์ที่มีทั้งหมด HTML จะคงสมบูรณ์ 33 00:01:51,297 --> 00:01:53,630 วิธีเดียวที่คุณสามารถปรับปรุง เนื้อหาที่เราได้เห็นเพียงแค่ 34 00:01:53,630 --> 00:01:56,339 คือการด้วยตนเองเปิดแหล่งที่มาเหล่านั้น ไฟล์ที่แก้ไขได้และช่วยให้พวกเขา 35 00:01:56,339 --> 00:01:58,088 และจากนั้นเมื่อผู้ใช้ รีเฟรชหน้า 36 00:01:58,088 --> 00:02:01,080 หรือเข้าชมหน้าสำหรับครั้งแรก เวลาที่พวกเขาจะได้รับเนื้อหาล่าสุด 37 00:02:01,080 --> 00:02:03,970 แต่เพียงเพราะเราได้ มันแก้ไขได้ด้วยตนเอง 38 00:02:03,970 --> 00:02:07,980 >> ถ้าเราเริ่มต้นในการผสมบาง PHP ในนั้น รหัสของเราจะได้รับจำนวนมากที่มีความยืดหยุ่นมากขึ้น 39 00:02:07,980 --> 00:02:11,940 และเราสามารถมีวิธีสำหรับหน้าเว็บของเรา จะเป็นแบบไดนามิกหรือปรับปรุงตัวเอง 40 00:02:11,940 --> 00:02:15,360 โดยไม่ต้องมีที่ไม่ดีของเรา เว็บมาสเตอร์ในตัวอย่างก่อนหน้า 41 00:02:15,360 --> 00:02:16,662 ที่จะได้รับการปรับปรุงสิ่งที่ตนเอง 42 00:02:16,662 --> 00:02:17,870 พวกเขาสามารถทำมันได้โดยอัตโนมัติ 43 00:02:17,870 --> 00:02:19,130 เราไม่ได้มีที่จะเข้าไปแทรกแซง 44 00:02:19,130 --> 00:02:20,410 เราจะได้รับการนอนหลับบาง 45 00:02:20,410 --> 00:02:24,850 ซึ่งอาจจะเป็นสิ่งที่ดีถ้า คุณกำลังทำมากของการเขียนโปรแกรมเว็บ 46 00:02:24,850 --> 00:02:28,360 >> ดังนั้นใน CS50 IDE เราเรียกใช้ เว็บเซิร์ฟเวอร์ที่เรียกว่าอาปาเช่ 47 00:02:28,360 --> 00:02:35,250 มันเป็นที่นิยมใช้มาก เปิดแหล่งที่มาของระบบเว็บเซิร์ฟเวอร์ 48 00:02:35,250 --> 00:02:37,320 ระบบนี้มี ความสามารถในการตีความ 49 00:02:37,320 --> 00:02:41,260 PHP ซึ่งจะเป็นประโยชน์ในกรณีที่ คุณต้องการที่จะทำโปรแกรม PHP ใด ๆ 50 00:02:41,260 --> 00:02:45,230 >> และใน IDE CS50 เรามีคำสั่ง จะทำให้นี้ง่ายมากที่จะทำ 51 00:02:45,230 --> 00:02:47,280 เริ่มต้น apache50 52 00:02:47,280 --> 00:02:49,445 และแล้วเฉือนที่ เส้นทางที่จะเฉือนเฉือน 53 00:02:49,445 --> 00:02:53,350 ผบว่าเป็นเพียงวิธีการทั่วไปจริงๆ แสดงให้เห็นว่าสิ่งที่คุณได้ระบุไว้ที่นี่ 54 00:02:53,350 --> 00:02:56,510 เป็นเส้นทางไปโดยเฉพาะอย่างยิ่ง ไดเรกทอรีที่คุณ 55 00:02:56,510 --> 00:03:00,800 ต้องการที่จะเป็นราก เว็บไซต์หรือหน้าราก 56 00:03:00,800 --> 00:03:05,430 หรือโฟลเดอร์ที่เว็บเซิร์ฟเวอร์ของคุณ จะเริ่มต้นการตรวจสอบไฟล์และให้บริการ 57 00:03:05,430 --> 00:03:07,850 พวกเขาขึ้นให้กับลูกค้าที่ขอให้พวกเขา 58 00:03:07,850 --> 00:03:12,110 ดังนั้นขอ pop ไป CS50 IDE เพียงเพื่อ แสดงให้คุณได้อย่างรวดเร็วจริงๆวิธีการทำงานนี้ 59 00:03:12,110 --> 00:03:30,930 60 00:03:30,930 --> 00:03:36,240 >> ดังนั้นที่นี่ใน IDE CS50 ผมใน ไดเรกทอรีที่เรียกว่าสัปดาห์ที่ศูนย์เก้า 61 00:03:36,240 --> 00:03:38,890 และฉันมี two-- ฉันมี ดำเนินการคำสั่ง LS เพียง 62 00:03:38,890 --> 00:03:41,910 ดังกล่าวข้างต้นที่จะแสดงให้คุณเห็นว่าฉันมี สองไดเรกทอรีที่นี่, PHP, 63 00:03:41,910 --> 00:03:46,410 ซึ่งเป็นชุดของแฟ้มที่ผมใช้ในการ วิดีโอไวยากรณ์ PHP แล้ว PHP-เว็บ 64 00:03:46,410 --> 00:03:49,380 ซึ่งเป็นชุดของแฟ้มที่ฉัน ต้องการที่จะใช้ในวิดีโอนี้ 65 00:03:49,380 --> 00:03:53,480 >> และฉันต้องการที่จะเริ่มต้น เช่นเว็บเซิร์ฟเวอร์ 66 00:03:53,480 --> 00:03:59,089 กับเนื้อหาของโฟลเดอร์ PHP-เว็บ เป็นไฟล์ที่ถูกเสิร์ฟ 67 00:03:59,089 --> 00:04:00,130 ดังนั้นสิ่งที่ฉันจะทำอย่างไร 68 00:04:00,130 --> 00:04:05,710 ฉันจะพิมพ์พื้นที่ apache50 เริ่มต้นพื้นที่ PHP, เว็บเส้นประ 69 00:04:05,710 --> 00:04:08,100 นั่นคือเส้นทางไปยังไดเรกทอรี จากที่ฉันกำลัง am 70 00:04:08,100 --> 00:04:09,127 จากนั้นผมก็กด Enter 71 00:04:09,127 --> 00:04:10,960 มันจะทำ นิด ๆ หน่อย ๆ ของสิ่งที่นี่ 72 00:04:10,960 --> 00:04:14,030 และจากนั้นก็จะพูดว่า อาปาเช่เริ่มต้นที่ประสบความสำเร็จ 73 00:04:14,030 --> 00:04:20,689 เว็บไซต์ของคุณอยู่ในขณะนี้และ at-- แล้วมี URL สำหรับเว็บไซต์ 74 00:04:20,689 --> 00:04:21,730 ดังนั้นสิ่งที่ฉันจะทำอย่างไร 75 00:04:21,730 --> 00:04:26,234 ฉันจะคัดลอกได้อย่างรวดเร็วนี้ 76 00:04:26,234 --> 00:04:28,900 และฉันจะเปิด up-- และ ฉันจะซูมออกนิด ๆ หน่อย ๆ here-- 77 00:04:28,900 --> 00:04:31,570 ฉันจะเปิดขึ้น แท็บใหม่ใน Chrome 78 00:04:31,570 --> 00:04:34,320 และฉันจะไปเยี่ยมชม URL ที่ 79 00:04:34,320 --> 00:04:35,299 >> ฉันจะกด Enter 80 00:04:35,299 --> 00:04:36,090 มันจะโหลด 81 00:04:36,090 --> 00:04:37,510 และฉันจะซูมออกมาอีกครั้ง 82 00:04:37,510 --> 00:04:41,350 และเราสามารถดูที่นี่เป็น เนื้อหาของไดเรกทอรีเว็บ PHP ของฉัน 83 00:04:41,350 --> 00:04:45,290 >> ดังนั้นตอนนี้สิ่งที่เกิดขึ้นโดยทั่วไป นี่คือตัวอย่างของฉัน CS50 IDE 84 00:04:45,290 --> 00:04:49,620 คือการให้บริการไฟล์เหล่านี้ไป ใครที่พวกเขาร้องขอ 85 00:04:49,620 --> 00:04:51,620 และในช่วงของ วิดีโอนี้เราจะเรียงลำดับของ 86 00:04:51,620 --> 00:04:55,400 ดูที่พวงของเหล่านี้เป็น ไฟล์ที่แตกต่างกันในบริบท 87 00:04:55,400 --> 00:04:57,614 >> เพื่อทดสอบว่าอาปาเช่ของคุณ เซิร์ฟเวอร์ทำงาน 88 00:04:57,614 --> 00:04:59,780 ซึ่งโดยทั่วไปจะ จะเป็นกรณีที่ใน CS50 IDE, 89 00:04:59,780 --> 00:05:02,696 แต่ถ้าคุณทำเช่นนี้มากขึ้นโดยทั่วไป และคุณเริ่มต้นสร้างเว็บของคุณเอง 90 00:05:02,696 --> 00:05:04,990 เซิร์ฟเวอร์มีจริงๆ การจัดเรียงที่พบบ่อยของอะนาล็อกไป 91 00:05:04,990 --> 00:05:08,500 "สวัสดีชาวโลก" ที่มักจะ ใช้สำหรับ PHP การพัฒนาเว็บ 92 00:05:08,500 --> 00:05:12,855 ซึ่งก็คือการมีไฟล์ ประกอบด้วยเพียง code-- นี้ 93 00:05:12,855 --> 00:05:18,247 คั่น PHP ตั้งด้วยข้อมูล PHP, วงเล็บอัฒภาคในระหว่าง 94 00:05:18,247 --> 00:05:20,580 ซึ่งเป็นพื้นพิเศษ ฟังก์ชั่น PHP ที่จะบอกคุณ 95 00:05:20,580 --> 00:05:23,970 สิ่งที่รุ่นของ PHP ที่คุณกำลังทำงาน 96 00:05:23,970 --> 00:05:26,850 >> ดังนั้นใน CS50 IDE ฉันมี ไฟล์ที่มีอยู่ที่เพียงแค่ 97 00:05:26,850 --> 00:05:28,680 ที่จะแสดงให้คุณเห็นสิ่งนี้จะมีลักษณะ 98 00:05:28,680 --> 00:05:32,860 ดังนั้นผมจึงกำลังมองหาที่ดัชนีของฉัน จากตัวอย่างเช่น PHP ของฉัน 99 00:05:32,860 --> 00:05:35,870 เช่น Apache ของฉันทำงานอยู่ เนื้อหาของ PHP เว็บ 100 00:05:35,870 --> 00:05:39,290 และฉันมีไฟล์ที่เรียกว่าที่นี่ info.php 101 00:05:39,290 --> 00:05:41,164 >> ฉันจะคลิกมันซูมออก 102 00:05:41,164 --> 00:05:43,080 นี่คือสิ่งที่คุณกำลังจะ เพื่อดูสวยมาก 103 00:05:43,080 --> 00:05:45,729 นี้เป็นเพียงการบอกฉันว่า เซิร์ฟเวอร์ Apache ของฉันคือการทำงาน 104 00:05:45,729 --> 00:05:48,270 และนี่คือเห็นได้ชัดที่ รุ่นของ PHP ที่ผมทำงาน 105 00:05:48,270 --> 00:05:51,590 นี้เป็นอะนาล็อกของฉันไป "สวัสดีโลก." 106 00:05:51,590 --> 00:05:53,070 >> ดังนั้นผมจึงรู้ว่าสิ่งที่มีการดำเนินงาน 107 00:05:53,070 --> 00:05:54,150 ดังนั้นเราจึงจะดีไป 108 00:05:54,150 --> 00:05:55,730 เราสามารถดำเนินการต่อไปจากที่นี่ 109 00:05:55,730 --> 00:05:57,790 >> ดังนั้นขอให้ทบทวนว่า ตัวอย่างเช่นเวลาที่เรามี 110 00:05:57,790 --> 00:06:01,950 พูดคุยเกี่ยวกับเว็บมาสเตอร์ยากจนของเรา ที่มีการปรับปรุงอย่างต่อเนื่องหน้า 111 00:06:01,950 --> 00:06:05,020 นี้อาจจะมีการแก้ไขสำหรับวิธีการที่ ฉันจะใช้สิ่งที่ 112 00:06:05,020 --> 00:06:08,080 เพื่อให้เว็บมาสเตอร์ไม่ได้ ต้องให้ปรับปรุงเวลา 113 00:06:08,080 --> 00:06:10,270 มันจะเป็นเพียงแค่การจัดเรียงของ เกิดขึ้นโดยอัตโนมัติ 114 00:06:10,270 --> 00:06:13,710 >> ลงด้านล่าง HTM​​L ก็ ที่คล้ายกันสวยด้วยการยกเว้น 115 00:06:13,710 --> 00:06:16,720 แต่ที่นี่ฉันมีบาง PHP ที่ด้านบน 116 00:06:16,720 --> 00:06:19,940 ฉันได้เห็นได้ชัดว่านี้เรียกว่า ฟังก์ชั่น date_default_timezone_set 117 00:06:19,940 --> 00:06:22,106 >> และเราไม่ได้พูดคุยเกี่ยวกับทุก ฟังก์ชั่นเหล่านี้ใน CS50, 118 00:06:22,106 --> 00:06:24,670 เพราะ PHP มีอาจจะ นับหมื่น 119 00:06:24,670 --> 00:06:27,540 ที่อาจจะมีบิตของ พูดเกินจริง แต่มันอาจจะไม่ได้ 120 00:06:27,540 --> 00:06:29,490 ก็มีจำนวนมากที่มีฟังก์ชั่นที่สร้างขึ้นใน 121 00:06:29,490 --> 00:06:33,290 และเพื่อให้เป็นฟังก์ชั่นที่เห็นได้ชัด กำหนดเขตเวลาของฉันเป็นสหรัฐ / ตะวันออก 122 00:06:33,290 --> 00:06:36,320 ซึ่งเป็นโซนเวลาที่ฉัน ปัจจุบันในการทำวิดีโอนี้ 123 00:06:36,320 --> 00:06:38,430 >> จากนั้นผมก็โทรไป ฟังก์ชั่นที่เรียกว่าวัน 124 00:06:38,430 --> 00:06:43,850 และเห็นได้ชัดว่าผมจัดเก็บ เขาของสิ่งที่เรียกว่าเวลา 125 00:06:43,850 --> 00:06:45,320 ดังนั้นสิ่งที่เกิดขึ้นที่นี่? 126 00:06:45,320 --> 00:06:48,040 >> ดีโดยทั่วไปสิ่งที่เป็น สิ่งที่เกิดขึ้นคือฉันทำสาย 127 00:06:48,040 --> 00:06:51,650 ไปยังเซิร์ฟเวอร์บางอย่างที่เป็นไปได้ บอกฉันว่าเวลาปัจจุบัน 128 00:06:51,650 --> 00:06:56,150 และฉันแปลงเป็นรูปแบบที่ ชั่วโมงนาทีวินาที 129 00:06:56,150 --> 00:07:00,540 และเหตุผลที่มันเป็น H ทุนนี้ เป็นไปเพื่อให้ฉันเวลา 24 ชั่วโมงไม่ได้ 12 130 00:07:00,540 --> 00:07:02,362 เวลาชั่วโมงซึ่งจะเป็นตัวพิมพ์เล็กชั่วโมง 131 00:07:02,362 --> 00:07:04,570 และฉันเพียงแค่การจัดเก็บที่ ในตัวแปรที่เรียกว่าเวลา 132 00:07:04,570 --> 00:07:07,028 เพื่อให้บรรทัดที่สองของ PHP มีการเรียกร้องให้ฟังก์ชั่น 133 00:07:07,028 --> 00:07:09,037 วันที่เป็นเพียงการ บางเชือกซึ่งเป็น 134 00:07:09,037 --> 00:07:12,120 จะให้ฉันวันที่และ เวลาและพวงของข้อมูลอื่น ๆ 135 00:07:12,120 --> 00:07:16,480 และอาร์กิวเมนต์แรกที่นั่นเขา เป็นเพียงการแยกส่วนที่สำคัญ 136 00:07:16,480 --> 00:07:20,614 ที่ฉันดูแลเกี่ยวกับการเช่นนี้ ซึ่งเป็นชั่วโมงนาทีและสอง 137 00:07:20,614 --> 00:07:22,030 นั่นคือทั้งหมดที่เกิดขึ้น 138 00:07:22,030 --> 00:07:23,562 ดังนั้นผมจึงเก็บที่ในเวลาตัวแปร $ 139 00:07:23,562 --> 00:07:25,270 และจากนั้นก็ลงมาที่ ด้านล่างสุดมีฉัน 140 00:07:25,270 --> 00:07:28,980 มีชวเลขที่ พิมพ์ออกเวลาปัจจุบัน 141 00:07:28,980 --> 00:07:32,050 ดังนั้นฉันแค่จะพิมพ์ สิ่งที่เวลาปัจจุบัน 142 00:07:32,050 --> 00:07:37,220 >> ดังนั้นลองมาดูที่นี้ใน IDE CS50 และดูว่าเราอยู่ในขณะนี้ 143 00:07:37,220 --> 00:07:40,002 ประหยัดเว็บมาสเตอร์ที่ปัญหามาก 144 00:07:40,002 --> 00:07:42,570 สิทธิทั้งหมดเพื่อให้ที่นี่ผมอีกครั้ง กลับไปที่ไดเรกทอรีราก 145 00:07:42,570 --> 00:07:45,040 ของตัวอย่าง Apache ของฉัน 146 00:07:45,040 --> 00:07:51,585 และฉันมีไฟล์ที่เรียกว่าที่นี่ time.php 147 00:07:51,585 --> 00:07:53,559 ฉันแค่จะคลิกไปที่ว่า 148 00:07:53,559 --> 00:07:55,850 และฉันจะเลื่อนขึ้นเพราะ เรากำลังซูมสวยไกล 149 00:07:55,850 --> 00:07:57,257 เวลาปัจจุบัน 14:20:34 150 00:07:57,257 --> 00:07:59,090 ดังนั้นฉันทำมันชั่วโมง นาทีและวินาที 151 00:07:59,090 --> 00:08:01,910 และฉันสามารถฟื้นฟู หน้าและได้รับเวลาใหม่ 152 00:08:01,910 --> 00:08:02,420 --41 153 00:08:02,420 --> 00:08:07,240 ฉันจะรีเฟรชหน้าเว็บ และได้รับเวลาใหม่, 44, 46, 47 154 00:08:07,240 --> 00:08:10,490 >> ดังนั้นผมไม่ชัดเจน การเปลี่ยนแปลงอะไรที่ตัวเอง 155 00:08:10,490 --> 00:08:11,720 ฉันนี่รีเฟรชหน้าเว็บ 156 00:08:11,720 --> 00:08:13,711 ดังนั้นผมจึงไม่สามารถที่จะกลับไปที่นั่นการแก้ไข 157 00:08:13,711 --> 00:08:15,710 และผมสัญญากับคุณฉันทำไม่ได้ มีภาคใด ๆ 158 00:08:15,710 --> 00:08:18,230 ที่มีการแก้ไขไฟล์ ในนามของฉันที่ด้านข้าง 159 00:08:18,230 --> 00:08:21,260 >> ฉันเพียงแค่ใช้ฟังก์ชั่นที่ PHP, เวลาในการสร้างเวลาสำหรับฉัน 160 00:08:21,260 --> 00:08:22,340 อัตโนมัติ 161 00:08:22,340 --> 00:08:24,800 เพื่อให้แม้ว่าฉันหลับ และเว็บเซิร์ฟเวอร์ของฉันทำงานอยู่ 162 00:08:24,800 --> 00:08:28,884 ผู้ใช้ที่เข้ารับการตรวจที่หน้ายังคงเป็น จะได้รับตรงเวลาปัจจุบัน 163 00:08:28,884 --> 00:08:29,800 เพื่อให้เป็นที่ดีงาม 164 00:08:29,800 --> 00:08:33,609 ผมได้ทำเว็บไซต์ของฉันแบบไดนามิกมากขึ้น ด้วยรหัส PHP ไม่มากเกินไป 165 00:08:33,609 --> 00:08:36,650 มันเป็นเพียงแค่สองบรรทัดของรหัสแล้ว นิด ๆ หน่อย ๆ ของคำสั่งการพิมพ์ 166 00:08:36,650 --> 00:08:38,441 และแล้วฉันมี เว็บไซต์แบบไดนามิกมากขึ้น 167 00:08:38,441 --> 00:08:42,750 กว่าตัวอย่างแรกที่เราเห็น ที่จุดเริ่มต้นของวิดีโอ 168 00:08:42,750 --> 00:08:46,660 >> ดังนั้นจำจากวิดีโอเกี่ยวกับไวยากรณ์ของ PHP ว่าเมื่อล่าม PHP ทำงาน 169 00:08:46,660 --> 00:08:50,000 โปรแกรมของเราก็ไม่สนใจทุกอย่าง ที่ไม่ได้อยู่ในตัวคั่น PHP, 170 00:08:50,000 --> 00:08:51,500 คายมันออกมา 171 00:08:51,500 --> 00:08:54,410 ในตัวอย่างที่สิ่งสิ่ง ว่ามันคายออก HTML ได้ 172 00:08:54,410 --> 00:08:58,080 และนี่หมายความว่าฉันสามารถในขณะนี้ กระจาย HTML และ PHP ร่วมกัน 173 00:08:58,080 --> 00:09:01,920 เพราะล่ามจะเพียง ไม่สนใจ HTML และการส่งออกที่แท้จริงมัน 174 00:09:01,920 --> 00:09:04,140 ซึ่งเป็นสิ่งที่ดีใช่มั้ย? 175 00:09:04,140 --> 00:09:06,100 >> เพราะสมมุติ ในตอนท้ายของวัน, 176 00:09:06,100 --> 00:09:08,360 ฉันต้องการเว็บไซต์ของฉันไป ถูกสร้างขึ้นจาก HTML 177 00:09:08,360 --> 00:09:12,880 เพื่อให้เว็บเบราเซอร์ใด ๆ ที่สามารถตีความ หรือเข้าใจ HTML ในหน้า 178 00:09:12,880 --> 00:09:17,270 และทำให้มันเป็นสิ่งที่เรา จริงสามารถเข้าใจเป็นมนุษย์ 179 00:09:17,270 --> 00:09:19,430 และฉันสามารถใช้ PHP สำหรับชิ้นส่วนของเว็บไซต์ของฉัน 180 00:09:19,430 --> 00:09:23,390 ต้องมีพลวัตที่ต้องให้ฉัน ที่จะมีสิ่งที่ปรับปรุงอย่างต่อเนื่อง 181 00:09:23,390 --> 00:09:26,630 ข้อมูลแบบคงที่ สามารถอยู่เหมือนกัน 182 00:09:26,630 --> 00:09:27,540 >> ตกลงดังนั้นที่ดี 183 00:09:27,540 --> 00:09:28,540 แต่ทำไมฉันจะทำเช่นนี้? 184 00:09:28,540 --> 00:09:30,400 ทำไมฉันจะผสม HTML และ PHP? 185 00:09:30,400 --> 00:09:33,850 ฉันสามารถพิมพ์ออกมาทั้งหมด HTML โดยใช้ฟังก์ชั่นการพิมพ์ PHP 186 00:09:33,850 --> 00:09:35,870 ฉันไม่ได้ทำอย่างนั้นทำไม? 187 00:09:35,870 --> 00:09:37,100 คิดเกี่ยวกับมันเป็นครั้งที่สอง 188 00:09:37,100 --> 00:09:41,220 >> ทำไมเมื่อฉันสามารถพิมพ์ out-- ฉัน อาจจะมีสายของ PHP ที่เพียงแค่พูดว่า 189 00:09:41,220 --> 00:09:43,841 แท็กพิมพ์หัวพิมพ์ 190 00:09:43,841 --> 00:09:44,840 ฉันไม่ได้ทำอย่างนั้นทำไม? 191 00:09:44,840 --> 00:09:48,230 ทำไมฉันผสม PHP และ HTML ได้ไหม? 192 00:09:48,230 --> 00:09:50,080 >> ดีถ้าคุณคิด เกี่ยวกับเรื่องนี้เป็นครั้งที่สอง 193 00:09:50,080 --> 00:09:52,824 PHP, ล่ามมี ในการตีความสิ่งที่เห็น 194 00:09:52,824 --> 00:09:54,990 และดังนั้นจึงจะมี ในการดำเนินการบรรทัดของรหัส 195 00:09:54,990 --> 00:09:56,450 พิมพ์ออก HTML 196 00:09:56,450 --> 00:09:57,700 พิมพ์แท็กหัวเปิด 197 00:09:57,700 --> 00:09:58,969 พิมพ์แท็กชื่อเปิด 198 00:09:58,969 --> 00:10:00,760 มันเป็นไปได้ที่จะ ดำเนินการและตีความ 199 00:10:00,760 --> 00:10:02,671 ว่าทุกข​​ั้นตอนเดียวของวิธีการ 200 00:10:02,671 --> 00:10:04,670 ทำไมไม่เพียงให้ ล่ามเพียงปัดสวะ 201 00:10:04,670 --> 00:10:06,878 สิ่งที่มันไม่เข้าใจ และทำมันโดยอัตโนมัติ? 202 00:10:06,878 --> 00:10:11,365 มันจะช่วยฉันมากเวลา การผสม HTML และ PHP ของฉันด้วยกัน 203 00:10:11,365 --> 00:10:16,220 >> และนั่นเป็นเหตุผลที่เราทำไม่ได้ เพียงแค่มีตัวคั่น PHP เปิด 204 00:10:16,220 --> 00:10:19,450 แล้วก็พิมพ์ออกมาทั้งหมด เนื้อหาของหน้าเว็บของเราเป็นหนึ่งในยักษ์ PHP 205 00:10:19,450 --> 00:10:24,330 เรียกร้องให้ฟังก์ชั่นพิมพ์แล้ว คั่นใกล้ PHP และที่เรากำลังทำ 206 00:10:24,330 --> 00:10:27,620 ดังนั้นที่ว่าทำไมเราผสมให้เข้ากัน 207 00:10:27,620 --> 00:10:32,345 >> จนถึงขณะนี้เรายังไม่ได้เห็นมากเกินไป แตกต่างจากไวยากรณ์ PHP ทั่วไป 208 00:10:32,345 --> 00:10:33,720 มันเป็นตรงไปตรงสวย 209 00:10:33,720 --> 00:10:35,553 เราได้เห็นแล้ว เครื่องหมายคำถามเท่ากับ 210 00:10:35,553 --> 00:10:39,012 เราเห็นคู่ของสายฟังก์ชั่นใหม่ แต่จริงๆไม่มีอะไรแฟนซีที่เกิดขึ้น 211 00:10:39,012 --> 00:10:40,720 อาจจะลองทำในสิ่งที่ นักเล่นเล็ก ๆ น้อย ๆ 212 00:10:40,720 --> 00:10:44,360 เกิดอะไรขึ้นถ้าเราต้องการที่จะส่งผ่านข้อมูล ระหว่างไฟล์ PHP ที่แตกต่างกัน 213 00:10:44,360 --> 00:10:47,280 เพื่อให้ผู้ใช้อาจจะสามารถ ส่งข้อมูลมาให้ฉัน 214 00:10:47,280 --> 00:10:50,230 แล้วฉันจะทำอะไรบางอย่าง กับมันในหน้าอื่น 215 00:10:50,230 --> 00:10:52,990 >> ดังนั้น PHP มีการสนับสนุน สิ่งที่เรียกว่าซูเปอร์ทั่วโลก 216 00:10:52,990 --> 00:10:55,297 ตัวแปรซึ่งเสียงน่ากลัวสวย 217 00:10:55,297 --> 00:10:57,130 พวกเขากำลังจริงๆเพียงแค่ เชื่อมโยงอาร์เรย์ยักษ์ 218 00:10:57,130 --> 00:10:59,900 ที่ช่วยดำเนินการนี​​้ ผ่านการทำงานของ 219 00:10:59,900 --> 00:11:05,010 ข้อมูลระหว่างไฟล์ PHP ที่ มีอยู่บนเว็บเซิร์ฟเวอร์ของเรา 220 00:11:05,010 --> 00:11:07,760 >> ครั้งแรกของซุปเปอร์เหล่านี้ Globals เรียกว่า $ _GET 221 00:11:07,760 --> 00:11:10,140 และมันก็น่าจะเป็น ง่ายที่สุดที่จะเข้าใจ 222 00:11:10,140 --> 00:11:12,430 ที่เกิดขึ้นกับ $ _GET อะไร? 223 00:11:12,430 --> 00:11:16,240 ดีโดยทั่วไปผู้ใช้ จะพิมพ์ข้อมูลเพิ่มเติม 224 00:11:16,240 --> 00:11:18,390 ในตอนท้ายของ URL ของเรา 225 00:11:18,390 --> 00:11:21,460 และสิ่งที่พวกเขาพิมพ์สมมติ มันเป็นรูปแบบในทางหนึ่ง 226 00:11:21,460 --> 00:11:25,830 เรียกว่าสตริงแบบสอบถามซึ่งเป็นเพียง ชุดของคู่ค่าคีย์แยกออกจากกัน 227 00:11:25,830 --> 00:11:27,810 โดยเครื่องหมาย 228 00:11:27,810 --> 00:11:32,362 บรรดาคู่ค่าที่สำคัญจะเป็น เก็บไว้ใน $ _GET อาเรย์ 229 00:11:32,362 --> 00:11:34,070 และจากวิดีโอของเรา ไวยากรณ์ PHP เรารู้ 230 00:11:34,070 --> 00:11:40,080 วิธีการทำงานกับ เชื่อมโยงอาร์เรย์แล้ว 231 00:11:40,080 --> 00:11:44,090 ดังนั้นนี่คือตัวอย่างของ บาง PHP ที่บางทีฉัน 232 00:11:44,090 --> 00:11:50,180 สกัดทุกคู่ค่าที่สำคัญ ว่าผู้ใช้ที่ให้มาใน URL 233 00:11:50,180 --> 00:11:51,970 ดังนั้นผมจึงมีตัวคั่น PHP ของฉันเปิด 234 00:11:51,970 --> 00:11:53,410 ฉันมีห่วง foreach 235 00:11:53,410 --> 00:11:57,410 ฉันทำซ้ำในซูเปอร์ อาร์เรย์ทั่วโลกที่เรียกว่า $ _GET 236 00:11:57,410 --> 00:12:00,160 >> และฉันต้องการที่จะสามารถที่จะอ้าง ทั้งที่สำคัญและความคุ้มค่า 237 00:12:00,160 --> 00:12:02,410 และฉันเพียงแค่พิมพ์ ออกมาแต่ละคนในที่เห็นได้ชัด 238 00:12:02,410 --> 00:12:03,780 แท็กวรรคของตัวเองที่นี่ 239 00:12:03,780 --> 00:12:07,620 ผมพิมพ์ออกบาง HTM​​L และ interpolating ค่า 240 00:12:07,620 --> 00:12:12,900 ของคีย์และค่าลงในคำสั่งที่ 241 00:12:12,900 --> 00:12:16,980 >> ดังนั้นลองมาดูที่วิธีการนี​​้ จริงจะทำงานใน IDE ของเรา 242 00:12:16,980 --> 00:12:18,980 และอาจจะนี้จะช่วยให้ แสดงให้เห็นนิด ๆ หน่อย ๆ 243 00:12:18,980 --> 00:12:21,880 ของสิ่งที่ได้รับเป็นจริงทำ 244 00:12:21,880 --> 00:12:23,610 ดังนั้นฉันกลับมาที่นี่ในรากเว็บของฉัน 245 00:12:23,610 --> 00:12:25,318 และฉันจะซูมใน นิด ๆ หน่อย ๆ ที่จะแสดงให้คุณเห็น 246 00:12:25,318 --> 00:12:28,620 ที่ฉันมีไฟล์ที่เรียกว่า, get1.php 247 00:12:28,620 --> 00:12:31,830 >> ดังนั้นลองคลิกที่ get1.php 248 00:12:31,830 --> 00:12:36,600 และฉันไม่ได้เห็นเนื้อหาใด ๆ 249 00:12:36,600 --> 00:12:38,390 ที่แปลกใช่มั้ย? 250 00:12:38,390 --> 00:12:39,740 ดีไม่จริงจริง 251 00:12:39,740 --> 00:12:42,030 เพราะผมไม่ได้จัดหา อะไรใน URL 252 00:12:42,030 --> 00:12:46,270 ฉันจะ get1.php แต่ฉัน ไม่จัดหาคู่ค่าปุ่มใด ๆ 253 00:12:46,270 --> 00:12:47,450 เป็นส่วนหนึ่งของสตริงแบบสอบถามของฉัน 254 00:12:47,450 --> 00:12:50,510 ดังนั้นขอเพิ่มสตริงแบบสอบถาม และดูสิ่งที่ไฟล์นี้สามารถทำได้ 255 00:12:50,510 --> 00:12:53,040 >> เพื่อเริ่มต้นสตริงแบบสอบถามคุณ เพียงแค่พิมพ์เครื่องหมายคำถาม 256 00:12:53,040 --> 00:13:00,820 แล้วบางทีฉันอาจจะพูดชื่อ = ดั๊กและปี = 2015 257 00:13:00,820 --> 00:13:02,914 แล้วฉันจะกด Enter 258 00:13:02,914 --> 00:13:04,080 ตอนนี้สังเกตเห็นสิ่งที่เกิดขึ้น 259 00:13:04,080 --> 00:13:05,480 ฉันยังคงอยู่ใน get1.php 260 00:13:05,480 --> 00:13:08,445 แต่ตอนนี้ผมเคยจัดมา คู่ค่าที่สำคัญและฉัน 261 00:13:08,445 --> 00:13:14,940 พิมพ์ออกเอง ชื่อ paragraph-- ปี Doug-- 2015 262 00:13:14,940 --> 00:13:17,970 ที่ว่ารหัสที่เราเพิ่ง เห็นในสไลด์ช่วงเวลาที่ผ่านมา 263 00:13:17,970 --> 00:13:22,290 >> และถ้าผมต้องการที่จะอาจจะเพิ่มอีก คู่ค่าคีย์และ class = CS50 264 00:13:22,290 --> 00:13:25,325 265 00:13:25,325 --> 00:13:27,580 ตอนนี้ฉันมีค่าคีย์อีก คู่ที่พิมพ์ออกมา 266 00:13:27,580 --> 00:13:30,025 เมื่อฉันกลับมายัง URL อีกครั้ง 267 00:13:30,025 --> 00:13:31,900 ตอนนี้อาจจะเป็นไม่ได้ รูปแบบที่ดีชะมัด 268 00:13:31,900 --> 00:13:33,660 ดังนั้นผมจึงมีรุ่นของ get.php อื่น 269 00:13:33,660 --> 00:13:36,350 มัน get2.php 270 00:13:36,350 --> 00:13:39,070 >> ความแตกต่างในครั้งนี้ หนึ่งคือผมมีไฟล์ CSS, 271 00:13:39,070 --> 00:13:41,690 และรูปแบบสิ่งที่ เล็ก ๆ น้อย ๆ อย่างสำหรับฉัน 272 00:13:41,690 --> 00:13:43,940 มันอาจจะไม่ได้มากที่สุด CSS ที่สวยงามที่สุดในโลก 273 00:13:43,940 --> 00:13:45,650 แต่มันก็เป็นเพียงวิธีการทำมันอีก 274 00:13:45,650 --> 00:13:52,840 ดังนั้นผมจึงยังคงสามารถได้รับการเข้าถึง ตัวแปรของฉันโดยใช้ $ _GET 275 00:13:52,840 --> 00:13:56,610 และในกรณีนี้ผมเพียงแค่ชนิดของ ทำให้ CSS น้อยแฟนซีมากขึ้น 276 00:13:56,610 --> 00:13:58,360 และถ้าเราไปปรากฏ IDE ของฉันเป็นครั้งที่สอง 277 00:13:58,360 --> 00:14:06,870 ฉันจะแสดงในเว็บ PHP ของฉัน ไดเรกทอรีที่นี่ get2.php 278 00:14:06,870 --> 00:14:10,010 เราจะเปิดขึ้น, HTML บางอย่างที่นี่ 279 00:14:10,010 --> 00:14:13,220 เห็นได้ชัดว่าฉันเชื่อมโยงในการที่ ไฟล์ CSS ที่ผมพูดถึง 280 00:14:13,220 --> 00:14:14,570 ฉันเปิดแท็กตาราง 281 00:14:14,570 --> 00:14:15,970 และแล้วที่นี่เป็นห่วง foreach ของฉัน 282 00:14:15,970 --> 00:14:18,450 >> นี่คือสิ่งที่ฉัน แสดงให้เห็นบนภาพนิ่งก่อน 283 00:14:18,450 --> 00:14:21,007 ความแตกต่างเพียงอย่างเดียวคือผม มีคีย์นี้และค่า CSS 284 00:14:21,007 --> 00:14:22,340 จัดแต่งทรงผมที่ผมใช้มัน 285 00:14:22,340 --> 00:14:25,622 แต่นั่นคือทั้งหมดที่ผมทำคือผม วนทั่ว $ _GET จะได้รับทั้งหมด 286 00:14:25,622 --> 00:14:26,580 ของคู่ค่าคีย์ 287 00:14:26,580 --> 00:14:28,890 >> และฉันพิมพ์ออกมาเป็นตาราง 288 00:14:28,890 --> 00:14:33,230 และเห็นได้ชัดว่าผมจัดรูปแบบกุญแจ ในทางเดียวกับ <ระดับ td = "ที่สำคัญ" 289 00:14:33,230 --> 00:14:40,057 ดังนั้นเห็นได้ชัดที่ใช้กับบาง เลือกเรียนในไฟล์ CSS ของฉัน GET.CSS 290 00:14:40,057 --> 00:14:42,890 และเห็นได้ชัดว่าผมพิมพ์ออก ค่าของฉันวิธีที่แตกต่างกันโดยสิ้นเชิง 291 00:14:42,890 --> 00:14:45,530 ซึ่งเป็นที่สวยมาก สิ่งที่เราเห็นที่นี่ที่ 292 00:14:45,530 --> 00:14:47,710 ค่านิยมของเราถูกพิมพ์ ที่มีพื้นหลังสีฟ้า 293 00:14:47,710 --> 00:14:49,969 และปุ่มพิมพ์ของเราได้ กับพื้นหลังสีเหลือง 294 00:14:49,969 --> 00:14:52,010 เพื่อให้เป็นวิธีที่ฉันได้รับ ผู้สไตล์ที่แตกต่าง 295 00:14:52,010 --> 00:14:54,054 เพราะฉันใช้คลาส CSS ที่แตกต่างกัน 296 00:14:54,054 --> 00:14:55,470 แต่ที่มันสวยมากสำหรับ GET 297 00:14:55,470 --> 00:14:58,380 เช่นเดียวกับฉันแค่สกัดข้อมูล 298 00:14:58,380 --> 00:15:01,000 และในกรณีนี้ฉันแค่ พิมพ์หน้าจอ 299 00:15:01,000 --> 00:15:04,310 ฉันได้รับมันออกมาจาก URL ที่ และนั่นคือสิ่ง GET ไม่สำหรับเรา 300 00:15:04,310 --> 00:15:06,470 >> คุณเห็นที่เป็นไปได้ ปัญหาที่เกิดขึ้นที่นี่ แต่? 301 00:15:06,470 --> 00:15:11,720 ทำไมเราอาจจะ ไม่ต้องการที่จะใช้ $ _GET? 302 00:15:11,720 --> 00:15:15,440 เกิดอะไรขึ้นถ้าบางทีผมทำแบบสอบถามนี้? 303 00:15:15,440 --> 00:15:18,000 --to get3.php ซึ่งผม ไม่ได้มีใน IDE ของฉัน 304 00:15:18,000 --> 00:15:19,640 มันเป็นเพียงไฟล์สมมุติ 305 00:15:19,640 --> 00:15:22,187 แต่สังเกตเห็นที่นี่เห็นได้ชัดว่า ผ่านรห​​ัสผ่านของฉันใน 306 00:15:22,187 --> 00:15:23,770 และอาจจะใช้รหัสผ่านของฉันเป็นที่น่าอาย 307 00:15:23,770 --> 00:15:28,070 หรือบางทีฉันไม่ต้องการคนที่จะ รู้ว่าสิ่งที่รหัสผ่านของฉันคือขวา 308 00:15:28,070 --> 00:15:33,140 >> ถ้าฉันผ่านมัน though-- ถ้าฉันใช้ วิธี $ _GET สิ่งที่เกิดขึ้นคือ 309 00:15:33,140 --> 00:15:34,970 ที่เป็นไปได้ใน URL 310 00:15:34,970 --> 00:15:39,890 ดังนั้นบางคนอาจจะใช้ที่เป็นอันตราย จะสามารถมองเห็นสิ่งที่ฉันทำ 311 00:15:39,890 --> 00:15:42,040 ฉันอาจจะผ่านพวกเขา ข้อมูลที่สำคัญ 312 00:15:42,040 --> 00:15:43,310 หรืออาจจะเป็นไม่ได้ใช้ที่เป็นอันตราย 313 00:15:43,310 --> 00:15:45,790 อาจจะเป็นเพียงเพื่อนของคุณที่ ยืนอยู่บนไหล่ของคุณ 314 00:15:45,790 --> 00:15:47,650 และตอนนี้พวกเขารู้ว่ารหัสผ่าน ไปยังบัญชี Facebook ของคุณ 315 00:15:47,650 --> 00:15:49,483 >> และบางทีพวกเขาจะไม่ ทำอะไรกับมัน 316 00:15:49,483 --> 00:15:53,749 แต่ถ้าเป็นรหัสผ่านของคุณ ส่งผ่าน $ _GET ไปยัง Facebook, 317 00:15:53,749 --> 00:15:55,290 ตอนนี้พวกเขาทราบรหัสผ่าน Facebook ของคุณ 318 00:15:55,290 --> 00:15:59,000 เพราะมันมีสิทธิใน URL เมื่อคุณได้ทำส่งข้อมูล 319 00:15:59,000 --> 00:16:01,887 >> และอื่น ๆ ที่อาจจะไม่ดีที่สุด วิธีการที่จะส่งผ่านข้อมูลที่สำคัญ 320 00:16:01,887 --> 00:16:04,470 มันเป็นวิธีที่ดีในการส่งผ่านข้อมูล ที่เราทำไม่ได้โดยเฉพาะอย่างยิ่ง 321 00:16:04,470 --> 00:16:05,886 เกี่ยวกับการดูแลในฐานะที่เป็นความละเอียดอ่อนเกินไป 322 00:16:05,886 --> 00:16:09,347 เพราะ GET เป็นไปอย่างรวดเร็วสวย เทียบกับ Globals ซุปเปอร์อื่น ๆ 323 00:16:09,347 --> 00:16:10,430 ที่เรากำลังจะพูดคุยเกี่ยวกับ 324 00:16:10,430 --> 00:16:13,330 แต่อาจจะไม่ได้เครื่องมือที่ดีที่สุด สำหรับข้อมูลที่สำคัญ 325 00:16:13,330 --> 00:16:15,990 >> เพื่อที่เราอาจต้องการที่จะ ใช้สิ่งที่เรียกว่า $ _POST, 326 00:16:15,990 --> 00:16:18,560 ซึ่งเป็นอีกหนึ่งตัวแปรซูเปอร์ทั่วโลก 327 00:16:18,560 --> 00:16:20,750 มันเป็นอาเรย์อีก 328 00:16:20,750 --> 00:16:23,240 ดังนั้นการทำงานสวยมาก เหมือนกับ GET 329 00:16:23,240 --> 00:16:26,850 ยกเว้นแทนการสกัด ข้อมูลจาก URL ที่ 330 00:16:26,850 --> 00:16:29,870 บางสิ่งบางอย่างที่มันไม่ผ่านส่วนหัว HTTP 331 00:16:29,870 --> 00:16:32,080 ดังนั้นจำจากเรา วิดีโอบน HTTP, เราได้พูดคุย 332 00:16:32,080 --> 00:16:34,850 เกี่ยวกับวิธีการเบราว์เซอร์เซิร์ฟเวอร์ และลูกค้าในการติดต่อสื่อสาร 333 00:16:34,850 --> 00:16:38,070 และข้อมูลจะถูกส่งกลับ มาในส่วนหัว HTTP 334 00:16:38,070 --> 00:16:43,330 >> ด้วย $ _POST ข้อมูลเป็นปกติ ที่ส่งผ่านส่วนหัว HTTP เหล่านั้น 335 00:16:43,330 --> 00:16:49,770 และเราส่วนใหญ่มักจะเห็น $ _POST ใน บริบทของการส่งรูปแบบ HTML 336 00:16:49,770 --> 00:16:52,390 คุณยังสามารถใช้รูปแบบ HTML ที่จะส่งสิ่งที่จะได้รับ 337 00:16:52,390 --> 00:16:56,120 แต่พวกเขากำลังมักจะใช้ ในบริบทของการโพสต์ 338 00:16:56,120 --> 00:17:00,280 >> ดังนั้นนี่คือตัวอย่างของรูปแบบ HTML ที่เป็นนักการ 339 00:17:00,280 --> 00:17:06,750 ตอนนี้เราได้เห็นเหล่านี้ก่อน แต่เรามี ไม่ได้เห็นในส่วนนี้, การกระทำ = "post.php" 340 00:17:06,750 --> 00:17:10,756 ดังนั้นเมื่อเราพูดคุยเกี่ยวกับรูปแบบใน บริบทของ HTM​​L, ฉันมีปุ่ม Submit 341 00:17:10,756 --> 00:17:13,630 และถ้าคุณจำผมคลิกส่ง แล้วหน้าฟื้นฟูเพียง 342 00:17:13,630 --> 00:17:14,660 ไม่ได้ทำอะไร 343 00:17:14,660 --> 00:17:18,250 >> ในกรณีนี้ผมส่ง สิ่งที่ฉันพิมพ์ในรูปแบบนี้ 344 00:17:18,250 --> 00:17:20,750 เพื่อไฟล์ PHP ที่เรียกว่า post.php 345 00:17:20,750 --> 00:17:25,810 และเห็นได้ชัดว่าวิธีการที่ผมทำแบบนั้น ในรูปแบบนี้จะใช้วิธีการโพสต์ 346 00:17:25,810 --> 00:17:29,040 ดังนั้นทุกชิ้นของข้อมูล ที่ผมพิมพ์ลงในแบบฟอร์มนี้ 347 00:17:29,040 --> 00:17:31,470 จะถูกส่ง ผ่านส่วนหัว HTTP 348 00:17:31,470 --> 00:17:36,440 >> มันจะสามารถเข้าถึงได้ใน post.php, เพราะนั่นคือการกระทำของรูปแบบของฉัน 349 00:17:36,440 --> 00:17:39,811 มันจะสามารถเข้าถึงได้ โดยไปที่ $ _POST 350 00:17:39,811 --> 00:17:42,310 และเห็นได้ชัดวิธีการที่ผมสามารถทำได้ ได้รับในแต่ละองค์ประกอบของแต่ละบุคคล 351 00:17:42,310 --> 00:17:44,765 กับอาเรย์ เป็นที่มีคุณลักษณะนี้ 352 00:17:44,765 --> 00:17:48,130 แอตทริบิวต์ชื่อของแท็กป้อนข้อมูลของเรา 353 00:17:48,130 --> 00:17:53,540 >> ดังนั้นเห็นได้ชัดว่าผมสามารถพูดได้ $ _POST ตาราง วงเล็บชื่อที่จะได้รับสิ่งที่ผู้ใช้ 354 00:17:53,540 --> 00:17:55,440 พิมพ์ลงในเขตข้อมูลแรก 355 00:17:55,440 --> 00:18:01,030 และ $ _POST รหัสผ่านของ PW ค่อนข้าง ที่จะได้รับสิ่งที่ผู้ใช้พิมพ์ 356 00:18:01,030 --> 00:18:03,650 ในด้านที่สอง 357 00:18:03,650 --> 00:18:06,414 >> ดังนั้นลองมาดูที่ มากกว่าใน CS50 IDE นี้ 358 00:18:06,414 --> 00:18:08,330 ดังนั้นที่นี่เรามีและฉันจะ ซูมเข้าเป็นครั้งที่สอง 359 00:18:08,330 --> 00:18:12,380 และเรามีไฟล์ที่เรียกว่า post.html 360 00:18:12,380 --> 00:18:13,690 ฉันคลิกที่ post.html 361 00:18:13,690 --> 00:18:16,300 ที่ด้านบนมากที่นี่ผมมี รูปแบบเว็บที่ง่ายมาก 362 00:18:16,300 --> 00:18:18,750 มันเป็นรูปแบบที่เราเพิ่งเห็น บนภาพนิ่งที่สองที่ผ่านมา 363 00:18:18,750 --> 00:18:25,610 >> ฉันสามารถพิมพ์ดั๊กและฉันสามารถ พิมพ์รหัสผ่านของฉันซึ่งเราทุกคน 364 00:18:25,610 --> 00:18:27,340 ทราบว่าเป็น squadgoals 365 00:18:27,340 --> 00:18:30,100 และเราจะส่งตี 366 00:18:30,100 --> 00:18:32,290 และเห็นได้ชัดว่า ส่งไป post.php 367 00:18:32,290 --> 00:18:33,810 และฉันเห็นได้ชัดว่าการพิมพ์ 368 00:18:33,810 --> 00:18:36,490 ดังนั้นฉันได้รับการกำจัดของทุกการรักษาความปลอดภัย ที่โพสต์ให้ฉันโดยเพียงแค่พิมพ์ออก 369 00:18:36,490 --> 00:18:37,720 ชื่อผู้ใช้และรหัสผ่าน 370 00:18:37,720 --> 00:18:38,960 >> ชื่อผู้ใช้คือดั๊ก 371 00:18:38,960 --> 00:18:40,810 รหัสผ่านของผู้ใช้เป็น squadgoals 372 00:18:40,810 --> 00:18:42,480 ผมไม่ทำเช่นนี้ได้อย่างไร? 373 00:18:42,480 --> 00:18:44,800 ดี pop ไป IDE อีกครั้งเป็นครั้งที่สอง 374 00:18:44,800 --> 00:18:51,340 เราจะเลื่อนลงไปใช้ ดูที่ post.php ซึ่งเป็น 375 00:18:51,340 --> 00:18:54,040 การดำเนินการที่ผมใช้ในการส่งที่นี่ 376 00:18:54,040 --> 00:18:55,739 นั่นคือการกระทำของรูปแบบ HTML ของฉัน 377 00:18:55,739 --> 00:18:56,780 และนั่นคือทั้งหมดที่ฉันทำ 378 00:18:56,780 --> 00:19:01,370 ชื่อผู้ใช้เป็นและฉันพิมพ์ ออกเนื้อหาของ $ _POST "ชื่อที่" 379 00:19:01,370 --> 00:19:04,660 และแล้วรหัสผ่านของผู้ใช้ เป็น $ _POST "รหัสผ่าน" 380 00:19:04,660 --> 00:19:08,920 ดังนั้นผมจึงได้รับข้อมูลว่า โดยกรอกแบบฟอร์มการ html 381 00:19:08,920 --> 00:19:13,790 และตอนนี้ผมสามารถแยกได้โดยใช้ $ _POST เนื่องจากวิธีการที่ผมใช้ในการส่ง 382 00:19:13,790 --> 00:19:17,470 ข้อมูลที่มีรูปแบบที่เป็นวิธีการ POST 383 00:19:17,470 --> 00:19:20,640 >> ตอนนี้ก็อาจจะไม่ได้ ดังนั้น great-- ฉันจะ 384 00:19:20,640 --> 00:19:24,510 ที่จะกลับไปเป็นครั้งที่สอง ชุดของเรา here-- 385 00:19:24,510 --> 00:19:30,120 มันอาจจะไม่ดีดังนั้นถ้าฉัน ส่งข้อมูลที่มีการโพสต์ 386 00:19:30,120 --> 00:19:32,532 ซึ่งเป็นความปลอดภัยมากขึ้นอย่างเห็นได้ชัด 387 00:19:32,532 --> 00:19:34,740 มันอาจจะไม่ดีดังนั้น ถ้าฉันทำอย่างนั้นแล้ว 388 00:19:34,740 --> 00:19:36,470 พิมพ์รหัสผ่านของผู้ใช้ 389 00:19:36,470 --> 00:19:38,540 มันควรจะเป็นความปลอดภัยมากขึ้น 390 00:19:38,540 --> 00:19:40,870 >> ตกลง แต่ก็ไม่ได้ทั้งที่มีความปลอดภัย 391 00:19:40,870 --> 00:19:42,910 และในน้อยนี้ ข้อมูลโค้ดที่นี่ฉันต้องการ 392 00:19:42,910 --> 00:19:46,410 เพียงแค่ดึงความสนใจของคุณบาง ความกังวลเกี่ยวกับความปลอดภัยของข้อมูลเพียงบางสิ่งบางอย่าง 393 00:19:46,410 --> 00:19:51,200 ที่จะคิดเกี่ยวกับการเป็นคุณ การทำงานหรือการใช้อินเทอร์เน็ต 394 00:19:51,200 --> 00:19:53,890 นี่เป็นเพียงบางสิ่งบางอย่างที่จะต้องพิจารณา 395 00:19:53,890 --> 00:19:57,980 >> ฉันบอกคุณว่าข้อมูล ส่งผ่านทางส่วนหัว HTTP 396 00:19:57,980 --> 00:19:59,724 เมื่อคุณใช้วิธีการโพสต์ 397 00:19:59,724 --> 00:20:01,390 ซึ่งหมายความว่าพวกเขาไม่ได้มีความปลอดภัยทั้งหมด 398 00:20:01,390 --> 00:20:05,610 พวกเขายากที่จะหากว่า โดยใช้วิธีการ GET ที่ 399 00:20:05,610 --> 00:20:06,882 มันเป็นเพียงแค่สิทธิใน URL 400 00:20:06,882 --> 00:20:08,340 แต่ยังคงมีวิธีที่จะพบว่า 401 00:20:08,340 --> 00:20:10,423 และฉันเพียงแค่ต้องการที่จะแสดง คุณนี้เพื่อให้คุณอาจจะ 402 00:20:10,423 --> 00:20:12,940 เริ่มคิดเกี่ยวกับเรื่องนี้ ในขณะที่คุณกำลังทำงานหรือการใช้ 403 00:20:12,940 --> 00:20:14,560 เว็บไซต์และส่ง รหัสผ่านและอาจใช้ 404 00:20:14,560 --> 00:20:16,518 รหัสผ่านเดียวกันใน จำนวนมากที่แตกต่างกัน 405 00:20:16,518 --> 00:20:22,060 รู้ว่ายังคงเป็นจริงสวย ง่ายที่จะหารหัสผ่านของใครบางคน 406 00:20:22,060 --> 00:20:25,190 >> ดังนั้นที่นี่ฉันจะ จะไป post2.html 407 00:20:25,190 --> 00:20:28,850 และความแตกต่างกับ post2.html และ post2.php บอบบางสวย 408 00:20:28,850 --> 00:20:31,420 ความแตกต่างเป็นเพียง ที่ฉันไม่พิมพ์ออกมา 409 00:20:31,420 --> 00:20:33,520 รหัสผ่านเมื่อฉันส่งแบบฟอร์ม 410 00:20:33,520 --> 00:20:35,260 >> ดังนั้นผมจะพิมพ์ในดั๊ก 411 00:20:35,260 --> 00:20:38,365 และฉันจะพิมพ์ ใน squadgoals แม้ 412 00:20:38,365 --> 00:20:40,770 แต่เรารู้ว่าเป็นรหัสผ่าน 413 00:20:40,770 --> 00:20:42,540 ก่อนที่ผมจะส่ง รูปแบบแม้ว่าฉันจะ 414 00:20:42,540 --> 00:20:45,864 ที่จะเปิดเครื่องมือสำหรับนักพัฒนาเพียงเพื่อ แสดงให้คุณเห็นสิ่งที่จะเกิดขึ้นที่นี่ 415 00:20:45,864 --> 00:20:47,530 ดังนั้นใน Chrome ฉันแค่จะตี F12 416 00:20:47,530 --> 00:20:54,120 417 00:20:54,120 --> 00:20:57,230 และที่กำลังจะเปิดขึ้นของฉัน เครื่องมือสำหรับนักพัฒนาบนด้านขวามือ 418 00:20:57,230 --> 00:20:59,480 ฉันยังไม่ได้ส่งแบบฟอร์มยัง 419 00:20:59,480 --> 00:21:02,680 ตอนนี้ฉันจะไปตีส่งในรูปแบบของฉัน 420 00:21:02,680 --> 00:21:05,370 และเห็นได้ชัดผมทำ โทรไปหรือฉันทำคำขอ 421 00:21:05,370 --> 00:21:07,620 เพื่อ post2.php ซึ่งจะทำให้ความรู้สึก 422 00:21:07,620 --> 00:21:10,040 ฉันจะไปคลิกที่ 423 00:21:10,040 --> 00:21:13,802 >> แล้วนี่ฉันจะ คลิกที่ส่วนหัว 424 00:21:13,802 --> 00:21:15,410 มีจำนวนมากของสิ่งที่เกิดขึ้นที่นี่ 425 00:21:15,410 --> 00:21:21,310 แต่ถ้าผมเลื่อนลงไปมาก ด้านล่างที่ถูกต้องแจ้งให้ทราบล่วงหน้า there-- ปฏิทินของฉัน 426 00:21:21,310 --> 00:21:25,180 ได้ปิดกั้นมันสำหรับสิทธิ second-- มีที่มุมด้านล่างมาก 427 00:21:25,180 --> 00:21:27,386 name-- ดั๊ก pw-- squadgoals 428 00:21:27,386 --> 00:21:30,010 ดังนั้นแม้ว่าฉันใช้การโพสต์ วิธีการซึ่งมีความปลอดภัยมากขึ้น 429 00:21:30,010 --> 00:21:33,570 เพียงทราบว่าเมื่อคุณทำเช่นนั้น คุณยังคงส่งข้อมูล 430 00:21:33,570 --> 00:21:34,430 ผ่าน HTTP 431 00:21:34,430 --> 00:21:36,770 และมันก็ยังคงเป็น พบโดยฝ่ายตรงข้าม 432 00:21:36,770 --> 00:21:39,270 มันเป็นเพียงแค่สิ่งที่เรากำลังจะ ที่จะมีการจัดการกับจริงๆ 433 00:21:39,270 --> 00:21:41,980 อาจจะมีวิธีการบางอย่างในการเข้ารหัสของเรา รหัสผ่านก่อนที่เราจะส่งพวกเขาไป 434 00:21:41,980 --> 00:21:44,410 ซึ่งจะเป็นที่ดีกว่า ที่ฉันไม่ได้ทำอะไรที่นี่ 435 00:21:44,410 --> 00:21:47,010 >> แต่ทราบว่าการโพสต์ วิธีการมีข้อ จำกัด มากเกินไป 436 00:21:47,010 --> 00:21:49,801 มันปรับปรุงกว่า GET ใน แง่ของความเห็นได้ทันที 437 00:21:49,801 --> 00:21:51,280 แต่มันไม่ได้แก้ไขเสร็จสมบูรณ์ 438 00:21:51,280 --> 00:21:53,280 ดังนั้นนี่คือตัวอย่างของ ได้อย่างรวดเร็วที่ออกกำลังกายที่บ้าน 439 00:21:53,280 --> 00:21:56,350 ที่คุณสามารถใช้เพื่อให้ได้บาง ฝึกการทำงานร่วมกับ PHP 440 00:21:56,350 --> 00:21:58,300 สร้างคู่ต่อไปนี้ของหน้าเว็บ 441 00:21:58,300 --> 00:22:00,960 ครั้งแรกก็ควรจะเป็นเรื่องง่ายมาก ในรูปแบบที่มีสาขาเดียวและส่ง 442 00:22:00,960 --> 00:22:01,460 ปุ่ม. 443 00:22:01,460 --> 00:22:04,070 ดังนั้นลักษณะคล้ายกันมากกับสิ่งที่เรา ก็ไม่ได้มี post.html 444 00:22:04,070 --> 00:22:07,450 >> และแล้วที่สอง ไฟล์ที่คุณควรสร้าง 445 00:22:07,450 --> 00:22:11,687 เป็นไฟล์ไฟล์ PHP ที่ คาดว่าการป้อนข้อมูลผ่านทางโพสต์ 446 00:22:11,687 --> 00:22:14,770 และขึ้นอยู่กับสิ่งที่ผู้ใช้พิมพ์ที่ คุณสามารถสันนิษฐานได้ว่าจะเป็นจำนวนเต็ม 447 00:22:14,770 --> 00:22:16,160 คุณไม่จำเป็นต้องดำเนินการใด ๆ การตรวจสอบข้อผิดพลาดหรือชอบ 448 00:22:16,160 --> 00:22:18,284 คุณสามารถสันนิษฐานได้ว่าผู้ใช้ จะพิมพ์ค่าจำนวนเต็ม 449 00:22:18,284 --> 00:22:22,230 หรือสิ่งที่ต้องการตีความโดย PHP เป็นจำนวนเต็มลงในแบบฟอร์มที่ 450 00:22:22,230 --> 00:22:24,790 คุณเพียงแค่ต้องการสร้าง n โดย n ตารางสูตรคูณ 451 00:22:24,790 --> 00:22:28,480 >> ดังนั้นหากผู้ใช้ส่ง 10 เราต้องการที่จะ มี 10 สูตรคูณ 10 452 00:22:28,480 --> 00:22:31,832 หากผู้ใช้ส่ง 12 เราต้องการ 12 12 ตารางสูตรคูณ 453 00:22:31,832 --> 00:22:33,790 เพียงเพื่อให้คุณสามารถมองเห็นสิ่ง เรากำลังขับรถที่นี่ 454 00:22:33,790 --> 00:22:36,040 เราจะดูที่ แฟ้มนี้ใน IDE ของฉัน 455 00:22:36,040 --> 00:22:38,080 >> ดังนั้นที่นี่ใน IDE ผมมี mult_form.html 456 00:22:38,080 --> 00:22:41,370 457 00:22:41,370 --> 00:22:43,100 ฉันจะคลิก 458 00:22:43,100 --> 00:22:46,020 ทั้งหมดที่ฉันต้องการจะทำคือการส่งค่า 459 00:22:46,020 --> 00:22:47,590 พิมพ์ 10 ส่งตี 460 00:22:47,590 --> 00:22:51,190 และเห็นได้ชัดว่า mult_table.php ซึ่ง เราสามารถดูที่ด้านบนมีใน URL, 461 00:22:51,190 --> 00:22:53,970 ฉันกำลังสร้าง 10 10 สูตรคูณ 462 00:22:53,970 --> 00:22:59,365 >> ถ้าผมพิมพ์ 15 และกดส่งตอนนี้ฉัน มี 15 สูตรคูณ 15 463 00:22:59,365 --> 00:23:02,240 ฉันแน่นอนไม่ได้ไปแสดง คุณเนื้อหาของ mult_table.php ที่ 464 00:23:02,240 --> 00:23:04,781 เพราะที่จะนำความสนุกสนาน ออกจากนี้ที่ออกกำลังกายที่บ้าน 465 00:23:04,781 --> 00:23:07,480 แต่มันก็เป็นวิธีที่ดีที่จะได้รับบางส่วน ฝึกการทำงานร่วมกับลูป PHP 466 00:23:07,480 --> 00:23:10,889 และโพสต์ที่ง่ายมากหวังว่า ความเครียดเช่นฟรีเพียง 467 00:23:10,889 --> 00:23:12,180 ที่จะทำนิด ๆ หน่อย ๆ ของการปฏิบัติ 468 00:23:12,180 --> 00:23:16,540 และฉันมี CSS เล็ก ๆ น้อย ๆ ที่เกิดขึ้น ที่นี่เพื่อที่จะทำให้ตารางของแต่ละบุคคลของฉัน 469 00:23:16,540 --> 00:23:19,710 เซลล์เพียงชนิดของ pop ออก นิด ๆ หน่อย ๆ และมองเล็ก ๆ น้อย ๆ 470 00:23:19,710 --> 00:23:22,205 เช่นตารางสูตรคูณที่ ไม่ใช่แค่เพียงข้อความ 471 00:23:22,205 --> 00:23:23,261 ชนิดของการนั่งอยู่ที่นั่น 472 00:23:23,261 --> 00:23:26,260 สุดท้ายสุดทั่วโลกเราจะพูดคุยเกี่ยวกับ ในวิดีโอนี้คือสิ่งที่เรียกว่า 473 00:23:26,260 --> 00:23:27,597 $ _SESSION 474 00:23:27,597 --> 00:23:29,930 และบางทีนี้เป็นจริง ตัวอย่างที่ดีที่สุดของบางสิ่งบางอย่าง 475 00:23:29,930 --> 00:23:31,700 เราจะพิจารณาระดับโลก 476 00:23:31,700 --> 00:23:33,189 มันเป็นอาเรย์อีก 477 00:23:33,189 --> 00:23:34,480 มันเป็นอาเรย์อีก 478 00:23:34,480 --> 00:23:40,580 แต่มันสามารถเข้าถึงได้ผ่านทุก ไฟล์ PHP ที่มีอยู่ในระบบของเรา 479 00:23:40,580 --> 00:23:43,410 >> เราไม่ได้มีการส่ง ข้อมูลหนึ่งหน้าในเวลา 480 00:23:43,410 --> 00:23:45,400 เหมือนที่เราทำกับ GET และ POST 481 00:23:45,400 --> 00:23:46,380 ก็มักจะมี 482 00:23:46,380 --> 00:23:50,040 และเพื่อให้เป็นที่ดีสำหรับหน้า ที่คุณจะถูกบันทึกไว้ในยกตัวอย่างเช่น 483 00:23:50,040 --> 00:23:53,120 และคุณต้องการข้อมูลเข้าสู่ระบบของคุณ ยังคงมีอยู่จากหน้าไปยังหน้าไปยังหน้า 484 00:23:53,120 --> 00:23:58,180 >> คุณก็สามารถเริ่มต้นเซสชันแล้ว ใช้ $ _SESSION ที่จะบันทึกสิ่งที่ต้องการ 485 00:23:58,180 --> 00:24:02,320 ชื่อผู้ใช้หรือผู้ใช้ ข้อมูล ID และอื่น ๆ 486 00:24:02,320 --> 00:24:07,600 และข้อมูลที่จะยังคงอยู่ใน $ _SESSION จนกว่าคุณจะทำลายเซสชั่น 487 00:24:07,600 --> 00:24:09,550 นิด ๆ หน่อย ๆ ในภายหลัง 488 00:24:09,550 --> 00:24:12,375 >> การเขียนเว็บไซต์แบบไดนามิกที่มี PHP ทำให้พวกเขาดีขึ้นมาก 489 00:24:12,375 --> 00:24:14,250 เว็บไซต์ของคุณเป็นอย่างมาก แบบไดนามิกและคุณทำไม่ได้ 490 00:24:14,250 --> 00:24:17,670 ต้องทำมากเกินไปกว่าสิ่งที่ คุณมิฉะนั้นจะได้ทำเพียงแค่ 491 00:24:17,670 --> 00:24:18,920 ทำมันด้วย HTML 492 00:24:18,920 --> 00:24:21,630 แต่ต้องปฏิบัติ จำนวนมากของการปฏิบัติ 493 00:24:21,630 --> 00:24:26,897 >> แล้วคุณจะรู้ว่าวิธีการทำงานกับซี และเพื่อให้กระโดดไป PHP ไม่ได้เป็นเรื่องยุ่งยากเกินไป 494 00:24:26,897 --> 00:24:28,730 อะไรคือสิ่งที่อาจจะเล็ก ๆ น้อย ๆ บิตหากินคือการทำงาน 495 00:24:28,730 --> 00:24:33,180 กับความคิดใหม่นี้ของแถมและการโพสต์ และอาจผสม HTML และ PHP ของคุณ 496 00:24:33,180 --> 00:24:34,220 ด้วยกัน. 497 00:24:34,220 --> 00:24:37,570 แต่ยังต้องตระหนักว่าอินเทอร์เน็ต เป็นพื้นที่เก็บข้อมูลมากมายของข้อมูล 498 00:24:37,570 --> 00:24:41,670 และเอกสารของ PHP สามารถใช้ได้ ในหลายสถานที่ แต่บางทีอาจจะมากที่สุด 499 00:24:41,670 --> 00:24:43,354 canonically ที่ php.net 500 00:24:43,354 --> 00:24:45,520 และคุณสามารถหาที่นั่น จำนวนมากฟังก์ชั่นที่แตกต่างกัน 501 00:24:45,520 --> 00:24:48,330 และกรณีการใช้งานและตัวอย่าง เมื่อตัวอย่างตามตัวอย่าง 502 00:24:48,330 --> 00:24:51,340 ซึ่งถ้าคุณต้องการที่จะลองและตัวเลข วิธีการทำบางสิ่งบางอย่างราคาถูก, 503 00:24:51,340 --> 00:24:52,964 ใครบางคนอาจจะทำก่อนที่จะ 504 00:24:52,964 --> 00:24:55,840 และคุณสามารถใช้พวกเขาเป็น แรงบันดาลใจในการดำเนินการใด ๆ ก็ตาม 505 00:24:55,840 --> 00:24:58,230 มันเป็นสิ่งที่คุณกำลังพยายามที่จะใช้มากเกินไป 506 00:24:58,230 --> 00:24:59,230 >> ฉันลอยด์ดั๊ก 507 00:24:59,230 --> 00:25:01,210 นี่คือ CS50 508 00:25:01,210 --> 00:25:02,608