დინამიკები 1: All, მარჯვენა მივესალმებით უკან. ეს არის CS50. და ეს არის დაწყების კვირაში ცხრა. და ეს არის დაწყების დანარჩენი თქვენი დრო CS50, რომელშიც ჩვენ გარდამავალი ახლა, ბოლოს და ბოლოს, რომ ვებ ასპექტი რა თქმა უნდა, სადაც თქვენ იპოვოს, რომ ბევრი საფუძვლები, რომ ჩვენ ექსპორტს კვირაობით კვლავ დაბრუნდება ეწვევა, ან ასვენებს, ჩვენთვის. მაგრამ ახლა, თქვენ ნახავთ, რომ ეს ბრძანებით მასშტაბები უფრო ადვილი მიზნის მისაღწევად გარკვეული ამოცანები და გარკვეული პრობლემების გადაჭრას - იმდენად, რომ მაშინაც კი, თუ ეგონა გარკვეული პრობლემა კომპლექტი იყო fun მათი საკუთარი გზა, მე ვფიქრობ, რომ თქვენ მოვძებნოთ რომ ჟ მითითებული 7, გვ მითითებული 8, შემდეგ კი, საბოლოო ჯამში, საბოლოო პროექტი იქნება მით უფრო აღსანიშნავია, რადგან თქვენ ნახავთ, რომ ჩვენ ვიწყებთ თავისთავად ახლა რამ, როგორიცაა მეხსიერების მართვა და მითითებები, და რა ხდება on ქვეშ hood. ისევ და ისევ, თემატური, მთელი სემესტრის განმავლობაში ამ layering და layering. ახლა კი ჩვენ ერთგვარი up აქ, იდგა უნდა კვირის წარსულში. ახლა, გავიხსენოთ ბოლო დროს, რომ ჩვენ იმსჯელეს, თუ როგორ ინტერნეტით მუშაობდა. ეს იყო ალბათ გამარტივება, მაგრამ გვახსოვდეს, რომ ყველა კომპიუტერი მსოფლიოში IP მიმართოს, თუმცა, რომ ცოტა გამარტივება მაინც. და იმ მისამართები გამოიყენება ცალსახად იდენტიფიცირება მანქანები ისე, რომ როდესაც თქვენ ინფორმაციას, ან პაკეტების, ასე ვთქვათ, მათ შეუძლიათ წარმოშობის მისამართი და დანიშნულების ადგილის მისამართი. ხოლო იმავე IP მისამართი შეიძლება იყოს გამოყენებული როგორც კარგი და ასევე ბოროტი, რათა მოახდინოს თქვენი, მაგალითად. ფაქტობრივად, ყველა ერთი თქვენ ნოუთბუქი გახსნა, ან ტელეფონის თქვენს ჯიბეში, აქვს IP მისამართი on ჰარვარდის ქსელში. და ეს არ არის ყველა, რომ რთული მასთან, რომ, თუ ვინ და სად არიან ამ დღეებში. მაგრამ უფრო, რომ შესაძლოა მომავალში. ახლა მეგონა, მე მინდა დაიბრუნოს ზოგიერთი მოგონებები [? გავაძლიეროთ?] და გაძლევთ კიდევ ერთი კლიპი შოუ თქვენ შეიძლება ნაცნობი. თუ შეგვეძლო dim განათება რამდენიმე წამში. შოუ Numb3rs. დინამიკები 2: ეს 32 ბიტიანი IPP4 მისამართი. დინამიკები 3: IPP, როგორც ინტერნეტში? დინამიკები 2: კერძო ქსელის. დან Amita პირად ქსელში. იმდენად საოცარი. დინამიკები 3: კარგით, ჩარლი. დინამიკები 2: ეს. სარკის IP მისამართი. მან შეშვებას us უყურებს რა ის აკეთებს რეალურ დროში. დინამიკები 1: OK, ასე რომ ცოტა რამ ცუდი ამ სურათს. ასე რომ, ერთი, და ამ ერთი მისაღები, ეს არის რეალურად არ არის სწორი IP მისამართი. მართებული IP მისამართი უნდა იყოს ნომრები ფორმის w.x.y.z, სადაც თითოეული წერილში არის 0 255. მაგრამ ეს ჯარიმა, რადგან ისევე, როგორც ფილმები, სადაც მათ ყალბი ტელეფონის ნომრები, მათ ყალბი IP მისამართები. თქვენ არ რეალურად მოხვდა რეალური სერვერზე. მაგრამ ნუ თქვენ, ეს ბრაუზერი. ხოლო ბრაუზერები არ დაიწყოს outputting კომპიუტერული კოდის მოსწონს ეს. და თუ გადავხედავთ ცოტა ღრმა, შეამჩნია რომ ენა, რომ ისინი ხედავს ეკრანზე არის ენა უწოდა მიზანი C, რომელიც ენის რაც iPhone apps არის დაწერილი, განსაკუთრებით კი, რომელშიც მონაწილეობას მიიღებენ ფანქრები, როგორც ხედავთ ეხლა კოდის აქ. კარგი, ვფიქრობდი, ეს იყო მხიარული. ასე რომ, ეს snippet კოდის აბსოლუტურად არანაირ კავშირში არ არის, რაც არ უნდა ამ კერძოდ ეპიზოდი ეხებოდა. ასე ხუმრობა არის ერთგვარი on ეგ აღების ამ მიანიჭა. მაგრამ ეს არ არის ყველა, რომ იმისთვის, რომ მიიღოთ ეს ტექნიკური დეტალების უფლება. და მე მოგიწოდებთ თქვენ. და ფაქტობრივად, 50, შესაძლოა, ძალიან კარგად გააფუჭებს ბევრი სატელევიზიო შოუები და ფილმები, ან თქვენ იმიტომ, რომ თქვენ იპოვით რომ ეს მხოლოდ არ შეიძლება, რა ისინი აკეთებს ეკრანზე. მაგრამ რა თქმა უნდა, ეს არის კოდი, რომ თქვენ შეიძლება ნახოთ ის iPhone განაცხადის ან Mac OS პროგრამა. მას არაფერი ამის გაკეთება დაცვით. ასე რომ, თვალი გარეთ უფრო ასეთი fun რამ, როგორიცაა, რომ. მაგრამ დღეს ჩვენ ვიწყებთ dive in ნამდვილად ღრმად რომ მთელი რიგი ენებზე. მართლაც, ერთი ძირითადი takeaways ამ ნაწილის რა თქმა უნდა, არ არის, ისწავლონ პროგრამის in PHP, არ უნდა ვისწავლოთ SQL თავისთავად, არ უნდა ვისწავლოთ JavaScript თავისთავად, არამედ ასწავლოს თავს, თუ როგორ უნდა ასწავლოს თავს ახალ ენებზე, რადგან, რა თქმა უნდა, ჩვენ ვიწყებთ მიიღოს ახლა სასწავლო დისკები off ისე, რომ მას შემდეგ, რაც კურსის ბოლოს, თქვენ არ მოველით 20 გვერდი დაზუსტება გითხრათ, თუ როგორ განახორციელოს ზოგიერთი პროგრამა. თქვენ გაქვთ საკმარისი კომპონენტების თქვენი გონება და საკმარისი ინსტრუმენტები თქვენს ინსტრუმენტი ნაკრები, რომელთანაც უნდა დაიწყოს მშენებლობის იმ პრობლემების გადასაჭრელად საინტერესო თქვენ გარკვეული სტუდენტები ჯგუფი, რაღაც კვლევითი პროექტი, ან მართლაც არაფერი საინტერესო იყოს თქვენთვის. ასე რომ, მიმართ ამ მიზნით, გავიხსენოთ, რომ ეს იყო სურათზე სამარცხვინო იგი ბოლო დროს. და ეს არის ორი კომპიუტერი, კლიენტების და sever ესაუბრნენ ერთმანეთს. და ოქმი, ენა, ასე საუბარი, რომ ეს ორი კომპიუტერი მოხდეს უნდა საუბარი ეწოდება HTTP. და ეს მხოლოდ ოქმის მიერ გამოყენებული კომპიუტერების გადასცენ ინფორმაცია მეტი მსოფლიო ქსელში. ვებ, რა თქმა უნდა, მხოლოდ ერთი მომსახურების რომლითაც თავზე ე.წ. ინტერნეტში. რა არის კიდევ ერთი სერვისი დაბრუნება of ინტერნეტში ამ დღეებში? ზოგიერთი სხვა ოქმი ან - რა არის ეს? აუდიტორია: FTP. დინამიკები 1: FTP. ასე რომ, ფაილის გადაცემის პროტოკოლი მეორე. უმეტესობა ალბათ არ გამოიყენება იგი. მაგრამ ყველაზე მეტად თქვენ ალბათ არ გამოიყენება რამ, როგორიცაა Gchat, ან სწრაფი შეტყობინებები უფრო ზოგადად, რა თქმა უნდა, ელ. ხოლო ისინი, ძალიან, არის მომსახურება, რომელიც აწარმოებს დაბრუნება of ინტერნეტში, რადგან, იმ დღის ბოლოს, ინტერნეტის თავად რეალურად მხოლოდ მონაცემების მიღება წერტილი უნდა წერტილი ბ და იგი იყენებს რაოდენობის ნაწილაკების თავად, მათ შორის ერთი ან ორი ერთი მათგანი ყველაზე ზოგადად მოუწოდა TCP / IP, რაც შემიძლია ვთქვა, რომ ერთი კომპიუტერი ინტერნეტ შეიძლება რეალურად უნდა აკეთებს სხვადასხვა რამ, ელ, და ვებ და სხვ. Google ჯერ ბევრი ამ. ასე რომ, როგორ არის ის მომსახურების ცალსახად გამოვლენილი, არ ვამბობთ, კომპიუტერულ რომ, შესაძლოა, რეალურად უნდა აკეთებს მრავალი რამ? პორტის ნომერი. და ეს არის მხოლოდ თვითნებური ადამიანის კონვენციების მსგავსად 80 არის ვებგვერდი, 443 არის დაშიფრული ვებ, 25 ელ. წინ კიდევ bunches სხვები. და ეს ციფრები უბრალოდ შედის იმ პაკეტი ინფორმაციით, იმ ვირტუალური კონვერტში, რომ რეალურად შეიცავდა მოთხოვნა ან პასუხი. ასე რომ, როდესაც თქვენ დავუბრუნდეთ პასუხი ვებ, როგორც წესი, თქვენ ვერ ვხედავ ციფრები ჩაბმის თვალსაზრისით სტატუსი კოდი პასუხი. თქვენ არ რეალურად ვხედავ შიდა სამუშაოები პაკეტების, რომ დავბრუნდებით. მაგრამ 200 ს ნამდვილად ნიშნავს იმას, OK. ეს კი ნიშნავს, ყველაფერი კარგად. თქვენ ალბათ არ უნახავს bunch ამ. რაც ალბათ ყველაზე გავრცელებული ვნახე ინტერნეტში? 404. ეს მხოლოდ იმას ნიშნავს, ფაილი არ არსებობს. ეს იმას ნიშნავს, ვინმეს ბრალია. გააკეთეთ თქვენ მიერ mistyping URL, ან ვინმე სხვაგან გააკეთეს by გაძლევთ არასწორია URL, ან არ იშლება ფაილი და URL ჯერ კიდევ გამოიყენება ადამიანი. ასე რომ ნებისმიერი რიგი მიზეზების გამო ვერ ახსნას რატომ ფაილი არ არის ნაპოვნი. და დაინახავთ, რომ კვირის განმავლობაში მოვა, ამ სხვა შეცდომა კოდები, და თქვენ ისარგებლოს ზოგიერთი მათგანი. ყველაზე ცუდი არის 500. თუ თქვენ გაქვთ 500 შეცდომა კოდი თქვენ დაიწერა, ვფიქრობ, რომ როგორც ერთგვარი ანალოგი seg ხარვეზი მსოფლიოს ვებ პროგრამირების. ეს არ არის საკმაოდ, როგორც მძიმე. მაგრამ ეს მხოლოდ იმას ნიშნავს, რომ, სადღაც, თქვენ ბრალია. ასე რომ, ველით იმ. მაგრამ მოდით ვნახოთ, თუ შევძლებთ ვხედავ ამ კონტექსტში. ნება მომეცით წასვლა ბრაუზერის აქ და ამის გაკეთება შემდეგ. ასე რომ, ეს Chrome, რაც ხდება დამონტაჟდება მოწყობილობების. მაგრამ ყველაზე ყველა ბრაუზერი ამ დღეებში აქვს ზოგიერთი ექვივალენტს ფუნქცია. მე ვაპირებ წასვლა up Chrome მენიუ, და წავიდეს ინსტრუმენტები, და მე ვაპირებ წასვლა to შემქმნელი ინსტრუმენტები. და დაინახავთ, რომ ამ პატარა პანელი იხსნება ბოლოში ფანჯარა. კიდევ ერთი მალსახმობი, მართალი გითხრათ, რომ მე როგორც წესი, გამოიყენოთ თავს არის მარჯვენა click ან საკონტროლო დააწკაპუნეთ ნებისმიერ ვებგვერდი გვერდი უბრალოდ წასვლა შეამოწმოს ელემენტს. და ეს იქნება არა მხოლოდ გახსნა ამ აქვს თქვენთვის. ის ასევე გახსნა, კერძოდ, ელემენტები ნაწილი წლის მარცხენა მხარეს. ასე რომ, ჩვენ, რა თქმა უნდა ხედავს Google. მათ შეიცვალეს ლოგო შეხვდა. მაგრამ თუ მე გადაფურცლეთ ქვემოთ აქ, შეამჩნია რომ ელემენტები, ხედავთ რასაც HTML, ჰიპერტექსტური markup ენა და ეს ენა რომ ამ და ყველა ვებ გვერდები, მართლაც, იწერება სისტემაში მაგრამ სინამდვილეში ფორმატის for ჩვენს ასე უფრო მეტი readably ვიდრე ეს ჩვეულებრივ. ფაქტობრივად, თუ დააშორებს და მე ნაცვლად უბრალოდ უფლება დააწკაპუნეთ ან კონტროლის Click დააწკაპუნეთ გვერდზე, შემდეგ კი ვნახოთ გვერდი წყარო, ეს არის ფაქტიურად რა Google გაგზავნილი ქვემოთ ჩემს ბრაუზერში. ასე რომ ზოგიერთი პირის ან პირების დაწერა Google.com გამოყენებისას წყაროს კოდი. უმეტესობა ეს არ არის HTML. ეს, ფაქტობრივად, ენა უწოდა JavaScript, რომელიც ჩვენ მოვიდა ოთხშაბათს. მაგრამ რა Chrome, და რა ყველა ბრაუზერში შეგვიძლია გავაკეთოთ ჩვენთვის ერთგვარი ვხედავ წარსულში ყველა distractions of გიჟები სინტაქსი და reinsert თეთრი სივრცე ჩვენთვის და კიდევ syntax შედეგი, ან Colorize რამ ჩვენთვის. ასე რომ, თქვენ ნახავთ, რომ ეს ე.წ. დეველოპერი ინსტრუმენტები აშენდა შევიდა ბრაუზერები იქნება თქვენი ცხოვრება, ასე რომ, თუ რამდენად ადვილი იმიტომ, რომ თქვენ შეისწავლონ მეშვეობით მენიუში ინტერფეისი, ზუსტად რა ფუძემდებლური წყაროს კოდი არის ნებისმიერი გვერდი ინტერნეტში. მართლაც, ეს არის ერთ ერთი ყველაზე ეფექტური გზა უნდა ვისწავლოთ თუ როგორ უნდა გავაკეთოთ რაღაც ახალი, სულ მცირე, თუ გვერდი ასე არ არის კომპლექსი, როგორც overwhelm არის უნდა დაიწყოს გააღიზიანოს გარშემო ეს HTML, გამოიყურება მის ე.წ. CSS, რომელიც ჩვენ მოვა to ცოტა, ისევე, მიიღოს გაგება, თუ როგორ, რომ პროგრამისტი განხორციელებული კონკრეტული თვისება გვერდზე. მაგრამ უფრო ტექნიკურად საინტერესო უფლება ახლა ეს იქნება ეს. თუ მივდივარ ქსელი tab, მოდით ახლა ნათელია ეს. მე ვაპირებ დააჭირეთ პატარა გადაკვეთა სიმბოლო აქ, შემდეგ კი გადადით სხვა ვებგვერდზე. და მე მხოლოდ აპირებს აკრიფოთ ამ Facebook.com. არ HTTP, არ HTTPS, არ WWW. მოდით რეალურად ვხედავ რა ხდება აქ. შეიტანეთ. ახლა შეამჩნია მთელი bunch პერსონალის მხოლოდ გამოჩნდა ამ ქვედა პანელი, ამ გარდა იმისა, რომ ვებ გვერდზე გამოჩენა დასაწყისში. მე ვაპირებ გადახვევა უკან დაყოფილია ქსელი tab აქ, და მე ვაპირებ დააწკაპუნეთ პირველი რიგის. რა ეს ინსტრუმენტი ხდება გამოვლენა ჩვენთვის არის ყველა ერთი HTTP ითხოვს რომ სწრაფად მხოლოდ გაბრუნდნენ და მეოთხე შორის ჩემს ბრაუზერში და Facebook-ს სერვერზე. ასე რომ, ყოველ ერთ იმ რიგები წარმოადგენს ერთი ასეთი მოთხოვნა ან საპასუხოდ, ერთი ან მეტი იმ ვირტუალურ პაკეტში. ან მეტი casually, ეს როგორც პირი ისევე როგორც ადამიანს, მომხმარებელს in რესტორანი, ითხოვს რაღაც ისევ და ისევ, და ისევ, და ისევ. და მიმტანი ინარჩუნებს შემოტანა უკან ერთ დროს. ასე რომ, ახლა, თუ ზომით ეს შეამჩნია და ეს იქნება ერთგვარი რამ რომ თქვენ მივესალმებით და მოუწოდებს თამაში საკუთარ, რადგან ჩვენ არ გაიაროს ყველაფერი დიდი დეტალი. მაგრამ შეამჩნია არსებობს რამდენიმე ქვე ჩანართების აქ - ჰედერისა, Preview, რეაგირების, Cookies და დრო. მე მხოლოდ აპირებს შევხედოთ თავით ახლა რადგან ეს არის პატარა ინგრედიენტები შიგნით კონვერტში, რომ დაეხმაროს მონაცემების მისაღებად და ადგილები. ასე რომ, პირველ რიგში, ნება მომეცით დააჭირეთ, ვნახოთ წყარო შემდეგ მოთხოვნა ჰედერისა. არსებობს თხოვნით, რომ ჩემი ბრაუზერის, Chrome, ამ შემთხვევაში, გამოგზავნილი შიგნით რომ ვირტუალურ პაკეტში. თქვენ გავიხსენოთ გასულ კვირას I ხელით აკრეფილი, ხოლო თითქოს იყოს ბრაუზერში. შემდეგ მას შეახსენა სერვერზე, რომ ეს ეძებს მასპინძელი მოუწოდა Facebook.com. შემდეგ კი ცოტა მეტი arcane ინფორმაცია, რომ ჩვენ ტალღა ჩვენს ხელში იქნება. მაგრამ თუ დაიწყება გადაფურცლეთ ქვემოთ ახლა ეს ფანჯარა, ნება მომეცით მისაღებად საპასუხოდ თავით. ეს იყო ის, რაც არის ამ ვირტუალურ კონვერტში რომ დაბრუნდა Facebook.com. და თუ დაჭერით ნახვა წყარო მხოლოდ სანახავად ნედლეული ტექსტი ეს, შეამჩნია რამდენიმე რამ. ერთი, Facebook საუბრობს იგივე ოქმი, ვერსია 1.1 შესახებ. ასე რომ, ლამაზი. მაგრამ მდგომარეობა კოდი 301, გადავიდა მუდმივად. , სადაც heck საერთოდ Facebook წავიდეთ? რა არის ეს ცდილობს გადმოცემა ჩვენთვის? ისე, შეამჩნია ქვემოთ აქ არის სხვა თავით მოუწოდა მდებარეობა. რატომ არის Facebook მეუბნებოდა, რომ მათ გადავიდა მუდმივად იმ URL შემდეგ საიდან? დამავიწყდა www. ასე რომ, ეს იყო ჩემი არჩევანი. სინამდვილეში, ყველაზე მეტად ჩვენს იშვიათად, ალბათ, აკრიფოთ www.whatever.com ამ დღეებში. მაგრამ აღმოჩნდება, სისტემის ადმინისტრატორს ისევე როგორც Facebook-ის, შეიძლება კონფიგურაციის მათი სერვერები ისე რომ ან Facebook.com მუშაობს, ან www.Facebook.com მუშაობს, ან, მართლაც, ნებისმიერი ასეთი პრეფიქსი წინ მათი დომენური სახელი. ასე რომ, ისინი გავაკეთეთ, რომ ჩვენთვის. და ისინი გადამისამართებას ჩვენთვის, ალბათ, გარკვეული ტექნიკური, ზოგიერთი მარკეტინგი მიზეზების გამო. მათ უბრალოდ სურთ canonicalize on www.Facebook.com. მაგრამ ეს არ არის საკმაოდ იგი. თუ მე გადაფურცლეთ ქვემოთ აქ, მოდით ვნახოთ, რა მოხდება. ეს მეუბნებოდა ჩვენ გადავიდა მუდმივად უნდა http://www.Facebook.com. მოდით შევხედოთ მეორე თხოვნა რომ ჩემი ბრაუზერი უგზავნის. სამწუხაროდ, როგორც ჩანს, Facebook გადავიდა, რადგან მეორე მოთხოვნით, შერჩევით, რომ URL ნაცვლად, ამბობს, რომ, ძალიან, გადავიდა მუდმივად. და ნება მომეცით გადაფურცლეთ ქვემოთ აქ to საპასუხოდ თავით. სად Facebook წავიდა ახლა? ასე რომ, HTTPS. ასე რომ, ახლა Facebook დაიწყო, განსაკუთრებით იმ ფონზე, მიმდინარე მოვლენები ბოლო თვეების განმავლობაში, განსაკუთრებით და ასევე ბოლო რამდენიმე წლის განმავლობაში აიძულოს ყველა მათი წევრებს, კარგად გზა, გამოიყენოს HTTPS, რომელიც უფრო უზრუნველყოს, თუმცა მთლად უსაფრთხო. ასე რომ, ახლა ჩემს გვერდზე, ჩემი ბრაუზერი მოთხოვნას აპირებთ ამ მესამე URL. ახლა კი, საბოლოოდ, მივიღებთ წინააღმდეგ შემთხვევაში უხილავი 200 OK. მერე რა რომ მსოფლიოში ან ყველა ამ სხვა რიგები ქვემოთ აქ. მე ფაქტიურად აკრეფილი ერთი რამ, და ჩემი ბრაუზერი, როგორც ჩანს, მოთხოვნილი მოსწონს 20 რაღაც უცნაური რამ. რა არის ეს? აუდიტორია: Scripts? დინამიკები 1: Scripts, ასე რომ სხვა ფაილი დაწერილი ენა უწოდა JavaScript, რომელიც, კიდევ ერთხელ, ჩვენ ვხედავ ცოტა ოთხშაბათს. რა? სტილი ფურცლები. ასე რომ, რაღაც ენა უწოდა სოციალურ მეცნიერებათა ცენტრი, რომელიც ჩვენ დავინახავთ ცოტა. Gifs და JPEGs და pngs და გამოსახულებები, და ვიდეო ფაილების - ის რაც ვებ გვერდზე აქვს სავარაუდოდ in ფორმა ფაილი. ასე რომ, რასაც ჩვენ ვხედავთ მარცხენა მხარეს არის ყველა ფაილი რომ Chrome ჰქონდა ჩამოტვირთვა, რეკურსიული, თუ გნებავთ, რათა დაკომპლექტებას მთლიანად იყოს. ასე რომ, ის, რაც ჩვენ ვნახეთ, ერთი წუთით წინ Google, თუ მე დააწკაპუნეთ ელემენტები tab, ეს, რა თქმა უნდა, არის HTML, ენა, რომელიც შეადგენს ამ გვერდზე. მაგრამ bunches სხვა რამ. აქ არის ლოგო. აქ არის იმ ლურჯი ish ხატები აქ. წინ კიდევ სხვა ელემენტები ჯერ კიდევ გვერდზე რომ თავად შეიძლება იყოს ცალკე ფაილი. რა არის ლამაზი შესახებ ბრაუზერი არის, რომ იგი უყურებს ენის ვაპირებთ უნდა დაიწყოს წერა, ან თქვენ უკვე დაიწყო წერა P კომპლექტი 7 მოღვაწეები თუ სად იმ ფაილებს ცხოვრობენ და მიდის და grabs აკეთებდა. და მე ვერ ხაზი გავუსვა საკმარისი, მაშინაც კი, თუმცა ამ შეიძლება ცოტა arcane ან დაუძლეველი ერთი შეხედვით, სწავლა, თუ როგორ პროგრამის განაცხადების ვებ, ეს ფასდაუდებელი მესმის როგორ შეიძლება ამ პატარა იარაღები მუშაობს. ეს არის ერთგვარი, როგორიც GDB მოსწონს ინსტრუმენტები, მაგრამ ბევრად უფრო მარტივია, საბოლოო ჯამში, გამოყენება - და მართლაც გაძლევთ თვალში შევიდა რა ჩვენ ხორციელდება for გაიცემა საკმაოდ გარკვეული დრო არის. ასე რომ, რა შეგვიძლია ახლა არ უკავშირდება ამ ინფორმაციას? ისე, მოდით რეალურად შევხედოთ ცნებები უდევს HTML. და ჩვენ defer, რადგან ჩვენ უკვე გვაქვს, რომ სექციები ამ კვირაში, რომ პრობლემა მითითებული 7 დაზუსტება, რომ ზოგიერთი უფრო რომლებიც ამ ენებზე. მაგრამ ვნახოთ, შევძლებთ თუ არა ხატვა სურათს რა უნდა გვესმოდეს საერთო აქ. ასე რომ, HTML, ჰიპერტექსტური მარკირებას ენა, არ არის პროგრამირების ენაზე. რას ნამდვილად ნიშნავს? ასე რომ HTML ასე გამოიყურება. და ზოგიერთ თქვენგანს უკვე იცის. ზოგიერთ თქვენგანს არ აკეთებს ამ გარკვეული დროის განმავლობაში. მაგრამ ვნახოთ, შევძლებთ თუ არა შეავსოთ ზოგიერთ ბლანკები ასევე. ასე რომ, შეამჩნია რამდენიმე რამ აქ. ერთი, უბრალოდ ტექსტი. ასე რომ, ისევე, როგორც წყარო კოდი C ან სხვა ენაზე. გავითვალისწინოთ რომ როგორც ჩანს უნდა იყოს ნიმუში აქ. აქ არის წანაცვლება, მაგრამ ტექნიკურად წანაცვლება მხოლოდ ადამიანის კონვენციას. ბრაუზერები არ აინტერესებს თუ არა ახალი ხაზები და ჩანართების like ჩვენ ვხედავთ არსებობს. მაგრამ შეამჩნია, რომ არსებობს სიმეტრიებს აქ. აქ არის ის, რაც მე ამას დავარქმევთ, ზედა ფაილის ღია tag, ან დაწყების tag, სახელწოდებით HTML. და მაშინ, ქვემოთ ქვემოთ, კარგად გაფორმებულია up, ჰგავს ვაკეთებთ ერთად curly აფრთხილებს, ჩვენ ვხედავთ, ღია bracket, წინ ხაზი, HTML, ახლო bracket. ასე რომ, შესაბამისი ახლოს tag, ან ბოლოს tag, რომ რამ. ჩვენ ერთად ყველაფერი შიგნით ე.წ. ღია tag და ახლო tag შეადგენს, რაც ჩვენ ამას დავარქმევთ ელემენტს. და ჩვენ ვხედავთ, რაღაც მომენტში, ეს ნამდვილად მინდა კვანძის in ხეები. იმიტომ, რომ თუ ფიქრობთ ეხლა indentation რომ იგულისხმება აქ, თქვენ სახის აქვს, როგორც, grandparent კვანძის მოუწოდა HTML. რამდენი შვილი შესაძლოა ამბობენ, საფუძველზე ამ სურათზე, HTML ელემენტს აქვს? ასე რომ, სავარაუდოდ, ორი. ერთი ხელმძღვანელი ელემენტის, როგორც ჩანს. და ერთი ორგანოს ელემენტს. და რატომ ორი შვილი? ისე, მე მხოლოდ ასეთი inferring, რომ თუ მე მაქვს ღია ხელმძღვანელი tag და შემდეგ ახლო ხელმძღვანელი tag, რომ ელემენტს. და მაშინ, თუ არსებობს კიდევ ერთი ღია ორგანო tag და ახლო ორგანოს tag ასეთი კიდევ ერთი ელემენტს. ასე რომ, იმ გაგებით, რომ თუ ასეთი როტაცია სურათს თავის მხრივ, ეს მსგავსად, რომელსაც HTML tag, და შემდეგ ხელმძღვანელი tag, და შემდეგ ორგანოს tag, და მაშინ რაიმე ტექსტი, Hello World, dangling off სხეულის tag თავად. ასე რომ, ჩვენ შეგვიძლია დავხატოთ სურათი, შეიძლება მოსწონს ეს. ფორმები არის უკანონო. მაგრამ შეამჩნია, რომ მე გამოიყენება სახის ელიფსის ზედა წარმოადგენს დოკუმენტურად თავად. თურმე შეიძლება სხვა პერსონალი შიგნით ვებ გვერდზე, რომ მე არ შედგენილი აქ. ასე რომ, ჩვენ ვაპირებთ კიდევ დაკიდება HTML კვანძის გამორთვა ე.წ. დოკუმენტი კვანძის. და მაშინ ჩვენ გვაქვს ხელმძღვანელი და სხეულის და სათაური, შეტყობინება, რომელიც წყობილი შემდგომი. მე არ გადაიტვირთოთ აყენებს დამატებით ხაზი შესვენებები შიგნით ტიტული აქვს. ის უბრალოდ გრძნობდა, როგორც ეს იყო მიღების ცოტა verbose. ასე რომ, წავიდა ერთ ხაზი იქ, სადაც ღია სახელწოდება, Hello World, ახლო ტიტული. და მაშინ ჩვენ გვაქვს რაიმე ტექსტი dangling გამორთვა აქ. ასე რომ, ეს ნახატი დაბრუნდება ჩვენს როდესაც ჩვენ dive შევიდა JavaScript. და გაგება, რომ როდესაც თქვენ წერა HTML ასე, რა არის ბრაუზერის აკეთებს? ასევე, ჩვენ არ უნდა ფიქრი თუ როგორ აკეთებს, ან რა ალგორითმი, მაგრამ დღის ბოლოს, როდესაც ბრაუზერის იღებს HTML მოსწონს რომ, facebook-ან Google, ეს parses ეს, ასე ვთქვათ, ეს ნათქვამია, რომ რაღაც მოსწონს fread, ყველაზე ბოლოში, მარცხნიდან მარჯვნივ, როგორც ეს აცნობიერებს, რა, ღია tag, და შემდეგ ახლოს tag, იგი იწყებს malloc, ასე ვთქვათ, კვანძის in ხე. ხოლო როდესაც ეს შეტაკებები, როგორც ჩვენ იგულისხმება აქ indentation, ბავშვის კვანძის, ეს mallocs კვანძის, რომ და დაერთვება, რომ ხე. ასე რომ, ხის სტრუქტურების, ორობითი ხეები, ternary ხეები, და დიდი ხეები, რომ ჩვენ მოხვდა ერთი ორი კვირის წინ, განცხადებების რომ იგივე პრინციპი ბრუნდება ჩვენთვის. და ვინც განახორციელა, Chrome, რაც არ უნდა გუნდი გააკეთა, რომ, სავარაუდოდ ჰქონდა განახორციელოს რაიმე სახის ხის სტრუქტურაში ქვეშ Hood. და ეს თავისთავად ალბათ ენის მსგავსად, C, ან C + + ან ქვედა დონის ენა, რომ ჩვენ არის გამოიყენოს atop ინტერნეტში. ასე რომ, ახლა, შესაძლოა, ეს ხელს უფრო გაგებით. ფაქტობრივი tattoo ზოგიერთი ბიჭი, რომელიც შეიძლება ვნანობ, რომ ეს საბოლოო ჯამში, სახის. OK, ყველა უფლება, ბევრი ვებ იუმორით. ეს ნამდვილად არ ვაპირებთ მეტი ისე კარგად გააკეთა. ასე რომ, ჩვენ გადაადგილება. ყველა უფლება. მოდით შევხედოთ ახლა ზე რამდენიმე მაგალითი. მარტივი შესაძლებელი რამ შეიძლება იყოს ეს. მე ვაპირებ წავიდეთ წინ და ქმნის in gedit ფაილი სახელად hello.php. ხოლო შიგნით, აქ, მე ვაპირებ სწრაფად მხოლოდ ამის გაკეთება, printf, შეთავაზება unquote, "Hello World". ასე რომ, შეტყობინება, და მე გავაკეთებ წარმატებული ნ მე არ აწუხებს განაცხადოს მთავარი. გამოდის, PHP-ში, და ბევრი ენებზე, თქვენ არ გჭირდებათ მთავარი ფუნქციის თავისთავად. შეგიძლიათ დავიწყო წერა თქვენი პროგრამა. ახლა, როდესაც მე გადარჩენა ფაილის შეამჩნია ვარ აპირებთ უნდა გავაკეთოთ შემდეგ. მე არ ვაპირებ გამოყენება გააკეთოს, და მე არ ვარ აპირებს გამოიყენოს clang რადგან PHP, განსხვავებით C, არ არის შედგენილი ენაზე. ეს რასაც გაგებული, ენა, რაც იმას ნიშნავს, რომ თქვენ აწარმოებს როგორც შეყვანის კიდევ ერთი პროგრამა მოუწოდა თარჯიმანი. და ეს პროგრამა ნათქვამია, რომ ყველაზე ბოლოში, მარცხნიდან მარჯვნივ და აკეთებს რასაც თქვენ გეტყვით, რომ ეს უნდა გააკეთოს. ასე რომ, ამ შემთხვევაში აქ მაქვს ერთი ხაზი, რომელიც ამბობს, printf. ასე რომ, როდესაც მე აწარმოებს ამ კოდებს, hello.php, თუმცა პროგრამა, რომელიც მოხდება, მოხერხებულად, ე.წ. PHP, ეს პროგრამა PHP აპირებს წაიკითხა ფაილის ყველაზე ქვედა, მარცხნიდან მარჯვნივ, და ეს აპირებს, რაც მე ვამბობ, რომ გააკეთოს - შესრულებაში კოდი და თუ ის არ აღიარებს რამე, უბრალოდ spitting ის. ამიტომ, მე ვაპირებ წავიდეთ წინ და აწარმოებს PHP of hello.php. შეიტანეთ. და ეს არ არის საკმაოდ რა მე განკუთვნილი. ისე, თუ რატომ არის, რომ? ისე, PHP არის ენა, რომელიც, ფაქტობრივად, შემუშავებული რომ საკმაოდ გადაჯაჭვულია ინტერნეტში. მიღებისას ვებ გვერდები ამ ენაზე PHP, როგორც ჩვენ მალე, ჩვენ მინდა რაღაც ბეჭდვითი out ხაზები მოსწონს ეს. ამიტომ, მე ვაპირებ ამის გაკეთება. ღია bracket, კითხვის ნიშნის, PHP, და ახლა მე მხოლოდ აპირებს აბზაცის მხოლოდ შენარჩუნება რამ ლამაზი. ახლა კი მე ვაპირებ გაკეთებას კითხვა აღსანიშნავად მჭიდრო bracket. ასე რომ ცოტა ასიმეტრია აქ. თქვენ არ გააკეთებს. თქვენ არ გავაკეთებთ ხაზი, ისე PHP არის ცოტა განსხვავებული. მაგრამ ახლა, თუ გამეორება ამ პროგრამის PHP hello.php, ახლა მე რეალურად მიიღონ Hello World. და ჩვენ დავინახავთ, თუ რატომ არის ღირებული. ერთი, ეს საშუალებას აძლევს ჩემს აკონკრეტებს, სუპერ მკაფიოდ არის, ეს კოდი, შეასრულოს ეს. და ეს მართლაც, რაც ამ სპეციალური tags გულისხმობს აქ. მაგრამ ეს ასევე ნიშნავს, რომ თუ მე უბრალოდ მსგავსი რამ მე მიზნად მეზობელი, რომ ნიშნავს, რომ, ფაქტიურად, რომ მხოლოდ დაიბეჭდება გარეშე საჭიროებას სინამდვილეში printf, ან ბეჭდვითი, ან რაიმე მსგავსი ფუნქცია. ასე რომ, ჩვენ დავბრუნდებით იმ რაღაც მომენტში. პირველ რიგში, მოდით ეს. შიგნით მოწყობილობების, ჩვენ გვაქვს კატალოგი, სახელწოდებით Vhosts, ვირტუალური მასპინძლებს, სლეში ადგილობრივი მასპინძელი, სლეში საზოგადოებას. ასე რომ, ეს ცოტა verbose, მაგრამ გრძელი ამბავი მოკლედ, მოწყობილობების განკუთვნილია არა მხოლოდ მხარდასაჭერად C. ეს ასევე მხარდასაჭერად PHP. მაგრამ ასევე მიზნად ისახავს იყოს ვებგვერდი სერვერზე, და მონაცემთა ბაზის სერვერი. და ეს შემუშავებული, და მართლაც კონფიგურაცია, იყოს თქვენში ნებისმიერი კომერციული ვებ ჰოსტინგი კომპანია, რომელიც თქვენ ალბათ $ 5 თვის, $ 100 თვეში. როგორიც არ უნდა იყოს მომსახურება არის, ის კონფიგურაცია უნდა იყოს ძალიან ჰგავს რეალური სამყაროს წარმოების სერვერზე. და რა ეს ნიშნავს, რომ ის არის, რომ გაშვებული მოწყობილობების არის სერვერზე პროგრამული უზრუნველყოფა. ეს ხდება ე.წ. Apache. უბრალოდ თავისუფალი და ღია, და დიდი პოპულარობით სარგებლობს. ჩვენ კონფიგურაცია Apache იცოდეს რომ თუ ვარ გარკვეული URL, რომელიც Chrome ან ნებისმიერ ბრაუზერში შიგნით მოწყობილობების, შეისწავლის ამ დირექტორიის ამისთვის ფაილი, რომელიც მომხმარებლის ითხოვს. სხვა სიტყვებით, მინდა წავიდეთ წინ და ამის გაკეთება. შიგნით ჩემი საჯარო დირექტორია, მე ვაპირებ to წავიდეთ წინ და შევქმნათ ფაილი მოუწოდა index.html. ეს მაძლევს tab აქ. და მე ვაპირებ წასვლა ძალიან სწრაფად და წავიდეთ წინ და bang out ამ პროგრამის აქ. Doctype HTML, რომელიც ახლა, უბრალოდ ვივარაუდოთ, თქვენ უნდა შეიტანოთ. უბრალოდ arcane tag, ეს არ არის მართლაც HTML tag, რომ მიუთითებს, რომ აქ მოდის ზოგიერთი HTML. მე ვაპირებ წავიდეთ წინ და ხელახლა ის, რაც ჩვენ ვნახეთ, ერთი წუთით წინ. აი ხელმძღვანელი გვერდზე. შიგნით ხელმძღვანელი იყო - ასე ტიტული. ასე რომ, ჩვენ მიესალმები, მსოფლიოში. შემდეგ კი ქვემოთ აქ ორგანოს აქვს. ნება მომეცით ჩემი გამოსვლა ორგანო აქვს. და მაშინ აქ მე ასევე აცხადებენ, მხოლოდ სიწმინდე, Hello World. ასე რომ, ეს, სავარაუდოდ, იმ მარტივი შესაძლებელია ვებ გვერდზე თქვენ შეუძლია, რომ მოქმედებს. ეს syntactically ძალაშია. ყველაფერი, რაც გახსნის დახურულია. ყველაფერი ლამაზად in ე.წ. და indented. ასე რომ, ვნახოთ, ახლა რა შეუძლია ეს ფაილი. ისე, მინდა წასვლა Chrome აქ. და ნება მომეცით წასვლა http://localhost/index.html. რა არის ადგილობრივი მასპინძელი? ისე, ყველაზე ნებისმიერი კომპიუტერული მსოფლიოში Linux, Mac OS, Windows, აქვს მეტსახელად მოუწოდა ადგილობრივ მასპინძელი. ასე რომ, თუ ოდესმე გვინდა გაიგო საკუთარი კომპიუტერი - თუმცა, oddly რეფლექსურად - თქვენ დაირქვით ადგილობრივი მასპინძელი. არ აქვს მნიშვნელობა რა თქვენი ფაქტობრივი კომპიუტერი ეწოდება, თუ არა ეს დავითის MacBook Air, ან რაღაც უფრო verbose იგრძნობა. ასე რომ, ეს URL აშკარად აპირებს HTTP გაიგო, რომ ადგილობრივი მასპინძელი, იგივე კომპიუტერი, მოწყობილობების და ის სთხოვს, უბრალოდ ვხვდები, თუ რა ფაილი? შეცდომა. ასე რომ, მოწყობილობების უკვე კონფიგურირებული წინასწარ ვიცი, რომ თუ მე ითხოვს ამისთვის რაღაც შეცდომა, ვეძებთ საქაღალდეში მოუწოდა Vhosts, ამ საქაღალდე სახელწოდებით localhost, საქაღალდეში მასში მოუწოდა საზოგადოებას. არის ის, სადაც ყველა ჩემი საჯარო ფაილი იქნება. ასე რომ, მე ახლა მიმდინარეობს მოხვდა შეიტანეთ. და რა, არ არსებობს, რომ აკრძალული გაგზავნა, წინააღმდეგ შემთხვევაში, ცნობილია, როგორც 403, რიცხვითი კოდი ამისთვის. რა არის არასწორი აქ? ისე, ეს არ არის საკმარისი მხოლოდ დააყენა ფაილი შიგნით ჩემს საქაღალდეში. მე უნდა რეალურად გავაკეთოთ შემდეგ. ნება მომეცით წასვლას ჩემი Vhosts დირექტორია, შევიდა localhost, საზოგადოებრივ და ნება მე ამის გაკეთება ls ტირე ლ. წინ კიდევ რამდენიმე სხვა რამ აქ დღევანდელი მიზნებისათვის. მაგრამ შეამჩნია მარცხენა მხარეს, მომდევნო to index.html, აქ მხოლოდ ერთი RW. ხოლო წარსულში, რა აქვს RW იდგა? უბრალოდ კითხვა და წერა. ის ფაქტი, რომ იგი აცხადებს RW რომელიც მარცხენა ნიშნავს, რომ მე, მფლობელი ეს ფაილი, შეუძლია კითხვა და დაწერა. მაგრამ მე უნდა მისცეს ყველა ადამიანი მსოფლიოს წაიკითხონ, თუმცა არ დაწერა. ამიტომ, მე ვაპირებ, რომ შეიცვალოს რეჟიმი ფაილი, chmod, ყველა პლუს ს მისცეს ყველას წაკითხვის ნებართვა ფაილი სახელად index.html. და თუ მე ახლა აკრეფა ls ტირე ლ, გაფრთხილების რომ, მეტი აქ, კიდევ რამდენიმე R-ს არ popped up. და ახლა, სპეც მიდის უფრო დეტალურად. იყიდება P კომპლექტი 7, რომ მხოლოდ იმას ნიშნავს, ყველას ახლა წავიკითხე ეს ფაილი. თუ მე დაბრუნდეს ჩემი ბრაუზერის ახლა და განაახლეთ, voila. მშვენიერია. მე მინდა კიდევ გახსნას ჩემს Chrome ინსტრუმენტები და ვხედავ, ისევე, როგორც Google-და Facebook რომ არსებობს ჩემს HTML, დაფორმატებული პატარა განსხვავებულად და colorized. თუ მივდივარ ქსელის tab და განაახლეთ გვერდზე, შეამჩნია, რომ არ არსებობს მისაღებად მოითხოვოს, რომ Chrome აგზავნის to მოწყობილობების. აქ არის 200 რომ კერძოდ ფაილი. ასე რომ, მოკლედ, ასე, ყველა ეს სხვადასხვა ცალი მოდის ერთად. ეს უბრალოდ ისე ხდება, რომ სერვერზე ვიყენებთ ახლა არ არის დაშორებული, ხმა. ეს ფაქტიურად იმავე კომპიუტერში, რაც სავსებით OK. ასე რომ, რა უფრო შეგვიძლია გავაკეთოთ ვებ გვერდზე? ისე, უბრალოდ, მოდით breeze მეშვეობით რამოდენიმე ესე. მაგრამ ნება მიბოძეთ წავიდეთ წინ და განაახლონ Gedit ერთად index.html. და ნება მომეცით წავიდეთ წინ და მიესალმები CS50, გადავარჩინოთ ეს ფაილი, დაბრუნდეს ბრაუზერი, ნამდვილად underwhelming ცვლილება. მაგრამ თუ ჩვენ გვინდა, რომ რეალურად ბმული რაღაც ახლა? გამოდის, რომ ჩვენ შეგვიძლია აქვს კვანძია HTML, რომ მხოლოდ tags თავს. ეს ხდება ე.წ. წამყვანმა აქვს. href შეადგენს https://www.cs50.net, www.cs50.net ახლო გაცემა ახლოს bracket. ახლა კი ვნახოთ რა დანარჩენი მოდის მომავალი. მე გახსნილი აქვს. მე ახლა უნდა მისცეს მას ფრაზა, როგორიცაა CS50. ნება მომეცით ჩემი გამოსვლა აქვს. და შეამჩნია რამდენიმე რამ. მიუხედავად იმისა, რომ არსებობს ამ cryptic რამ აქ, მე არ გაიმეორა, როდესაც თქვენ ახლოს აქვს. თქვენ უბრალოდ ახლოს tag მისი სახელი მარტო. და ეს არის ის, რაც ცნობილია, როგორც ატრიბუტები ერთად ღირებულება. ატრიბუტები უბრალოდ შეცვალოს ქცევა ზოგიერთი tag შიგნით გვერდზე. ასე რომ ეს არის განსაზღვრული რომ ჰიპერ მითითება, მიეცით გზა ამბობდა URL ამ წამყვანს, ამ კავშირი, უნდა იყოს CS50.net. და ტექსტი, რომ ჩვენ გვინდა დავანახოთ შესახებ არ არის, რომ ნედლეულის URL, არამედ სიტყვა CS50. ასე რომ, თუ ახლა მე განაახლეთ, ნება მომეცით zoom in for სიწმინდე, ნება მომეცით განაახლეთ გვერდი, შეამჩნია, რომ ჩვენ გვაქვს ეს ძველი სკოლა ლურჯი ხაზი გაუსვა ბმული. და თუ hover მას, და ეს ხდება იყოს მკაცრი ვხედავთ, ქვედა მარცხენა კუთხეში ეკრანზე, შეამჩნია რომ იგი აცხადებს, URL, რომლის მე ვაპირებ წასვლა. და თუ დააწკაპუნეთ აქ, Voila, ახლა მე მიღების ვებ გვერდები. და ჩვენ ხელმძღვანელობით საკუთარ თავს მთავარ გვერდზე. მაგრამ შეამჩნია რა პოტენციალი ამ გვთავაზობს. უსაფრთხოების ძალიან in Vogue ამ დღეებში. რა მოხდება, თუ ნაცვლად ამბობენ, რომ მსგავსი რამ ეს, და მე იმის მაგივრად წასვლა, ვთქვათ, მოდით ვხედავ, fakeCS50.net. ამ გვერდის თავიდან. OK, ასე რომ შეამჩნია, რომ ჯერ კიდევ გამოიყურება, როგორიც მე ვარ აპირებს CS50, თუ თავშეკავებულად თვალი შეამჩნევთ მე ვაპირებ ყალბი CS50. მე გამოცნობა ჩვენს არ არის მიღებული. OK, ამიტომ არ არის შესაძლებელი. ასე რომ, კარგი. არავის რეალურად აქვს, რომ domain. მაგრამ მოდით ვიყოთ უფრო მუქარის რადგან ეს ერთგვარი სულელური. რა მოხდება, თუ შევცვლით ეს Paypal. და რა, თუ ჩვენ ამას ვუწოდებთ, მინდა, www.paypal.badguy.com, რაც არ უნდა domain არის. ეს, ალბათ არსებობს. ასე რომ, ახლა ნება მომეცით განაახლეთ გვერდი. აქ ჩვენ გვაქვს ერთგვარი ფიშინგს თავდასხმის, P-H-I-S-H-I-N-G, რომელიც სულელური სიტყვა მოცემულია თავდასხმასთან დაკავშირებით ცდილობს თევზის ინფორმაციას, ან, უკეთეს ჯერ, ფული, გარეთ ხალხის tricking მათ შესახებ ინფორმაციის მიწოდებას, რომ მათ, შესაძლოა, სხვა რამ არ არის ამის გაკეთება. ეს გამოიყურება სრულიად GE დაბრუნება, არა? მე უნდა ჰქონდეს ბმული აქ Paypal.com. In სამართლიანობა, თუ sexed მას რაიმე გრაფიკა, ჩვენ შეგვიძლია მას ასე უფრო PayPal. არა? იმის გამო, რომ შემეძლო, როგორც განზე ვეღარ Paypal.com. და ჩვენ უბრალოდ ჩანს, როგორ შემიძლია ყველა მათი HTML. მე ვერ გადააკოპირეთ და ხელახლა ესთეტიკასთან Paypal ვიდრე წასვლა ძველი სკოლა აქ. მაგრამ შეამჩნია, რა თქმა უნდა, და ეს პატარა მცირე მაინც, მხოლოდ ქვედა მარცხენა კუთხეში, რომ ისევე, როგორც 10 ბალიანი შრიფტის, ხედავთ, რა URL თქვენ რეალურად უნდა გამოიწვია. ასე რომ, თუ თქვენ ოდესმე მიღებული spam ამბობდა წავიდეთ წინ, და თქვენ ანგარიშზე უკვე დათმობაზე წავიდა. გთხოვთ, დააწკაპუნეთ ამ ბმულზე და გვაცნობოთ პაროლი ასე რომ უზრუნველყოს თქვენ თქვენ, არ ოდესმე გააკეთა. ეს ყველაფერი უნდა წავიდეს გარეშე დაყრდნობით. მაგრამ ეს შესანიშნავად სახალისო, და ტრაგიკული, თუ როგორ ყოველწლიურად ეს, როგორც ჩანს მოხდეს რამდენიმე არასამთავრობო ნულოვანი რაოდენობის ხალხი. და ეს სილამაზე საქართველოს ფიშინგს თავდასხმები. შეგიძლიათ out მლნ ელ. და თუნდაც 0.01% მოსახლეობა აქტიურად დააწკაპუნეთ Paypal და გაძლევთ თქვენი დაგავიწყდათ, რომ ჯერ კიდევ არასამთავრობო ნულოვანი ნომერი ადამიანები, რომლებიც უბრალოდ აძლევდა თქვენ ფულს. და აგზავნის წერილებს, რა თქმა უნდა, საკმაოდ მარტივი და, არსებითად, უფასო ამ დღეებში. ასე რომ გრძელი ამბავი მოკლედ, შესანიშნავად ლამაზი იდეა, არა? წლების წინ, ეს იყო ადრეული ვებგვერდი, საშუალებას ქსელის ბმულებს შორის რესურსები. მაგრამ ასე სწრაფად შეიძლება იყოს გამოიყენება ავად მიზნებისათვის. და ელ, საკმარისია ითქვას, რომ ეს დღის განმავლობაში, არ HTML ჩართული შიგნით. ასევე, ნება მომეცით მხოლოდ ერთი რამ. და ჩვენ defer მიუძღვით მონაკვეთზე პრობლემა მითითებული შვიდი საშუალებას გაძლევთ შეისწავლონ დასკვნაში. მაგრამ ნება მიბოძეთ წავიდეთ წინ და ამის გაკეთება ცოტა რამ აქ. მე ვაპირებ წასვლა და აცხადებენ, რასაც div, ან გაყოფა, შეიძლება იყოს. ნება მომეცით ჩემი გამოსვლა, რომ div აქვს. და მე ვაპირებ ვთქვა up აქ ზევით. შემდეგ კი ქვემოთ, მე ვაპირებ გაკეთებას მსგავსი რამ კიდევ div, დახურვა tag, და ამის გაკეთება ბოლოში გვერდზე. და მოდით შეინახოთ. ასე რომ, ახლა დავუბრუნდეთ ჩემს ფაილი. ძალიან underwhelming. მაგრამ რა გაყოფა გამოიყენება, ქვეშ Hood, არის ის, ფაქტობრივად, ლამაზი სტრუქტურული ელემენტს. ეს არ გააჩნია ესთეტიკასთან იმდენად, რამდენადაც ვხედავთ, გარდა, როგორც ჩანს, აყენებს რამ ახალი ხაზები. მაგრამ შეამჩნია, რადგან განზე, უბრალოდ დარტყმის შეიტანეთ არ მოჭრილი მას შემდეგ HTML, როგორც ეს ამჯამად in C. თქვენ ალბათ ფიქრობთ, რომ ეს გეგმავს ლამაზი დიდი უფსკრული ზედა და ბოლოში გვერდზე. მაგრამ იგნორირებულია. თეთრი სივრცე არსებითად იგნორირებულია ვებ გვერდები, გარდა პირველი სივრცეში ბარი ხასიათი, ან ვაგონი დაბრუნების, რომ თქვენ მოხვდა კლავიატურაზე. თუ გსურთ მეტი ხაზის წყვეტები, თქვენ უნდა მიუთითოთ იგი თავს. ამიტომ, მე ვაპირებ ამის გაკეთებას ცოტა რამ აქ ჩანს, თუ რა ხდება. მე ვაპირებ დაამატოთ ატრიბუტებს, რომ არსებობს და ისევ, ისე სწავლობენ რა ანიჭებს არსებობს, რა tags არსებობს, მართლაც, არაა დამოწმება. HTML არის ერთგვარი ენა - ეს არ პროგრამირების ენაზე. ეს markup ენა - რომ მას შემდეგ, კარგი ნახევარი საათი, შესაძლოა, საათის ეს, თქვენ რა თქმა უნდა დაჯექი, ყველაზე სავარაუდოდ, ძირითადი იდეა. შემდეგ კი Google ძებნა მოშორებით არის ყველა შესაძლებელია tags, რომ შეიძლება იყოს საინტერესო და თითო სპეც, რომ საკმაოდ მივესალმებით და წახალისებული აქ. ასე რომ, ახლა ნება მომეცით წავიდეთ წინ და რაიმე ამის მსგავსი. ფონის ფერის. ახლა კი, მე ვაპირებ, რომ რამე ისევე როგორც წითელი, მძიმით. და თქვენ შეგიძლიათ ამის გაკეთება in რამდენიმე სხვადასხვა გზები. მე მხოლოდ სახის ბეჭდვის მას, როგორც სუპერ ცალსახად შეიძლება სწრაფად. მაგრამ აღმოჩნდება, რომ ამ მნიშვნელობის აქ რასაც CSS, სტილების კასკადური მონაცემები, რომელიც კიდევ ერთი ენა საერთოდ. სოციალურ მეცნიერებათა ცენტრის არაფერი აქვს ერთად გახსნა tags და ახლო tags. მას არ უკავშირდება თვისებები. და თვისებები, უბრალოდ გასაღები ღირებულება წყვილი, რომელიც მხოლოდ იმას ნიშნავს, ზოგიერთი სიტყვა, ორი წერტილი, ხოლო შემდეგ რამდენიმე სხვა სიტყვა. და თუ კი რამდენიმე პირობა, ან უბრალოდ აქ, შეგიძლიათ დასრულდება ეს მძიმით, მხოლოდ სიცხადე. მაგრამ ეს, ძალიან, იმუშავებს აქ. ახლა რა არის ეს აპირებთ? თქვენ ალბათ ვხვდები. ნება მომეცით წავიდეთ წინ და განაახლეთ ეს გვერდი. ახლა კი ეს ნამდვილად მოდის ერთად. ასე რომ, თავზე ჩემს გვერდზე არის წითელი. მაგრამ რა არის აქ მთავარია არის ის, რომ ვთქვი ადრე, რომ div გაძლევთ სამმართველოს გვერდზე. და ეს მართლაც, თუ რას აკეთებს. იგი არსებითად ყოფს გვერდზე შევიდა მართკუთხედი, რომ თქვენ მაშინ მანიპულირება. ეს ცნება rectangles ერთგვარი დამაჯერებელი, რომ, თუ ფიქრობთ, ყველაზე ნებისმიერი ვებგვერდზე, იქ ალბათ ზოგიერთი სტრუქტურის იგი. უმეტესობა ალბათ იშვიათად მინახავს Facebook-ის მთავარ გვერდზე, თუ თქვენ ხართ ყველა დროის. თუმცა, Facebook-ის მთავარ გვერდზე, იქ გარკვეული div გასწვრივ ზედა. და ეს არ უნდა იყოს იმდენად მარტივია როგორც ერთ div, მაგრამ არსებობს მართკუთხა რეგიონში. დანარჩენი გვერდზე ჰგავს დიდი div, ისევე როგორც ბევრი უფრო დიდი მართკუთხა რეგიონში. ასე რომ გრძელი ამბავი მოკლედ, მხოლოდ მქონე ამ პატარა შენობა კორპუსები, უნარი მოდელი რამ, როგორც rectangles, თუ არა ფართო ან ვიწრო, ასევე შეგიძლიათ მიიღოს სვეტები პოტენციურად, გაძლევთ საშუალებას ქმნის out გვერდები, ნამდვილად, თუმცა თქვენ მინდა. ჩვენ რეალურად მხოლოდ scratching ზედაპირზე აქ. მართლაც, თუ ერთი მხრივ, ნება მომეცით წავიდეთ წინ და ამის გაკეთება სტილი, ფონის ფერი, ჩვენ რომ რამე ისევე როგორც ლურჯი, ახლო შეთავაზებებს. მოდით განაახლეთ ეს. ასე რომ, ახლა ის მიღების კიდევ uglier. მაგრამ ახლა მე შემიძლია სახის გამოიჩენენ ჩემი P მითითებული ხუთ უნარები, არა? წითელი. ეს მაგონებს RGB, წითელი მწვანე ლურჯი სამ. ასევე, ის აღმოჩნდება ვებ პროგრამირებაში, ან ვებ დიზაინი, რომელიც ამ ჩვენ ჯერ კიდევ არ არის პროგრამირდება არაფერი თავისთავად, შეგიძლიათ რეალურად აქვს თექვსმეტობითი კოდი. ასე რომ რაღაც რაღაც, რაღაც რაღაც, რაღაც რაღაც. ასე რომ შეგიძლიათ ექვსი თექვსმეტობითი პერსონაჟი, ან სამი, ზოგიერთ შემთხვევაში, და თითოეული იმ კითხვის ნიშნები უნდა იყოს თექვსმეტობითი ციფრები, ნულოვანი მეშვეობით ვ. თუკი მინდა ბევრი წითელი და არ მწვანე, და არ ლურჯი, რა საპირისპირო ნულოვანი გამოყენებისას hex? ეს ვ. ასე, რომ შეიძლება გავაკეთოთ ff, ნულოვანი ნულოვანი, ნულოვანი ნულოვანი, შეინახეთ ამ და ახლა ჩამოდი აქ. მე არ რეალურად ვხედავ ცვლილება. ამიტომ გაცემა unquote "წითელი" აშკარად სინონიმი ყველა წითელი, არ მწვანე, არა ლურჯი. იმავდროულად, მოდით განზრახ შეცვლის ეს ერთი რამ შემთხვევითი, ისევე როგორც ABCDF. ვნახოთ რა რომ არის. ეს მართლაც ლამაზი ლურჯი, რეალურად, ბავშვის ლურჯი. ყველა უფლება, ეს არის მხოლოდ ახლა გარკვეულწილად შემთხვევითი კომბინაციები სიმბოლო. ასე რომ, ჩვენ არ გაუწევს bogged ქვემოთ აქ. თუმცა ისევ და ისევ, ეს მეტყველებს, რომ სიზუსტით რომ თქვენ შეგიძლიათ დაიწყოს ვრცელდება - კი, თუ თქვენ ძალიან overwhelmed by ესთეტიკას. რეალურად, თუ თქვენ ნამდვილად გსურთ იყოს შთაბეჭდილება, ნება მომეცით წავიდეთ წინ და შეცვლის შრიფტის ზომა, მაგალითად. და შეამჩნია მძიმით, რომელიც საჭიროა იქ. ფონტის ზომა, ჩვენ შეიძლება მხოლოდ სასაცილოა აქ, 96 წერტილი. შენახვა, რომ. Wow, ეს დიდი შრიფტის ზომა. ყველა უფლება, ამიტომ ძალიან მარტივია. და ფაქტობრივად, თქვენ არსებითად ხედავს პირველივე ვებ გვერდზე მივიღე წლის წინ, როდესაც მე პირველად ცნობილი გახდა, ამ პერსონალი. ეს ძალიან მარტივია, რათა ძალიან hideous რამ სწრაფად. და თუ თქვენ იცნობთ Wayback მანქანა on archive.org, თქვენ შეუძლია იპოვოს ყველა ჩემი hideous undergrad ვებ გვერდები. ერთი ჰქონდა Kermit Frog წლის წინ. მე გაიარა ეტაპი, როდესაც ვფიქრობდი, ეს იყო მაგარი მიიღოს ფონზე წითელი ფარდა, როცა გავიგე, თუ როგორ შეიძლება კრამიტი images კვლავ და კვლავ და კიდევ ერთხელ, რომ შეავსოთ გვერდი დიდი tacky წითელი ფარდა. და მაშინ, თავზე ეს იყო ხატი რომ თქვენ იძულებული დაუწკაპუნეთ ჩემი სახლია გვერდზე იმიტომ, რომ იყო ძალიან vogue. და მაშინ ჩემი პირველი პროგრამა ოდესმე დაწერა არ იყო PHP, მაგრამ ენა მოუწოდა Pearl წერს, სტუმართა წიგნი, რომელიც მართლაც მაგარი რამ, უამრავი ადამიანი მეგონა to აქვს მთავარ გვერდზე. როდესაც თქვენ გვერდზე, ისინი მინდა ხელი მოაწეროს და აცხადებენ, ვინ ხარ შენ, და რატომ თქვენ იქ. ეს არის ძალიან 1990 სტილი ვებ დიზაინი. მაგრამ ეს დღე, რა თქმა უნდა, ჩვენ მოდის ბევრი შორს. და დაინახავთ, ნაწილში, და კიდევ ამ პრობლემის მითითებული შვიდი, მიერ ოპერაციული ბიბლიოთეკების ამ დღეებში, ასე ბევრად უფრო ადვილია, რათა გალამაზებაში რამ სწრაფად. მართლაც, ჩვენ უბრალოდ scratching ზედაპირზე თუ რა შეგიძლიათ გააკეთოთ სტილისტურად. და სინამდვილეში, უკვე, მინდა ხაზი გავუსვა რომ ეს უკვე იღებენ მახინჯი, არ მხოლოდ ესთეტიურად, არამედ იმ თვალსაზრისით სტილის და ჩემი კოდი, ან დიზაინი ჩემს კოდი. მე გაკეთებული comingled HTML, რომელიც არის მომწვანო ღია tags იქ, სადაც სოციალურ მეცნიერებათა ცენტრის თვისებები, რომელიც სრულიად GE დაბრუნება. ეს მართლაც სადაც ენა თავისი წარმომავლობის. მაგრამ ინტერესი სუფთა დიზაინი, ჰგავს დავიწყეთ ფაქტორინგი პერსონალი აქედან C ფაილს. თ ფაილებს, ნება მე რეალურად პრაქტიკაში ასეთი სახის პრინციპი და დაიწყოს აკეთებს ამ ნაცვლად. ნება მიბოძეთ სტილი tag აქ, რომელიც ასევე არსებობს HTML, და ნება მომეცით დააკონკრეტა შემდეგ. ნება მომეცით წაშლა. ფონის ფერი იქნება წითელი. მე ვაპირებ წაშლა მთლიანად. მე ვაპირებ, თავი დაეღწია სტილი ანიჭებენ, და მე ვაპირებ ცალსახად ამოიცნოს div სიტყვით - თვითნებურად, მაგრამ გონივრულად, გაცემა unquote "დაბრუნება". და პირადობის არის სპეციალური ატრიბუტები, რომ ცალსახად განსაზღვრავს გარკვეული HTML ელემენტს როგორიც, რომ პირადობის მოწმობა. თუ მე ახლა მინდა სტილიზებული ის, რაც აქ ხელმძღვანელი ჩემს გვერდზე, შიგნით სტილი tag შეამჩნევთ, რომ შემიძლია hash დასაწყისში. და მაშინ შემიძლია დააყენა რამდენიმე curly აფრთხილებს, თქვენში C, და მაშინ მე ჩასვით ამ სტილიზაციასა. და ნება მომეცით წავიდეთ წინ აქ და გეგმავს სადაც მე ვაპირებ ამ. ნება მიბოძეთ, შევქმნათ ერთი ამისთვის ქვედა div. ნება მიბოძეთ აითვისებდა ამ hideous კოდი ქვემოთ აქ, ამას აქ, და მე ვიქნები ცოტა მეტი anal ახლა და სტილიზებული ეს მხოლოდ აყენებს რამ საკუთარ ხაზი, დამთავრებული semicolons. ნება მომეცით დაეღწია სტილი აქვს. მაგრამ მე არ ვარ არის გაკეთებული. მე უნდა გავაკეთოთ ერთი რამ. ჰო, id შეადგენს გაცემა unquote ", ბოლოში," ან რასაც id მინდა მისცეს, რომ ელემენტს. ნება მომეცით დაბრუნდეს მეტი აქ. და ეს ბარბაროსულ. მე ვერ გაუმკლავდეთ 96 წერტილი. მოდით 24 წერტილი. ან შეგიძლიათ კიდევ უფრო ზუსტი. თქვენ შეგიძლიათ რეალურად გამოვიყენოთ pixels, px, ასე რომ თქვენ რეალურად მიიღონ finer მარცვლეულის კონტროლი თქვენს გვერდზე. როგორც განზე, ეს არ არის აუცილებელი, საუკეთესო რამ თუ მომხმარებლებს, for ხელმისაწვდომობის მიზეზების გამო, მინდა შეძლებს გაზრდის ზომის. ასე რომ გააცნობიეროს, რომ არსებობს გზები აკეთებს რამ, რაც არ არის აუცილებელი მძიმე კოდი ყველაფერს. ყველა უფლება, ამიტომ დიდია, 24 პუნქტი, ვიდრე რაც არ უნდა საწყისად. მაგრამ ახლა ეს პატარა სუფთა. და ნება მომეცით მიიღოს ეს ერთი ნაბიჯია. ისევე როგორც იდეა თავით ფაილი შეამჩნია ჩვენ ერთი ნაბიჯით უფრო ახლოს რომ. მე მაქვს factored, მაგრამ ჯერ კიდევ დარჩენილი, შიგნით ჩემს გვერდზე, იმ CSS წესები. რატომ შეიძლება მინდა ეს ერთი ნაბიჯია შემდგომ, ამოიღონ ეს საერთოდ და ამას ცალკე ფაილი? ასე, რომ შეიძლება reuse ეს, არა? ეს არის მხოლოდ სახის ინტუიცია ახლა. მანამდე, მე აცხადებდა, რომ ეს იყო უბრალოდ არც მახინჯი მქონე სტილი ატრიბუტები შიგნით divs თავს. მაგრამ სახის ვფიქრობ, რომ. როგორც თქვენს გვერდზე იღებს აღარ და აღარ, თუ თქვენ აყენებს აქ და აქ, და აქ და აქ, ყველა ეს სხვადასხვა ფერები, და შრიფტის ზომის, და სხვა მსგავსი ატრიბუტები, თქვენს გვერდზე ძალიან სწრაფად აპირებს გახდეს უმართავი თქვენთვის. თუ ვინმე მოდის თქვენ და ამბობს, oh, იცით რა? მე ნამდვილად მინდა, რომ შეიცვალოს შრიფტის ზომა ორი დამატებითი ქულების შესაძლოა, უნდა წავიდეს და იპოვოს და შეცვლის დიდი რაოდენობით ხაზი კოდი. ეს ბევრად უფრო მყარი რომ centralize ყველა ასეთი ესთეტიკის აქ. მაგრამ თუ გსურთ reuse იმ ესთეტიკის მრავალჯერადი ვებ გვერდები, ყველა უფრო მყარი უნდა, ამისთვის მაგალითად, შექმნა ფაილი უწოდა იმ შინაარსს. და ნება მომეცით ამის გაკეთება. შენახვა ფაილი. მე ვიტყვი styles.css, უკანონო, მაგრამ ჩვეულებრივი. მე ამას ჯონ ჰარვარდის სახლში დირექტორია ახლა სიმარტივის. და რა შემიძლია გავაკეთებ ვებ გვერდზე არის მიიღოს ჩამოშორებას სტილი tag საერთოდ, და ერთგვარად unintuitively, გამოიყენოთ ბმული tag, რომელიც არ გაძლევთ ბმულზე ჰიპერბმულის, clickable გრძნობა, მაგრამ სადაც მე ვიტყვი, კავშირი, href შეადგენს styles.css. და ურთიერთობა, რომელიც ამ ელემენტის უკვე ერთად ვებ გვერდზე ვემსახუროთ როგორც მისი სტილი ფურცელი. ასე რომ, რა ვიცი? ერთი, უბრალოდ წავიკითხე სახელმძღვანელო, ან თქვენ Google გარშემო, და თქვენ შევხედოთ სხვადასხვა რესურსებით. ვგულისხმობ, რომ ნამდვილად არის, თუ როგორ გააშუქა ტექნიკის მსგავსად, და, თანმიმდევრული ეს იდეა სწავლებისა თავის new ენებზე, კიდევ ერთხელ, თქვენ ნახავთ, რომ იქ მხოლოდ სასრული რაოდენობის რამ ნებისმიერ ენაზე, რომ როგორც კი მათ, თქვენ ნახავთ, რომ იგი იღებს სწრაფად და სწრაფად დაწერა. მართლაც, სწავლის ახალი პროგრამირების ენა იმდენად სწრაფად, ვიდრე ახალი სალაპარაკო ენა, რადგან ეს ყველაფერი გაცილებით უფრო პატარა და ბევრი სხვა ზუსტად განსაზღვრული. მაგრამ მე ხაზი გაუსვა ცოტა საქართველოს ანომალია აქ. რატომ არ მე ხაზგასმით აღნიშნა, ამ ველით სლეში აქ? იმის გამო, რომ მე უნდა დახუროს აქვს. მე უნდა დახუროს აქვს. და თქვენ იპოვით უამრავი რესურსი ონლაინ რომლებიც არ აუცილებლად ახლო tags. და რეალურად, ეს არ არის მკაცრად საჭირო ტექნიკურ და არსებობს მიზეზები რეალობის, ბრაუზერები უბრალოდ საკმაოდ ტოლერანტული შეცდომები ვებგვერდი გვერდები, უკეთესი ან უარესი, მაგრამ ძირითადად უარესი. ასე რომ, ეს აქ მხოლოდ სუფთა გზა ამბობდა რაღაც სულელური ასე, სადაც თუ გსურთ გახსნა რგოლი tag მაგრამ ახლოს იგი, იქ ნამდვილად არ ცნება საქართველოს შინაარსით რგოლი აქვს. ეს მხოლოდ იმას ნიშნავს, ჩატვირთვა ამ წარადგინოს და მისი აქ. ეს იგივეა, მკვეთრი მოიცავს C. სისტემაში გახსნას და დახუროს tag ერთდროულად იმავე აქვს. და არ არსებობს სხვა მაგალითი. ეს არ არის გზა ამის, მაგრამ br tag, ამისთვის ხაზის წყვეტები, თუ ნამდვილად მინდოდა, რომ მივაღწიოთ იმას, რაც მე ვიყავი ცდილობს მანამდე დარტყმის შეიტანეთ, თუ მე მკაფიოდ აცხადებენ, ხაზის შესვენების ხაზის შესვენების ხაზის შესვენების ხაზის შესვენების და შემდეგ განაახლეთ ეს გვერდი ახლა თქვენ შეამჩნევთ რომ ბოლოში გვერდზე არის, რა თქმა უნდა, ბევრად უფრო ქვემოთ ბოლოში გვერდზე. მაგრამ მაშინაც კი, რომ შეიძლება გაკეთდეს ბევრად უფრო cleanly ცენტრთან და მინდვრები, და სხვა ამგვარი ესთეტიკური ტექნიკა. ასე რომ, ახლა, takeaways ხართ ეს. HTML, ჩვენ გვაქვს ეს რამ მოუწოდა tags. In CSS, ჩვენ გვაქვს ეს ყველაფერი მოუწოდა თვისებები. ჩვენ შეგვიძლია comingle ამ ორ ენაზე, ან გამოყენებით სტილი ატრიბუტი, ან სტილის tag, ან საუკეთესო არ არის, ფაქტორინგი ის საერთოდ, როგორც ჩვენ ამ პრობლემის მითითებული 7. კითხვები, მაშინ, დაახლოებით კონცეპტუალური საფუძვლები აქ? აუდიტორია: მე მაქვს შეკითხვა. დინამიკები 1: Oh, ვწუხვარ. აუდიტორია: რატომ არ იყო ეს ფერადი - დინამიკები 1: Oh, მეორე tab? ეს აქ? აუდიტორია: არა, ეს როგორც - დინამიკები 1: Oh, ეს იმიტომ მე როგორც დაუდევარი. მე დააყენა ფაილი არასწორ ადგილზე. ასე რომ, თუ მე რეალურად დააყენა აქ, და მე chmod ის, ყველა + r for styles.css და ახლა განაახლეთ გვერდი, ახლა ჩვენ მიიღეთ სტილიზაციასა უკან. და რადგან შრიფტის ზომის სხვადასხვა, ჩვენ ვერ ვხედავთ საკმაოდ ბევრი თეთრი სივრცეში. ჩვენ ნაცვლად ხედავთ რა საწყისად ნაცვლად. კარგი კითხვა. დიახ? აუდიტორია: რატომ არის ბმული tag შიგნით თავით? დინამიკები 1: რატომ არის კავშირების tag შიგნით თავით - მოკლე პასუხი, მხოლოდ იმიტომ. ეს არის, რაც გადაწყდა. არის ის, სადაც ბმული tags წასვლა, როდესაც თქვენ გაქვთ რასაც გარე სტილის ფურცელი. სხვა კითხვები? ყველა უფლება, კარგად მოდით ეს. ჩვენ გვყავს იმდენად fun გვაქვს დღეს. ეს მხოლოდ scratching ზედაპირზე CSS. მოდით ეს. ავიღოთ ხუთი წუთის შესვენების აქ რადგან, ერთ ჩემი ელექტრონული ფოსტის, მოდით დევს იქ დღემდე 2:30-ish დღეს. მაგრამ თუ უნდა დატოვოს, რომ ეს ჯარიმა. მაგრამ ჩვენ გაყალბებას და ანგარიში გახდა მას შემდეგ, რაც ხუთი წუთის შესვენების. და ჩვენ ვისწავლოთ ცოტა რაღაც დაახლოებით PHP, MySQL, და სხვა. ყველა უფლება, მოდით ვცდილობთ, ახლა, რომ გვაკავშირებს რამდენიმე ამ იდეები ერთად და მიიღოს, ამბობენ, ჩვენი საძიებო სისტემა. მე დავინახე, არამედ საინტერესოა, შემდეგ. როდესაც თქვენ ხართ Google.com, თქვენ როგორც წესი, ერთი URL ასე ერთი აქ ერთად არაფერი შემდეგ dot com. მაგრამ თუ ძებნის იმედი მოსწონს კატა, და დააჭიროთ, მივიღებთ - არა სულელური, მაგრამ იცით. OK, ასე რომ შეამჩნია, ზედა გვერდზე, ახლა, URL აქვს, რა თქმა უნდა, შეცვლილია. და ეს არ არის არაფერი ახალი რომელიმე ჩვენგანი. თქვენ დააჭირეთ კავშირების და პერსონალი ხდება ინტერნეტში. მაგრამ რა საინტერესოა აქ ასეთია. აქ არის მთელი ბევრი clutter, მაგრამ ნება მე გადაყარეთ პერსონალი, რომ მე არ საკმაოდ ესმით, ან არ ნამდვილად გამოიყურება შესაბამისი. ნება მომეცით დაეღწია ამ. ნება მომეცით დაეღწია ამ. და ნება მომეცით უბრალოდ, თავი დაეღწია ყველა ამ. ახლა კი შეამჩნია, რომ კატა არის URL, მოყვება რ, მაშინ თანაბარი მოაწეროს წინ. გამოდის, ასე გზა მუშაობს, როდესაც საქმე to შემავალი და გამომავალი. ჩვენ ხანგრძლივი ისაუბრა შავი ყუთები, არა? ასე რომ, თუ ეს ფუნქცია განახორციელა აქ, როგორც შავი ყუთი, ის შეყვანა და აწარმოებს გამომავალი, ასევე, იმას ნიშნავს, რომლითაც თქვენს მიერ მოწოდებული შეტანის საიტი გზით, ხშირად, მისი მისამართები. თქვენ უბრალოდ დააყენა კითხვის ნიშნის და შემდეგ გასაღები შეადგენს ღირებულება. და მაშინ იქნებ ampersand, შემდეგ კი კიდევ ერთი გასაღები შეადგენს ღირებულება, მაშინ, შესაძლოა, კიდევ ერთი ampersand, საკვანძო შეადგენს ღირებულება. ეს არის ის, თუ როგორ გადის გასაღებები და ღირებულებები, წყვილი პორტები. ასე რომ, თუ მე მოხვდა შეიტანეთ ახლა, რა საინტერესო რამ Google არის, რომ ყველა რომ clutter I ამოღებულია არ ჩანს უნდა იყოს მკაცრად აუცილებელია. ყველა მე უნდა გაუგზავნოს Google კითხვა ნიშნის რ შეადგენს კატა მისაღებად უკან რაღაც კატა. ასევე, გულისხმობს, რომ, მაშინ, არის თუ მე დახევის up gedit, მე დაიწყო მიღების საკუთარი საძიებო სისტემა აქ in ფაილი სახელად seach0.html. და ნება მომეცით წავიდეთ წინ და წაშლა კიდევ ერთი ხაზი, რომ თქვენ არ უნდა დაინახოს. ახლა კი, ნება მომეცით წასვლას საკუთარი ბრაუზერი, ასე რომ არ Google, და წავიდეთ http://localhost. და ეს აპირებს ისე. ასე რომ, ჩვენ ვაპირებთ უნდა ვთქვა ზემოთ რომ არის, გადაადგილება ამ მეზობელი, oh, ახლა ჩვენ ვაპირებთ უნდა ამბობენ, ზემოთ რომ ფაილი. როდესაც თქვენ გაქვთ ფაილი სახელად index.html ან index.php in კატალოგი, თუ სერვერზე არის კონფიგურაცია, ამ გზით, რა თქვენ ვხედავთ, ჩვეულებრივ, არის შინაარსი, რომ ფაილი ვიდრე ჩამონათვალი კატალოგი, როგორც მინდოდა აქ. მეტი ამ წელს სპეც. თქვენ ვერ ვხედავ, რომ. ასე რომ, ეს არის ის, რაც მე რეალურად უნდოდა. მაგრამ ერთი წუთით წინ იყო ფაილი საქაღალდეში მოუწოდა index.html და index.php. ასე რომ სერვერზე იყო აჩვენებს ჩემთან იმ ფაილებს. სამაგიეროდ, მე მინდა ამ დირექტორიის ჩამონათვალია აქ. ამიტომ, მე ვაპირებ წასვლას CSS და წავიდეს search0. და მე ამტკიცებენ, რომ ეს არის ის იქნება დასაწყისში საკუთარი კონკურენტული საძიებო სისტემა. და ამის გაკეთება, მე ვაპირებ წასვლა აქ, შევიდა CSS, და გახსნის ერთად gedit, ძიება 0. მაგრამ სამწუხაროდ, არსებობს დიდად არ ხდება აქ. ყველა გავაკეთე იყო გამოიყენოს სასაქონლო tag, რომელიც ხდება ე.წ. h1, რომელიც არსებითად იმას ნიშნავს, დიდი და თამამი და ამით ყველაფერი მთავრდება. მაგრამ საშუალება, რომლითაც ჩვენ შეგვიძლია უზრუნველყოფს საშუალებებით არის მეშვეობით ეს რამ მოუწოდა ფორმები. ნება მომეცით, წავიდეთ წინ და გახსნა და დახურვა, preemptively, ფორმა tag არსებობს. და ნება მომეცით წავიდეთ წინ და გაკეთება მსგავსი რამ. შეყვანის ტიპის შეადგენს ტექსტი. და მაშინ მოდით ახლოს tag ფარგლებში ფრჩხილებში თავს. მე არ უნდა დაიწყოს ველში და შეწყვიტოს ველში. უბრალოდ იქნება თუ არა. შემდეგ კი ქვემოთ რომ, მოდით შეყვანის ტიპის შეადგენს წარუდგინოს. შენახვა. ახლა კი მოდით მხოლოდ ამის გაკეთება სწრაფი საღი აზრის შესამოწმებლად. მოდით განაახლეთ. OK, ასე რომ, ეს არ არის ცუდი. ეს არ არის Google-ის სტილში, მაგრამ ძალიან ახლოს. არსებობს ტექსტის სფეროში. შემიძლია აკრიფოთ ზოგიერთი პერსონალის, მოხვდა შეიტანეთ, მაგრამ არაფერი ხდება ამჟამად. და ეს იმიტომ, რომ მე არ კონკრეტდება აქცია ამ ფორმით, ასე ვთქვათ. ასე რომ, თუ მე დაბრუნდეს ფორმის ელემენტს, თურმე, და მე ვიცი, რომ ეს მხოლოდ საწყისი მქონე წაიკითხა დოკუმენტაცია, რომელიც ფორმა tag იღებს ატრიბუტები მოუწოდა ქმედება, რომელიც არის URL საქართველოს ნახვა, რომელიც თქვენ მინდა გაგზავნის ფორმით. მე ნამდვილად არ ვფიქრობ, რომ ჩვენ გვაქვს დრო, რათა განხორციელება მთელი უკან დასასრულს საძიებო სისტემა დღეს. ასე რომ, ჩვენ უბრალოდ თქმას, eh, წასვლა google.com / search. ახლა კი ნება მომეცით ჩემი გამოსვლა ჩემი შეთავაზებები. და ნება მომეცით კიდევ უფრო დააკონკრეტა, რომ მეთოდს აპირებს ე.წ. მისაღებად. დიდხანს ამბავი მოკლედ, არსებობს ორი გზა, ერთი ყოველ შემთხვევაში, რომ თქვენ შეგიძლიათ წარადგინონ ინფორმაცია ეხლა ბრაუზერზე სერვერზე. ერთი მიიღოს და დღევანდელ მიზნებისათვის, რომ მხოლოდ იმას ნიშნავს, რომ მისამართი. ხედავთ ზუსტად კითხვის ნიშნები, შეადგენს ნიშნები და ampersands რომ ჩვენ ვნახეთ ადრე. ან არსებობს ალტერნატიული მოუწოდა პოსტი. ახლა ვიცი, რომ პოსტის ხშირად გამოიყენება როდესაც გსურთ ატვირთოთ, ისევე როგორც სურათები და ა.შ., ან როდესაც გსურთ წარუდგინოს საკრედიტო ბარათის ინფორმაციას, ან პაროლები, რამე რომ ეს არ ნამდვილად აქვს აზრი, კონცეპტუალურად, ან უსაფრთხოების ბრძენი, რომ დასრულდება მდე URL of თქვენი ბრაუზერის, სადაც snooping მშობლები, ან roommates, ან ვინმე შეშვება თქვენს კომპიუტერში შეიძლება ნახოთ. მოდით გადარჩენა, რომ აქ. და მე უნდა გავაკეთოთ ერთი რამ. ეს არ არის საკმარისი მხოლოდ იმის ამბობენ, მომეცი ტექსტის სფეროში. მე უნდა მისცეს, რომ დარგის ვაფასებთ სახელი. ნება მომეცით, სესხება Google არჩევანი სახელები, რ და დააკონკრეტა, რომ მეორე მიეწერა მე ნამდვილად არ აინტერესებს სახელი წარუდგინოს ღილაკს. All I აინტერესებს არის წარდგენის რა შესახებ სახის სისტემაში ახლა კი ეს ერთგვარი მახინჯი. ის უბრალოდ აცხადებს, წარუდგინოს. გამოდის, და ვიცი, ეს დოკუმენტაცია, შემიძლია რეალურად ვთქვა ღირებულება შეადგენს გაცემა unquote "cs50 seach, "ახლო გაცემა. მაშინ მოდით განაახლეთ ერთხელ. ამიტომ მე შენარჩუნება hitting სარდლობის-R, ან საკონტროლო-R ჩემი კლავიატურის განაახლეთ. ახლა ჩვენ უფრო საინტერესო საძიებო სისტემა. ეს არ საკმაოდ ჰგავს Google არ არის, თუმცა. მოდით წავიდეთ წინ აქაც და პატარა ხაზი შესვენება. OK, ასე რომ, ახლა ჩვენ გვყავს Google. ჩვენ, ფაქტობრივად, თითქმის აქვთ Google. ასე რომ, ახლა რა მოხდება? მე ვაპირებ აკრიფოთ რაღაც ისევე როგორც Cats. და ბრაუზერის აპირებს გარჩევის იმ ფორმით, რომ მე დადგენილი. და ეს ხდება გაგზავნას შესახებ, რომ URL. ასე რომ, ამ დროს, რაღაც უცნაურ გამო, მე მივიღე მეტი ინფორმაცია აქციები ვიდრე აქტუალურ კატა. მაგრამ ეს ჯარიმა, რადგან შეამჩნია, ჩვენ კვლავ დასრულდა აქ, კვ შეადგენს კატა. ასე რომ გრძელი ამბავი მოკლედ, როგორც ჩანს, საკმაოდ ტრივიალური მისაღებად შეიტანენ შესახებ. და იყოს სამართლიანი, იქ bunches სხვა ტიპის ფორმა სფეროებში. არსებობს გამშვები ყუთები და ცოტა ორმხრივად ექსკლუზიური რადიო ღილაკები, და ვარდნა ქვემოთ მენიუები, და სხვა. მაგრამ ყველა იმ არიან შედარებით მარტივად ხორციელდება ამ ტექსტის სფეროში იყო. და საბოლოო ჯამში, ჩვენ უბრალოდ უნდა გააკეთოს დარწმუნებული ვინმე უსმენს მეორეს ბოლოს ხაზის მისაღებად, რომელიც ინფორმაციის დამუშავება, რატომღაც, და მოგვცეს უკან ჩვენი კატა. მოდით შევხედოთ ოდნავ უფრო ჩართული მაგალითად. ნება მომეცით წასვლას ჩემი Vhost-ის დირექტორია, ადგილობრივ მასპინძელი, საზოგადოებრივ, და სადაც მე დააყენა დღევანდელ წყაროს კოდი. ეს ყველაფერი იქნება კურსის ნახვა თქვენთვის Tinker ერთად. და თუ წასვლას froshims, ნება მომეცით გახსნა ეს ფაილი არის, froshim0.php. ეს ერთი პატარა უფრო verbose, ასე ჩვენ არ წერენ ამ ნულიდან. მაგრამ შეამჩნია ახლა რამდენიმე გარკვეულწილად იცნობს თვისებები. ერთი, ფორმის ტეგი, სხვადასხვა აქცია. ეს არ არის სრული მისამართი. ახლა, ეს, სავარაუდოდ, შეიტანოს მოუწოდა register0.php, რადგან მომენტი, მე ვაპირებ ასწავლიან თავს პატარა რაღაც PHP, პროგრამირების ენა, იმიტომ, რომ PHP შეიძლება გამოყენებულ იქნას განხორციელება, თუ რა Google დაინერგა უკან ბოლომდე მათი საძიებო. Google, სინამდვილეში, ალბათ, იყენებს ზოგიერთი Python, ზოგიერთი C + +, და bunches სხვა ენებზე. მაგრამ ჩვენ ნამდვილად განახორციელოს ძებნა შედეგების გამოყენებით PHP, თუ გვინდოდა. მაგრამ ახლა, ჩვენ გავაგრძელებთ მარტივი. და ეს არის რეალურად თქვენში ერთი მეორე პირველივე საიტებზე I გააკეთა წლის წინ. უკან ჩემს დღეში, თქვენ რეგისტრირებული intramural სპორტული freshman მიერ შევსების ცალი ქაღალდის, ფეხით მთელს ეზოში, და ჩაშვების იგი საფოსტო ყუთი of PROCTOR in Wigglesworth, და რომ იყო, თუ როგორ რეგისტრირებული. ასე რომ, ჩემი პროექტი ცოტა ხნის შემდეგ CS50, იყო იმისათვის, რომ იმას, რაც სხვაა გრძნობა, გადატანა ვებგვერდი, რაც არ იყო როგორც vogue შემდეგ, როგორც ეს არის. მაგრამ ყველა ჩვენ უნდა გაეკეთებინათ იყო შექმნა, არსებითად, HTML ფორმით. და ეს ფორმა ჩანდა უხეშად მოსწონს ეს. მე მქონდა შემავალი freshman სახელთან. მე მქონდა კიდევ ერთი გამშვები ყუთი განსაზღვრული ან ან არ უნდოდათ, რომ იყოს კაპიტანი, თუ რა გენდერული იყო, და რა dorm იყო. და მერე რთული კოდირებული რამ ისევე როგორც Apley სასამართლო და Canaday, Grays და სხვ. ასე რომ, კიდევ ერთხელ, ახალი ელემენტები. არ მინახავს ეს ადრე, new ატრიბუტები, თუმცა საკმაოდ ხელმისაწვდომი. ერთხელ ხედავთ მაგალითად, შეგიძლიათ სახის კარიერების, რომ იდეა და მიიღოს წვეთი მენიუში უმეტესი არაფერი. მაგრამ რა არის მთავარი არის, რომ თითოეული ეს ყველაფერი სახელები. და ბოლოში ეს ფორმა, იქ submit ღილაკს, რომლის ეტიკეტზე ან ღირებულების, არის რეესტრში. მოდით წავიდეთ ამ გვერდზე. ნება მომეცით დაბრუნდეს შევიდა კატალოგი, ჩამონათვალი. ნება მომეცით წასვლას froshims, და წავიდეს froshim0.php. ასე რომ, ეს hideous, უნდა იყოს სამართლიანი. ასე რომ, მე ვერ აუცილებლად stylize ამ რამდენიმე CSS, მე ვერ გარკვეული გრაფიკა, იქნებ დაამატოთ რამდენიმე ფერის, და ეს გალამაზებაში. მაგრამ ფუნქციურად, მინდა ამტკიცებენ, რომ ამ ფაქტიურად საკმაოდ სრული. სამწუხაროდ, როდესაც მე შეავსოთ ამ out, დავით, კაპიტანი, კაცი, ჩვენ აირჩიოს, ვთქვათ Matthews, რეგისტრაცია, ყველა რაც ხდება ეს. მაგრამ შეამჩნია რამდენიმე takeaways. ერთი, რა ფაილი დაბრუნდა იმ შედეგები, სავარაუდოდ? ასე რომ, ეს, რა თქმა უნდა, register0.php. ასე რომ, ის, რომ ჩვენ ვნახეთ, რომ აქცია ღირებულება მომენტში წინ register0, ამ corroborates, რომ ჩვენ მართლაც დასრულდა ზე რომ კონკრეტული ფაილი. ახლა ეს არის მხოლოდ მახინჯი ტექსტი. მაგრამ შეამჩნია, რომ ეს ტექსტი არის მოდის ადგილობრივი მასპინძელი, რაც ეხლა მოწყობილობების. წარმოიდგინეთ, მოწყობილობების, ახლა, როგორც მხოლოდ სერვერზე, რომელიც შეიძლება იყოს სამეცნიერო ცენტრი. ეს შეიძლება იყოს მხოლოდ რეალურად ინტერნეტში. ასე რომ, ეს საჯაროდ ხელმისაწვდომი. ასე რომ, აშკარად, არსებობს რამდენიმე გზა გავლის შექმნან სფეროში საშუალებებით სერვერზე ასე რომ შეგიძლიათ გააკეთოთ რაიმე მათთან. სამწუხაროდ, register0 საკმაოდ სულელური. ყველა ეს ასეა, ეს არის ბეჭდვის out მასივი რომ ასე გამოიყურება. და ეს არ როდის გრძნობა, რომ ჩვენ ვიცით. გამოდის, რომ PHP, და ბევრი ენებზე, არა მარტო რიცხობრივი ინდექსირებული მასივები რომლის პირველი ინდექსი ნულოვანი, მაშინ ერთი, შემდეგ ორი, შემდეგ dot, dot, dot, ო მინუს 1. ეს არის რასაც ასოციაციურ მასივში. ასოცირებული მასივი, რომელშიც შეგიძლიათ შეინახოთ გასაღები მნიშვნელობის წყვილის სადაც გასაღები არ არის აუცილებელი ნომერი. ეს შეიძლება რეალურად იყოს ტექსტი, სიტყვა. ასე რომ, ეს შეიძლება განხორციელდეს, ქვეშ Hood, თურმე გამოყენებით მონაცემთა სტრუქტურის ცნობილი? ეგონა, რაღაც დრამატული აღმოჩნდა მოხდეს - hash მაგიდასთან. ასე რომ, hash მაგიდა, გაწვევას, იმ თქვენ რომელმაც ეს გააკეთა for P კომპლექტი 6, ან თუნდაც გავიხსენოთ ეს, როგორც მინიმუმ, მაშინაც კი, თუ რა გააკეთეთ ლელო, hash მაგიდა, ჩვენი გამოყენება, იყო გამოყენებული, რათა უბრალოდ შეინახოს სიტყვები. მაგრამ ნამდვილად, თქვენ შენახვა გასაღებები და ღირებულებები. თუ თქვენ განხორციელებული hash მაგიდა P მითითებული 6 ლექსიკონი, გასაღებები იყო სიტყვა თავს და ღირებულებები იყო ეფექტურად ჭეშმარიტი ან ცრუ. დიახ, აქ, ან ირიბად, არა, აქ. ასევე, ჩვენ შეგვიძლია განზოგადება ეს იდეა. და ჩვენ შეეძლო ძალიან ჰგავს მონაცემები სტრუქტურა შესანახად არ სიმებიანი თავად მარტო თქვენი hash მაგიდასთან, მაგრამ ვარაუდობენ, რომ ყველა ერთი თქვენი hash მაგიდასთან ნახვა კვანძების. თქვენ შეიძლება კიდევ გავაკეთოთ ეს შანსი არა აქვს bool. თქვენ შეიძლება რაღაც. რა მოხდება, თუ გასაღები არ იყო მაქსველი, for მაგალითად, მაგრამ გაცემა unquote "სახელი", ან შეთავაზება unquote "კაპიტანი." ხოლო შიგნით თქვენი C მონაცემების სტრუქტურას, დააყენა ღირებულება, არა მხოლოდ ლოგიკური, არამედ ღირებულება მოსწონს გაცემა unquote "დავით", ან "M", ან "Matthews," და სხვ. ასე რომ, იგივე მონაცემების სტრუქტურები ჩვენ როგორც ჩანს, არსებობს სხვა ენებზე. და მე ამტკიცებენ, რომ ისინი რეალურად ბევრად, ბევრად უფრო მარტივია, რათა შეამოწმონ აქ. მოდით რეალურად შევხედოთ ახლა რაღაც ასეთი სინტაქსი. მე ვაპირებ წასვლას PHP დირექტორია. და მე ვაპირებ გახსნა უკეთესი მობილური Hello-0 წლამდე. გავითვალისწინოთ, რომ ყველა გავაკეთე იყო დავამატებთ რამდენიმე კომენტარი. ასე რომ, ჩვენ შეგვიძლია თავი დაეღწია, რომ განადგურების. და ეს პროგრამა აკეთებს მართლაც ბეჭდავს კომენტარი პირველმა რადგან მე მითითებული შორის tags მინდა შეასრულოს, რომ კოდი. ახლა, ჩვენ დავინახავთ შემდეგ მომენტში ამიტომ ეს არის სასარგებლო. მაგრამ გახსნა კიდევ ერთი მაგალითია აქ. ნება მომეცით წავიდეთ წინ და ქმნის ამბობენ, gedit პირობების ერთი. ეს არის გზა უკან დრო ახლა. მაგრამ კვირის წინ, მე ვფიქრობ, ამ კვირაში ერთი ან კვირაში ორი გვქონდა მაგალითად მოუწოდა conditions1.c. და გადავწყვიტე, reimplement მას PHP, მხოლოდ იმიტომ, რომ ასეთი აღვნიშნო, რომ PHP, syntactically, თითქმის იდენტურია to C. ეს არ არის დიდი ნახტომი გასულ კვირას ამ. ყურადღება მიაქციეთ ზედა ეს პროგრამა, რომელიც იწყება, როგორც ადრე, რამდენიმე კომენტარი, რომელიც მე თავი დაეღწია როგორც განადგურების. გავითვალისწინოთ რომ მე PHP რეჟიმში ამ ფაილი. ასე რომ, ეს კოდექსი, ჩვენ დავინახავთ, მიიღებენ შესრულებული. გავითვალისწინოთ, რომ არსებობს readline, რაც ალბათ ანალოგი PHP of getstring. გავითვალისწინოთ, რომ ეს ცოტა განსხვავებული. რეალურად დააკონკრეტა ზოლში to ფუნქცია მოუწოდა წაიკითხა ხაზი, და ეს რა შესახებ ხედავს. ასე რომ თქვენ არ უნდა printf ხელით. მაგრამ ეს არ არის დიდი გარიგება. მე ვაპირებ შეინახოს, შიგნით $ ნ, დაბრუნების ღირებულება ამ, ასე, რაც არ უნდა მომხმარებლის ტიპების არის მათი int. აქ არის კიდევ ერთი ცნობისმოყვარეობა. გამოდის, PHP-ში, ნებისმიერი ცვლადი უბრალოდ უნდა იყოს prefixed ერთად დოლარის ნიშანი. ეს პატარა შემაშფოთებელი. მაგრამ შეამჩნია რა მე არ კეთდება PHP. რა აკლია ეხლა მარცხენა ხელი მხარეს ტოლობის ნიშანი? არ უთქვამს ტიპის. ასე რომ, ეს განსხვავდება C. უკეთესი ან უარესი, PHP არის თავისუფლად ნაბეჭდ ენაზე. ამას აქვს ნომრები. ამას აქვს strings. ამას აქვს Booleans. გარდა ამისა, ეს რამდენიმე სხვა მონაცემები სახის. მაგრამ თქვენ, პროგრამისტი, როგორც წესი, არ უნდა იზრუნოს მათ შესახებ. თავდაყირა ამ არის ის, რომ ეს ქმნის ეს პატარა უფრო ადვილი პროგრამა. თქვენ შეგიძლიათ ვფიქრობ, რომ ცოტა ნაკლები. Downside არის ის რომ გახსნას თქვენ მდე პოტენციური შეცდომები, თუ თქვენ შემთხვევით მკურნალობა ნომერი, სიმებიანი, სიმებიანი როგორც რაოდენობის, პოტენციურად, მაგრამ მაშინ, PHP, და ბევრი ენების, არის საკმაოდ ტოლერანტული. გამოიყენებენ რასაც დაფარული გააპროტესტეს. და თუ თქვენ ეცდება გამოიყენოს ო კონტექსტში საქართველოს რიცხვითი სიტუაცია, რომ იგი გარდაქმნას რა აქ იქნება სიმებიანი, რადგან თუ მომხმარებელი ტიპის რაღაც, და თქვენ შედეგი, როგორც readline, ან მიიღოთ ტექსტი, რომ დაბრუნებას აპირებს სიმებიანი. მაგრამ შეამჩნია, რამდენიმე ხაზები შემდეგ მე შემოწმება, თუ n მეტია ნულოვანი. ასე რომ, PHP აპირებს ირიბად მიცემული ჩემი "დამთხვევა" 123, ან რასაც შესახებ ტიპების, შევიდა int. ასე რომ, მოკლედ, პერსონალის უბრალოდ მუშაობს გაცილებით მეტი ინტუიციურად. ასე რომ, ჩვენ ახლა ვიწყებთ დაძაბულია რამდენიმე რამ, რაც ჩვენ გავაკეთეთ წარსულში. ბევრი ამ პერსონალის არის იგივე, თუმცა. ჯერ კიდევ არ შეადგენს შეადგენს. როგორც განზე PHP ასევე შეადგენს შეადგენს შეადგენს, თუმცა უფრო, რომ, ალბათ, ამ მომავალი. ეს იყო. Typo მაგრამ ორი უდრის ნიშნები ნიშნავს, იგივე რამ, როგორც ადრე, შედარებისთვის. printf ნიშნავს იმავეს, როგორც ადრე. წარმატებული n ნიშნავს იგივე რამ, როგორც ეს ადრე იყო. ასე რომ, როგორ შემიძლია აწარმოებს ამ პროგრამაში? ისე, როგორც ადრე, თუ PHP, conditions1.php და ტიპის ნომერი, როგორიცაა 123. სწორედ პოზიტიური ნომერი. თუ მე აკრიფოთ 0, I გააშუქა 0. და თუ აკრიფოთ უარყოფითი 123, მივიღებ უკან უარყოფითი რიცხვი, რომელიც მხოლოდ ვთქვათ, syntactically, PHP სუპერ, სუპერ მსგავსი. რატომ არის ეს ახლა სასარგებლო ამ ვებ კონტექსტში? ისე, მოდით დავუბრუნდეთ ამ froshims მაგალითად, რომელიც ჩანდა, ერთხელ, როგორც ეს აქ. და მოდით რეალურად დახევის up ვებ გვერდზე ერთხელ, რაც ჩანდა მოსწონს ეს. რა შეგვიძლია გავაკეთოთ ერთად მონაცემთა რომელიც წარმოდგენილი? ისე, მინდა გითხრათ, ქმნის უფრო ახალი ეს ვერსია. და დაინახავთ, რომ პრობლემა კომპლექტი დაზუსტება დადის თქვენ მეშვეობით რამდენიმე ამ. იმის ნაცვლად, რომ იწყება ნულოვანი, მოდით შევხედოთ froshims3, რომელიც ცოტა მეტი. ყურადღება მიაქციეთ პირველ, ფაქტობრივად, მოდით გახსნა თუ რა 0, ასე რომ თქვენ ხედავთ რა რეესტრში 0. გავითვალისწინოთ, რა რეესტრში 0 გააკეთა. ერთი, მე მაქვს კომენტარი ზედა. წაშლა იმ და ფოკუსირება მხოლოდ ამ. ყველაზე შემცველობის register0.php არის, ცხადია, რა ენაზე? უბრალოდ ნედლეული PHP. ასე რომ, შეტყობინება, ეს ფაილი არ დაიწყოს ერთად, ამ ეტაპზე, ღია bracket, კითხვის ნიშნის, PHP. PHP არ იძლევა საშუალებას, intermingle PHP კოდი და HTML tags. მაგრამ მე ვაკეთებ რომ აქ შიგნით გვერდზე მეტი აქ. ახლა, ისევ, ნეტავ მხოლოდ ვიცი ეს რომელმაც უყურებდნენ სახელმძღვანელო. print_r, თურმე არის print_recursive. _recursive და ეს მხოლოდ მოსახერხებელი სასარგებლო ფუნქცია, უბრალოდ ბეჭდავს out, რეკურსიული, რასაც თქვენ გადასცეს იგი. თუ თქვენ გადასცეს იგი მასივი, ეს თქვენ ბეჭდვა მასივი. თუ თქვენ გადასცეს იგი ნომერი, ეს თქვენ ბეჭდვა ნომერი. მხრივ, სიმებიანი, რომ თქვენ ბეჭდვა სიმებიანი. თუ თქვენ გადასცეს იგი hash მაგიდა, მას იქნება ამობეჭდოთ hash მაგიდასთან. თქვენ არ დაწერა ყველა იმ კოდი თავს. ახლა შეამჩნია, რომ მე შესვლისას PHP რეჟიმში მეტი აქ. მე არსებული PHP რეჟიმში მეტი აქ. ასე რომ, როდესაც სერვერზე ნათქვამია ეს ფაილი ყველაზე ქვედა, მარცხნიდან მარჯვნივ, რადგან იგი სრულდება ფაილის სახელი ეწოდა. php, რაც არ უნდა არ შიგნით PHP tags არის უბრალოდ იქნება შამფურზე out, ისევე როგორც ნედლეული HTML. არ არის დიდი გარიგება. მაგრამ როგორც კი სერვერზე ამჩნევს ამ, ის აპირებს ვთქვა, მე არ უნდა Spit out, ფაქტიურად, print_r პოსტ. მე უნდა შესრულდეს შემდეგი ხაზი კოდი. ასე რომ, ბოლო კითხვა, მაშინ, ამ ფაილისა არის, ასევე, რა heck არის ეს? მიიღეთ ვხვდები. რა არის $ _POST, ალბათ? აუდიტორია: [inaudible] დინამიკები 1: ჰო, გამოქვეყნებული მონაცემების მიხედვით. შეგახსენებთ, მოდით გადახვევა უკან დრო მხოლოდ ერთი წუთით. froshim0, კიდევ ერთხელ, ჩანდა მოსწონს ეს. სუპერ უმრავლესობა ეს მხოლოდ HTML. ისევ, რაღაც tags თქვენ არ ჩანს, ან რომელიც თქვენ უკვე ნაცნობი. მაგრამ საინტერესო ის იყო ეს. ეს ერთი ხაზი არის ის, რაც ნამდვილად აკავშირებს ეს ჩვენი register0.php ფაილი. მე წარდგენის მეშვეობით მეთოდით პოსტი. ეს კი ნიშნავს, რომ პარამეტრების მომხმარებლის სახეები არ არის აპირებს დასრულდება, სადაც. ისინი არ აპირებენ გამოჩნდება URL. ისინი ჯერ კიდევ უნდა იგზავნება კლიენტს, საწყისი ბრაუზერი, რომ სერვერზე, მაგრამ გავლით ზოგიერთი სხვა მექანიზმი, რომელიც ჩვენ უარი თქვას ჩვენს ხელში ზე დღეს, მაგრამ ეს არ URL. მაგრამ შეამჩნია ურთიერთობისათვის ახლა ჩანაწერი, რომელიც, კონვენციის, არის ამას აქ. მაგრამ, თუ გახსნა register0.php, მე როგორც ჩანს დაბეჭდვის ამ. ასე რომ, ეს ერთგვარი უცნაური დასახელებისგან კონვენციას. მაგრამ რა ლამაზი PHP-ში არის, რომ როდესაც გამოყენების PHP in ვებ კონტექსტში, არ არის ბრძანების ხაზი ისევე როგორც მე ერთი წუთით წინ, როდესაც თქვენ რეალურად გამოყენება ვებგვერდი გვერდზე, ამ Vhost დირექტორია, როგორც ჩვენ ვართ, ავტომატურად იქნება PHP შეავსოთ ამ რამ, რაც ასოციაციურ მასივში, ასე ვთქვათ, hash მაგიდა, რომელსაც ყველაფერი შესახებ აკრეფილი შემოსული მოკლედ, $ _POST ყველა caps არის გლობალური ცვლადს, PHP მხოლოდ magically ქმნის, როცა გამოყენების PHP in ვებ კონტექსტში. და ეს აყენებს შიგნით იგი ყველა სახელების პარამეტრების ფორმა, რომელიც წარდგენილ იქნა ეს ფაილი და ყველა ფასეულობები, რომელთაც შესახებ აკრეფილი შემოსული ასე რომ, ეს ხელები, თუ რა არის შესახებ აკრეფილი, რომ ფორმით. ასე რომ, სანამ გვაქვს ნამდვილად სულელური გამომავალი მხოლოდ ხედავს, რადგან ყველა გავაკეთე იყო რეკურსიული ბეჭდვა ამ მასივი. მთავარი არის სახელი, რომ მნიშვნელობა დავით. მთავარი არის კაპიტანი. ღირებულება არის. და ორმაგი ისარი და კუთხე bracket არსებობს, ეს მხოლოდ უკანონო. ეს არ არის კოდი. ეს არის მხოლოდ PHP გზა გიჩვენებთ რა მნიშვნელობა ზოგიერთი გასაღები არის. მაგრამ ახლა ნება მომეცით ინიციატივით კი, ამ froshIMs3, თითქმის იდენტურია გარდა მას წარუდგენს ამ ფაილი. და ისევ, ჩვენ ვაპირებთ, ასეთი მხოლოდ ერთი შეხედვით, ამ, მხოლოდ რამდენიმე სინტაქსი, მაგრამ შეამჩნია რა ეს ფაილი აკეთებს. მიიღეთ ვხვდები, უბრალოდ საფუძველზე ხაზი კოდექსი, რომელიც ალბათ ასე გამოიყურება ბერძნული, გარკვეულწილად, აშკარად აკეთებს. ეს ფაილი არის რაღაცნაირად დაკავშირებულია to ფოსტა, ელ. ანუ, რაც ამ პროგრამის აკეთებს? ამ ვერსიაში, მე რომ რეალურად ფორმის შესავსებად - და ნება მომეცით წასვლა froshIMs3, არ froshIMs0 - ფორმა გამოიყურება იგივე. დავით, კაპიტანი, კაცი, dorm, Matthews. მაგრამ თუ მივაწოდოთ ეს, ფაილი აპირებს მისვლას register3.php. და მე აცხადებენ, მიერ ეძებს ის კოდების, იგი აპირებს რატომღაც ჩართვას ელ. ნება მომეცით წავიდეთ წინ და გახსნა წელს უფრო დიდი ფანჯარა, ამიტომ ჩვენ ვხედავთ, რომ უფრო cleanly. ჩვენ ვართ Vhosts, ადგილობრივი მასპინძელი, საჯარო, froshims. მე ვაპირებ ქმნის სხვადასხვა პროგრამა, უბრალოდ, ამიტომ ჩვენ ხედავთ მეტი ერთდროულად. ასე რომ, ახლა აქ, შეამჩნია რამდენიმე რამ. ზედა ფაილი ღიაა bracket, კითხვის ნიშნის, PHP. მაშინ არსებობს რამოდენიმე კომენტარი, რაც ჩვენ შეგვიძლია იგნორირება, არის უინტერესო იქნება. ახლა არის ეს. გამოდის, PHP აქვს ბევრი კოდის მოუწოდა მოითხოვს. ეს ძალიან ჰგავს სულითა, რომ C-ს მოიცავს, hash შორის, რომელიც არსებითად grabs შინაარსი ზოგიერთი სხვა ფაილი და მხოლოდ Plops მათ აქ, ასე რომ თქვენ შეგიძლიათ გამოიყენოთ ისინი. ამ შემთხვევაში, მოწყობილობის აქვს, წინასწარ დაყენებული, ბიბლიოთეკაში, თავისუფალი და ღია ბიბლიოთეკის მოუწოდა PHP გამგზავნის, რომ ყველას შეუძლია ჩამოტვირთვა ინტერნეტიდან. ჩვენ გავაკეთეთ იგი თქვენთვის. ეს ნიშნავს, რომ მე ახლა უკვე ელ ფუნქციონალური, ჩემი განკარგულებაში. ახლა შეამჩნია რამდენიმე რამ. მე ვაპირებ, რათა შეამოწმოს ფორმის წარდგენა. თურმე PHP, ერთი, აქვს ძახილის ქულა არ ოპერატორი, ისევე, როგორც C. მაგრამ PHP ასევე აქვს ფუნქცია მოუწოდა ცარიელი. ცარიელი მხოლოდ ბრუნდება ნამდვილი თუ ღირებულება საქართველოს რაც თქვენ გადასცემს მას ფრჩხილებში ცარიელია, ისევე როგორც შესახებ არ აკრიფოთ არაფერი სისტემაში ასე რომ, ეს ამბობს, და შეამჩნია სინტაქსი, ძალიან თქვენში C, თუ სახელი გასაღები, ამიტომ სახელის ველს, რომელიც წარმოდგენილი გავლით ჩანაწერი, მიერ შესახებ, რომელიც არ არის დაცლას და მათი გენდერული არის ცარიელი სახით, როგორც კარგად და მათი dorm არ არის ცარიელი - მაგრამ შეამჩნია მე არ აინტერესებს კაპიტანი, მერე რა ჩვენ აპირებთ? მე ვაპირებ, რათა შესრულდეს ამ ხაზი კოდი. თქვენ შეიძლება ვიფიქროთ, ამ სახის ისევე როგორც malloc, მაგრამ ცოტა fancier ვიდრე. მაგრამ ახლა ამ მაძლევს სპეციალური struct ტიპის PHP mailer. მაგრამ იგნორირება სიტყვით new დღეს. ახლა მე ვაპირებ მოვუწოდო ფუნქცია მოუწოდა IsSMTP, რომელშიც ნათქვამია, გამოიყენოთ SMTP. ეს არის პორტს 25, ისევე, როგორც ვიდეო გასულ კვირას, როდესაც რამ იყო სროლა ელ შევიდა firewall. პორტი 25 SMTP. SMTP ნიშნავს გამოიყენოთ ფოსტის სერვერიდან. რომელი, ჩვენ შეგვიძლია გამოვიყენოთ ჰარვარდის ნახვა SMTP.fas.harvard.edu. ჩვენ შეგვიძლია მითითებული from მისამართი უნდა იყოს ჯონ ჰარვარდის ს. თუ მე გადაფურცლეთ ქვემოთ შემდგომ, შემიძლია მითითებული მიმღები მისამართი, უბრალოდ თვითნებურად, უნდა იყოს იოანე ჰარვარდის არის ასევე. ასე რომ, ის იქნება emailing თავს. ახლა კი შეგიძლიათ სათაური უნდა იყოს რეგისტრაცია. მე მინდა მითითებული ორგანო ელ ასეთია. ეს ხაზი გამოიყურება ცოტა მეტი cryptic, მაგრამ ეს მხოლოდ იმიტომ, რომ იქ არის ბევრი ინფორმაციის მისაღებად. ერთი, იქ dot ოპერატორი. ვიღაცამ უნდა იცოდეს უკვე რა dot ოპერატორი აკეთებს. ეს გაერთიანების. ასე რომ, თუ გსურთ მიიღოს სიმებიანი in PHP, და დამატება, ან prepend იგი, სხვა სიმებიანი in PHP, მადლობა ღმერთს თქვენ არ უნდა გამოვიყენოთ strcopy და malloc, და ყველა, რომ აღარ. თუ გსურთ concatenate ორი სიმები, ახსოვს ვინმეს მეხსიერება. მოდით PHP ფიგურა, რომ თქვენ. რა PHP გავაკეთებთ ერთად dot ოპერატორი აქ მხოლოდ დიდი სასჯელი გარეთ ამ ხაზი, ეს ხაზი, ამ ხაზის, ეს ხაზი. ახლა კი ცნობა, იგი აპირებს უნდა ჩართვის ღირებულებებს. ასე რომ, ელ, რომ ჯონ ჰარვარდის აპირებს მიიღოს არის ფაქტიურად თქმას სახელი და გვარი, მძიმე, რაღაც, უფრო სწორად, მაშინ ჩვენ ახლოს სიმებიანი და concatenate წლის მიუხედავად შესახებ აკრეფილი in, მაშინ ახალი ხაზი. ამის შემდეგ, მეორე ხაზი ჯონ ჰარვარდის ნახვა ელ, იგი აპირებს ამბობენ კაპიტანი, ან არაფერი. ეს თქმას სქესის, მამაკაცური ან ქალი. Dorm იქნება Matthews ჩემს შემთხვევაში. და მაშინ შეამჩნია ნაცნობი მძიმით ზე ბოლომდე. და მაშინ, ქვემოთ აქ, შეტყობინება, გარკვეულწილად cryptic მაინც, თუმცა ისევ და ისევ, მას შემდეგ, ნიმუში, რომ კიდევ უფრო ნაცნობი მას შემდეგ, P მითითებული 7, თუ გაგზავნის გვერდის დააბრუნებს ყალბი, მაშინ წავიდეთ წინ და იღუპება. ასე რომ, PHP აქვს ფუნქცია მოუწოდა იღუპება, რომელიც, ფაქტიურად, მხოლოდ კლავს ნახვა და უბრალოდ ბეჭდავს out რაც არ უნდა თქვენ გითხრათ, რომ ეს - მისი კვდება სიტყვა, ასე ვთქვათ. და რომ, იმ შემთხვევაში, იგი ბეჭდვა რა შეცდომა ინფორმაციის არის რაც არ მოხდა, არასწორია. ცოტა ხნის ამბავი მოკლედ აქ რაც გვაქვს მაგალითად, სადაც როცა შესახებ წარუდგენს ფორმა, froshim0, froshims3.php, მიდის register3.php. მაგრამ register3.php შემდეგ ამისა შეასრულოს ყველა ეს ხაზები. ასე რომ რამდენიმე მიიღოს aways აქ. ერთი, ეს როგორც ჩანს საკმაოდ მარტივია, პროგრამულად, გაგზავნის წერილებს, რაც კარგია. როდესაც წევრებს რეგისტრაციისათვის თქვენს საიტზე, in ამ შემთხვევაში, როდესაც ისინი დაარეგისტრიროთ თქვენი სპორტი, შეგიძლიათ ელ freshman PROCTOR, ან იოანე ჰარვარდის, ამ შემთხვევაში. მაგრამ ეს ასევე ნიშნავს, შეგიძლიათ რა? პირადი ელ არავის არავის. ეს ძალიან მართალია. ეს არ არის, რომ ადვილად კეთდება, თუ თქვენ გამოიყენება გამოყენებით Gmail. მაგრამ თუ თქვენ ოდესმე გამოყენებული Eudora ან Outlook, შეგიძლიათ საკმაოდ ბევრი გეტყვით გვერდის სერვერზე, რომ თქვენ ხართ ვინმეს გინდათ. ეს არის სადაც მე უნდა დააყენოს რომ ქუდი და აცხადებენ, არ გააკეთებს. მაგრამ ეს აღთქმა, თუ რამდენად ადვილი ეს შეასრულოს ფიშინგს თავდასხმები და გააგზავნოთ ანონიმური ელ და spam, ზოგადად. და ეს ნამდვილად boils ქვემოთ ის ფაქტი, რომ ყველა თქვენ უნდა გარკვეული პროგრამული შესვლა. როგორც განზე ჩემი უახლოესი ნაცნობობა დაფა, ჩემი საკუთარი freshman წელი, მაშინ, როცა აღმოვაჩინე, ამ გრილი შეასრულა, რომ wow, შეგიძლიათ გაგზავნის წერილებს ეხლა არავის. ასე რომ, ჩვენ გარკვეული სულელური არგუმენტი, ფაქტიურად, ამ Matthews, შორის ჩემი PROCTOR ჯგუფი. მე არ მახსოვს რა საკითხი იყო. მაგრამ მსურდა ცდილობენ დასრულდება, ამ სულელური დებატები. ასე რომ, გადავწყვიტე მე უბრალოდ გამოგვიგზავნეთ ელექტრონული ჩემი PROCTOR ჯგუფი, თითქოს იყოს სხვა ბიჭი, ვისი აზრით I დაეთანხმა, და მას შეურიგდებიან რაც არ უნდა ჩემი აზრით იყო ამ კონკრეტულ დებატები. ასე რომ ყალბი ეს წერილი გამოყენებით ტექნიკით მსგავსი სულითა ამ. მაგრამ ეს იყო, ფაქტობრივად ადვილი დროს. მოხვდა გაგზავნას. ის არ იყო მოხარული, არც უკვე დაფა. და მე ძალიან სწრაფად დაიჭირეს ფარგლებში წამი, რადგან, როგორც მოგეხსენებათ, მე მოაწერენ ჩემი ელ გარკვეული გზა. და თუმცა მე ამის გაკეთება ხელით, დიდი ნაწილი, 15 წლის შემდეგ, რადგან მე ვიყავი ტრავმირებული რომ. მე არ მაქვს ხელმოწერის ჩემი ელ არის. თუმცა 1995 წელს, მე მქონდა sig, ხელმოწერის ჩემი ელ. ასე იყო ეს შენიშვნა და განაცხადა, ძვირფასო PROCTOR ჯგუფი, I შეურიგდებიან ჩემი აზრით ეთანხმება და დავით ხელმოწერილი ასე და ასე რომ, ახალი ხაზი, ახალი ხაზი, DJM. ასე რომ არ გავაკეთოთ, რომ ან, ზოგადად, მიიღოს უპირატესობა ამ ტექნიკით. მაგრამ მიღებისას ნახვა, ისევე როგორც თქვენი საბოლოო პროექტი, მიღებისას ნახვა რაღაც სამეწარმეო, ასე, პრაგმატულად, შეგიძლიათ ბერკეტი სხვა მომსახურების ინტერნეტში მოსწონს გვერდის შემდეგ კი, ფაქტობრივად, გაგზავნის რამ გამოყენებით კოდი. ასე რომ, როგორ შეგვიძლია გავაუმჯობესოთ მოუწოდა? ისე, პირველი ავიღოთ სწრაფი ტური ზოგიერთი რამ, რომ დაინახავთ, და მერე შევხედოთ რამოდენიმე მაგალითი. ასე რომ, ერთი, დარწმუნება, რადგან ჩვენ საფრენი მეშვეობით PHP. და ვიცი, რომ რაღაც მომენტში, თქვენ უნდა რეალურად დაიწყოს წერა ამ თუ არ გვაქვს უკვე. გააცნობიეროს, რომ, ერთი, მთავარია სახის ჩვენი ფანჯარა PHP. თუ გსურთ წერა კოდი, რომელიც იღებს შესრულებული, უბრალოდ წერა მას ფაილი სახელად. php ცოტა ხნის როგორც თქვენ გაქვთ ღია bracket კითხვის ნიშნის PHP აქვს. მაგრამ შეამჩნია ეს არის პირობების php. გავითვალისწინოთ, რომ ეს არის ზუსტად იგივე slide გვქონდა კვირაში, როდესაც ჩვენ გვქონდა პირობების C. პირობები PHP არის სტრუქტურულად და syntactically იგივე. ერთადერთი რეალური განსხვავება არის თუ მაქვს ცვლადები ჩართული, თქვენ გაქვთ იმ დოლარი ნიშნები. იმავდროულად, ლოგიკური გამონათქვამების გამოიყურება, ისევე, როგორც ეს ან ing ან და-ing ერთად. კომუტატორები გამოიყურება ზუსტად ისევე. რა ლამაზი PHP, ხოლო C, კონცენტრატორები უნდა იყოს საქმე primitives მოსწონს ints ან სიმბოლო, PHP-ში თქვენს შემთხვევაში განცხადებებს შეიძლება რეალურად იყოს მთელი strings, რომელიც რეალურად ასეთი ლამაზი. გადაარჩენს თქვენ გარკვეული დროის განმავლობაში. ეს ვერ მოახერხა, რომ C. აი for loop in PHP. ეს იდენტურია. შესაძლოა, გარკვეული დოლარი ნიშნები for ცვლადი. თქვენ არ აღვნიშნო, რომ რაღაც int. თქვენ უბრალოდ განაცხადოს იგი დოლარის ნიშანი და სახელი განსხვავებულია. მაგრამ ამისთვის მარყუჟის იგივეა. ხოლო მარყუჟის იგივეა. ამის გაკეთება მაშინ, როცა მარყუჟის იგივეა. ეს არის ცოტა განსხვავებული. ამრიგად, PHP, რომელზეც მასივი, შეგიძლიათ statically განაცხადოს მასივი, როგორც C, მაგრამ თქვენ იყენებთ კვადრატულ ფრჩხილებში. In C, თქვენ გამოიყენოთ curly აფრთხილებს, თუ კი იცოდა, რომ. მაგრამ ეს ძალიან გავრცელებული PHP განაცხადოს მასივი, ამ შემთხვევაში, ციფრები, და მოვუწოდებთ ცვლადი ნომრები. ცვლადები თავად გამოიყურება ასე. აქ ტექსტი, შეთავაზება unquote "Hello მსოფლიოში. "თქვენ შეიძლება წარმატებული ო. მე უბრალოდ არ ამ შემთხვევაში. ახლა ეს არის საინტერესო მშენებლობა. C ჯერ არ არის. მაგრამ ეს სუპერ სასარგებლო. და დაინახავთ ეს P კომპლექტი 7 სპეც - თითოეული მშენებლობა. თუ გსურთ გავიმეორო მის მთელ ელემენტების მასივი, თქვენ არ გაქვთ გამკლავება $ i და $ ნ, და + +, და ყველა რომ. შეგიძლიათ ფაქტიურად თქმით, იმ PHP, ამ - თითოეული ნომრები ნომერი, ისე მე ვთქვათ, რომ $ ნომრები არის მასივი ნომრები. და როდესაც ვამბობ, რომ თითოეული ნომრები როგორც რაოდენობის, ეს აპირებს ავტომატურად, როგორც ჩემი მარყუჟის გაუშვებს, განახლება, თითოეულ iteration, ღირებულება შიგნით დოლარის ნიშანი ნომერი - ისევ და ისევ, და ისევ, და ისევ ფეხით ჩემთვის გამო, რომ მასივი. ასე რომ, ეს მხოლოდ ზოგავს ჩვენთვის კოდი. არ semicolons, არ + + 's, არა არის, არა N-ს, უბრალოდ ლამაზი. მაგრამ PHP ასევე აქვს ამ. ეს არის სუპერ ძლიერი. და თქვენ გამოიყენოს ეს, ხელები მე, ამ P მითითებული 7. და ასოციაციურ მასივში ასევე განაცხადა, ერთად კვადრატულ ფრჩხილებში. მაგრამ შეამჩნია სინტაქსი არის. ეს თქვენში რა დავინახეთ ერთად print_r მომენტში წინ. რამდენი გასაღებები, როგორც პატარა საღი აზრის შემოწმება, ჯერ ეს მასივი, როგორც ჩანს,. ასე რომ, მას აქვს ორი. მივმართავ ამ მასივი. მაგრამ თუ ეს ეხმარება, შეგიძლიათ ვფიქრობ ამ როგორც hash მაგიდასთან, ან როგორც ასოციაციურ მასივში. მაგრამ ეს მხოლოდ სხვადასხვა ტიპის მასივი. ისევ და ისევ, სხვადასხვა ენებზე აქვს ეს. ჩვენ დავინახავთ, რაღაც მსგავსი in JavaScript, ასევე. აქ არის ორი გასაღები. ერთი გაცემა unquote, "სიმბოლო", ერთი შეთავაზება unquote "ფასი". და იმ გასაღებები აქვთ მნიშვნელობა. ამ შემთხვევაში სიმბოლო ღირებულების არის FB, for Facebook, და ფასი ღირებულების 49, 26, რომელიც Facebook საფონდო ფასად, როგორც ამ დილით. რა არის სასარგებლო შესახებ ასოციაციურ მასივში. მე შეეძლო რიცხობრივი ინდექსირებული მასივს მხოლოდ მარტივი კვადრატულ ფრჩხილებში. და მე შეეძლო დოლარის ნიშანი ციტირებით შეადგენს მხოლოდ ამ. ნება მომეცით, ფაქტობრივად, ამის გაკეთება. დავუშვათ, მე ნაცვლად უბრალოდ გამოაცხადა ამ მასივი იგრძნობა. სწორედ კარგად მოქმედებს, syntactically. იგი არ კარგავს ნებისმიერი ინფორმაცია, თავისთავად. მე მაინც ვხედავ, რომ სიმბოლო არის fb, და რომ ფასი 49, 26. რატომ არის ასოციაციური მასივების დამაჯერებელი? აუდიტორია: თქვენ არ უნდა გვახსოვდეს სადაც თქვენ დააყენა პერსონალი. დინამიკები 1: სწორედ თქვენ არ გაქვთ უნდა გვახსოვდეს, სადაც თქვენ დააყენა პერსონალი. თქვენ არ თვითნებურად გვახსოვდეს რომ საფონდო სიმბოლო არის bracket ნულის და საფონდო ფასები არის bracket ერთი, რაც განსაკუთრებით საშიში თუ შეცვალოს, საბოლოოდ. ეს ბევრად გავალამაზოთ გაერთიანების რაც ჩვენ ამას დავარქმევთ მეტადატის თქვენი ფაქტობრივი მონაცემები. მინდა ამტკიცებენ, რომ ის, რაც ჩვენ ნამდვილად ზრუნავენ შესახებ აქ fb და 49, 26. სიმბოლო და ფასია მეტადატის რომელიც ასახავს მონაცემებით, რეალურად აინტერესებს. მაგრამ ეს მხოლოდ იმდენად, უფრო ადვილი და იაფი. ახლა, როგორც განზე რა ფასის ვიხდით? ჩვენ უკვე აკეთებენ ამ CS50 კვირების განმავლობაში. ეს ფუნქცია უნდა რაღაც ღირებულება. მეხსიერება. ასე რომ, თქვენ არა მხოლოდ შენახვისა 32-bit მთელი რიცხვი, მაგალითად. თქვენ შენახვა სიმბოლო / 0, ალბათ. ასე რომ თქვენ იყენებთ უფრო მეხსიერებაში. და რაც შესრულება ეძებს რაღაც მდე ასოციაციურ მასივში, ალბათ? ალბათ ნელა. წვდომის კარგია, განსაკუთრებით როდესაც თქვენ შეგიძლიათ ეს ორობითი ძებნის. მაგრამ თუ თქვენ რეალურად ახლა ეძებს არა ამისთვის ნომრები, მაგრამ სიმებიანი, ამ მართლაც ხორციელდება ქვეშ Hood, რაც სავარაუდოდ hash მაგიდაზე, სადაც თქვენ გამოიყენოთ hash მაგიდა ცალკე chaining. ან შეგიძლიათ გამოიყენოთ ცდილობენ რეალურად შესანახად ღირებულებებს. ასე რომ, შესაძლოა, თქვენ შეგიძლიათ ეს მუდმივი, მაგრამ თქვენ კვლავ უნდა შევხედოთ S-Y-M-B-O-L, პოტენციურად, ნაცვლად მხოლოდ 32 ბიტი თვალი რაღაც up. ასე რომ, კიდევ ერთხელ, იმავე იდეები მოდის თავში განმეორდება ამ კონტექსტში. თუმცა ისევ და ისევ, PHP უკვე რამდენიმე სუპერ globals, რომ თურმე არიან ასოცირებული მასივები. ჩვენ ვნახეთ ერთ მომენტში წინ, $ _POST. და ეს სუპერ გლობალური აქვს გასაღებები და ღირებულებები. კერძოდ, გასაღებები გამოდიან რა? სად კოდების $ _POST მოდის? უბრალოდ Recap? აუდიტორია: სახელი. დინამიკები 1: სახელი, სადაც? აუდიტორია: [inaudible] დინამიკები 1: სახელი არის ატრიბუტი. ისე სად, სად ისინი თავდაპირველად მოდის? ფორმით. ასე რომ, თუ HTML გვერდს ფორმა tag, შიგნით რომელთაგან ზოგიერთი საშუალებებით, როგორიცაა შეამოწმოს ყუთები, ტექსტური ყუთები, ვარდნა ქვემოთ მენიუები, რომელთაგან თითოეული თავისი სახელი გააჩნია, იმ სახელები დასრულდება, როგორც კოდების $ _POST და, გულწრფელად, რომ ამ საკითხზე, $ _GET. თუ მეთოდი მისაღებად, იგივე იდეა. უბრალოდ სხვადასხვა სუპერ გლობალური. და ღირებულებებს, რა თქმა უნდა, მოდის მიუხედავად შესახებ აკრეფილი თავის ან მისი ბრაუზერი. მაგრამ არსებობს რამდენიმე სხვა. აქ არის ფუნთუშა, რომელიც ჩვენ გამოგიგზავნით დაბრუნდება საბოლოოდ. მაგრამ ეს არის რაც თქვენ იცით, ვებგვერდი იყენებს ზოგიერთი კარგი ან ბოროტი. მაგრამ ჩვენ დავბრუნდებით რომ. სერვერი და სხდომა, რომელზეც ეს ორი გვაქვს სპეციალური კომუნალური. მაგრამ მოდით შევხედოთ ამ. ნება მომეცით წავიდეთ წინ და ქმნის მაგალითად მოუწოდა mvc0.php ასე MVC დგას შემდეგ. და ჩვენ ამ თანამედროვე უადრეს არის ტიპიური, რეალურად, თქვენ შექმნასა პრობლემა კომპლექტი 7 და ასევე საბოლოო პროექტები, ამ სახის მრეწველობის სტანდარტული გზა, და სუფთა გზით. კარგია დიზაინი. ასე რომ თქვენ შესახებ, რომ ნახოთ, და თქვენ გამოცდილება, ამ P კომპლექტი 7, პარადიგმა, დალაგების საქართველოს პროგრამირების აზროვნების, რომ გამოიყურება ცოტა რაღაც მსგავსი. M მოდელის, C for Controller, V for ნახვა. დიდხანს ამბავი მოკლედ, MVC მხოლოდ სახის საქართველოს მეთოდოლოგიის გზა მიღების საიტებზე, კერძოდ, რომლის დროსაც თქვენ დააყენა ყველა თქვენი, სულელური ფრაზა - ბიზნეს ლოგიკა - ყველა თქვენი ინტელექტუალური საკუთრების რასაც კონტროლერი, ფაილი ისევე როგორც index.php, ან ჩვენ დავინახავთ, quote.php, ან buy.php. კონტექსტში პრობლემური კომპლექტი 7, თქვენი მოდელები, როგორც წესი, შეიცავს თქვენი მონაცემები, არაფერი დაკავშირებული მონაცემთა ბაზაში, როგორც ჩვენ გამოგიგზავნით საბოლოოდ ვხედავთ, და თქვენი შეხედულებები შეიცავს ესთეტიკასთან თქვენი საიტი, HTML, CSS. ასე რომ, ჩვენ უკვე ვნახეთ ამ in C პატარა ცოტა გამოყენებით. თ ფაილი. ჩვენ ნამდვილად დავინახე მომენტში წინ ცენტრთან, by ფაქტორინგი CSS სტილიზაციასა პერსონალის ჩვენი HTML. ასე რომ MVC მართლაც მხოლოდ ხატვის ხაზები ქვიშის და განაცხადა, რომ, საინტერესო პროგრამირების კოდი თქვენი ნახვა ეკუთვნის თუ რა ჩვენ მოვუწოდებთ კონტროლერი. პერსონალის დაკავშირებული მონაცემთა ბაზაში, როგორც წესი, მთავრდება მოდელი. მაგრამ დაინახავთ, ამ პრობლემის კომპლექტი 7, ჩვენ შერწყმა C და M რომ შევინარჩუნოთ ის მარტივი. მაგრამ შეხედულება, სადაც ყველა თქვენი საყვარელი და ესთეტიკის, როგორც წესი, წავიდეს. ასე რომ, რას ნიშნავს ეს რეალური თვალსაზრისით? ასევე, ნება მომეცით წასვლას ჩვენი MVC კატალოგი, ასეთია. და დაინახავთ მეტი ასეთი დაათვალიერა მეშვეობით წელს სპეც. ასე რომ, mvc0, მე ამტკიცებენ, რომ ეს არის, ისევე, მობილური 0 of CS50-ს საიტებზე. ყველა ჩვენ გვაქვს გარკვეული HTML, ისევე როგორც დიდი h1 tag, როგორც ჩანს. და მაშინ bulleted სიაში. მე მინახავს bulleted სია ადრე, მაგრამ არ არის დიდი გარიგება. მოდით სწრაფად შევხედოთ წყაროს კოდი. გამოდის, უწესრიგო სია ტყვიები ღიაა bracket ul ერთ ან მეტი სია ელემენტი, li. ასე რომ, გაფრთხილების აქ წამყვანს აქვს. ჩვენ ვნახეთ, რომ ერთი წუთით წინ. ასე რომ, ეს როგორ უნდა განხორციელდეს ამ გვერდზე. მაქვს ორი კავშირები, ორი ელემენტების სია, ერთი ul for უწესრიგო სია და ბოლოს შედეგად, ესთეტიურად, ეს ძალიან საკმაოდ ნახვა, მობილური 0 აქ. მაგრამ რა საინტერესოა, თუ რამდენად ამ ხორციელდება ქვეშ hood. ნება მომეცით წასვლას gedit და ქმნის ამ პირველი მაგალითი ხატავს სურათს. და ჩვენ შევხედოთ რა ყალბი, პოტენციურად, აქ. ახლა თუ მე წასვლას localhost, საჯარო, MVC, შეამჩნია ცოტა ფაილი. მე ვაპირებ მოვუწოდო ამ, ამისთვის მომენტი, ყველა კონტროლერები. მაგრამ ეს ცოტა ბოროტად რადგან დაინახავთ, ყველაფერი commingled შიგნით მათ. და ნება მომეცით წავიდეთ შიგნით index.php. და ვხედავთ, ფაქტიურად, იგივე HTML. ასე რომ, მიუხედავად იმისა, რომ ეს ფაილი სრულდება . Php, ეს არ ნიშნავს, რომ ეს უნდა რაიმე PHP კოდი. ეს შეიძლება იყოს დაუმუშავებელი HTML, თუმცა რომ არის სახის სულელური. მაგრამ შეამჩნია არ არსებობს ღია bracket PHP tag, გარდა ამისა, რაც, გულწრფელად ვამბობ, მხოლოდ იქ გახდეს კომენტარი. მაგრამ ეს ფუნქციურად არ კი, რომ საინტერესოა. მაგრამ შეამჩნია ეს. რა არის საინტერესო ახლა არის ის, რაც ცვლილებები ამ გვერდზე. ნება მომეცით დააწკაპუნეთ ლექციები. და შეამჩნია URL დაახლოებით შეცვლის. ახლა მე ერთი lectures.php. ნება მომეცით დააწკაპუნეთ ნულოვანი. ახლა მე ერთი week0.php ეხლა კი ჩემთვის გახსნა ამ ფაილი gedit. და არა მარტო ინდექსი, მაგრამ მე ქმნის ლექციებს. და ნება მომეცით დაეღწია კომენტარი ფოკუსირება ამ ნაწილში მხოლოდ. ახლა კი ნება მომეცით გახსნა კიდევ ერთი, week0.php, გადაყარეთ კომენტარები, უბრალოდ გაწმენდა ეს ყველაფერი. ახლა კი შეამჩნია შემდეგ. ფიქრი ნამდვილად სახის ყურადღებით ამის შესახებ დიზაინი, და გადავდგათ ეს ხაზი ემთხვევა, თუ რა უნდა გაკეთდეს უკეთესი აქ, როგორ ფიქრობთ? როგორ მოხდა მე კვირაში ერთი? როგორ შესახებ. ასე რომ, ეს, რა გააკეთა კვირაში ერთი. I ავიდა ფაილი, New, Paste, შენახვა, week1.php, და მერე წავედით აქ. და მე შეიცვალა ერთ - რა იყო ამ, ერთი პარასკევს. მე შეიცვალა zeros ერთი. მე შეიცვალა ამ ერთი. OK, ასე რომ, ახლა შეხედეთ ჩემს ფაილი. რა შეიძლება გაკეთდეს სხვაგვარად? სად არის შესაძლებლობა, ალბათ? ასე რომ შანსი უნდა დაიწყოს ფაქტორინგი ამ პერსონალის out. ნება მომეცით ქმნის, რადგან სპოილერი, for რა დაინახავთ ამ P კომპლექტი 7. თუ მე გახსნა, ახლა, index.php in მობილური ხუთ ამისა, ეს გამოიყურება გზა მეტი cryptic, მართლაც. მაგრამ ეს, ახლა, არის ის, რაც მე მოვუწოდებ კონტროლერი რომ მაკონტროლებელი ლოგიკა ჩემს გვერდზე. და თქვენ შეგიძლიათ სახის აღდგენა, ინტუიციურად, ალბათ, თუ რა ხდება. პირველ ზოლში, ეს ცოტა cryptic. მაგრამ შეამჩნია მე მოითხოვს, ისევე, როგორც მკვეთრი მოიცავს, ფაილი სახელად helpers.php. და მაშინ მე მოუწოდებენ, როგორც ჩანს, ფუნქცია, სახელწოდებით გაწევა, გავლის შემდეგ ორი არგუმენტები. ერთი გაცემა unquote, მა. ხოლო მეორე, რა სახის მონაცემთა ტიპის არის ეს, დაფუძნებული ჩვენს syntax ადრე? ეს ასოცირებული მასივი. კერძოდ, ის გადადის სათაური რამდენიმე მეტადატის რომ ახსენებს ჩემთვის რა არის და მისი ღირებულება. მაშინ მე ვხედავ მძიმე კოდირებული ul, ასე რომ ზოგიერთი ნედლეული HTML. მაგრამ მე ჯერ კიდევ PHP რეჟიმი მოუწოდებენ ფუნქცია გაწევა. ასე რომ, თუ თქვენ არ გამოიყენება HTML ან PHP ადრე, და მიუხედავად იმისა, რომ გამოიყურება scarier, რატომ არის ეს ალბათ უკეთესი დიზაინი? რა არის უკეთესი ამის შესახებ, საფუძველზე დასკვნა? აუდიტორია: [inaudible] დინამიკები 1: ნაკლები ზედმეტი რომ არ არსებობს უფრო HTML tag, აღარ ხელმძღვანელები tag, არა სხეულის tag ყველა რა ფაილი. სამაგიეროდ, მე factored გარეთ commonalities და სავარაუდოდ ისინი შევიდა ფაილი როგორღაც დაკავშირებული to მა. და იგივე რამ მჭიდრო ორგანოს tag, ახლო HTML აქვს. ეს არის ის, ალბათ ქვემოთ აქ შიგნით საქართველოს ძირი სადღაც. და დაინახავთ, რომ პრობლემა კომპლექტი 7, პატარა ტური მეშვეობით. ასე რომ, რა დევს წინ გვაქვს? ერთი რამ ჩვენ არ გვაქვს უნარი თუმცა, არის ის, რომ რეალურად შესანახად მონაცემები. ასე რომ, ის, რაც ჩვენ დავიწყებთ სანახავად ოთხშაბათს, მაგალითად, ის არის, რომ თქვენი ძველი მეგობარი Excel, ან ნომრები, გაძლევთ საშუალებას შეინახოთ უამრავი მონაცემთა რიგები და სვეტები. თურმე შეგიძლიათ გააკეთოთ, რომ რა მოუწოდა მონაცემთა ბაზა, პროგრამულად. მანიაკალურ და თურმე ამის შემდეგ, შევძლებთ შესანახად რამ, როგორიცაა ამ, რომელიც თქვენ ნახავთ კვლავ P ნაკრები 7, მთელი bunch of სახელისა და პაროლები, ამ უკანასკნელის რომელთაგან რეალურად დაშიფრული, ჰგავს ისინი იყო P კომპლექტი 2 ჰაკერების გამოცემა. და საბოლოოდ, თქვენ განხორციელების, საკუთარი eTrade მსგავსი ნახვა, რომელიც ახორციელებს ერთობლივად CS50 ფინანსთა. და ბოლოს, რადგან აქ ასე გვიან დღეს, თუ დაბრუნდება ეს ნაწილი საქართველოს campus, დილის 4:00 საათზე, ჩვენ გაძლევთ არა მარტო რჩევებს, ერთი SCES საკონსულტაციო სამართლიანი ზე 4:00 საათზე Maxwell-Dworkin, ჩვენ მოგაწვდით რამდენიმე Americone სიზმარი, Cherry გარსია, შოკოლადი Fudge Brownie, შოკოლადი Chip Cookie ცომის და, როდესაც თქვენ Google Chunky Monkey, თქვენ ამ. ასე რომ, ყველა, რომ ელის at 4:00 პრემიერ Maxwell-Dworkin. მომავალ ოთხშაბათს, ასევე. დინამიკები 2: მომდევნო CS50, RJ სძინავს სისტემაში RJ: ჩემი მონაკვეთზე, ჰა, Oh,