>> SAM LEVATICH: ยินดีต้อนรับสู่ ส่วนในสัปดาห์นี้
ผมไม่ได้แล้วล่ะ
Andi ป่วยได้ลดลงในวันนี้และฉัน ได้รับการเรียกว่าการจัดเรียงของในนาทีสุดท้าย
จะใช้เวลามากกว่า
มันเป็นฤดูไข้หวัดใหญ่เพื่อให้แน่ใจว่าคุณ จะเข้าพักสะอาดล้างมือของคุณ
และรับประทานอาหารเพื่อสุขภาพเพื่อให้ คุณเกินไปไม่ได้ล้มป่วย
>> แต่ไม่มีการต่อไป ความกังวลใจให้เริ่มต้น
วันนี้เรากำลังจะพูดคุย เกี่ยวกับ PHP น้อย bit-- วิธี
PHP เกี่ยวข้องกับ HTML, วิธีการที่จะ เกี่ยวข้องกับ CSS และบางส่วนของเว็บ
สิ่งที่คุณทำในการมอบหมายที่ผ่านมา
เรากำลังจะไปพูดคุย นิด ๆ หน่อย ๆ เกี่ยวกับ SQL
และวิธีที่คุณสามารถทำงานร่วมกับฐานข้อมูล ซึ่งเป็นองค์ประกอบสำคัญของ P สวย
ตั้ง 8-- P ตั้ง 7
P ตั้ง 7
>> และจากนั้นเรากำลังจะพูดคุยเล็ก ๆ น้อย ๆ เล็กน้อยเกี่ยวกับการควบคุมมุมมองการทำงาน
และเหตุผลที่อยู่เบื้องหลังปรัชญาบาง หน้าเว็บที่ทันสมัย​​และการออกแบบที่แตกต่างกัน
สวยมากมากชนิดของปพลิเคชัน และการใช้งานที่คุณอาจจัดส่ง
มีการใช้รูปแบบนี้ มุมมองกรอบการควบคุม
ที่คุณจะใช้ ใน P ตั้ง 7 ดังนั้นฉันจะ
พูดคุยนิด ๆ หน่อย ๆ เกี่ยวกับสาเหตุที่กลายเป็น
ที่นิยมจึงเป็นสิ่งสำคัญและมีความสุข
และแล้วในที่สุดผมก็จะย้ายไป เคล็ดลับบางอย่างเกี่ยวกับการแก้ปัญหา P ตั้ง 7
และถ้าเรามีเวลา ที่เหลือในตอนท้าย
เราจริงสามารถทำบาง ทำงานเกี่ยวกับการร่วมกันว่า
>> ดังนั้น PHP
ในความเป็นจริงคุณอาจจะสังเกตเห็น this-- คุณไม่ได้จริงๆต้องดำน้ำใน it--
แต่ P ตั้ง 6 มีบาง PHP รหัสที่เกิดขึ้น
และเนื่องจาก PHP เป็น C-เช่น ภาษา PHP ซึ่งแตกต่างจาก HTML และ CSS,
ภาษาการเขียนโปรแกรม ในขณะที่ HTML และ CSS จะคงที่
พวกเขากำลังจัดการภาษามาร์กอัป มีสไตล์และรูปแบบภาพ
PHP เป็นเรื่องจริง
>> PHP มีลูปก็มี conditions-- ทุกสิ่งที่สนุกเกี่ยวกับซี
แต่ก็มีบางสิ่งที่มีน้อย ดีขึ้นเล็กน้อยกว่า C ซึ่งเราจะเห็น
แต่ฉันคิดว่าวิธีที่ง่ายที่สุดที่จะพูดคุย เกี่ยวกับ PHP เป็นเพียงในการดำน้ำ
ดังนั้นฉันจะไปทางด้านขวา เข้า IDE ที่จุดนี้
สิ่งแรกที่เรากำลังจะไป จะทำอย่างไรที่เป็นจริงดู
นิด ๆ หน่อย ๆ ที่บางส่วนของ PHP รหัสที่อยู่ใน P ตั้ง 6
ดังนั้นวิธีการที่เราทำ that-- ก่อนที่จะวิธีการที่เราได้รับการเรียกใช้
เซิร์ฟเวอร์สำหรับเครื่องใช้ไฟฟ้า คือการที่เราจะต้อง type--
อาจใช้การดำเนินการของคุณ หรือการดำเนินงานของพนักงาน
ของ server.c โดยไปลงในไดเรกทอรี และทำงาน server.c กับทั้งไม่มี
arguments-- ดังนั้นเพียงแค่เรียกมันใน โฮสต์ท้องถิ่นซึ่งเป็นสิ่งที่คุณอาจ
ได้มากที่สุดของ time-- และจากนั้นให้อาหารมัน
directory-- กับ ซึ่งจะใช้เป็นราก
เว็บไซต์ที่จะ จะทำงานโดยทั่วไป
>> สัปดาห์ P 7 ชุดนี้เป็น ใหญ่เป็นรหัสของเราสำหรับ server.c
คือมีคนที่มีอยู่แล้ว เขียนสิ่งเหล่านี้ได้ดีมากกว่าที่ CS50
ที่มีนิด ๆ หน่อย ๆ การทำงานมากขึ้น
โปรแกรมเซิร์ฟเวอร์ที่มีความสามารถ ในการจัดการกับน้อยมาก
ความซับซ้อนของการที่เราจะ เห็นในทั้ง P ตั้ง 7 และ P ตั้ง 8
และวิธีการที่คุณจะเริ่มต้นขึ้น เซิร์ฟเวอร์โดยเพียงแค่พิมพ์ "apache50."
>> และก่อนที่จะทำอะไร คุณต้องการให้แน่ใจว่า
อาปาเช่ที่ 50 ไม่ได้ ทำงานอยู่แล้วมันเป็น
ในเครื่องของฉันซึ่งฉันไม่ได้ทดสอบ
และคุณทำเช่นนั้นโดยการเรียก apache50
หยุดและคุณจะเห็นว่ามันหยุด เว็บเซิร์ฟเวอร์ถ้าคุณสามารถดูมี
ที่ด้านล่างของหน้าต่างขั้ว
และจากนั้นก็จะเริ่มเรา จะเรียก "apache50 เริ่มต้น."
และจากนั้นเรากำลังจะ ที่จะเลี้ยงมันไดเรกทอรี
>> ตอนนี้เพราะเราต้องการที่จะดู ที่บางส่วนของการตั้งค่า P ​​6 รหัส
ที่เราได้ดำเนินการจริงผม คัดลอกนิด ๆ หน่อย ๆ ของ P
ตั้ง 6 รหัสลงในโฟลเดอร์ของตัวเอง ที่คุณสามารถดูด้านซ้ายมี
มันเรียกว่า "SECTION8" ในทุกตัวอักษร
เพราะฉันแค่รู้สึกตื่นเต้นมาก จะเป็นสตรีมสดในวันนี้
>> ดังนั้นถ้าเราทำงานนี้มันควรจะเป็น ทุกคนทำงานอย่างมีประสิทธิภาพสวย
มันบอกว่าตกลงเว็บไซต์ของเราอยู่ในขณะนี้ สามารถดูได้ที่อยู่ของ IDE ที่
โดยทั่วไปซึ่งเป็นสิ่งที่คุณกำลังใช้ ตรงตามที่มันเป็นใน P ตั้ง 7-- P ตั้ง 6
ดัชนีทั้งหมดของฉันเป็นหนึ่งในดัชนีในวันนี้
ดังนั้นเราจึงสามารถไปที่ ที่อยู่ถ้าคุณจะจำ
โดยเพียงแค่คลิกเล็ก ๆ น้อย ๆ นี้ ปุ่มที่มุมบนขวา
>> และคุณจะจำรหัสนี้ซึ่ง ที่เกิดขึ้นเมื่อคุณเดินเข้าไปใน hello.php
และสิ่งที่รหัสถูกออกแบบมาเพื่อ ทำคือเมื่อคุณพิมพ์ในชื่อ
here-- ถ้าคุณบอกว่าแซม เนื่องจากว่าเป็น name-- ของฉัน
และฉันคลิกกล่าวสวัสดีเมื่อ เราไปหน้าถัดไป
ชื่อที่ควรจะถูกนำมาแสดง
มันจะพูดว่า "สวัสดีแซม" หรือ "สวัสดี" ชื่ออะไรก็ตามที่คุณ
ใส่ลงในนั้นแม้ว่าเราไป ไปยังหน้าเว็บใหม่ทั้งหมด
>> และนี่คือการจัดเรียงของสิ่ง ที่ PHP สามารถทำเพื่อคุณ
PHP เป็นความสามารถในการส่งผ่านข้อมูล ระหว่างสองหน้าเว็บ
นี่คือหน้าต่างกันโดยสิ้นเชิง
คุณจะเห็นชื่อคือ "สวัสดี" ที่นี่
ที่จริงแล้วพวกเขามี ชื่อเดียวกัน แต่ฉัน
สัญญาว่าพวกเขาจะมีเว็บที่แตกต่าง หน้าถ้าเรามองไปที่แหล่งที่มา
และคุณสามารถส่งผ่านข้อมูลที่เป็น ป้อนในฟิลด์ข้อความนี้
ที่จะส่งต่อไป หน้าเว็บที่ถูกเรียกขึ้น
แล้วข้อมูลที่สามารถ จะมีในรูปแบบปัจจุบัน
>> ตอนนี้เรายังไม่ได้ดำเนินการ นี้เองที่
คือสิ่งที่เรากำลังจะทำในขณะนี้เพื่อ การเรียงลำดับได้รับรสชาติสำหรับวิธีการทำงาน PHP,
แต่ความคิดที่สำคัญคือคุณสามารถ PHP-- การเรียงลำดับของคิดว่ามันเหมือนฟังก์ชั่น
สิ่งที่ PHP สามารถช่วยให้คุณ ไม่เป็นก็สามารถใช้พารามิเตอร์
ที่คุณใส่ลงในหน้า HTML ผ่านการใช้ PHP และรูปแบบที่
และสามารถส่งผ่านผู้ที่เป็นพารามิเตอร์ ไปยังหน้าถัดไปที่จะโหลดขึ้น
>> ในกรณีนี้เรากำลังโหลดขึ้นนี้ หน้าเว็บที่มีปุ่ม "ทักทาย"
แต่ตอนนี้ที่จริงผม ลบบางส่วนของรหัสที่
ใน hello.php ที่ถูกเรียกใช้ ที่จริงการแสดง "สวัสดี
โลก "หรือ" สวัสดีแซม "หรือ "สวัสดี" สิ่งที่เป็นเพียงการป้อนข้อมูล
ดังนั้นสำหรับตอนนี้เรา จะไปทำอย่างนั้นโดยทั่วไป
เรากำลังจะสร้างและ ยังเพิ่มบางฟังก์ชันการทำงานมากขึ้น
ทำนิด ๆ หน่อย ๆ กับมันให้ดู PHP เป็นสิ่งที่มีความสามารถจริงๆ
>> ดังนั้นก่อนให้มาพูดคุยเกี่ยวกับ แฟ้มนี้ hello.php
ดังนั้นหากเราซูมใน bit-- เล็ก ๆ น้อย ๆ และตอนนี้ฉัน
การเรียงลำดับของการพยายามที่จะเลื่อน ทาง around-- มีที่เราจะไป
คุณจะเห็นมันเรียกว่า hello.php แต่ไวยากรณ์ของมัน
ดูเหมือนว่าไฟล์ HTML
นี้เป็นเพราะ PHP ที่เกิดขึ้นจริงในแฟ้มนี้
เป็นสิ่งที่ติดอยู่ระหว่าง บล็อกเครื่องหมายเครื่องหมายคำถาม
ทุกอย่างที่นี่ ถือว่าโค้ด PHP
>> และคุณจะสังเกตเห็นว่า เมื่อฉันไม่ข้อคิดเห็น
คุณจะเห็นที่คุ้นเคย สองทับไปข้างหน้า
และถ้าคุณจะจำได้ใน HTML ถ้าผมพิมพ์ข้อคิดเห็น
มันมีลักษณะบางอย่างที่ใกล้ชิดกับ นี้ซึ่งเป็นความคิดเห็นในที่ HTML
ดังนั้นจริงๆทุกอย่างระหว่าง ทั้งสองวงเล็บมุม
คือตอนนี้โค้ด PHP ซึ่ง จะสะท้อนให้เห็นในความเป็นจริง
ที่เป็นสัญลักษณ์ความคิดเห็นนี้เล็ก ๆ น้อย ๆ จะกลายเป็นแสดงความคิดเห็น
>> ดังนั้นทุกครั้งที่คุณเขียนโค้ด PHP แม้ ถ้ามีโค้ด HTML ไม่มีนอกของมัน
มันเป็นไปได้เสมอ ในวงเล็บมุมเหล่านี้
ที่มีเครื่องหมายคำถาม
การจัดเรียงของคุณสามารถคิดเกี่ยวกับวิธีการทั้งหมด it-- ของรหัสที่วิ่งเข้าไปในโปรแกรม C ของคุณ
ล้อมรอบใน int หลักโมฆะ รั้งหยิกท้ายคำสั่งวงเล็บปีกกา
และคุณจะเห็นในวงเล็บปีกกา PHP, เกินไป แต่นี่คือการจัดเรียงของ
เช่นวิธีการหลักของ PHP
>> ดังนั้นตอนนี้ทำอย่างไรเราจะทำอะไรใน PHP?
ตอนนี้ PHP เป็นโปรแกรม ภาษาที่ C-ชอบมาก
แต่จะดำเนินการบนเว็บ
ดังนั้นสิ่งหนึ่งที่ คุณจะ immediately-- หนึ่ง
สิ่งแรกที่คุณทำกับ C ได้รับสิ่งที่คุณพิมพ์ออกมาใช่มั้ย?
ดังนั้นใน C เราไม่ว่า ด้วยฟังก์ชั่น printf
เราได้ให้มันสตริง อาจจะมีเส้นใหม่
แล้วเรายกเลิก ด้วยอัฒภาค
>> ดังนั้นวิธีการที่เรากำลังจะทำว่า ใน PHP-- เพราะมันไม่ได้ค่อนข้าง printf
มันเป็นเรื่องเล็กน้อยของไวยากรณ์ที่แตกต่างกัน
วิธีการที่เราพิมพ์สิ่งที่ออก ใน PHP คือเราพูดว่า "ก้องสวัสดี"
หรือ "echo" คำใด ๆ
และที่มีผลกระทบจากการทำ printf กับสตริง "สวัสดี".
และจะเพิ่มบรรทัดใหม่ให้มัน
>> ถ้าอย่างนั้นเราในขณะนี้ทำให้ sure-- ฉันจะซูมออกอีกเล็ก ๆ น้อย ๆ bit--
ขอให้แน่ใจว่า รหัสที่ทำงาน
อาจเพราะมีมาก ดีเป็นข้อผิดพลาดในรหัสนี้
ว่าเราจะมีที่จะแก้ไขปัญหา
ดังนั้นเซิร์ฟเวอร์ทำงานอยู่แล้ว
ดังนั้นหากเราเลื่อนกลับลงไปที่ด้านล่าง ยุบเซิร์ฟเวอร์จะยังคงทำงาน
ดังนั้นถ้าเราเพียงแค่แตะที่นี้ นิด ๆ หน่อย ๆ ที่เหมาะสม here--
welcome-- เราควร get-- ดี
>> เรายังคงมี คุ้นเคย "ทักทาย" บทสนทนา
แต่เมื่อฉันพิมพ์ใน "สวัสดี" เราจะเห็น ว่าข้อความ "สวัสดี" เป็นจริง
พิมพ์ออกมาซึ่งเป็นสิ่งที่เป็น เราคาดหวังเพราะสะท้อนใน PHP
เป็นเช่นเดียวกับคำสั่ง printf
ดังนั้นกลับไปที่รหัสวิธีการในการตั้งค่า P ​​6 ได้ รหัสกระจายคุณมีให้
ทำให้มันเพื่อให้ PHP จะ การส่งออกสิ่งที่คุณ
พิมพ์บนหน้าจอก่อนหน้านี้?
>> และเพื่อให้การจัดเรียงของการตรวจสอบ เหตุผลที่เกิดขึ้นเรา
จะไปลงใน index.html ซึ่ง เป็นไฟล์ต้นฉบับแฟ้มที่
ปรากฏขึ้นบนหน้าจอนี้ ด้วยปุ่ม "ทักทาย"
คุณสังเกตเห็นว่ามี ทุกสิ่งที่คลาสสิก
ที่เราได้มาคาดหวังจาก HTML ดังกล่าว เป็นสิ่งเหล่านี้แท็กเหล่านี้ล้อมรอบ
ในวงเล็บมุมเช่น PHP แต่โดยไม่ใส่เครื่องหมายคำถาม
ซึ่งบ่งชี้ว่าเป็นสิ่งที่พิเศษให้กับ HTML
เรามีชื่อซึ่งเป็น "สวัสดี".
และคุณจะสังเกตเห็นว่าในขณะที่เราเห็น ชื่อเป็น "สวัสดี" ในทั้งสองกรณี
ลองเปลี่ยนคนนี้ "การพูดว่า" เพียงเพื่อให้เรา
สามารถแยกแยะตัวเองว่าเราอยู่ที่ไหน
>> แต่เราได้มีร่างกาย
แล้วบิตน่าสนใจ บิตที่แสดงขึ้นในรูปแบบ HTML ที่
เป็นองค์ประกอบแบบฟอร์มนี้
และเพื่อให้เราได้มีรูปแบบ
และนี่เป็นกุญแจสำคัญ
นี่คือวิธีที่เรากำลังทำงานกับ PHP
พารามิเตอร์การกระทำของ รูปแบบที่บอกว่า hello.php
คือสิ่งที่เรากำลังจะไปส่ง ค่าในรูปแบบนี้
ซึ่งเป็นที่ที่เรากำลังผ่าน พารามิเตอร์เพื่อที่จะพูด
>> คุณจะสังเกตเห็นสิ่งอื่นที่นี่ คือวิธีการที่ "ได้รับ".
มีสองหลัก วิธีการที่จะ
จะใช้ PHP ในการส่งผ่านข้อมูล ระหว่างหน้าเว็บ websites--,
rather-- ในงานนี้
และวิธีการเหล่านี้จะ "รับ" และ "โพสต์".
มีบางอย่างที่ละเอียดอ่อนอยู่ ความแตกต่างระหว่างและหลังการได้รับ
ที่เราจะได้รับ into-- เรา "จะได้รับ" ลงถ้าคุณจะ
>> แต่สำหรับ intents และ วัตถุประสงค์ในการรับและโพสต์
มีทั้งวิธีการเพียงว่า คุณผ่านพารามิเตอร์
ด้วยการประหารชีวิตแตกต่างกันเล็กน้อย
สำหรับตอนนี้เรากำลังจะใช้เพราะได้รับ ได้รับคือสิ่งที่ถูกนำมาใช้อย่างชาญฉลาด
ในไฟล์ PHP พีตั้ง 6
และอันที่จริงถ้าเราไปในและมอง ก่อนที่เราจะได้แก้ไขสิ่งอื่นใด
ฉันจะกล่าวทักทาย to-- คุณชื่ออะไร?
>> ผู้ชม: เอลเลียต
SAM LEVATICH: โอ้เอ้ย
ผมไม่ทราบว่าวิธีการสะกดที่
คุณสามารถสะกดว่าสำหรับฉันหรือไม่
ผู้ชม: E-L-L-I-O-T
>> SAM LEVATICH: I-O-T?
>> ผู้ชม: ใช่
>> SAM LEVATICH: เหมาะ
ตกลง.
ผมคิดว่าผมไม่ทราบวิธีการสะกดที่
ขอโทษด้วยกับเรื่องนั้น.
แต่ถ้าเราพูดว่า "ทักทาย" ก็ไม่ได้ มันจะไม่ปรากฏขึ้นบนหน้าจอ
แต่เพราะเรามีการปรับเปลี่ยน รหัสนิด ๆ หน่อย ๆ
แต่ถ้าเราไม่ "ทักทาย" - ตกลงดังนั้น "สวัสดี" อยู่ที่นี่
แต่ถ้าเราใช้เวลาใกล้ชิด ดู URL ของตัวเอง
เราจะเห็นว่ามันจะจบ ที่มีชื่อ hello.php? = เอลเลียต
>> ดังนั้นนี้เป็นวิธีการ การสื่อสารไปยังหน้าเว็บต่อไป
พารามิเตอร์ที่เราได้ผ่าน
เราได้กล่าวว่าชื่อ = เอลเลียต
และที่ท้ายที่สุดวิธี P ตั้ง 6 เข้าถึงตัวแปรที่เราผ่าน
ผ่านรูปแบบ
และนี่คือสิ่งที่ เป็นเฉพาะการร้องขอการ GET
ขอได้รับทำให้พารามิเตอร์ ที่รู้จักกันใน URL ของเว็บไซต์
>> และคุณจะจำมากเกินไป ใน P ตั้ง 6 ที่คุณ
มีการเขียนฟังก์ชั่น ที่เกี่ยวข้องกับความจริง
ที่สตริงแบบสอบถามนี้ สามารถอยู่หลังจากที่ไฟล์
อาจจะมีเครื่องหมายคำถามตามมา โดยพื้นหมายเลขใด ๆ ของตัวละคร
และนั่นคือสิ่งที่เกิดขึ้นที่นี่
และเหตุผลที่คุณต้องแยกว่า ในการดำเนินงานของคุณใน server.c P
ตั้ง 6 เพื่อให้คุณสามารถบอกได้ รหัส PHP ที่ชื่อเอลเลียต =
คุณจะต้องสามารถที่จะ แยกออกมาของ URL
เพื่อให้ไฟล์ PHP ในคำถาม รู้ว่าสิ่งที่มันถูกจัดการกับ
>> เพื่อหวังว่านี้จะช่วยให้ แรงจูงใจที่จะ server.c
ตอนนี้ที่เรากำลังจะย้ายที่ ด้านนอกของ C เข้า PHP
ดังนั้นขอจริงมุ่งเน้นไปที่การเข้าถึง สิ่งที่ผ่านได้รับการร้องขอในขณะนี้
ณ จุดนี้.
ฉันจะบันทึกนี้
เราไม่ได้เปลี่ยนแปลงอะไร
ดูเหมือนว่าเรามีสนามใส่
>> เรากำลังตั้งค่าคุณสมบัติบางอย่าง ในขณะที่เราสามารถทำแบบ HTML
เหล่านี้เป็นสิ่งที่ง่าย
เราไม่จำเป็นต้องเหล่านี้
แต่เราได้มีการเติมข้อความอัตโนมัติปิด ซึ่งโดยทั่วไป says-- คุณรู้ว่า
เมื่อคุณพิมพ์สิ่งที่ เข้าเว็บบางครั้ง
ก็พยายามที่จะเติมในสำหรับคุณ
ดังนั้นจึงเป็นสิ่งที่ดี
เราต้องการที่จะปิดเพื่อการนี​​้
นั่นคือการตัดสินใจที่ CS50
ดังนั้นเราจึงสามารถลบว่าถ้าเราต้องการ
>> ออโต้โฟกัสเพียงเกาะติดเคอร์เซอร์ รูปแบบที่เหมาะสมในการที่จุดเริ่มต้น
อีกครั้งไม่สำคัญมากเกินไป
>> แต่ name = "ชื่อ" - มันเล็ก ๆ น้อย ๆ หากินเพราะมันเป็นชื่อและชื่อ
แต่เราจะได้เปลี่ยน นี้เป็นอย่างอื่น
และในความเป็นจริงที่ว่า สิ่งที่เราจะทำตอนนี้
เราจะพูดว่า "คน" ซึ่ง เป็นประเภทเช่นชื่อ
ถ้าเป็นคนที่ถูกกำหนดโดยชื่อของพวกเขา
>> ดังนั้นขอปิดนี้ เปิดขึ้นเว็บไซต์ของเรา
ตั้งแต่เซิร์ฟเวอร์ของเราจะยังคงทำงาน อาปาเช่ 50 และเราจะพูดว่าสวัสดีที่นี่
เอลเลียตอีกครั้ง
ทำไมไม่?
สวัสดี.
และถ้าเราไปถึงที่นี่เราจะเห็น แล้วแทนชื่อ = เอลเลียต
มันบอกว่าคน = เอลเลียต
และที่เป็นผลโดยตรงจากความเป็นจริง ที่เราเพิ่งเปลี่ยนชื่อ = "คน."
>> ดังนั้นในองค์ประกอบของการป้อนข้อมูล รูปแบบ HTML ฟิลด์ชื่อ
เป็นตัวบ่งชี้สำหรับการ พารามิเตอร์ที่ถูกส่งผ่าน
มันเหมือนกับถ้าคุณกำลังสร้างฟังก์ชั่น "เพิ่ม" ที่เกิดในสองจำนวนเต็ม
และคุณกล่าวว่า int และ int ข
ที่จะเป็นชื่อและถ้า คุณต้องการรูปแบบอื่นซึ่ง
ที่เราสามารถทำได้เพียงแค่การคัดลอกและ วางแล้วเราจะมีชื่อข
>> ดังนั้นตอนนี้เราจะมีสองตัวแปร ที่มีการส่งผ่าน
จะได้รับการ website-- ต่อไป หน้าเว็บต่อไป hello.php
และเราสามารถมองเห็น อีกครั้งถ้าเราต้องการ
นี่คือวิธีที่ง่ายที่สุดที่จะจัดการกับ รหัสเว็บใน IDE โดยทั่วไป
คุณเริ่มต้นขึ้นเซิร์ฟเวอร์ได้รับมัน การทำงานและจากนั้นทุกครั้งที่คุณ
ทำการเปลี่ยนแปลงบางอย่างเพียงใกล้ แฟ้มที่เพียงเพื่อความปลอดภัย
กดปุ่มย้อนกลับ เป็นเพียงเล็กน้อยหากิน
เพราะมันอาจจะโหลดก่อนหน้านี้ รุ่นที่ไม่ได้รับการปรับปรุงมากที่สุดคนหนึ่ง
>> และจากนั้นคุณเพียงแค่คลิก ปุ่มอีกครั้งป๊อปที่เหมาะสม up-- โอ้
และตอนนี้มีสองรูปแบบ
ดังนั้นถ้าเราพิมพ์สิ่งหนึ่งที่เข้าไปในแต่ละ one-- "Hirshhorn jason" สำหรับ instance--
เราทักทาย
เรามองขึ้นไปบนพารามิเตอร์ของเรา
ดูเหมือนว่าเรามีเช่น คาดว่าเป็น = jason และ B = Hirshhorn,
ซึ่งเป็นตัวแทนของสองตัวแปร ที่เราส่งผ่านไปยังฟังก์ชั่นนี้
>> ดังนั้นตอนนี้เราจะได้รับจริง การใช้ฟังก์ชันการทำงานที่ว่าเรา
มีอยู่ใน P ตั้ง 6
ดังนั้นตอนนี้เราเพียงแค่สะท้อนสวัสดี
และที่ไม่ได้มีประโยชน์มาก
เราต้องการที่จะสะท้อนตัวแปรบาง ที่ถูกส่งผ่านมาให้เรา
และเรารู้ว่าชื่อของตัวแปรนี้
เรามีและเราได้ b
ดังนั้นเราจึงสามารถเลือกที่จะสะท้อนคนใดคนหนึ่ง
>> แต่วิธีการที่เราจะเข้าถึงมันได้หรือไม่
ดีมีบางอย่าง ตัวแปรใน PHP
และฉันจะเขียน พวกเขาในการแสดงความคิดเห็นที่นี่
สองคนที่สำคัญที่สุดคือได้รับ และโพสต์สำหรับวัตถุประสงค์ของเราในขณะนี้
เหล่านี้เป็นอาร์เรย์หรือที่ เทคนิคพจนานุกรม
ตัวแปรที่เราว่าเรา ผ่านไปยังหน้าเว็บต่อไปมีชีวิตอยู่
และเราจะได้เห็นวิธีการที่จะใช้พวกเขา
>> อีกโน้ตสั้น ๆ เกี่ยวกับโค้ด PHP และรายละเอียดบางส่วนของ it-- ใน C,
การประกาศตัวแปร หรือจะใช้ตัวแปร
ก่อนอื่นคุณต้องประกาศให้
และสิ่งที่คุณต้องทำเมื่อคุณ ประกาศบอกว่าพวกเขาเป็น int หรือถ่านข
คุณมีการประกาศประเภทเหล่านี้ ตัวแปรก่อนที่คุณจะสร้างพวกเขา
PHP-- คุณไม่จำเป็นต้องดำเนินการใด ๆ ที่
PHP ไม่ได้ขอ ประเภทของตัวแปร
และวิธีการที่คุณ สร้าง variable-- ค่อนข้าง
แทนที่จะบอก int, ถ่าน, string-- ซึ่งเป็นถ่านจริงๆ * ในขณะที่เรา know--
มากกว่าทำทั้งหมด ว่าเพราะทุกอย่าง
เป็นประเภทเดียวกัน typeless เราก็สามารถ
ใช้ตัวละครตัวหนึ่งซึ่ง เป็นเครื่องหมายดอลลาร์
และคุณจะเห็นว่ามันมีอยู่แล้ว popping ถึงสิ่งเล็ก ๆ น้อย ๆ การเติมข้อความอัตโนมัติ
และก็บอกว่า _GET และ _POST สองตัวเลือกที่ฉันมีที่มีอยู่
ถึงฉัน.
บางส่วนของสิ่งอื่น ๆ เหล่านี้เป็น ตัวแปรอื่น ๆ ทั่วโลกใน PHP
ที่คุณจะใช้มากกว่า หลักสูตรของ P ตั้ง 7
สำหรับตอนนี้เรากำลังจะไป มุ่งเน้นไปที่ได้รับการโพสต์
แต่นี้เป็นประโยชน์ สิ่งที่ IDE ไม่
ที่เมื่อคุณพิมพ์ ในเครื่องหมายดอลลาร์นั้น
มันจะเริ่มต้นการกรอกข้อมูลในตัวแปรทั่วโลก หรือตัวแปรที่คุณได้กำหนดไว้แล้ว
>> ดังนั้นหากคุณต้องการที่จะกำหนด ตัวแปรที่เรียกว่า "สตริง"
คุณก็สามารถตั้งค่าเท่ากับ "สวัสดี".
และมันเป็นพื้นง่ายเหมือนที่
แล้วเราจะทำ บางสิ่งบางอย่างเช่น "$ string ก้อง."
IDE ที่ควรจะโยนบาง ข้อผิดพลาดถ้าฉันทำอะไรผิด
เพื่อหวังว่าฉันทำทุกอย่างถูกต้อง
แต่ข้อบกพร่องที่เกิดขึ้นมักจะทำ
>> อีกสิ่งที่เกี่ยวกับการหากิน PHP ก็คือว่ามันไม่ได้รวบรวม
ดังนั้นด้วยโปรแกรม C คุณจะทำ กิจวัตรประจำวัน of-- โดยทั่วไป
ที่คุณจะทำการแก้ไข รหัสของคุณคุณจะบันทึกไว้
แล้วคุณจะ ทำให้มันที่ทำให้เป็น
ขั้นตอนที่เรียกว่าคอมไพเลอร์ เสียงดังกราวเพื่อให้รหัสของคุณข้อความนี้
ยื่นลงไปในปฏิบัติการ
PHP เป็น C-เหมือน แต่ก็ดำเนินการ ได้ทันทีโดยเว็บเบราว์เซอร์ของคุณ
ดังนั้นไม่มีทางที่จะรู้ว่าไม่มี
>> ทำให้ผู้ที่จะโยน ข้อผิดพลาดที่เป็นประโยชน์ใช่มั้ย?
มันจะเป็นเช่นคุณ ไม่ได้ประกาศตัวแปรนี้
ก่อนที่คุณพยายามที่จะใช้
ที่คุณทำทั้งหมดนี้ segfault stuff-- ไม่ดี segfault ทั้งหมดเรียงลำดับของเวลาสนุกที่
ที่มาพร้อมกับการแต่งหน้า
PHP เป็นดาบสองคม เพราะคุณจะไม่ได้รับข้อผิดพลาดเหล่านั้น
แต่นั่นก็หมายความว่าคุณจะไม่ทราบ จริงๆสิ่งที่ผิดปกติกับโปรแกรมของคุณ
ถ้าคุณเพียงแค่ใช้มันและมันไม่ทำงาน
แต่ดีบักควรจะชี้ บางสิ่งบางอย่างเล็ก ๆ น้อย ๆ ที่เป็นประโยชน์หวังว่า
syntactically ที่คุณสามารถแก้ไข
>> ดังนั้นตอนนี้ถ้าเราไปกว่า to-- กล่าวว่าขอปิดที่
เปิดใหม่
และเรากลับไปที่นี่
ดังนั้นเราจึงได้มีตัวแปร และเป็นขตัวแปร
และสิ่งเหล่านี้จะไม่สำคัญในท้ายที่สุด
เราจะเรียกพวกเขาชั่วโมงและ g ด้วยเหตุผลใดไม่มี
>> และเราทักทาย
ตอนนี้ดูเหมือนว่าสตริงของเรา "สวัสดี" แน่นอนการพิมพ์
เราได้สร้างตัวแปรที่เรียกว่า "สตริง" ตั้งค่าเท่ากับ "สวัสดี".
ขอให้สังเกตว่าเราไม่ได้มีที่จะทำ malloc หรือทำให้อาเรย์ตัวละคร
>> ใน PHP เพราะตัวแปร มี typeless, สตริง
เป็นเช่นเดียวกับถ่านสำหรับ intents และวัตถุประสงค์
ซึ่งอาจเป็น "ไฮ."
นี้อาจเป็นเพียงแค่ตัวอักษร k
นี้จะมีหมายเลข 1
และมันก็ไม่ได้ดูแล
PHP ไม่เกี่ยวกับการดูแล ประเภทของตัวแปรของคุณ
หรือมันไม่ดูแล
มันใส่ใจเมื่อคุณพยายาม และทำสิ่งที่มีมัน
แต่ก็ไม่ได้สนใจใน ขั้นตอนการประกาศ
>> และเช่นเดียวกับที่คุณสามารถใน C คุณสามารถ ประกาศสตริงในสแตกเช่นนี้
แต่บอกว่า "สแต็ค" เป็นเล็ก ๆ น้อย ๆ บิตของการเรียกชื่อผิดที่อาจเกิดขึ้นเมื่อ
เรากำลังพูดถึง PHP
แต่เราไม่ต้องกังวลเกี่ยวกับการที่
ดังนั้นเราจึงมีสตริงของเรา "สวัสดี" และเราสะท้อนสตริง
ดังนั้นตอนนี้เราได้กล่าวถึงตัวแปร
ดังนั้นตอนนี้เราต้องการที่จะพูดคุยเกี่ยวกับการได้รับและ โพสต์และดำเนินการสิ่งสุดท้ายที่
จำเป็นจริงๆได้รับกลับขึ้นนี้ การทำงานของ P ตั้ง 6
ดังนั้นตอนนี้เรา สะท้อนสตริง แต่เรา
จะมีตัวแปรเหล่านี้จะได้รับและโพสต์
และเนื่องจากเรากำลังใช้ วิธีการที่จะได้รับมัน
ดูเหมือนว่าธรรมชาติที่ตัวแปรของเราที่ เรากำลังสนใจในทั้ง A และ B
จะตั้งอยู่ในอาร์เรย์ หรือพจนานุกรมได้รับในทางเทคนิค
>> ดังนั้นหากเราตั้งรับเช่นนี้ กับ groups-- ของคุณผมกดใส่
และมันก็ไม่ชอบ it-- แต่ที่นี่เรามีได้รับ
และเพื่อให้ได้รับอยู่แล้ว
ดังนั้นเราสามารถเริ่มต้นในการเข้าถึง บางส่วนขององค์ประกอบของการ GET
ถ้าเราไม่ได้รับไวยากรณ์สำหรับนี้ อาร์เรย์ใน PHP เป็นอย่างมากเช่น C-
เรามีสองวงเล็บของเรา
>> ดังนั้นถ้าเราบอกว่าจะได้รับในปกติ อาร์เรย์เราสามารถเข้าถึง
ดัชนีข้อที่ศูนย์ดัชนีแรก
PHP เป็นศูนย์ดัชนี
เราอาจจะบอกว่าศูนย์หนึ่ง สิ่ง two-- เช่นนี้
และผมได้รับการบอกว่าจะได้รับ เป็นเทคนิคที่พจนานุกรม
ดังนั้นสิ่งที่ PHP จะทำภายใต้ประทุน, ซึ่งเป็นนิด ๆ หน่อย ๆ ดีกว่ากว่า C,
มันมีอยู่แล้วให้คุณบาง ฟังก์ชั่นพจนานุกรมซึ่ง
เป็นจริงตารางแฮช หรือพยายามที่จะคาดคะเน
หรือในทางเทคนิคก็ อาจจะลองเป็นอย่างดี
แต่ PHP คือการใช้ตารางแฮช, ซึ่งเป็นพจนานุกรมที่มีประสิทธิภาพ
>> และเพื่อให้เราทราบชื่อ ของตัวแปรของเราใช่มั้ย?
มันถูกส่งผ่านไปใน สตริงแบบสอบถามโดย PHP
เรามี = ชั่วโมงและ B = กรัมที่ข เป็นชื่อของตัวแปร
ดังนั้นวิธีการที่เราสามารถเข้าถึง ค่าที่สอดคล้องกับที่สำคัญ
อยู่ในพจนานุกรมของเราคือ เพียงแค่บอกว่า _GET_GET ["เป็น"]
>> ดังนั้นตอนนี้เรามี _GET ["เป็น"]
และถ้าเราเพียงแค่เปลี่ยนภายใน เสียงสะท้อนของเราถ้าเราสะท้อน _GET_GET ["เป็น"] -
และเราจะดูว่าการดีบัก โยนความผิดพลาดใด ๆ เกี่ยวกับ this--
เราจะประหยัดและปิดออก
เปิดมันขึ้นมา
ดังนั้นเราเพียงแค่การทำที่ถูกต้อง ในขณะนี้ดังนั้นขไม่ควรเรื่อง
"เธอ" และ "เขา" - "ครวญเพลง". "เธอ" และ "ครวญเพลง".
ฟังดูเข้าท่า.
>> และมันก็พิมพ์ออกมา "เธอ" ซึ่งเป็นคนบ้า
แต่นั่นคือสิ่งที่ ที่เกิดขึ้นในการตั้งค่า P ​​6
โดยทั่วไปสิ่งที่ P ตั้ง 6 เป็น doing-- สะท้อนสวัสดี
name-- ที่มันมี ชื่อตัวแปรและมันก็
ขอให้คุณพิมพ์ในบิตของข้อความที่
นอกจากนี้ยังมีบางส่วน รหัสเพิ่มเติมที่
รวมถ้างบ ที่เราสามารถทำตอนนี้
>> เราสามารถพูดได้ถ้ามีอยู่ซึ่ง เป็นฟังก์ชั่นภายใน PHP ที่
_GET กับขีดเส้นใต้ "ชื่อ" - ซึ่งเป็นพื้นว่า
"ถ้าชื่อที่ได้รับการเติมเต็มใน" เพราะ เราจะได้มีเพียงแค่คลิกที่ปุ่ม
จะส่งแบบฟอร์มโดยไม่ต้อง พิมพ์อะไรลงในช่องที่
และเราว่าในห่อของเรา วงเล็บปีกกาที่เป็นมิตร
เราสามารถมีคำสั่งอื่น
และนั่นคือทั้งหมดที่อยู่ในมุม PHP วงเล็บเครื่องหมายคำถามวงเล็บมุม
ถ้าคุณจะ.
>> และตอนนี้เราจะดูว่าการทำงานนี้
ฉันให้รอจนการแก้ปัญหา และอึออกมากับฉันโดยทั่วไป
แต่มันก็ยังไม่ได้
บางทีมันอาจจะในขณะนี้ เพราะผมพูดคุยเกี่ยวกับ
ได้.
มันไม่ได้ในความเป็นจริง
ดังนั้นไม่มีอะไรจะแสดงขึ้น
นั่นเป็นเพราะของบางสิ่งบางอย่างที่ไม่ถูกต้อง ที่ผมเขียนไว้ในโค้ด PHP
และที่ผมกล่าวถึงการแก้จุดบกพร่อง เป็นเรื่องยุ่งยากเพราะใน PHP เรา
ไม่ได้รวบรวมไว้ก่อน และคอมไพเลอร์ที่ไม่ต้องการ
ที่นี่คือข้อผิดพลาดของคุณ
>> แต่สิ่งที่เราสามารถทำได้ is-- ทำคนจำ
วิธีการที่จะมองไปที่เครือข่ายที่แตกต่างกัน ขอให้ PHP-- หรือที่เว็บไซต์
ส่ง?
[? มาลิน?] ทำอย่างนี้ใน บรรยายครั้งหรือสองครั้ง
คุณจำที่เราไปหา หนี้ที่แตกต่างกันและ 200 OKs,
รหัสเหล่านี้ทั้งหมดที่ถูกส่ง ผ่านทางหน้า HTTP จากเว็บไปยังหน้าเว็บ?
ไม่มีใครจำได้ ที่เราจะไปทำเช่นนั้น?
>> ผู้ชม: หน้ามา
SAM LEVATICH: แหล่งที่มาของหน้า
ที่แน่นอน
ถ้าคุณไปที่หน้า Source-- ที่สมบูรณ์แบบ
ดังนั้นหน้ามาดึงขึ้นตรวจสอบ
>> และฉันใช้ Safari
จำนวนมากของคุณอาจจะ จะใช้ Chrome หรือ Firefox
แต่ตราบใดที่คุณอยู่ ใน browser-- ใด ๆ ที่ทันสมัย
และความรู้สึกอิสระที่จะทำตาม พร้อมถ้าคุณต้องการ
คุณสามารถพิมพ์รหัสนี้หรือ เพียงแค่มองภายในชุด P 6
ไดเรกทอรีสำหรับบางสิ่งที่คล้ายกัน
hello.php คือสิ่งที่เรากำลัง กำลังทำงานในการลอกเลียนแบบ
>> ดังนั้นจึงมีความหลากหลายของแท็บ
เราสามารถมองไปที่ทรัพยากรทั้งหมด
เราสามารถมองเห็นรหัสแหล่งที่มา
ดังนั้นดูเหมือนว่ามันไม่ได้ ได้รับร่างกายที่ผ่านมาในที่สุด
พบข้อผิดพลาดใน PHP และมัน หยุดการโหลดหน้าเว็บทั้งหมด
เราไม่ได้มีจุดสิ้นสุด สำหรับแท็ก HTML หรืออะไร
>> และถ้าเรามองไปที่เครือข่ายที่เราสามารถทำได้ เห็นว่าเรากำลังถูกส่งคำขอ
นี่คือโดเมน
นี่คือที่อยู่
มันเป็นเอกสาร
เรากำลังใช้วิธีการ GET
>> และมันก็เป็นสีแดง
หรือมันเป็นสีแดงเมื่อฉัน ไม่ได้เลือก
ฉันจะยกเลิกมันได้หรือไม่
ดีก็เป็นสีแดง
ผมขอฟื้นฟู
มีมันเป็น
ตอนนี้มันเป็นสีแดง
>> ดังนั้นจึงเป็นสีแดงซึ่งหมายถึง มันล้มเหลวที่ไ​​ม่ดี
ดังนั้นขอให้ตรวจสอบว่าทำไมมันไม่ล้มเหลว
ดังนั้นสิ่งที่มาหน้าสามารถ โดยทั่วไปบอกคุณเป็นสิ่งที่คุณ
ไม่ได้ทำงานที่เรามีอยู่แล้วสามารถมองเห็น
ดังนั้นจะมีความนึกคิด เป็นเครื่องมือที่มีประโยชน์มากขึ้น
และมีบางส่วนขยายเบราว์เซอร์ ที่ช่วยให้คุณแก้ปัญหา PHP,
แต่เราไม่ได้ไป จะเขียนตันของ PHP ที่
ดังนั้นจึงเป็นเรื่องที่ดีที่สุดอาจเป็นเพียงแค่ มองผ่านรห​​ัสของคุณ
อย่างระมัดระวังและเพียงให้แน่ใจว่า มันไม่ได้ทำอะไรอย่างอื่น
>> ดังนั้นเรามาดูว่ารูปแบบนี้ ถ้าคำสั่งที่เป็นปัญหาคือ
ฉันต้องการที่จะโหลดที่กลับมาที่นี่
สวัสดีทักทาย.
จึงมีปัญหามี
>> ดังนั้นสำหรับไวยากรณ์ที่ถูกต้อง ของ PHP, PHP เป็นไป
จะเป็น C-เช่นในการที่คุณจะเห็นลูป
คุณจะได้ดูว่างบ
คุณจะเห็นเพื่อน ๆ ทุกคนเหล่านี้ ที่คุณคุ้นเคย
ที่มีมากกว่าการเรียนการสอน ภาคการศึกษา CS50 นี้
แต่วิธีที่ดีที่สุดที่จะคิดออกว่าจะ ทำอะไรบางอย่างใน PHP คือ Google มัน
หรือดูตัวอย่างของโค้ด PHP บาง เพราะคุณรู้ว่าการทำงาน
>> คุณจะรู้ว่าสิ่งที่คุณสามารถ ทำอย่างไรกับโปรแกรม
คุณสามารถห่วง
คุณสามารถห่วงหลายครั้งตามที่คุณต้องการ
คุณสามารถห่วงในทุก ประเภทวิธีที่แตกต่าง
คุณสามารถสร้างฟังก์ชั่น
คุณสามารถสร้างฟังก์ชั่นที่ เรียกฟังก์ชั่นอื่น ๆ ฟังก์ชั่น
ที่เรียกตัวเองว่า
และคุณมีชื่อสำหรับแนวคิดเหล่านี้
คุณได้มีการเรียกซ้ำห่วง ถ้ากระแสควบคุมอื่น ๆ
และเพื่อให้ Google เป็นเพื่อนที่ดีที่สุดของคุณ
แม้จะพูดว่า "ถ้า PHP คำสั่ง "และมีจะ
เป็นตันโพสต์ด้วย คำตอบของคนอื่น ๆ
ที่เคยมีคำถามที่คล้ายกันกับคุณ ที่เพิ่งเริ่มต้นออกด้วย PHP
และอยากรู้เกี่ยวกับสิ่งที่ไวยากรณ์
>> เพราะเรามีความหรูหราของการเป็น สามารถดูรหัสที่อยู่ในชุด P 6
เราจริงดึงมันขึ้นมาและเห็นว่า ตกลงนี่เป็นสิ่งที่น่าสนใจ
ดังนั้นนี่คือสิ่งที่มันเป็นจริง ดูเหมือนใน P ตั้ง 6
ดังนั้นหากเราผ่านไปนี้ เราจะเห็นว่าเราได้
มีหลายน้อยเหล่านี้ คำถาม PHP เหมือนบิตเครื่องหมาย
>> และมีไม่วงเล็บปีกกา
มีทวิภาคเป็น
และมีหยิก วงเล็บใน PHP แต่นี่
เป็นรูปแบบและวิธีการในการดำเนินการ PHP ที่ทำงานได้ดีกับ HTML
เพราะในขณะที่คุณจะเห็นเรากำลังปิด ปิด PHP เหล่านี้ bits-- elses
และไอเอฟเอและทั้งหมดของ that-- แล้ว เรากำลัง interspersing HTML ภายในพวกเขา
ขณะที่ยังคงดังต่อไปนี้ การควบคุมการไหลกำหนดโดย PHP
>> ดังนั้นฉันแค่ไป ได้อย่างรวดเร็วใช้เวลาเดินผ่านทางนี้
เพราะมันเป็นจำนวนมากเหมือนกัน แนวความคิดที่ว่าเรากำลังทำอะไรก่อน
เรามีถ้าไม่ว่าง วงเล็บ _GET_GET ["ชื่อ"]
ทั้งหมดนี้เป็นสิ่งเดียวกัน
เรากำลังใช้พจนานุกรม _GET ที่ PHP ส่งตามคำขอของรูปแบบ
เพราะมันเป็นพารามิเตอร์ของ การกระทำและวิธีการที่จะได้รับ
และแล้วที่สิ้นสุดที่
ลำไส้ใหญ่เป็นมหาเทพที่จะเพียงแค่ทำเช่นนี้ ถ้าหากคำสั่งประเมินที่แท้จริง
มันเหมือนวงเล็บปีกกา
และในความเป็นจริงมันเป็นวงเล็บปีกกา ในภาษาอื่น ๆ เช่นงูหลาม
ซึ่งคุณอาจพบถ้าคุณเพียง ทำที่สำหรับโครงการสุดท้ายของคุณ
>> และแล้วบรรทัดนี้สวัสดี
จากนั้นเราได้มีสิ่งนี้แปลก
เรามีวงเล็บเพิ่มเติม
ไม่มี HTTP there-- หรือ PHP เป็นขอโทษ
แต่มีเครื่องหมายเท่ากับ
และแล้วเราก็มีฟังก์ชั่น htmlspecialchars (_GEThtmlspecialchars (_GET ["ชื่อ"])
นี้เป็นประเภทชอบมากขึ้น รุ่นสูงของก้อง
เช่นเดียวกับที่เราได้สะท้อนเป็นวิธีการ พิมพ์สิ่งที่ออกใน PHP
นี้เป็นฟังก์ชั่นที่ ที่กำหนดไว้ใน PHP ที่
จะจัดการกับบางอย่างที่น่ารังเกียจมากขึ้น ตัวอักษรและค่าไบต์
ที่คุณสามารถผ่านมัน
ก็มักจะปลอดภัยที่สุดที่จะใช้นี้
แต่เสียงสะท้อนจะทำงาน เพียงแค่ปรับถ้าเราไม่
การจัดการกับสิ่งที่น่ารังเกียจเกินไป
>> และเพื่อให้มีเหมือนกัน ผลของพื้น
สิ่งนี้ในระหว่างคำถาม เครื่องหมายถูกประเมินโดย PHP
htmlspecialchars กลับ HTML ที่ดี ค่าพิมพ์ _GET_GET ["ชื่อ"] กล่าวคือ
สิ่งที่เราพิมพ์ในรูปแบบ
และจากนั้นก็จะกล่าวทักทาย พื้นที่จุลภาคแล้วว่า
นั่นคือสิ่งที่ทั้งระหว่าง วงเล็บมุม
จะถูกแทนที่ด้วยสิ่งที่ htmlspecialchars ทำให้ออก
เพื่อให้เป็นที่คล้ายกันโดยทั่วไป กับสิ่งที่เรากำลังทำ
และเรามีคำสั่งอื่นที่ สวัสดีโลกซึ่งจะทำให้ความรู้สึก
ดังนั้นตอนนี้ขอกลับไปที่ของเรา รหัสและดู exactly-- โอ้
ผมบอกว่ามีอยู่ซึ่งไม่ได้เป็น สิ่งที่เราอยากจะทำ
เราอยากจะบอกว่าไม่ว่างเปล่า
>> ดังนั้นนี้ควรจะทำงานเล็ก ๆ น้อย ๆ ดีขึ้นเล็กน้อยไม่ _GET_GET ที่ว่างเปล่า ["ชื่อ"]
และที่รั้งหยิก ตรงกับที่วงเล็บปีกกา
เรามีวงเล็บปีกกาของเราที่นี่
สะท้อนสวัสดี _GET ["ชื่อ"]
ลองมาดูว่านี้ทำงานได้ดีขึ้นเล็กน้อย
เรายังคงทำงานเซิร์ฟเวอร์ของเรา
สวัสดีเจสัน
และการทำงานในครั้งนี้
และเพื่อให้เป็นหลักฐาน ที่คุณสามารถทำได้จริง
ใช้วงเล็บปีกกาที่คุณ รู้จักและชื่นชอบในโค้ด PHP ใน HTML
รหัส PHP ให้กับ คุณ pset 6-- pset 6--
มีวิธีอื่น ทำที่สิ่งเดียวกัน
>> ดังนั้นตอนนี้เรามีอำนาจ
เรามีการทำงานในการดำเนินการ รหัส PHP ที่เราเห็นใน pset 6
ด้วยตัวเองโดยทั่วไป
ก่อนที่ผมจะย้ายไปสิ่งที่เป็นบางส่วนของ คำถามที่คุณต้องมาถึงจุดนี้?
ใช่ [ไม่ได้ยิน]
>> ผู้ชม: ดังนั้นในรุ่นใน pset6 ที่ เมื่อคุณเรียกมันมีช่องว่าง
และฉันสามารถดูที่ที่มีพื้นที่เป็น หลังจากจุลภาค [ไม่ได้ยิน] เริ่มต้น
วงเล็บเปิด
คุณจะทำอย่างไรรวมพื้นที่ใน วิธีการที่คุณเขียนรหัสของคุณเองหรือ
>> SPEAKER: นั่นเป็นคำถามที่ดี
และเพื่อให้คิดออกว่า
เพื่อให้เป็นคำถามที่ดีจริงๆ และคนที่ผมไม่ได้พิจารณา
แต่ขอทำด้วยกัน
>> ดังนั้นครั้งแรกของทุกสิ่ง ที่ฉันทำกับก้อง
คือเมื่อเราเพียงแค่สะท้อน สวัสดีมันจะออกผลลัพธ์สวัสดี
ถ้าเราสะท้อนตอนนี้ได้รับในการแยก บรรทัดขอตรวจสอบสิ่งที่เกิดขึ้น
ดังนั้นเราจึงสามารถคลิกที่นี่
เราให้ว่าไฮเจสัน
ดังนั้นอีกครั้งเราไม่ได้มีพื้นที่นี้
>> และนั่นก็เป็นเพราะใน PHP เมื่อเราได้สะท้อน
ไม่ว่ากี่ spaces-- อ้างไม่ V--
ไม่ว่ากี่ช่องว่างที่เราใส่ใน here-- ถ้าตอนนี้เราโหลดขึ้นมาอีกครั้ง
ไฮเจสัน
ใช่เห็นทุกคน ช่องว่างได้กินขึ้น
และนั่นคือสิ่งที่ ฟังก์ชั่นเสียงสะท้อนไม่
>> ดังนั้นในการดูแลของ พื้นที่ที่และนี่คือ
หนึ่งในเหตุผลที่ ทำไมคุณไม่ได้ใช้เสียงสะท้อน
และคุณใช้ htmlspecialchars แทน
ฉันอยากรู้สิ่งที่จะ เกิดขึ้นถ้าเราทำอย่างนี้
ที่เราปิดล้อมพื้นที่ในสตริง
ผมตรงไปตรงมาไม่แน่ใจว่า จะเกิดขึ้นเมื่อผมทำเช่นนี้
>> เพื่อให้เป็นวิธีหนึ่ง
นั่นเป็นวิธีหนึ่งที่จะดูแลมัน
หากคุณห่อพื้นที่ใน สตริงแล้วพื้นที่
จะถูกส่งออกเป็นอย่างดีโดยก้อง
สิ่งที่ปลอดภัยที่สุดที่จะทำคือ ที่จะทำ htmlspecialchars
นั่นคือเสมอเดิมพันที่ปลอดภัย
แต่ตอนนี้เรามีวิธีที่จะทำ กับเสียงสะท้อนในกรณีที่จำเป็น
และในทำนองเดียวกันเราสามารถ สะท้อนสายใหม่ทั้งหมดที่เรียงลำดับ
ของสิ่งที่คุณกำลังทำคุ้นเคยใน PHP
>> คนอื่นสิ่งที่ใด ๆ เพิ่มเติม คำถามที่คนอื่น ๆ ที่มี
ที่จุดเกี่ยวกับ PHP นี้หรือไม่?
ถ้าคนมีขึ้นปลายเล็ก ๆ น้อย ๆ ฉันมีความสุขที่จะอยู่หลังนิด ๆ หน่อย ๆ
และพูดคุยเกี่ยวกับบางส่วนของการเริ่มต้น
และก็ยังทุก livestreamed, และเก็บซึ่งจะบ้า
>> อยู่แล้วดังนั้นตอนนี้ขอทำบางอย่าง สิ่งที่สูงขึ้นด้วย PHP
และหนึ่งในสิ่งแรกที่คุณ ถูกนำไปใน C เป็นห่วง
และ PHP มีประสิทธิภาพมากขึ้นสำหรับ เรียกว่าห่วงห่วง foreach
และดูเหมือนว่า this-- สำหรับแต่ละว่างเปล่า ที่ว่างเปล่าเป็นวงเล็บปีกกาทำสิ่ง
ดังนั้นนี่เป็นพื้นจดชวเลข
>> ดูที่ห่วงเป็น การก่อสร้างการสร้างประโยค
ได้วางแผนใน C และในการชุมนุม ภาษาและสิ่งที่ต้องการ
วางแผนใน C ได้อย่างแม่นยำตามที่จดชวเลข สำหรับจำนวนมากของประเภทลูป
ว่าคนที่จะได้เห็น
เช่นเมื่อคุณเขียนห่วงมี มักจะเป็นขั้นตอนการเริ่มต้น
การดำเนินการที่เหมาะสมในการเริ่มต้นเป็น สภาพที่วงจะ stop--
และที่คุณลักษณะ นั่นเป็นเพียงในวงในขณะที่
หรือในขณะที่มีตรง เพียงแค่ว่า feature-- แล้ว
ขั้นตอน incrementation ที่สิ้นสุด
และเพื่อให้คุณมักจะพบว่าตัวเองต้องการ เขียนรหัสดังต่อไปนี้
ฉันจะลบบางส่วนของนี้
>> แต่ถ้าเราทำซ้ำผ่าน ตัวอักษรในอาร์เรย์
ตัวอย่างเช่นเราได้ มีอาร์เรย์ของตัวอักษร
ขออภัยที่จะนำกลับ C. ฉันรู้ว่า คุณคิดว่าคุณได้ทำ
แต่มันก็เป็นเพียงเพื่อวัตถุประสงค์ในการ ของการเรียนรู้ PHP, ผมสัญญาว่า
ดังนั้นถ้าคุณมีถ่าน STR 8 ความยาวและขอ
บอกว่ามัน Hellooo กล่าวว่า ด้วย null ต่อท้าย
ที่ดีเพื่อให้เป็นสตริงของเรา
>> และจากนั้นเรามีห่วง
เรามี int ฉันเท่ากับ 0
และเราต้องการที่จะออกจากเมื่อ str ของผมเท่ากับไม่เท่ากับโมฆะ,
เพราะเราออกเมื่อมันเท่ากับ null
แล้วเราจะทำฉัน ++ ในแต่ละ จุดในการห่วง
ทำอะไรกับ STR ของฉัน
>> ดังนั้นสูตรพื้นฐานคือ เรามีอาร์เรย์ที่เรา
ต้องการที่จะรักษาองค์ประกอบเฉพาะกิจการ
แต่สิ่งที่เราต้องทำคือการที่เราต้อง โดยทั่วไปสร้างจำนวนเต็มแยกต่างหาก
ตัวแปรที่นับขึ้นทุก เวลาที่เราเดินผ่านห่วง
และจากนั้นเราจะต้องแล้วโทร strstr [ผม] เมื่อสิ่งที่เราอยากจะทำ
เป็นเพียงการไปของตัวละคร โดยตัวละครใช่มั้ย?
เราไม่ต้องการที่จะเพิ่มเป็นระดับ จำนวนเต็มและจากนั้นใช้จำนวนเต็มที่
ในการเข้าถึงตัวละครแต่ละตัวเป็นรายบุคคล
เราต้องการจริงๆตัวละครตัวละคร
>> และเพื่อให้แต่ละอย่างชาญฉลาด คำนวณว่าสำหรับเรา
ถ้าเรามีอาร์เรย์ซึ่ง เราสามารถประกาศใน PHP
เป็น just-- ถ้าเรามีตัวแปร เรียกว่าขอเรียกว่าอาร์เรย์
ปาฏิหาริย์ของการพิมพ์ไม่เป็น เช่นเดียวกับตัวแปรอื่น ๆ
มันเป็นเพียงอาร์เรย์
และเรามีเล็ก ๆ น้อย ๆ [ไม่ได้ยิน] เช่น 1, 2, 3, เพียงแค่การจัดเรียงของอาร์เรย์ที่เริ่ม
มันตกลงก็ไม่ได้ชอบ foreach ของฉัน
>> แต่ถ้าเราไม่ foreach-- จริง ฉันพิมพ์ที่ผิดเล็ก ๆ น้อย ๆ
มีสองวิธีที่จะทำวง foreach เป็น
มีอยู่ในไวยากรณ์และเป็นไวยากรณ์
และเรากำลังจะทำ ไวยากรณ์ในครั้งแรกไม่เป็น
นั่นเป็นความผิดพลาดของฉัน
>> NUM foreach ดังนั้นในอาร์เรย์สะท้อน NUM
และ PHP จะตะโกนที่ ฉันด้วยเหตุผลบางอย่าง
มันหาที่ไม่คาดคิด ในในบางสิ่งบางอย่าง
ซึ่งเป็นนิด ๆ หน่อย ๆ ของรำคาญ
แต่เราจะคิดออก เหตุผลที่อยู่ในช่วงเวลาที่
จึงไม่ชอบที่
ลองใช้เป็น
มันชอบเป็นไวยากรณ์ดูเหมือนว่า
เพื่อขอทำอาร์เรย์ foreach เป็น NUM
>> ดังนั้นคำอธิบายเล็ก ๆ น้อย ๆ ของสิ่งที่เพิ่งเกิดขึ้น
จะเป็นไวยากรณ์ saying-- กันครั้งแรก ให้ดูที่สิ่งที่พิมพ์ออก
ดังนั้นเราจึงเปิด IDE ของเรา
เราไปที่นี่
เราพูดว่าสวัสดีเจสัน
และมันได้ 123 ซึ่งเป็นเนื้อหา ของอาร์เรย์ที่เราสร้างขึ้นมาด้านบน
>> ดังนั้นการดำน้ำในห่วง foreach นี้ เรามีตัวแปรที่เรียกว่าอาร์เรย์
ซึ่งเป็นอาร์เรย์ของสามตัวเลข
แล้วเราจะทำ foreach อาร์เรย์เป็น NUM ก้อง NUM
และที่อื่น ๆ อีกมากมาย ที่ใช้งานง่ายกว่าสำหรับลพบุรี
เรากำลังจะบอกว่าการรักษาแต่ละ สิ่งที่อยู่ในอาร์เรย์เป็น NUM ที่
ฉันต้องการให้คุณให้ฉัน NUM
และนั่นคือสิ่งที่มันทำ
>> PHP มีการคำนวณว่า เมื่อคุณพูดอาร์เรย์ foreach,
และคุณจัดการกับอาร์เรย์สิ่งที่ คุณจะต้องการที่จะย้ำกว่า
เป็นตัวละครในอาเรย์ที่ เป็น ints ในอาร์เรย์ที่
เป็นองค์ประกอบในอาร์เรย์ที่
และก็ให้คุณจัดเก็บ ตัวแปรที่เป็น NUM,
แล้ว NUM เพียงเอาท์พุท ทันทีแทนที่จะพูดว่า
ฉันมีตัวแปรที่เรียกว่าฉันและ แล้วฉันต้องการที่จะส่งออก strstr [ผม]
>> และอื่น ๆ ที่ช่วยให้เราที่จะทำสิ่งดีๆ
เช่นเดียวกับพื้นเราไม่ได้มีการสร้าง ตัวแปรเหล่านี้เช่นฉันและทำทุกอย่าง
สิ่ง incrementation นี้ในตอนท้าย
PHP ดูแลทุกที่สำหรับคุณ
>> ดังนั้นตอนนี้เราจะมาพูดคุยเกี่ยวกับ foreach เป็น มันใช้กับพจนานุกรม _GET ของเรา
ดังนั้นเราจะแสดงความคิดเห็นออกไปอย่างรวดเร็วนี้
ดังนั้นเราจึงมีอาร์เรย์ _GET ของเรา
เรามีตัวแปรนี้
และก็มีบางสิ่งที่อยู่ในนั้น
>> ตอนนี้เรามีเพียงหนึ่งตัวแปร ถูกส่งผ่านไปซึ่งเป็นชื่อ
แต่ถ้าเรากด Enter ตอนนี้ เราสามารถมีสองตัวแปร
เราสามารถมีชื่อและอายุเช่น ถ้าเราต้องการที่จะได้รับอายุและยัง
ชื่อของบุคคลที่ขันพอ
>> ดังนั้นตอนนี้ _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-- มากขึ้น
SPEAKER: ใช่
ผู้ชม: ตัวบ่งชี้ที่ that's-- --that
SPEAKER: ใช่
นั่นคือไวยากรณ์ foreach แต่ใช่
>> ผู้ชม: ไม่มีประเภท
ดังนั้นสิ่งที่หากคุณต้องการ อายุเป็นเพียงตัวเลขหรือไม่?
มีวิธีที่จะทำหรือไม่?
>> ลำโพง: มีวิธีการตรวจสอบว่าเป็น สอดคล้องกับตัวแปรบางประเภท
ดังนั้น PHP ถามเล็ก ๆ น้อย ๆ จาก คุณเพราะมีหลายประเภทใน
วิธีการบางอย่างจะถามน้อย
ในบางวิธีก็ขอให้มากขึ้น
เพราะถ้าคุณจะมีเพียง สิ่งที่อยู่ในตัวแปร
คุณมีความคิดว่าสิ่งที่ประเภทไม่มีมันเป็น
แต่ถ้าคุณเป็นสมาร์ทเกี่ยวกับตัวแปร ที่คุณกำหนดชนิดและให้แน่ใจว่า
ที่ทำหน้าที่เพียง return-- คุณ ต้องการฟังก์ชั่นการกลับมาเท่านั้น
ประเภทหนึ่งของค่าดังนั้น ที่คุณสามารถโดยทั่วไป
คาดหวังว่าตัวแปรที่คุณได้รับกลับมา จากฟังก์ชั่นจะเป็นประเภท
ที่คุณคิดว่ามันจะเป็นพื้น
>> แต่มีวิธีการบางอย่าง โดยที่คุณสามารถตรวจสอบ
ผมจำไม่ได้พวกเขา ปิดด้านบนของหัวของฉัน
ผมกำลังรอให้มันเปลี่ยนเป็นสีฟ้า
isint?
isstr?
มีวิธีการที่มี ที่สร้างขึ้นใน PHP ที่สามารถ
ตรวจสอบประเภทของตัวแปรสำหรับคุณ
แต่ถ้าคุณกำหนดตัวแปร อย่างชาญฉลาดที่คุณไม่ควร
ต้องทำมากเกินไปใน pset 7
แต่วิธีการเหล่านั้นมีอยู่จริง
และนั่นคือสิ่งที่ คือในภาษาของตัวเอง
และผมก็จำไม่ได้ว่าไวยากรณ์ได้อย่างแม่นยำ
เรายังสามารถมองมันได้
แต่เวลาเป็นของสำคัญ
มีไม่คนอื่น มีคำถามใด ๆ เพิ่มเติมหรือไม่
ใช่.
>> ผู้ชม: ฉันมีเพียงหนึ่ง
ดังนั้นที่คุณกล่าวถึงวิธีการ GET แต่ คุณไม่ได้พูดถึงวิธีการ POST
พวกเราจะกลับมาที่?
>> SPEAKER: ใช่เราจะ จะกลับมาที่
นั่นคือสิ่งที่ผมกำลังมองหา ที่โทรศัพท์ของฉันซึ่งตอนนี้หลับ
แต่ฉันจะพบว่ามัน
เพียงแค่ทำให้แน่ใจว่าเราตี ทั้งหมดของบันทึก PHP
อ๋อมีรุ่นที่ไม่มีการแก้จุดบกพร่อง
ใช่เรามีสิ่งอื่น ๆ อีกไม่กี่ที่ เราต้องการที่จะทำตอนนี้ที่จุดนี้
>> ดังนั้นการพูดคุยเกี่ยวกับการโพสต์ ที่คุณกล่าวถึง
ที่แตกต่าง ระหว่าง GET และ POST คือ
ที่จำได้ว่าเมื่อเรามอง ที่ URL นี้และเราเห็นโอ้
ชื่อเท่ากับและอายุเท่ากับ Yarp มีสิทธิใน URL มีสำหรับเรา
โพสต์เป็นเพียงเล็กน้อยที่ลับมากขึ้น ด้วยการผ่านของข้อมูล
>> ดังนั้นหากคุณไม่ต้องการที่ผู้ใช้ ที่จะรู้ว่าตัวอย่างเช่นคุณ
ไม่อยากให้ชื่อผู้ใช้ และรหัสผ่านของบุคคลที่
ล็อกอินในปัจจุบันที่จะแสดงใน URL ซึ่งเป็นสิ่งที่เหมาะสม
ที่จะไม่ต้องการใน URL, เพราะใครบางคนสามารถดูได้
ถ้าพวกเขาเชื่อมโยงคนที่หน้าคุณ ไม่ต้องการของ URL ฉาบที่นั่น
เพราะที่จะช่วยให้คนที่จะเข้าสู่ระบบ เพียงกับการวางของ URL แทน
ของจริงการกรอกแบบฟอร์ม
โพสต์เป็นนิด ๆ หน่อย ๆ ความลับมากขึ้น
>> และสิ่งเดียวที่ เราจะมีการเปลี่ยนแปลง
วิธีการนี​​้จะมีการเปลี่ยนแปลง จากการได้รับการโพสต์
และจากนั้นภายใน HTTP แทน ในการเข้าถึงอาร์เรย์ _GET ที่
เรากำลังจะเข้าถึงอาร์เรย์ _POST
>> และเราจะสังเกตเห็นว่าถ้า เราเปิดกลับขึ้นมาอีกครั้ง
เจสันลดลงอย่างช้า ๆ ในยุค
ชื่อเจสันอายุ 14
สิ่งเดียวกันปรากฏขึ้น
แต่เราไปที่ URL และ ตัวแปรเหล่านี้จะไม่ได้มี
>> และวิธีการที่โพสต์ passes-- เพื่อให้จำ
วิธีการดูที่มาของหน้า
เราไปกับเครือข่าย
เราฟื้นฟู
และนี่คืออีกสิ่งหนึ่งที่ โพสต์จะให้คำเตือนเกี่ยวกับ
คุณอาจจะได้เห็นกล่องข้อความ กล่องเช่นนี้ในเบราว์เซอร์ของคุณ
คุณแน่ใจนะว่าคุณต้องการ ที่จะส่งแบบฟอร์มอีกครั้งหรือไม่
โพสต์เป็นสิ่งที่ส่งแบบฟอร์มเหล่านี้
>> เพราะโดยทั่วไปถ้าคุณส่งของคุณ ข้อมูลบัตรเครดิตกับคน
ที่ไม่ได้ไปแสดงใน URL
นั่นจะเป็นคำขอ POST
ดังนั้นเมื่อคุณรีเฟรชหน้า, มันการส่งคำขอของโพสต์ที่
ดังนั้นตอนนี้เราต้องการที่จะส่ง รูปแบบอีกครั้งเพราะมันจะไม่
เพื่อสร้างการซื้อซ้ำ ๆ
>> และเราจะแจ้งให้ทราบว่าลงที่นี่ วิธีการที่เราใช้คือการโพสต์
และมันก็ไม่แน่นอนโอนไบต์
มันโอน 401 ของพวกเขา
โปรแกรมเล็ก ๆ สวย
แต่มีไม่มีที่ไหนเลยที่เราจะเห็น ค่าที่ถูกส่งผ่าน
หน้าเว็บตัวเองสามารถมองเห็น แต่เราเป็นผู้ใช้จะไม่สามารถที่จะเห็น
ถ้าคุณแฮ็กเกอร์
หากคุณเป็นแฮ็กเกอร์ที่ดีที่คุณสามารถมอง
>> ถ้าคุณรู้พื้นฐาน รูปแบบของ HTM​​L ให้
ค่าที่จะทำให้ ตัวเองเป็นที่รู้จักกันในหน้า
คุณจะสามารถที่จะเห็น
ค่าที่จะมีพวกเขากำลัง เพียงเล็ก ๆ น้อย ๆ ที่เห็นได้ชัดน้อยสำหรับคุณ
ในการเข้าถึงโดยทั่วไป
>> เรามีการเพิ่มเติมใด ๆ คำถามเกี่ยวกับ GET, POST
before-- สิ่งที่เรากำลังจะทำต่อไป เป็นจริงดูที่บางส่วนของรหัส
ที่คุณให้ใน pset 7 พูดคุยเกี่ยวกับ วิธีการที่จะใช้บางส่วนของแนวความคิดเหล่านี้
และพูดคุยเกี่ยวกับ สิ่งที่คุณจะไป
ต้องทำนิ​​ด ๆ หน่อย ๆ ใน pset 7
คำถามใด ๆ เพิ่มเติมก่อนที่?
คำถามอื่น ๆ ที่พวกคุณมี?
ที่ดี
>> สิทธิทั้งหมดให้ดู นิด ๆ หน่อย ๆ ที่ pset 7
ข้อสงสัยสิ่งที่คุณไม่มี ทุกคนตื่นเต้นมากที่สุดเกี่ยวกับ
ผมหมายถึงนี้คือสิ่งที่ เดวิดผ่านไปนิด ๆ หน่อย ๆ
แต่เราจะมีสามไดเรกทอรีที่ ด้านบนเช่นเดียวกับแฟ้มการกำหนดค่า
นั่นคือสำหรับฐานข้อมูลซึ่งเราจะ พูดคุยเกี่ยวกับในประมาณห้านาที
รวมถึงการที่คุณไม่เคยต้องการ ที่จะมองในไดเรกทอรีนี้
ถ้าคุณไม่ต้องการ แต่มันก็เป็นเรื่องดีที่ รู้ว่ามีทุกประเภทของผู้ช่วยเหลือ
ผู้ช่วยเป็นเหมือนฟังก์ชั่นที่เป็นประโยชน์
และจากนั้นเราจะมีการตั้งค่า, ซึ่งจะกำหนดสิ่งบางอย่างขึ้น
>> มีฟังก์ชั่นบางอย่างที่มีอยู่ CS50 เขียนที่อยู่ในการตั้งค่าและผู้ช่วย
และบางส่วนของ PHP ที่ แล้วออกมาจากในไฟล์
จะทำมากของการจัดเรียงมากขึ้น ของการทำงานที่ขาป้านสำหรับคุณ
เช่นถ้าเราเข้าไปในที่สาธารณะ login.php ซึ่งเป็นสิ่งที่
แสดงที่เหมาะสมเมื่อคุณเข้าไปใน pset 7
เราจะเห็นว่ามี ต้องใช้คำสั่งนี้
และประเภทเช่นที่ คมชัดรวมถึง hashtag
รวมถึงถ้าคุณของคนรุ่นใหม่
แต่นี้โดยทั่วไป บอกว่าผมจำเป็นต้องเข้าถึง
ฟังก์ชั่นทั้งหมดใน config.php
และคุณอาจจำเป็นต้องมี สำหรับทุกประเภทของสิ่งอื่น ๆ
>> การตั้งค่าจริงต้องช่วยเหลือ
ดังนั้นเมื่อคุณต้องการ การตั้งค่า, คุณยัง
รวมทั้งต้องมีผู้ช่วยเหลือหรือได้เป็นอย่างดี
เพื่อที่จะช่วยให้คุณเข้าถึงทุก ฟังก์ชั่นเย็นที่เรากำลังจะใช้
สิ่งที่ชอบทำให้
ฉันจริงที่เกิดขึ้นเพื่อความสะดวก ลงนิด ๆ หน่อย ๆ
ดังนั้นการทำงานแล้วเรา จะเดินผ่าน
เพียงก่อนที่เราจะย้ายไปยัง SQL เล็ก ๆ น้อย ๆ บิตเป็นฟังก์ชั่น login.php เพียง
เพราะใช้บางส่วนของหัวข้อ ที่เราก็พูดคุยเกี่ยวกับใน PHP
>> คุณจะเห็นสิ่งแรกคือถ้า $ _SERVER
นี้เป็นอีกหนึ่งตัวแปรทั่วโลกว่า คุณกำลังจะได้รับการติดต่อกับ
มันก็เหมือนกับการ _GET และ _POST แต่สิ่งที่ เซิร์ฟเวอร์จะมีนี้สามารถช่วยให้คุณ
ทราบว่าวิธีการร้องขอ เป็น GET หรือโพสต์
เช่นเดียวกับก่อนหน้านี้สิ่งที่เราทำ เป็นเพียงในรหัสของเราที่เราเขียน
เราเป็นเพียงแค่การเปลี่ยนให้เป็นและได้รับ โพสต์ขึ้นอยู่กับสิ่ง HTM​​L ได้
แต่มีหน้าเว็บที่สามารถ เข้าถึงได้ด้วยทั้งสองประเภทของการร้องขอ
และคุณอาจต้องการที่จะทำ สิ่งที่แตกต่างกันขึ้น
กับชนิดของการร้องขอ เข้าสู่ระบบเช่นเดียวกับไม่
>> เพื่อให้คุณสามารถตรวจสอบขอให้ วิธีการผ่านเข้าถึงคีย์
ผ่านการใช้ที่สำคัญและได้รับ คุณค่าของสิ่งที่อยู่ในพจนานุกรม
_SERVER
เพื่อให้ทั่วโลกอีก ตัวแปรเช่น _GET และ _POST
>> ถ้ามัน GET, เราต้องการที่จะ ทำให้รูปแบบการเข้าสู่ระบบ
Render เป็นฟังก์ชั่นที่พื้น เพียงแค่ทำให้ค่า HTML ที่เหมาะสม
และผ่านมันพารามิเตอร์บางอย่าง
ชื่อนี้เป็นพารามิเตอร์ที่เป็น ที่ใช้ในการแสดงผิดปกติพอ
ชื่อของหน้าใน คำถามสิ่งขึ้นที่นี่
พูดหรือทักทายในตัวอย่างก่อนหน้านี้ของเรา
ตอนนี้เรามีความแตกต่างกันเป็นสิ่งที่
อื่น ๆ ถ้ามัน POST เรา ทำบางสิ่งอื่น ๆ
เรากำลังใช้วิธีการที่ว่างเปล่า
มันไม่ได้อยู่ที่มันว่างเปล่า
และเราเห็นก่อน, PHP มีจำนวนเงินที่ยุติธรรมของในตัว
ในวิธีการที่เดวิด will-- ถ้ามี เป็นวิธีการที่เป็นประโยชน์กับคุณ
พวกเขาจะได้รับการแจ้งเตือนให้กับคุณ ในการเดินผ่านที่ดาวิด
จะช่วยให้ภาพรวมที่จุดเริ่มต้น และยังเป็นประโยชน์ Zamyla บิต​​ของ
เธอกลับมาทุกคน
เราทุกคนสามารถชื่นชมยินดี
ต้องขออภัยในความเป็นฟังก์ชั่นชื่อ aptly ที่เพียงแค่พื้นพิมพ์ออก
บางข้อความผิดพลาด เพราะ CS50 เป็นสุภาพมาก
>> และตอนนี้นี้เป็น หากินบิตเพราะ
เป็นที่ที่เรากำลังสอบถามฐานข้อมูล
ตอนนี้เรายังไม่ได้พูดคุยเกี่ยวกับฐานข้อมูล
และเรากำลังจะไปในครั้งต่อไป ห้านาทีหรือดังนั้นสูงสุด
แต่นี้เป็นฟังก์ชั่น CS50 ที่ได้เขียน
ที่จะได้รับตารางโดยทั่วไปจากฐานข้อมูล ที่เรากำลังทำงานกับใน pset 7
ฉันไม่ดีจริงๆกับฉัน การจัดทำดัชนีในวันนี้เป็นศูนย์
แต่ใช่มันคือ 7
>> ดังนั้นการค้นหาก็จะกลับ อาร์เรย์โดยทั่วไปเป็นบิตที่สำคัญ
และเพราะสิ่งเหล่านี้ไม่ได้มี พิมพ์เพื่อให้แถวเป็นอาร์เรย์ของอาร์เรย์
เพราะเมื่อเรากำลังคิดเกี่ยวกับ ตารางสิ่งที่เรากำลังจะทำ
เป็นตามที่คุณได้เรียนรู้ใน psets เช่นเดียวกับเกม 15 ต่อไป
ที่คุณต้องใช้ อาร์เรย์สองเราโดยทั่วไป
มีอาร์เรย์ของอื่น ๆ อาร์เรย์ทำให้ตาราง
และคุณได้มีแถวและคอลัมน์
และจากนั้นคุณสามารถเข้าถึงได้เช่น [0] [1] คุณจะได้รับ [0] [1]
สิ่งพื้นฐานเช่นเดียวกับที่
>> ดังนั้นสิ่งที่เรากำลังทำ ที่นี่ในฟังก์ชั่นนี้
เรากำลังขอให้ฐานข้อมูล หากผู้ใช้ที่
พยายามที่จะเข้าสู่ระบบที่จะเป็น ที่ส่งผ่านวิธีการโพสต์
เราจะเห็นเราได้รับ ชื่อผู้ใช้จาก _POST
พวกเขาจะได้ส่งผู้ใช้ หรือคุณจะส่งค่า
ผ่านทางแบบฟอร์มการโพสต์ผ่านเพราะ มันเป็นชื่อผู้ใช้และรหัสผ่านสิ่ง
เรากำลังตรวจสอบชื่อผู้ใช้ จะเห็นเป็นแบบนี้ในตารางหรือไม่
เพราะถ้าผู้ใช้จะเข้าสู่ระบบ ในนั้นชื่อผู้ใช้ของพวกเขา
ควรเก็บไว้ในตารางของ ผู้ใช้ที่มีอยู่สำหรับไซต์นี้
ดังนั้นโดยทั่วไปถ้า ผู้ใช้ที่อยู่ในฐานข้อมูล
แบบสอบถามจะไปกลับ ที่แถวซึ่งเป็นอาร์เรย์
>> แต่ส่วนที่ยุ่งยากคือถ้าแม้ว่า แถวสองเป็นเพียงหนึ่งแถว
ถึงแม้ว่ามันจะเป็นหนึ่งแถว array-- เหมือนที่คุณได้มี basically--
ถ้าคุณได้มีขนาดหนึ่งอาร์เรย์ ที่ถืออาร์เรย์อื่น
คุณจริงๆจัดการกับหนึ่งคอลัมน์
แต่มันก็ยังคงได้รับการรักษาที่ เช่นอาร์เรย์สอง
>> และนี่คือที่บางครั้งมันก็จะได้รับ เรื่องยุ่งยากเพราะเรามีแถวที่นี่
ตัวแปรของเราเป็นแถว
และจากนั้นเรากำลังสร้าง ตัวแปรใหม่ที่เรียกว่าแถว
และการตั้งค่ามันเท่ากับ แถวแรกของแถว
และคุณจะสังเกตเห็นความคิดเห็นที่ บอกว่ามันเป็นแถวแรกและที่เดียว
>> ดังนั้นนี่คือหากิน ส่วนหนึ่งที่ฟังก์ชั่นในขณะนี้
สามารถกลับอาร์เรย์ได้อย่างง่ายดายมาก
มีไม่ mallocs
คุณจะไม่เห็น mallocs
ดังนั้นคุณจะไม่เห็นความผิดพลาด seg
แต่ฟังก์ชั่นจะยังคงผ่าน รอบอาร์เรย์และข้อมูลที่อยู่ในกลุ่ม
และคุณจะต้องระมัดระวังในสิ่งที่ ว่าฟังก์ชั่นของคุณจะกลับ
และแม้ว่าจะเป็นหนึ่ง คอลัมน์เช่นนี้สอบถาม
จะยังคงที่จะกลับมาเป็นแถวคู่
ดังนั้นเพื่อให้การเข้าถึงที่ column-- หรือคุณ สามารถคิดทั้งหมดนี้เป็นฤๅษี
เนื่องจากเรากำลังพูดถึงแถว
แต่การที่จะเข้าถึงที่หนึ่งแถว คุณก็ไม่สามารถบอกว่าแถว
แม้ว่ามันจะเป็นหนึ่งในแถวที่คุณจะต้อง ไม่ rowsrows [0] เพื่อเรียงลำดับของการกำจัดนี้
บิตนอกของอาร์เรย์และ จะมีเพียงหนึ่งแถวของคุณ
>> ทำบางสิ่งอื่น ๆ
มีฟังก์ชั่นเป็น เรียกว่า password_verify
ที่ตรวจสอบความ รหัสผ่านที่ถูกโพสต์
และจากนั้นเราจะเห็นอีกทั่วโลก ตัวแปรที่นี่ _SESSION
รหัสเซสชั่นโดยทั่วไป เป็นวิธีที่คุณติดตาม
ถ้าคนที่ถูกบันทึกไว้ในหรือไม่
ดังนั้นตอนนี้มี login.php, เรากำลังเข้าสู่ระบบของผู้ใช้ใน
ดังนั้นสิ่งที่เราต้องการจะทำคือเราต้องการที่จะ พูดเซสชัน id เท่ากับแถว
รหัสซึ่งจะทำให้ความรู้สึกเพราะ แต่ละแถวจะมีรหัสที่แตกต่างกัน
จำนวนเป็นส่วนหนึ่งของตาราง
เราจะได้รับลงใน SQL ใน สองดังนั้นถ้าใด ๆ นี้
ดูเหมือนว่านิด ๆ หน่อย ๆ เช่น blah, แล้วสิ่งที่จะได้รับการล้างขึ้น
แต่เรากำลังจะตั้งค่ารหัสเท่ากับ สิ่งที่เหมาะสมเข้าสู่ระบบของผู้ใช้ใน
ต้องขออภัยถ้ามีอะไรผิดพลาด
และนั่นคือจุดประสงค์ในการเข้าสู่ระบบ ชีวิตเป็นศาสตราจารย์ลันจะบอกว่า
>> เพื่อให้เป็น login.php
และจำนวนมากของโค้ด PHP ที่คุณเขียน ใน pset 7 พวกเขาจะนิด ๆ หน่อย ๆ
อย่าลืมให้ chmod ไป สิทธิ์ที่เหมาะสม
จะมีเล็กน้อยเกี่ยวกับ ว่าในจุดเริ่มต้นของสเปคที่
>> แต่ PHP ที่คุณเป็น เขียนเป็นไปได้
ทำสิ่งที่คล้ายกันนี้
คุณกำลังจะได้รับ การเข้าถึงบางสิ่งบางอย่างที่
มีให้กับคุณใน ตัวแปรระดับโลกของ PHP ที่
จะจัดการกับในปัจจุบัน เข้าสู่ระบบของผู้ใช้ไม่ว่าจะมี
มีการร้องขอรับส่งไปนี้ หน้าสิ่งที่แตกต่างกันเช่น
และก็ยังจะเป็นที่อาจเกิดขึ้น iterating ผ่านแถวของสิ่งนี้
>> ในฟังก์ชั่นที่แตกต่างกันแบบสอบถาม ไม่กลับอาร์เรย์คู่นี้
และถ้ามีมากขึ้น มากกว่าหนึ่งแถวในนั้น
ถ้ามี are-- ใช่ถ้ามี มากกว่าหนึ่งแถวในนั้น
แล้วมันจะเป็นตาราง
และคุณอาจต้องการที่จะย้ำ ผ่านแถวของอาร์เรย์โดยใช้
ห่วง foreach ที่เราอธิบาย
>> ดังนั้นถ้าคุณทำ foreach ในคู่ อาร์เรย์สิ่งที่จะ word-- ที่นี่
ที่จริงผมจะเขียนมัน
ฉันจะเขียนมันอย่างรวดเร็วที่นี่
>> ถ้าเรามี foreach ของแถว เป็นแถว, สิ่งที่ประเภทของแถว?
ไม่มีใครรู้หรือไม่?
คุณมีมันได้หรือไม่
ดังนั้นแถวเป็นแถวคู่
ดังนั้นสิ่งที่ foreach จะสรุป ที่เราต้องการจากอาร์เรย์สอง
ถ้าเรากำลังทำซ้ำมากกว่านั้น?
โดยทั่วไปเราสามารถสรุปได้ว่า มันจะเป็นองค์ประกอบอย่างใดอย่างหนึ่ง
หรือแถวหรือคอลัมน์โดยทั่วไป
และเพื่อให้แถวและคอลัมน์เรา สามารถรักษาเป็นสิ่งเดียวกัน
>> โดยทั่วไปสิ่งที่ห่วง foreach เป็นไป ทำคือมันจะกลับแถว
แถวที่เป็นไปได้ของแถวชนิด ในขณะที่แถวเป็นแถวคู่
ดังนั้นถ้าคุณให้ foreach อาร์เรย์ที่สองก็
ไม่ได้ไปย้ำ ระดับมากกว่าหนึ่งลึก
ซึ่งโดยทั่วไปจะบอกว่าถ้ามี แปดเซลล์ใน table-- นี้ 1,2
3 4, 5, 6, 7, 8-- ห่วง foreach ไม่
จะไปผ่านแต่ละเซลล์เหล่านี้
สิ่งที่ห่วง foreach จะทำ มันก็จะผ่านไปแถวนี้
ให้คุณทั้งแถวนี้
แล้วมันจะผ่านไปแถวนั้น
>> ดังนั้นจึงเป็นเพียง iterates หนึ่งระดับลึก
ถ้าคุณเพิ่มที่ซ้อนกัน ห่วง foreach แล้วคุณ
สามารถรักษาแต่ละแถวกลับมาจาก แถวที่คุณทำแถว foreach เป็นองค์ประกอบ
สมมติว่า
และจากนั้นคุณสามารถสะท้อนองค์ประกอบ
เพื่อให้เป็นช่วงสั้น ๆ ทบทวนเล็ก ๆ น้อย ๆ เกี่ยวกับวิธีการ
คุณอาจจะใช้ foreach ลูปในบริบทของการค้นหา
>> มีคำถามใด ๆ เกี่ยวกับ PHP?
สิ่งใดที่ทุกคนก่อนที่เราจะ ย้ายไปพูดคุยเกี่ยวกับ SQL
และความสนุกสนานของฐานข้อมูลหรือไม่
รู้สึกดี?
รู้สึกดี.
ทั้งหมดขวา
>> ขอย้ายกลับไปที่ PowerPoint ซึ่งคุณอาจพลาด
SQL, ยาย
คนที่อยู่ในส่วนของฉันมักจะ จะรู้ว่าหัวเรื่องย่อยของคำย่อ
มักจะเป็นเพียงแค่คำแรก ผมคิดว่าการแข่งขันว่า
algorithm-- ย่อที่
มันไม่ได้เป็นอัลกอริทึม
>> ดังนั้น SQL เป็นฐานข้อมูล
มันเป็นภาษาที่ ทำงานร่วมกับฐานข้อมูล
และฐานข้อมูลทั้งหมดที่มีคือ ตารางอย่างน้อยในทาง
ที่แสดงให้เห็นถึง SQL พวกเขา
>> วิธีการที่จะคิดเกี่ยวกับฐานข้อมูลอีกประการหนึ่งคือ ฐานข้อมูลเป็นชุดของคีย์และค่า
เป็นพื้น
คุณสามารถคิดเกี่ยวกับฐานข้อมูลเป็น พจนานุกรมและยังเป็นตาราง
โดยทั่วไปเป็นวิธีที่จะเชื่อมโยง ข้อมูลที่แตกต่างกับข้อมูลอื่น ๆ
มักจะผ่านแถวและคอลัมน์
และนั่นคือวิธีการที่ ที่ SQL ทำงานได้ดีที่สุด
>> ดังนั้นนี่คือตัวอย่างหนึ่งของตาราง
ฉันมีตัวอย่างบางส่วนของ คนที่อยู่ในส่วนของฉันซึ่ง
ผมไม่ได้มีเวลาที่จะเปลี่ยน
แต่เราได้มีสิ่งที่ต้องการประชาชน ชื่อมหาอำนาจและบ้านเกิด
ผมไม่ทราบว่าใครเป็น จากในส่วนของฉัน
ดังนั้นฉันก็จะถือว่า ทุกคนจากนิวยอร์ก
เมืองเพราะผมมีสถิติสูง ความน่าจะเป็นของการเป็นที่ถูกต้อง
>> SQL จะใช้โดยอัตโนมัติ ดูแลคอลัมน์ประจำตัวของคุณ
ถ้าคุณแทรกแถวใหม่ เป็นฐานข้อมูล SQL,
มันจะเพิ่มขึ้นว่า หมายเลขรหัสและเพียงแค่
พื้นติดเหมือนห้าชื่อ มหาอำนาจบ้านเกิดของใคร
เข้าสู่ท้ายของตารางที่
ID ดังนั้นคอลัมน์ที่คุณจะ ไม่ต้องกังวลเกี่ยวกับ
แต่เหมือนในกรณีที่ ของ login.php เมื่อเรา
ได้รับ ID เซสชั่น จากตารางและเพียงแค่ใช้รหัส
ID เป็นวิธีการที่ไม่ซ้ำกันระบุ องค์ประกอบของฐานข้อมูลหนึ่ง
>> ดังนั้นหากเรามีสอง Sams ทั้งสอง ซึ่งสอน CS50 และทั้งสองของผู้ที่
มาจากมิลวอกีผู้ที่จะ ยังคงมีหมายเลขประจำที่แตกต่างกัน
และทำให้มีความแตกต่างกันใน บริบทของตาราง
ดังนั้นนี่คือสิ่งที่ SQL มีการซื้อขาย ด้วยการทำงานร่วมกับในปลายด้านหลัง
>> ต่อไปนี้เป็นคำสั่งที่สี่ ที่คุณจะต้องทำงานกับ SQL
และฉันโยนพวกเขาทั้งหมดขึ้นบนสไลด์
แต่เรากำลังจะผ่านไป พวกเขาทั้งหมดเป็นรายบุคคล
>> คำสั่งแรกคือการปรับปรุง ซึ่งไม่สิ่งที่คุณอาจคาดหวัง
สมมติว่าคุณมีข้อมูลบางส่วนใน ตารางที่ออกจากวันที่
เช่นถ้าคุณกำลังรักษา ติดตามชื่อคน
ทุกเพศทุกวัยและถ้ามีคนเป็น อายุที่เพิ่มขึ้นแล้ว
คุณจะต้องการที่จะไปในและ อัปเดตเพียงอายุของบุคคลนั้น
ยกตัวอย่างเช่นที่ทำงาน กับครั้งแรกของเรา table--
ไม่ต้องกังวลเกี่ยวกับการเขียนทั้งหมดของ คำสั่งเหล่านี้ในเวลาเดียวกัน
แต่ถ้าคุณได้มีการอัปเดตลง ที่จะต้องดีพอสำหรับส่วนนี้,
เพราะเรากำลังจะไป กลับไปที่โต๊ะ
>> ดังนั้นหากเรากลับไปที่โต๊ะ ขอบอกว่าสิ่งที่เกิดขึ้น
ได้มีการเกิดแผ่นดินไหวหรือ เส้นที่แยกความผิดโดยตรง
ผ่านนิวยอร์กซิตี้
และเราต้องการที่จะอัปเดตทุกคน ที่อาศัยอยู่ในนิวยอร์กซิตี้
พวกเขาทั้งหมดต้องย้ายไปเพนซิล
นั่นไม่ใช่บ้านเกิด
พวกเขาทั้งหมดต้องย้ายไปนิวเฮเวน
เราจะไปที่นั่น.
เพื่อให้ทุกคนในนิวยอร์ก ย้ายไปนิวเฮเวน
>> และเพื่อให้เป็นสิ่งที่ แก้ไขแถวที่สามในตารางนี้
แต่ใน SQL ที่คุณสามารถทำได้ ที่ในเวลาเพียงหนึ่งคำสั่ง
ดังนั้นเราจึงกลับไปปรับปรุง
ผมขออย่างรวดเร็วลบกระดานนี้อีกครั้ง
เมื่อเรากำลังพูดถึง การปรับปรุงมี
ชิ้นส่วนบางส่วนของไวยากรณ์ที่เป็นกุญแจสำคัญ
ดีทั้งหมดของไวยากรณ์เป็นกุญแจสำคัญ
แต่สิ่งที่อยู่ในสีเขียวเป็นตัวเลือก
สีขาวจะต้อง เช่นชื่อที่กำหนดไว้ล่วงหน้า
และสีฟ้าอ่อนเป็นสิ่งที่ ที่แตกต่างกันไปขึ้นอยู่กับโต๊ะ
เพื่อให้เป็นสิ่งที่เกิดขึ้นกับ โทนสีที่นี่ไปอยู่ที่นั่น
>> ดังนั้นถ้าเราต้องการที่จะปรับปรุงเพียงแถวเหล่านั้น ของคนที่อาศัยอยู่ในนิวยอร์ก
ดังนั้นสิ่งที่เราจะทำอย่างไรถ้าเรากล่าวว่าการปรับปรุง?
ตารางดังนั้นเป็นที่ที่เราใส่ ชื่อของตารางของเรา
ขอเพียงบอกชื่อ ของตารางของเราคือหนึ่งตาราง
ดังนั้นเราจึงต้องการที่จะปรับปรุงตารางหนึ่ง
และเราต้องการที่จะ set-- ทำในสิ่งที่เราต้องการที่จะตั้ง?
ดีที่เราอยากจะบอกว่าเพื่อให้ column-- PHP ถือว่าเป็นแถวระบุเอกลักษณ์
และแล้วคอลัมน์ เขตข้อมูลที่แตกต่างกัน
ขององค์ประกอบเหล่านั้นของฐานข้อมูล
>> ดังนั้นองค์ประกอบแรกของฐานข้อมูล มีชื่อของแซมมหาอำนาจของ CS50 ที่
และบ้านเกิดของมิลวอกี
ดังนั้นหากเรากล่าวว่าการตั้งค่าให้ดูที่ พารามิเตอร์อีกชุดที่ใช้เวลา
เรามีคอลัมน์เท่ากับค่า
ดังนั้นเราจึงต้องการที่จะพูดบางอย่าง column-- ซึ่งจำ
เป็น field-- เราต้องการที่จะเห็น สนามเท่ากับสิ่งใหม่ ๆ
>> ดังนั้นหากเราเพียงแค่กล่าวว่าปรับปรุง ตารางที่ 1 ชื่อชุดเอลเลียตเท่ากัน
ได้รับบางคนที่มาจาก ในส่วนใหม่เกี่ยวกับเรื่องนี้
แต่ถ้าเราก็ไม่ได้ปรับปรุงตาราง 1 ตั้งชื่อเอลเลียตเท่ากับสิ่งที่จะ
ดูตารางเช่นหลังจากที่?
คนที่มีความคิดใด ๆ
ใช่.
>> ผู้ชม: ทุกอย่างในการที่ แถวจะกลายเป็นเอลเลียต
SPEAKER: ทุกอย่างที่แถว?
ผู้ชม: ในแถวแรก
SPEAKER: ในแถวแรก?
ทำไมแถวแรก?
ผมไม่ได้หมายที่จะเลือกอยู่กับคุณ
>> ผู้ชม: บางทีทุกอย่าง ในตารางทั้งหมด?
SPEAKER: ทุกอย่างใน ทั้งตารางใช่
และที่ตรงขวา because-- ฉัน เป็นเพียงการช่วยให้คุณออกนิด ๆ หน่อย ๆ
there-- เพราะเรามองข้าม ตัวเลือกคำสั่ง WHERE
หากคุณไม่ได้มีที่ ประโยคคำสั่งนี้สิ่งที่จะทำ
มันจะทำงานร่วมกับทุกคน แถวเดียวในตาราง
ชื่อของทุกคนจะ กลายเป็นเอลเลียตโดยทั่วไป
เอลเลียตที่มีความสุขมากเกี่ยวกับ
หรือ Yanni หนึ่งของทั้งสอง
แต่ชื่อของทุกคนที่จะมีการเปลี่ยนแปลง
>> ดังนั้นวิธีการที่เราใช้ WHERE clause-- และนี้ทั้งหมดของ Wheres
ที่อยู่ในแต่ละ เหล่านี้สิ่งที่แตกต่าง
ดังนั้นคุณจะสังเกตเห็นว่าตลาดหลักทรัพย์ มีค่าเท่ากับคอลัมน์
และเพื่อไม่ WHERE
แต่เหล่านี้จะแตกต่างกัน ประเภทงบ
ดังนั้นคอลัมน์เท่ากับค่า ในตลาดหลักทรัพย์แห่งประเทศไทยที่อยู่ในที่ได้รับมอบหมาย
เหมือนอย่างที่เรากำลังจะบอกว่าเราต้องการ การตั้งชื่อเอลเลียตเท่ากับ
แต่ในคำสั่ง WHERE ที่ เหล่านี้เป็นงบเท่าเทียมกัน
ดังนั้นสมมติว่าเราต้องการที่จะ เปลี่ยนชื่อของบุคคลที่จะเอลเลียต
ถ้าชื่อของพวกเขาคือไรอันสมมติว่า
>> ดังนั้นเมื่อเราพูดว่า
>> สถานที่ชื่อไรอันเท่ากับว่า จะประสบความสำเร็จในการเปลี่ยนแปลงเท่านั้น
name-- มันเพียง แต่จะ เปลี่ยนฟิลด์ชื่อในแถว
ที่เขตข้อมูลชื่อเท่ากับไรอัน
ดังนั้นถ้าเรามีคนหลายคน ชื่อไรอันทั้งหมดของชื่อของพวกเขา
จะเปลี่ยนไปเอลเลียต
>> นี้จะคล้ายกับตัวอย่าง ถ้าเส้นแบ่งความผิด
มหานครนิวยอร์กและทุกคนมีการ ย้ายไป New Haven, วิธีที่เราสามารถ
ทำในงบเป็น UPDATE table1 SET = บ้านเกิดของนิวเฮเวน
ที่บ้านเกิดเท่ากับนิวยอร์กซิตี้
นี้เป็นอำนาจของ คำสั่ง UPDATE
เราสามารถเลือกหมายเลขใด ๆ แถวผ่านงบจริง
เกี่ยวกับเขตข้อมูลในแถวเหล่านั้น
เราไม่สามารถพูด UPDATE table1 ชุด name = เอลเลียต WHERE แถว = 1
ยกเว้นว่าถ้าเราสามารถที่เราพูด ID = 1
>> ดังนั้นเรากำลังจะได้รับ การทำงานร่วมกับความเท่าเทียมกัน
ของเขตข้อมูล, ความเท่าเทียมกันของคอลัมน์
แต่การใช้สนาม ID เป็นวิธีการ เลือกแถวของแต่ละบุคคลโดยเฉพาะ
เพราะสนามประชาชนเป็นเอกลักษณ์ ระบุในฐานข้อมูล SQL
ดังนั้นการปรับปรุงเช่นหนึ่งแถว ID เท่ากับ 1
อัพเดตแถวสองเพียง เปลี่ยนหมายเลข ID ที่
แต่อำนาจของ คำสั่ง WHERE คือการที่เรา
สามารถปรับปรุงสิ่งที่อยู่บนพื้นฐานของสิ่งที่พวกเขา ค่าปัจจุบันของบางสิ่งบางอย่างที่มี
ใช่เอลเลียต?
>> ผู้ชม: และสิ่งที่ถ้าคุณต้องการ to-- อีกครั้งนี้เป็นคำถามอื่น
แต่คำถามแรกของฉันคือ ที่เกิดขึ้นนี้
ฉันกำลังอยู่ที่ไหนปรับปรุงนี้หรือไม่?
นี้อยู่ในโค้ด PHP หรือไม่?
>> SPEAKER: ที่คุณอัปเดตใช่
เรากำลังจะไปพูดคุย เกี่ยวกับการที่ทั้งหมดนี้
ที่เกิดขึ้นในการจัดเรียงของครั้งเดียวที่เราจะไป ผ่านคำสั่งทั้งหมด
แต่สิ่งที่คุณต้อง รู้ว่าตอนนี้เป็นพื้น
ที่ฐานข้อมูล SQL ของคุณ ที่มีอยู่เป็นสิ่งที่
ให้เข้าถึงได้โดยการสอบถาม ฟังก์ชั่นที่กำหนด CS50
ดังนั้นถ้าคุณใช้ฟังก์ชั่นการค้นหา, คุณสามารถเข้าถึงตารางนี้
>> ดังนั้นคุณจะส่งเหล่านี้ คำสั่งในตารางของคุณในไฟล์ PHP
ผ่านฟังก์ชั่นการค้นหา
นอกจากนี้คุณยังสามารถเล่นรอบ พร้อมโต๊ะของคุณโดยตรง
และนั่นคือวิธีที่ดีที่สุด ทดสอบประเภทนี้ของคำสั่ง
และเราจะผ่านไปว่าวิธีการ ที่จะทำในเวลาเพียงนิด ๆ หน่อย ๆ
>> เพื่อให้เป็นคำสั่ง UPDATE
และส่วนที่เหลือของคำสั่ง กำลังจะมีการจัดเรียงของที่คล้ายกัน
การทำงานในสิ่งที่คล้ายกัน
แทรกเข้าน่าจะเป็น ส่วนใหญ่ที่แตกต่างจากการปรับปรุง
ฉันจะออกจากที่ขึ้นที่นั่น เพียงเล็กน้อยและการทำงานมากกว่าที่นี่
ดังนั้น INSERT INTO ค​​ุณจะเห็น ตารางที่ยังคงเดิม
คุณต้องการที่จะ INSERT INTO
มูลค่า, SQL เป็นกรณีตาย
ดังนั้นคุณจึงไม่ต้อง ประโยชน์สิ่งเหล่านี้
โดยการประชุมคำ สีขาวเป็นตัวพิมพ์ใหญ่
แต่ฉันยังรหัสสีพวกเขา
เหตุผลเดียวที่คุณประโยชน์ เหล่านั้นเมื่อคุณกำลังพิมพ์พวกเขา
เป็นเพียงการที่จะเน้น ว่าผู้ที่มีค่าคงที่
และเพื่อให้คุณสามารถดู มูลค่าหรือความจริงที่
ที่ฉันได้สีที่แตกต่างกันของพวกเขา
>> ดังนั้นเราจึงได้มีการแทรกลงใน, ขอทำ table1 อีกครั้ง
นี่คือทั้งหมดในหนึ่งบรรทัด
ฉันแค่แยกออกจาก งบที่แตกต่างกัน
จึงไม่ต้องกังวลเกี่ยวกับความจริงที่ว่า table1 ทำมันลงบนบรรทัดที่สอง
>> ดังนั้นเราจึงต้องการที่จะแทรก INTO table1 ค่าบางอย่าง
และคุณจะสังเกตเห็นตัวเลือก บิตซึ่งผมจะได้รับในครั้งที่สอง
ดังนั้นเราจึงได้มีคุณค่า
>> ดังนั้นสมมติว่าเราต้องการที่จะเพิ่ม Andi ไปที่โต๊ะของเราเพราะเราพลาดแล้วล่ะ
Andi มีอาการป่วย
ดังนั้นขอเพิ่ม Andi ไปที่โต๊ะของเรา
โปรดจำไว้ว่าหมายเลขประจำตัวของ การปรับปรุงโดยอัตโนมัติ
ดังนั้นเขตเดียวที่เรา จำเป็นต้องกังวลเกี่ยวกับ
มีชื่อมหาอำนาจและบ้านเกิด
>> ดังนั้นวิธีการที่เราทำนั้น กำลังมองหาที่ไวยากรณ์ของเราคือเราได้
เพียงแค่มีวงเล็บด้วยเครื่องหมายจุลภาค ค่าที่คั่นแต่ละที่
เป็นค่า
ดังนั้นถ้าเราต้องการที่จะใส่เข้าไปในของเราล่ะ ตารางทั้งหมดที่เราต้องทำคือการที่ถูกต้องแล้วล่ะ
อะไรล่ะมหาอำนาจของ คนที่อยู่ในส่วนของ Andi?
เธอชอบเที่ยวบินหรือชอบ ความเร็วหรือบางสิ่งบางอย่าง
เราทำอะไรแล้วมีได้มี?
เรามี CS50 บิน ความเร็วและความแรง
>> ผู้ชม: การเดินทางข้ามเวลา
>> SPEAKER: การเดินทางข้ามเวลาที่น่าตื่นตาตื่นใจ
ดังนั้นเราจึงได้มี Andi เวลา การเดินทางและบ้านเกิดของเธอ
นั่นเป็นคำถามที่ดีจริงๆ
นิวยอร์กซิตี้เว้นแต่มีคนรู้
ทุกคนจากนิวยอร์กเป็น บทเรียนที่จะไปตั้งแต่วันนี้
>> ดังนั้นคำสั่งนี้จะ ใส่เป็นแถวที่ห้า
กับการเดินทางข้ามเวลามหาอำนาจ และบ้านเกิดของมหานครนิวยอร์ก
แต่สนามที่ไม่จำเป็น เป็นพื้นทาง
เพื่อระบุว่าที่คอลัมน์ คุณต้องการแทรกสิ่งที่อยู่ใน
>> วิธีการที่เรากำลังทำมันตอนนี้ Andi เดินทางเวลานิวยอร์กซิตี้
เป็นไปในการสั่งซื้อที่แท้จริงของเรา ชื่อ table--, มหาอำนาจบ้านเกิด
และถ้าคุณอยากจะทำ บางสิ่งบางอย่างนอกเหนือจากนั้น
เช่นบอกว่าคุณไม่ได้รู้ว่า มหาอำนาจของใครบางคน
เช่นวิธีการที่ฉันไม่ได้รู้ว่าของ Andi มหาอำนาจที่จุดเริ่มต้น
ดังนั้นสิ่งที่ผมรู้ว่าเป็นของเธอ ชื่อและที่บ้านเกิดของเธอ
สิ่งที่ผมจะทำคือฉันสามารถทำได้ do-- ฉันจะลบอย่างรวดเร็วนี้
>> ฉันต้องการที่จะปรับปรุงเฉพาะคอลัมน์
และนี่คือที่ไม่จำเป็น รายการคอลัมน์มาลงเล่น
ฉันเพียงต้องการปรับปรุงชื่อและที่บ้านเกิด
แล้วฉันจะบอกว่าค่านิยม
ฉันจะทำแล้วล่ะและ New York City
>> ถ้าฉันได้มองข้ามรายชื่อของคอลัมน์ และทำเพียงแค่ทั้งสองสิ่ง
ที่จะนิวยอร์กซิตี้ได้หายไปไหน?
ซึ่งจะคอลัมน์นิวยอร์ก เมืองที่ได้ถูกวางไว้มีอะไรบ้าง?
คนที่มีความคิดใด ๆ
มหาอำนาจว่า
>> ดังนั้นเพียงแค่นี้จะไปในการสั่งซื้อ
และเมื่อมันมาถึงจุดสิ้นสุดของ รายการมันก็จะหยุดสิ่งที่กรอกข้อมูลใน
และค่านิยมที่ว่ามันจะติดอยู่ใน คอลัมน์ทั้งหมดจะเป็นเพียงโมฆะ
ดังนั้นเพราะเราระบุ ชื่อและที่บ้านเกิด
เรากำลังจะมี ID ที่ 5 ชื่อ Andi, โมฆะมหาอำนาจ
มหาอำนาจดังนั้นเป็นค่าเตรียม
คุณจะไม่จำเป็นต้องได้รับ ข้อผิดพลาดเดียวกัน valgrind ถ้าคุณลอง
และเข้าถึงได้
ทุกอย่างจะกลายเป็นศูนย์อย่าง ออกเพราะเป็นโมฆะค่าใน SQL
นั่นคือค่าคงที่
และจากนั้นก็จะเป็นบ้านเกิดของนิวยอร์กซิตี้
ดังนั้นที่แทรกลงในคำสั่ง
ก่อนที่เราจะมี สองคำสั่งเพิ่มเติม
ทำคนมีคำถามใด ๆ เกี่ยวกับ การปรับปรุงเกี่ยวกับการแทรกลงใน, เกี่ยวกับ SQL
โดยทั่วไปก่อนที่เราจะย้าย ลงบนชิ้นสุดท้ายของเราหรือไม่
คนที่รู้สึกดีดี
รักมัน
ดังนั้นเรามาพูดคุยเกี่ยวกับการเลือก
ไป UPDATE คูมากกว่าที่นี่
>> และเลือกที่เป็นไปได้ที่คล้ายกันมาก
เป้าหมายของการเลือกที่ วัตถุประสงค์ SELECT ในชีวิต
คือเพื่อให้คุณพวงของคอลัมน์ ที่ตอบสนองเงื่อนไขบางประการ
และเมื่อฉันพูดตอบสนอง เงื่อนไขบางประการ
ความคิดของคุณอาจจะในทันที กลับไปที่คำสั่ง WHERE
ที่มาในการปรับปรุง
และข้อที่ ว่ามีใน SELECT
>> ถ้าเราไม่ใส่ที่ และประโยคที่เราพูด SELECT ชื่อ
hometown-- สะกดที่เล็ก ๆ น้อย ๆ ชื่อ wrong-- บ้านเกิดจาก table1
ถ้าเราบอกว่าสิ่งที่เลือก เป็นไปเพื่อให้เรามันเป็นเรื่อง
จะให้เรา double-- ตารางแทน
แถวสองถ้าเรา ความคิดเกี่ยวกับความรู้สึกใน PHP
แต่มันเพิ่งจะให้เรา อาร์เรย์คู่ของทั้งสองชื่อ columns--,
และบ้านเกิด
และมันจะไม่สนใจ ID
และมันจะไม่สนใจมหาอำนาจ
และมันก็จะทำให้เราทุกคน แถวเดียวของตารางที่
ดังนั้นถ้าเราเพียงแค่ใส่ Andi เราจะมี Andi
และเราจะมีต้นฉบับสี่
ถ้าพวกเขาได้รับการปรับปรุงที่จะ จะสะท้อนให้เห็น ฯลฯ ฯลฯ
>> ดังนั้นนี้เป็นเพราะเรา ไม่ได้ใช้คำสั่งที่
แต่เราสามารถใช้งานได้ในตรง แบบเดียวกับที่เราใช้ในการปรับปรุง
ถ้าเราเพียงต้องการตารางของชื่อที่ และพลังของคนที่อาศัยอยู่
ใน New York, เราสามารถรันคำสั่ง เช่น SELECT ชื่อ superpower--
ฉันแค่จะออกจาก that-- table1 WHERE บ้านเกิด = นิวยอร์กซิตี้
>> ดังนั้นนี้ไปแสดงให้เห็นว่าคุณสามารถ ได้รับคอลัมน์ที่แตกต่างกันโดยสิ้นเชิง
แล้วใส่คอลัมน์ที่คุณไม่ได้ แม้จะได้รับกลับมาในข้อที่
เราไม่ได้ต้องการ บ้านเกิดของทุกคน
แต่เราต้องการชื่อและ มหาอำนาจของผู้คน
ซึ่งเป็นบ้านเกิดคือนิวยอร์กซิตี
นั่นคือสิ่งที่เรา สามารถทำอะไรกับที่
ข้อคือเราสามารถจัดการกับคอลัมน์ ว่าเราไม่จำเป็นต้องการกลับ
ในทำนองเดียวกันใน UPDATE เราสามารถจัดการ มีคอลัมน์ที่เราไม่จำเป็นต้อง
ต้องการปรับปรุง
เราสามารถปรับปรุงเมืองของทุกคน คนที่ชื่อแซมเช่น
เราสามารถปรับปรุงเมือง ทุกคนที่มีหมายเลข 2
ดังนั้นเพียงแค่ปรับปรุง เมืองแถวที่สอง
ที่เราไม่ได้มีการจัดการกับ จำเป็นคำถามทั่วไป
>> และลบเป็นอย่างที่คุณต้องการ คาดหวัง DELETE FROM table1
และจากนั้นเราได้มีคำสั่ง WHERE อื่น
ดังนั้นเราจึงสามารถพูดได้ที่ id = 1
ลบแถวแรก
และลบจะลบแถว หรือมันจะลบจำนวนแถวบาง
ลบตารางจากที่ไหน บ้านเกิด = นิวยอร์กซิตี้
จะลบทุกคนในนิวยอร์กซิตี้
นั่นคือถ้ามี ภัยพิบัติที่น่าเศร้าอย่างฉับพลัน
และคุณก็ต้องการที่จะลบ ทุกคนจากตารางที่
ที่อาศัยอยู่ในเมืองหนึ่ง ที่ได้รับผลกระทบจากภัยพิบัติ
พวกเขาอาจจะอยู่ในความสงบ
>> เหล่านี้เป็นสี่คำสั่ง SQL ที่คุณจะต้องใช้
คุณอาจไม่จำเป็นต้องใช้พวกเขาทั้งหมด
แต่เหล่านี้เป็นสี่ ที่คาดหวังว่าคุณ CS50
ที่จะสะดวกสบายกับการที่จะเข้าสู่ ทั้งตอบคำถามที่ 1 และยัง pset7 และ pset8
>> มีเพียงโต๊ะอีกครั้ง
หนึ่งในนี้มหาอำนาจรอยมี รับการปรับปรุงให้ลำแสงเลเซอร์ซึ่ง
เป็นตัวอย่างที่ผมไม่ได้ใช้
ผมไม่ทราบว่าเป็นที่หนึ่ง รอยชอบ แต่ความแข็งแรง
รอยมีมหาอำนาจของความแข็งแรง
แคเธอรีนไม่ได้ทำให้มันในวันนี้
ที่โชคร้าย
แต่เธอก็มีซุปเปอร์ความเร็ว
>> กันดีว่าเป็น PHP
ก่อนที่เราจะพูดคุยเกี่ยวกับ MVC ไม่ ทุกคนที่มีคำถามเกี่ยวกับ PHP?
ตอนนี้ SQL, PHP หรือถ้าคุณก็มี มากับคำถามเกี่ยวกับ PHP หรือไม่?
ที่ดี
สิทธิทั้งหมดเราก็พร้อมแล้ว
>> ดังนั้นการพูดคุยนิด ๆ หน่อย ๆ เกี่ยวกับการควบคุมมุมมองที่รุ่น
ขอไปกลับไปบางส่วน ของสิ่งที่อยู่ใน pset7
ดังนั้นสิ่งที่มุมมองรูปแบบ ควบคุม is-- ฉันไม่
จะบันทึกการเปลี่ยนแปลงของฉันที่จะเข้าสู่ระบบ เพราะฉันทั้งหมดเชือดมัน
แต่โดยทั่วไปเรามีสอง สิ่งที่แยกจากกันเกิดขึ้น
ขณะนี้มีประชาชน ไดเรกทอรีที่มี
รหัสที่จะต้องถูกประหารชีวิต และหน้าเว็บที่จะเข้าชม
และเรายังมีมุมมองนี้ไดเรกทอรี
และมุมมองที่มีแม่แบบ
>> นี่คือสิ่งที่ฟังก์ชั่น render-- เราเห็นการแสดงผล
ฟังก์ชั่นในเครือของโค้ด PHP ที่ CS50 ที่ได้เขียนไว้แล้วสำหรับคุณ
ที่ใช้เวลาในพารามิเตอร์บางอย่าง
รหัสอะไรที่จะทำ มันจะเข้ามาในมุมมอง
ซึ่งเป็นชุดเช่น โค้ด HTML ที่เขียนไว้ก่อน,
และก็ใส่ค่า เข้าไปในสถานที่บางอย่าง
นี่คือวิธีที่เมื่อคุณ ไปลงใน CS50 การคลัง
ส่วนหัวเดียวกันในทุกหน้า
ส่วนท้ายเดียวกันในทุกหน้า
เพราะนี่คือวิธีการที่ ที่ทำให้การทำงานของมันจะ
โดยอัตโนมัติแก้ไขในส่วนหัวและ ผู้ชมซึ่งคุณสามารถค้นหาในมุมมอง
>> เราจริงสามารถไปยังส่วนหัวและ ดูมันเป็นไฟล์ HTML ที่มีหัว
มันมีบาง stylesheets
คุณไม่จำเป็นต้องไปดูที่ CSS สำหรับ pset7 ถ้าคุณไม่ต้องการที่จะ
แต่คุณสามารถปรับเปลี่ยน พวกเขาหากคุณต้องการให้
การเงินของคุณดูแตกต่างกันเล็กน้อย
>> มันมีบาง PHP ใน ส่วนหัวนิดเพื่อดู
ถ้ามีชื่อที่แตกต่างกัน มันควรจะใส่ในส่วนหัวนี้
แต่เพียงบางส่วนสคริปต์อื่น ๆ และการเชื่อมโยงและสิ่งอื่น ๆ
จบหัวหน้าร่างกายเริ่มต้นและโอ๊ะ เรามีเกร็ดเล็ก ๆ น้อย ๆ ในตอนท้ายนี้แปลก
และมี div เช่นเดียวกับ ชนิดรูปร่างขององค์ประกอบ
ที่มีความคิดของกลาง
>> และจากนั้นเมื่อเราเห็นส่วนท้าย เรามีจุดสิ้นสุดของ div ที่
เรามีด้านล่างซึ่งเป็น ที่ส่วนท้ายของข้อความเป็น
ในตอนท้ายของ div ปลายของร่างกายในตอนท้ายของ HTM​​L
>> ดังนั้นสิ่งที่ทำให้เป็น ทำคือการทำให้การจัดเรียง
ของปะหัวขึ้นเป็น ไฟล์ PHP ที่แตกต่างกัน
จะมีสิ่งที่เกิดขึ้นจริง คุณจะดูเช่นตารางของคุณของหุ้น
ถ้าคุณจะซื้อหรือขายหุ้น
และจากนั้นก็จะเพิ่มในส่วนท้าย
และมุมมองที่รูปแบบ ควบคุมความคิดคือการที่เรา
ต้องการที่จะแยกว่า สิ่งที่ดูจากรหัส
มันเป็นเรื่องที่เราต้องการที่จะแยกส่วนหน้า และแบ็กเอนด์ที่ส่วนหน้าคือ
สิ่งที่ผู้ใช้มองเห็นที่ดี visuals-- HTML, CSS, สิ่งที่ต้องการที่
ภาพ ฯลฯ
และแบ็กเอนด์คือ PHP
นี้เป็นรหัสที่คุณเขียน
นี่คือที่รหัสที่ การดำเนินงานที่เกิดขึ้นจริงทำ
นี้คือเมื่อคุณกำลังเพิ่ม หุ้นในตารางของคุณ
เมื่อคุณกำลังซื้อและการ ขายที่แบ็กเอนด์
>> และเราสามารถที่คุณเห็น รวมทั้ง PHP โดยตรงในรูปแบบ HTML
ดังนั้นสิ่งที่เราจะได้ทำสำหรับ งานนี้จะมีเพียง
ไฟล์ HTML สำหรับแต่ละหน้าเช่นการเข้าสู่ระบบ
และแล้วในหน้านั้นเพียง มีบล็อกขนาดใหญ่ของโค้ด PHP,
รวมทั้งหมดของรหัสที่ หน้าเว็บที่เฉพาะจะต้อง
และจากนั้นเราจะได้มี ทำที่สำหรับผลงาน
เราจะได้ทำทั้งหมดของการซื้อ และการขายในหน้าของแต่ละบุคคล
>> แต่เพราะเรากำลังแสดงผล แยกต่างหากจากที่
เรากำลังเขียนแบ็กเอนด์ รหัสเราสามารถได้อย่างง่ายดาย
เปลี่ยนวิธีการสิ่งที่ดูได้โดยไม่ต้อง การเปลี่ยนแปลงทุกไฟล์เดียว
เราทำสิ่งที่ต้องการเพียงแค่เพิ่ม div ที่ใหม่ไปที่ด้านล่าง
of-- สวัสดีครับการแก้ไขส่วนท้าย
คุณก็สามารถทำสิ่งที่ชอบ
แต่ก็ยังมีคุณสามารถเปลี่ยน รูปแบบภาพทั้งหมด
โดยไม่มีผลต่อสิ่งที่ ไปในแบ็กเอนด์
และคุณสามารถเปลี่ยน แบ็กเอนด์ทั้งหมดและยังคง
มันมีลักษณะเช่นเดียวกับมันก่อน
นี้
>> เป็นความคิดของตัวควบคุมรูปแบบมุมมอง
และมันก็เป็นจริงกระบวนทัศน์ที่กำหนด ในบางส่วนของการเขียนโปรแกรมภาษา
คุณอาจต้องการที่จะใช้ สำหรับโครงการสุดท้าย
ถ้าคุณทำเช่นการพัฒนา iOS ของคุณ, พวกเขามีมุมมอง
ซึ่งเป็นสิ่งที่คุณเห็นบน iPhone และ แบ็กเอนด์แล้วเหมือนเป็นสิ่งที่แยกจากกัน
>> คุณสามารถคิดเกี่ยวกับนิด ๆ หน่อย ๆ
มีจำนวนมากของไบนารีในเป็น วิทยาการคอมพิวเตอร์ซึ่งเป็นเรื่องตลก
เพราะทุกอย่างอยู่ในไบนารี
ผมไม่ได้วางแผนว่า
นั่นคือปุนที่ไม่ได้ตั้งใจ
ใช่ปุนไม่ได้มีเจตนา
>> แต่ชอบ h ไฟล์และไฟล์ .c มี จำนวนมากของการแยกสิ่งที่เรา
อาจจะไม่จำเป็นต้องใช้
ดังนั้นเราก็สามารถแก้ไขไฟล์ชั่วโมงหรือ มีคนเพียงแค่สามารถดูไฟล์ .h และความรู้
ว่าฟังก์ชั่นที่อยู่ใน ไฟล์ .c โดยไม่จำเป็นต้องรู้
การดำเนินงานของพวกเขา
ความคิดในการแยกชิ้นส่วนนี้ ที่ขึ้นอยู่กับแต่ละอื่น ๆ
แต่สามารถเข้าถึงการเรียงลำดับของแต่ละอื่น ๆ ผ่านช่องทางที่แตกต่างกันผ่าน
ของตัวแปรเพียง รวมถึงแถลงการณ์สิ่ง
เช่นเดียวกับที่หลักการนี​​้ ช่วยในการสร้างการใช้งาน
ที่สามารถเป็นได้ง่ายขึ้น แก้ไขโดยคนหลาย ๆ
สามารถเปลี่ยนแปลงได้ง่ายขึ้น หรือการปรับเปลี่ยนในระดับใหญ่
และง่ายต่อการ การแก้ปัญหาในหลายวิธี
>> อย่างรวดเร็วจริงๆผมมี เป็นเคล็ดลับสำหรับ pset7,
ซึ่งผมจะทำแบบเต็มหน้าจอเพื่อให้คุณไม่ได้ เพียงแค่มองที่ปลายปลาย the-- Tippee
มีเคล็ดลับที่ไม่ได้จำนวนมาก
>> แต่ที่ผมกล่าวถึง PHP เป็นเรื่องยากที่จะแก้ปัญหา
สองและสามตรวจสอบ
ถ้ารหัสของคุณเป็นเพียงไม่ แสดงขึ้นบนหน้า
ก็อาจจะมีข้อผิดพลาด PHP การขอโทษ
>> คุณไม่จำเป็นต้องไปดูที่ CSS ถ้าคุณไม่ต้องการที่จะ
แต่เมื่อคุณทำเสร็จแล้วก็สามารถ สิ่งที่สนุกมีความสุขเล็ก ๆ น้อย ๆ เพียงแค่ไปใน
และรับประทานอาหารที่มีพารามิเตอร์ CSS
CSS และ HTML เป็นตัวอย่างของรูปแบบหนึ่ง สิ่งที่รูปแบบการควบคุมมุมมองเกินไปใช่มั้ย?
คุณสามารถมีแท็กสไตล์ ภายในขององค์ประกอบ HTML
แต่ถ้าคุณจัดเรียงของ จ้างให้พวกเขา CSS,
พวกเขากำลังง่ายต่อการแก้ไขและการเล่น ไปรอบ ๆ ด้วยและมีความสนุกสนานกับ
>> รักษาผู้ช่วย CS50 ทำหน้าที่เป็นกล่องสีดำ
คุณไม่จำเป็นต้องรู้ ว่าสิ่งที่ทำเรนเด,
แต่เชื่อว่ามันมักจะทำที่ถูกต้อง สิ่งที่ขึ้นอยู่กับสิ่งที่คุณผ่านมัน
สิ่งเช่นนี้
และผมอยากจะแนะนำ ดูคำแนะนำของเดวิด
จะผ่านทั้งหมด สิ่งที่ไม่ได้เป็นเพียง Todos ที่
แต่จริงๆคุณสามารถรักษา เหล่านี้เป็นกล่องสีดำ
อย่าไปลงเหล่านี้ ฟังก์ชั่นที่กำลังมองหาข้อบกพร่อง
>> และยินดีต้อนรับการกลับมา ของนริศ Zamyla ของเรา
ที่ดี
>> มีคำถามใด ๆ สุดท้ายก่อน เราเรียงลำดับของการตีกลับสำหรับวันที่?
ฉันยังมีชีวิตอยู่?
ที่ดี
สวัสดีคน Livestream
ที่ดี
มีคำถามอีกต่อไป?
ไม่ได้หรือไม่
>> แล้วผมคิดว่าเรากำลัง ดีไปสำหรับวันนี้
ฉันจะติดรอบนิด ๆ หน่อย ๆ หลังจากนั้นถ้าคนมีคำถาม
พวกเขากลัวที่จะถามเกี่ยวกับกระแส
แต่อย่างอื่นมีวันที่ดี