[Powered by Google Translate] [PHP ვებ უზრუნველყოფა]
[Tommy MacWilliam]
[ეს არის CS50.] [CS50.TV]
>> ამ ვიდეო, ჩვენ გაეცნონ გამოყენებით PHP ვებ განვითარებას.
PHP არის სკრიფტინგის ენა, რომელიც შეიძლება გამოყენებულ განხორციელება
ვებ სერვერზე.
სერვერზე არსებითად მანქანა ეძღვნება უზრუნველყოფს შინაარსი
რომ შესაძლებელია ინტერნეტით.
როდესაც თქვენ ნავიგაცია ვებ გვერდზე როგორიცაა Facebook.com / home.php
კოდი ამ ფაილის მოუწოდა home.php რომელიც ცხოვრობს Facebook სერვერზე სადღაც
შესრულდება რომ სერვერზე.
ეს კოდი სავარაუდოდ გენერირება რამდენიმე output
რაც თავის მხრივ უნდა გაიგზავნოს სერვერზე
თქვენს ბრაუზერში.
ჩვენ უნდა გამოყენებით CS50 ელექტრო მოწყობილობების, როგორც სერვერზე.
თქვენი მანქანა ალბათ არ იქნება თითქმის როგორც ძლიერი, როგორც მანქანები
წელს Facebook მონაცემების ცენტრი, მაგრამ თქვენ არ გაქვთ პრობლემა გამოყენებით, ვებ განვითარება.
>> როდესაც ჩვენ ნავიგაცია URL როგორიცაა http://localhost/hello.php
ჩვენ კონფიგურაციის მოწყობილობების მეშვეობით განაცხადის მოუწოდა Apache HTTP სერვერის
ვეძებოთ ფაილი სახელად hello.php შიგნით მთავარი / jharvard / vhosts / localhosts / html იყოს.
თუ ეს ფაილი არსებობს, მაშინ Apache გამოიყენებს PHP ინტერპრეტატორი
შეასრულოს PHP კოდის hello.php.
თუ ეს ფაილი არ არსებობს, მაშინ Apache გადაყარეთ არ არის ნაპოვნი შეცდომა
ან 404 error, რომელიც თქვენ ალბათ გინახავთ ხოლო ათვალიერებს ვებ.
>> მოდით შევხედოთ hello.php.
ჩვენ ვხედავთ, რომ hello.php გენერირებას სიგნალი ხაზი გამომუშავება.
როდესაც ჩვენ გაიქცა hello.php ბრძანებათა ზოლს მეშვეობით php hello.php
რომ გამომავალი დაიბეჭდა ტერმინალში.
ახლა, როდესაც ჩვენ ამ ფაილის მეშვეობით URL ბრაუზერში
მისი გამომუშავება გაიგზავნება ბრაუზერში,
ასე რომ სასაქონლო URL, http://localhost/hello.php,
ჩვენ ვხედავთ გამომავალი ჩვენს ბრაუზერში.
>> მოდით ცდილობენ კიდევ ერთი printf ჩვენს Hello World პროგრამა.
Okay, მოდით უხელმძღვანელებს უკან ბრაუზერში და ვნახოთ, რა გვაქვს.
საინტერესო.
ვიდრე ბეჭდვის მეორე ხაზი საკუთარი ხაზი, როგორც თქვენ არ ჩანს
ტერმინალში, როგორც ჩანს მას smushed გადატანა იგივე ხაზი
როგორც სხვა printf, იქნებ ახალ ხაზებს არ მუშაობს PHP.
არა საკმაოდ.
გახსოვდეთ, რომ HTML, როგორც წესი, გამოიყენება შექმნა ვებ გვერდები
, რომელიც შეიძლება ნაჩვენები ბრაუზერების.
არა მხოლოდ არის string მიესალმები ეხლა php არ მოქმედებს HTML,
მაგრამ გავიხსენოთ, რომ ჩვენ არ შეგვიძლია გამოვიყენოთ \ n ხასიათი HTML
შექმნათ ხაზი შესვენება.
იმის ნაცვლად, რომ უბრალოდ outputting სიმებიანი მოდით გამომავალი ძალაშია HTML.
გამოყენებით პუნქტის tags თითოეული ჩვენი printf ზარები
იქნება ნაჩვენები საკუთარი ხაზი,
ასე რომ, ახლა, როდესაც ჩვენ ეწვევა URL მიუთითებს valid.php
http://localhost/valid.php
ჩვენ ვხედავთ გამომავალი, რომ ჩვენ ვეძებთ.
>> ახლა, თუ ჩვენ ნახოთ ამ გვერდის საწყისი
ჩვენ ვხედავთ, რომ ჩვენ ახლა ეძებს ძალაშია HTML,
რომელიც ჩვენ შექმნილი PHP.
აყენებს ყველა ჩვენი HTML შიგნით printf ზარები
რა თქმა უნდა, აპირებს მიიღოს მართლაც შემაშფოთებელი.
საბედნიეროდ ჩვენ შეგვიძლია ადვილად აურიეთ HTML და PHP
იმავე. php ფაილი.
გახსოვდეთ, ყველა ჩვენი PHP კოდი უნდა დაერთოს შიგნით <? Php
და?>.
არაფერი რომ არ ერთვის ფარგლებში ამ delimiters
უბრალოდ უნდა გაიგზავნოს როგორც გამომავალი ბრაუზერის
ვიდრე ხორციელდება.
ეს ნიშნავს, რომ ჩვენ შეგვიძლია გავაკეთოთ რაღაც მოსწონს ეს.
ჩვენ შეგვიძლია უბრალოდ წერენ HTML შიგნით ჩვენი. Php ფაილი
და შემდეგ ჩადეთ PHP ბლოკად, სადაც ჩვენ გვინდა რაღაც php კოდი შესრულდება.
აქ ჩვენ განვსაზღვროთ რამდენიმე ცვლადები ზედა ფაილი,
და შემდეგ ჩვენ ამობეჭდოთ ისინი განდევნეს შიგნით ჩვენი HTML.
ახლა თუ ჩვენ ეს URL, http://localhost/mixed.php
ჩვენ ვხედავთ ჩვენი შეაფასა PHP შიგნით ჩვენი HTML.
>> ახლა მოდით შევხედოთ, თუ როგორ შეგვიძლია გაივლის მონაცემები
მათ შორის, ჩვენი სხვადასხვა PHP გვერდებზე.
ვიდრე ამბობდა <? Php ბეჭდვითი ($ a);?>
ჩვენ შეგვიძლია უბრალოდ ვთქვათ, <? = ცვლადი ჩვენ გვინდა ბეჭდვა, ან,
და?>.
მოდით ახლა შევხედოთ როგორ შეგვიძლია გაივლის მონაცემები
მათ შორის, ჩვენი სხვადასხვა PHP გვერდებზე.
ერთი გზა, ჩვენ შეგვიძლია გავაკეთოთ, რომ არის encode ინფორმაციის URL of გვერდზე.
როდესაც ათვალიერებს ინტერნეტში, თქვენ შეიძლება არ შეამჩნია, რომ ზოგიერთი მისამართები
შეიცავდეს? მოჰყვა string შემცველი ampersands და თანაბარი ნიშნები.
ამ ნაწილში URL ცნობილია, როგორც მოთხოვნის სტრიქონი,
და ეს საშუალებას გაძლევთ ეფექტურად გაიაროს არგუმენტები თქვენი PHP სკრიპტი.
შეკითხვის სიმებიანი შედგება გასაღები ღირებულება წყვილი, ისევე, როგორც hash მაგიდასთან.
თანაბარი ნიშანი ჰყოფს გასაღები და მისი შესაბამისი ღირებულება
ხოლო ampersands ცალკე წყვილი.
URL რომ ჰგავს http://localhost/get.php?foo=bar&baz=qux
აქვს 2 გასაღები ღირებულება წყვილი შეკითხვის სიმებიანი.
გასაღები foo რუკები ღირებულება ბარი,
და გასაღები baz რუკები ღირებულება qux.
ჩვენ შეგვიძლია ადვილად შედიხართ ამ საკვანძო მნიშვნელობის წყვილის გამოყენებით სპეციალური ცვლადი PHP,
$ _GET.
$ _GET არის ასოციაციურ მასივში
რომელიც ავტომატურად დასახლებულ შეკითხვაზე string მონაცემები.
ეს ნიშნავს, რომ, ამ URL $ _GET ["foo"]
ტოლი იქნება სიმებიანი ბარი.
>> მოდით შევხედოთ get.php ვხედავ $ _GET მოქმედებაში.
აქ ჩვენ გამოყენებით ფუნქცია მოუწოდა var_dump,
რომელიც, როდესაც მოცემული მასივი ან სხვა ცვლადი
იქნება ამობეჭდოთ ჩვენთვის.
ახლა თუ ჩვენ უბრალოდ შედიხართ http://localhost/get.php
მაშინ ჩვენ დავინახავთ ცარიელი მასივი რადგან ჩვენ არ უზრუნველყო შეკითხვაზე string.
თუ ჩვენ გავაკეთებთ უზრუნველყოფს შეკითხვაზე string მეშვეობით http://localhost/get.php?foo=bar&baz=qux
მაშინ ჩვენ ვხედავთ, რომ $ _GET ცვლადი შეიცავს
შეკითხვის სიმებიანი გასაღები ღირებულება წყვილი.
მაგრამ რა, თუ ჩვენ არ გვინდა, რომ ჩვენი მონაცემები შიგნით URL of გვერდი?
დიდი რაოდენობით მონაცემები, ეს შეიძლება გამოიწვიოს ზოგიერთი საკმაოდ მახინჯი მისამართები
რომ ვაპირებთ ჩვენი გამოუყენებელი ნახვა სახე ნელი.
ჩვენ შეგვიძლია ნაცვლად დააყენა შეკითხვაზე string შევიდა ორგანოს
საქართველოს HTTP მოითხოვს, ვიდრე მოთხოვნის URL.
მაშინ ჩვენ შეგვიძლია გამოვიყენოთ PHP ს $ _POST ცვლადი
წვდომის გასაღები ღირებულება წყვილი.
ერთი გზა ამის მეშვეობით HTML ფორმით.
აქ ჩვენ გვაქვს მარტივი HTML ფორმით.
ყურადღება მიაქციეთ, რომ აქ მეთოდი ატრიბუტი ამ ფორმით პოსტი.
ეს ეუბნება ბრაუზერის დააყენა ფორმის გასაღები ღირებულება წყვილი
შევიდა ორგანოს მოთხოვნით, ვიდრე URL.
>> თუ ჩვენ უნდა გამოვიყენოთ ღირებულება მიიღოთ ამ ატრიბუტის
მაშინ ფორმის გასაღები ღირებულება წყვილი იქნებოდა ნაცვლად წასვლას შეკითხვაზე string,
ასე რომ, ჩვენ ვერ შედიხართ მათი მეშვეობით $ _GET ერთხელ.
აქცია ატრიბუტი სახით ეუბნება ბრაუზერის სად გაგზავნის მონაცემები.
აქ ჩვენი 2 input ელემენტები აქვს სახელი ატრიბუტები.
ღირებულება სახელით ატრიბუტები იქნება, როგორც გასაღებები და ჩვენი მონაცემებით,
და ღირებულებები ტექსტის საშუალებებით გახდება ღირებულებები იმ გასაღებები.
ახლა მოდით შევხედოთ post.php,
ფაილი, რომელიც ამ ფორმით წარუდგინოს.
ისევე, როგორც ჩვენ გავაკეთეთ ადრე, ჩვენ უბრალოდ ჩვენებისას შინაარსი $ _POST ცვლადი.
>> მოდით ნავიგაცია ფორმა http://localhost/form.php.
ახლა, როდესაც ჩვენ წარმოადგინონ ფორმა ვხედავთ, რომ მონაცემების form.php
გადაეცემა post.php გარეშე appending შეკითხვაზე string to URL.
ახლა ჩვენ ვხედავთ 2 სხვადასხვა გზები გავლით მონაცემები PHP გვერდებზე,
მიიღოთ და პოსტი.
ჩვენს მაგალითები, ჩვენ 2 სხვადასხვა სახის HTTP მოთხოვნებს.
როგორც თქვენ შეიძლება ველოდოთ, მიიღოს თხოვნა გამოიყენება, როდესაც ჩვენ დასახლებული
$ _GET საწყისი URL და პოსტ მოთხოვნა იყო გამოყენებული
როდესაც ჩვენ დასახლებულ $ _POST.
დიზაინი თქვენი ვებ apps ეს კარგი წესი thumb გამოყენება მისაღებად ითხოვს
როდესაც თქვენი app იქნება მხოლოდ წაკითხვის მონაცემები და ჩანაწერები ითხოვს
როდესაც თქვენი app დაწერს მონაცემები.
მაგალითად, ძებნის შეკითხვის წაიკითხავს მონაცემებს თქვენი app,
ასე მისაღებად მოთხოვნა აზრი.
მეორეს მხრივ, თქვენი app დაწერს მონაცემების მეშვეობით რაღაც სარეგისტრაციო ფორმა,
ასე რომ პოსტ მოთხოვნა გახდის უფრო გრძნობა, და ეს მიმოხილვა ზოგიერთი ტექნიკის
ჩვენ უნდა გამოყენებით CS50 შექმნას საიტებზე გამოყენებით PHP.
>> ჩემი სახელი არის ტომი, და ეს არის CS50.
[CS50.TV]