>> 揚聲器1：所有，歡迎回來。
這是CS50。
這是9週的開始。
這是開始的其餘部分 你的時間，我們在CS50
現在，終於到Web轉型 方面的課程，在那裡你會
發現很多的基本面， 我們已經出口數週
還回來參觀， 或困擾我們。
但現在，你會發現，它是一個 為了要容易得多，
完成某些任務和 解決某些問題 -
以至於即使你認為 在他們的樂趣若干問題集
自己的路，我認為你會發現 P設定7，第8，然後，
最終，最終的項目將 更可喜的，因為你會
發現我們開始想當然 現在喜歡的東西的內存管理，
指針，這是怎麼回事 引擎蓋下。
再次，專題，所有整個 學期一直是這種分層
和層次感。
而現在我們排序 在這裡，站在
過去幾週的肩膀。
>> 現在，回想最後一次 談到如何在互聯網上工作。
這也許是一個 過於簡單，但要記住，
在世界上的每一台電腦都有一個IP 解決，雖然這是一個有點
仍然過於簡單化。
這些地址被用來唯一 識別機，這樣
當您發送信息，或包， 可以這麼說，他們可以有一個原點
地址和目的地址。
而那些可以使用相同的IP地址 既為好，也為邪惡，
跟踪你的，例如。
事實上，每一個你用筆記本電腦 現在打開，或在你的手機
口袋裡，都有一個IP地址 哈佛的網絡。
它不是那麼困難 關聯，誰和你
這些天。
但更多的，也許 在未來。
>> 現在，我想我會帶回一些 [回憶？提升？]給你
你一個展示的另一個剪輯 可能會發現熟悉。
如果我們可以把燈光調暗 短短的幾秒鐘。
顯示數字追兇。
>> 揚聲器2：這是一個的32位IPP4地址。
>> 揚聲器3：IPP，在互聯網？
>> 揚聲器2：專用網絡。
阿彌陀佛的私人網絡。
她是如此驚人。
>> 揚聲器3：來吧，查理。
>> 揚聲器2：這是。
鏡子的IP地址。
她讓我們看什麼 她在做實時的。
>> 揚聲器1：OK，這樣的幾件事情 不對的圖片。
所以，這個人是可以接受的， 這實際上是
不是一個有效的IP地址。
一個有效的IP地址必須是數字 形式w.x.y.z的，其中每個
這些信件是0到255。
但是，這很好，因為就像 電影裡他們假的電話號碼，
他們偽造的IP地址。
其實你不打真正的服務器。
>> 但是，你要知道，這是一個瀏覽器。
瀏覽器不啟動輸出 像這樣的計算機代碼。
如果我們看得更深，注意 ，他們所看到的語言
屏幕上是一種語言叫 目的C，這是語言
iPhone應用程序被寫入， 特別是那些涉及
蠟筆，你可以看到從 這裡的源代碼。
>> OK，我認為這非常可笑。
因此，這個代碼片段絕對 不管這無關
特別是情節。
所以這個笑話是一種對鄉親 服用此授予。
但是這還不是全部，很難得到 這些技術細節的權利。
我會鼓勵你。
而實際上，50很可能糟蹋 很多的電視節目和電影，或者你
因為你會發現，它只是 不可能的，他們是怎麼
在屏幕上做。
但事實上，這是代碼 可能會看到它在iPhone應用程序
或Mac OS的應用程序。
它什麼都沒有 與安全。
因此，保持眼睛出更多的 如此有趣之類的東西。
>> 但是今天，我們開始潛水真的 深入到語言一整套。
事實上，總體 這個部分的外賣
當然不是學習如何編程 在PHP中，沒有學習SQL本身，而不是
學習JavaScript本身，而是 教自己如何教
自己新的語言，因為，事實上， 我們現在開始採取
訓練車輪關閉，因此後 當然年底，你不要指望一個20
頁的規範來告訴你如何 實現一些程序。
你有足夠的成分在你的 頭腦，你的工具和足夠的工具
套件，開始建設 感興趣的問題的解決方案
一些學生組，對於一些 研究項目，或者什麼
你的興趣。
>> 為此，記得，這是 圖片中我們把它最後一次。
這是兩台電腦，客戶端和 斷絕，彼此交談。
的協議，語言，所以 說話，那這兩台計算機發生
發言被稱為HTTP。
而這僅僅是所使用的協議 計算機傳輸信息
萬維網。
網頁，當然，這只是一個服務 頂部的運行
所謂的互聯網。
什麼提供其他服務 頂在互聯網上這些天？
其他一些協議或 - 那是什麼？
>> 觀眾：FTP。
>> 揚聲器1：FTP。
因此，文件傳輸協議是另一回事。
大多數人可能都沒有使用過它。
但你們中的大多數可能已經使用 之類的東西Gchat，或即時
消息更一般地， 當然電子郵件。
而這些，也都是上運行的服務 在互聯網的頂部，因為在
一天結束的時候，互聯網本身 真的只是得到數據從A點到
B點，它使用了大量的 顆粒本身，其中一個或兩個
的他們最一般稱為TCP / IP， 這就是說，一台計算機上
互聯網實際上可以做 不同的東西，電子郵件，
和網頁，等等。
谷歌做了很多這方面。
那麼，如何是那些獨特的服務 確定，我們說，在電腦上
實際上可能會做 多重的東西？
>> 端口號。
而這些都只是人類任意 約定如80網絡，443是
加密網絡，25是電子郵件。
有一個串他人。
這些數字只是包含在 這些數據包的信息，這些
虛擬信封，實際上 包含了一個請求或響應。
>> 所以，當你回來的響應 網頁，通常情況下，你不會看到任何
無論在任何數字 響應的狀態碼。
其實你不看 內部運作的
回來的數據包。
但200確實意味著確定。
這意味著一切都很好。
你可能已經看到了一堆這些。
這可能是最常見的 你見過在網絡上？
>> 404。
它只是意味著找不到文件。
這意味著有人搞砸了。
你輸錯網址，或者是有人 給你一個別人做的
無效的URL，或者刪除了 文件和URL仍然是
被人們所使用。
因此，任何數量的原因可以解釋 為什麼文件沒有找到。
你會看到，在未來幾週內， 這些錯誤代碼，你會
趁他們中的一些。
最糟糕的是500。
如果你得到一個500錯誤代碼，您已經 寫的，認為那是那種
模擬賽格中的故障 Web編程的世界。
不，這是相當可怕的。
但它只是意味著，在某處， 你搞砸了。
所以那些期待。
>> 但是，讓我們來看看，如果我們能 看到這些上下文中。
讓我去這裡的瀏覽器 並做到以下幾點。
因此，這是Chrome瀏覽器，這恰好 安裝在產品中。
但幾乎​​每一個瀏覽器，這些天有 一些相同的功能。
我要去Chrome的菜單， 去工具，而且我要去
開發工具。
你會看到，這個小面板 打開窗口的底部。
另一種快捷方式，說實話，我 自己平時使用右鍵單擊
或控制點擊在網絡上的任何地方 頁面，只是去檢查元素。
而且，不僅將打開 這有你。
它也將打開，具體而言， 元素部分
左手側。
>> 所以，我們當然看到谷歌。
今天他們改變他們的標誌。
但是，如果我在這裡向下滾動，請注意 根據元素，你看
什麼叫做HTML超文本標記 語言，這是語言
，這和所有的網頁， 真的，編寫的。
但實際上它是格式化 我們這麼多可讀性
比正常的。
事實上，如果我縮小，我反而 只需右鍵單擊或控制點擊
在頁面上點擊，然後去查看 頁面源代碼，這是字面意思是什麼
谷歌向下發送到我的瀏覽器。
>> 於是某人或某些人寫的 Google.com使用這個源代碼。
其中大部分是沒有的HTML。
它實際上是一個語言，稱為 JavaScript中，這
我們還會回來上週三。
但是，Chrome和每一個瀏覽器 可以為我們做什麼，是那種見
過去所有的分心 瘋狂的語法，然後重新插入空白
對我們來說，甚至語法高亮， 或上色為我們的事情。
所以你會發現，這些所謂的 內置了瀏覽器的開發者工具
這樣會讓你的生活，所以更容易 因為你可以探索，通過此菜單
接口，正是底層 源代碼是為
在互聯網上的任何頁面。
事實上，這是一個最 有效的方法來學習如何做
新的東西，至少如果頁面 也不是那麼複雜壓倒，
開始戳它周圍的HTML，看 在其所謂的CSS，我們還會回來
一個位為好，得到 的那個程序員如何理解
某些特定的實施 功能的頁面。
>> 但技術上更有趣的權利 現在還會是這樣。
如果我去“網絡”選項卡， 現在，讓我們清除此。
我要點擊小 在這裡交叉符號，然後
轉到另一個網站。
我只是要輸入 在Facebook.com。
沒有HTTPS，HTTP，沒有任何WWW。
讓我們真正看到這裡發生了什麼。
>> 回車鍵。
現在可以看到一大堆東西 出現在這個底部面板，
除了網頁 出現在頂部。
我要滾動備份到 網絡“選項卡在這裡，我要
點擊第一行。
此工具會向我們揭示了什麼 是每一個HTTP請求
只是迅速回去 我的瀏覽器之間來回
Facebook的服務器。
所以每一個這些行 代表這樣的一個請求或
響應，一個或多個 那些虛擬的信封。
或者更隨意，這就像一個人 就像一個人，一個客戶在一個
餐廳，要求的東西 一遍，一遍，又一遍。
服務員不斷帶來 回一次。
>> 所以，現在，如果我在變焦時，請注意 這將是諸如此類的事情，
歡迎你，並鼓勵 發揮你自己，因為我們
不會去通過一切 很詳細。
但是請注意，有一個 這裡的幾個子選項卡 -
接頭，預覽，響應， 餅乾，和時機。
我只是要看看報頭 現在，因為這些小
成分在裡面的信封 幫助數據和從地方。
>> 因此，首先讓我點擊，查看 來源請求頭旁邊。
有要求我的瀏覽器， 在這種情況下，瀏覽器，發送內側
該虛擬信封。
你還記得上週我 手動鍵入它，而
假裝是一個瀏覽器。
然後，它提醒服務器，它是 尋找稱為主機
Facebook.com。
再有是一個有點神秘的 信息，我們將揮手
現在我們手中。
>> 但是，如果我現在開始向下滾動 這個窗口中，讓我得到的
響應頭。
這是在虛擬 信封回來
Facebook.com。
如果我只是單擊“查看源文件” 看它的原始文本，
注意到一些事情。
一，Facebook還講同 協議，其1.1版本。
所以這是很好的。
但是，狀態代碼301， 永久地移動。
>> 嗯，赫克Facebook的去了？
這是什麼試圖傳達給我們的嗎？
那麼，請注意這裡還有另一個 頭叫位置。
那麼，為什麼是Facebook告訴我說，他們 被永久移動到該網址
旁邊的位置嗎？
我忘了www。
>> 所以這是我的選擇。
事實上，我們大多數人很少，大概， 鍵入www.whatever.com這些天。
但事實證明，一個系統管理員， 像Facebook，
以這樣一種方式配置自己的服務器 無論是Facebook.com的作品，或
www.Facebook.com的作品，或者，真的， 在他們面前任何這樣的前綴
域名。
所以，他們做了我們。
他們重定向，大概 對於一些技術，
一些市場營銷的原因。
他們只是想規範化 上www.Facebook.com。
>> 但是，這不是相當。
如果我在這裡向下滾動，讓 看個究竟。
這是告訴我，我們 永久移至
http://www.Facebook.com。
因此，讓我們來看看第二個請求 我的瀏覽器發送。
不幸的是，它看起來像Facebook 再次提出，因為第二個
請求的網址，而不是通過選擇， 說，也感動
久治不愈。
並讓我在這裡向下滾動 響應頭。
Facebook的現在已經不存在了嗎？
>> 所以HTTPS。
所以，現在Facebook已經開始， 特別是在光電流
在最近幾個月的事件，尤其是 在過去幾年也
迫使他們的所有用戶，在一個良好的 的方式，以使用HTTPS，這是更
安全，雖然並非完全安全。
所以現在我的網頁，我的瀏覽器 將要求這第三個URL。
而現在，終於，我們得到 否則看不見200確定。
>> 那麼，什麼在世界上所有 這些行這裡。
我簡直輸入一件事，我 瀏覽器似乎已經要求像
20一些奇怪的事情。
那是什麼？
>> 觀眾：腳本？
>> 揚聲器1：腳本，所以其他文件 書面語言叫
JavaScript中，這一次，我們將 在週三去看了一下。
還有什麼呢？
樣式表。
所以東西的語言叫 CSS，我們會看到在一個位。
GIF動畫和JPEG，GIF和PNG格式，圖片， 和電影文件 - 無論一個網頁
已經是最有可能在 一個文件的形式。
還等什麼，我們看到在左邊 右手邊有所有文件
鉻下載， 遞歸的，如果你願意，為了
構成的頁面的全部。
>> 所以，我們剛才也看到了與谷歌， 如果我點擊的元素
標籤，這肯定的是，HTML， 組成該頁面的語言。
但是，還有其他的事情串。
還有一個標誌。
有那些藍十歲上下的 那邊的圖標。
還有其他元素仍然 頁面本身可能會對
單獨的文件。
>> 那麼，什麼是瀏覽器很好 它著眼於我們要去的語言
開始寫，或者你已經 在P組7，數字開始寫作
這些文件在哪裡住了， 去抓住他們。
我不能強調不夠，甚至 雖然這可能看起來有點
神秘的或壓倒乍一看， 學習如何編程
為Web應用程序，它的 無價的，以了解這些
小工具的工作。
這些都是有點像GDB工具一樣， 但簡單得多，最終使用 -
真的讓你的眼睛變成了什麼 我們一直理所當然
相當一段時間了。
>> 所以我們現在做什麼用 這一信息？
好吧，讓我們實際來看看 基本概念的HTML。
我們會推遲，因為我們已經有了， 部分本週的問題
設置7說明書中，一些比較 這些語言的詳情。
但是，讓我們看到，如果我們不能畫一個 你應該明白什麼圖片
整體這裡。
>> 所以HTML超文本標記語言， 是不是一種編程語言。
那是什麼意思呢？
因此，HTML看起來是這樣的。
一些你已經知道這一點。
你們中的一些人一直在做 這一段時間。
但是，讓我們看看我們是否可以不填 在一些空白。
所以在這裡發現一對夫婦的事情。
一，它只是文字。
因此，它的源代碼就像 C，或其他語言。
>> 請注意，似乎有 這裡有一種模式。
有壓痕，但在技術上 壓痕是人性
約定。
Â瀏覽器不關心，如果有新的 行和製表符像我們看到有。
但注意到，有 這裡的對稱性。
有什麼我會打電話的頂部， 此文件中，打開的標籤，或者開始
標籤，稱為HTML。
然後，向下跌破，完美內襯 ，就像我們做的大括號，
我們看到開放式支架，前進 斜線，HTML，靠近支架。
所以這是對應關閉 標籤或結束標籤，那件事。
>> 總之，一切都裡面的 所謂的開放標記和結束標記
譜寫我們會打電話給一個元素。
我們將看到，在短短的時刻，它的 真的很喜歡在樹上的一個節點。
因為，如果你認為現在 縮進，這裡的暗示，
樣的，喜歡，祖父母 節點稱為HTML。
多少個孩子，你可能會說，根據 這張照片上的HTML元素？
>> 所以，可能有兩個。
一個是頭元素，顯然。
一個是人體元素。
為什麼兩個孩子呢？
好吧，我只是一種推斷，如果 我有一個開放的頭標記，然後
頭部標記，這是一個元素。
然後，如果有一個開放式的身體 標籤和近身標籤，就像
另一個元素。
因此，在這個意義上說，如果我種旋轉 在其一側的圖片，這是
就像有一個HTML標記，然後一個 頭標記，然後身體標記，
然後一些文本，你好世界，晃來晃去 關閉body標籤本身。
>> 因此，我們可以得出一個圖片 可能會這個樣子。
的形狀是任意的。
但是請注意，我用的排序 橢圓形的頂部來表示
文件本身。
原來，有可能是其他的東西 我不是一個網頁，裡面的
這裡引出。
所以我們要去甚至掛HTML 所謂的文件節點的節點關閉。
然後我們有頭部和 身體和標題，通知，
進一步嵌套。
我沒有刻意把額外的行 標題標籤裡面休息。
它只是感覺就像是獲得 顯得有點冗長。
所以，我離開了它在一行， 開題，你好，靠近世界冠軍。
然後我們有一些文字 這裡晃來晃去。
>> 因此，這幅畫會回來 當我們潛入成JavaScript。
和理解，當你 寫HTML這個樣子，
瀏覽器是在做什麼？
好吧，我們不必擔心 它是如何這樣做，或什麼
算法，但在一天結束時， 當瀏覽器收到類似HTML
認為，從Facebook或谷歌，它分析 它，可以這麼說，它會讀取它，
像用fread的東西，頂 底部，左到右，因為它
意識到，哦，開放標籤，然後關閉 標籤，開始對malloc，可以這麼說，
的樹中的節點。
當它遇到，因為我們已經暗示 這裡與壓痕，
子節點，它mallocs一個節點 並附著到樹。
>> 因此，樹的結構，二叉樹 三元樹，和更大的樹，
我們在一兩個星期前，掃了一眼通知 ，同樣的原則是
回來給我們。
凡實施，鉻無論 團隊這樣做，大概有
實現某種類型的樹結構 引擎蓋下。
而這本身就是很可能在 語言如C或C + +或較低
層次的語言，我們會 現在使用的網頁之上。
>> 所以，現在，也許，這將 更有意義。
一些傢伙，誰可能實際紋身 最終後悔了，有種。
OK，所有的權利，所以很多的網絡幽默。
這不是真的 在今天這麼好。
因此，我們將繼續前進。
好的。
>> 因此，讓我們來看看現在 幾個例子。
最簡單的可能 事情可能是這樣的。
我要去進取，不斷開拓中 gedit的一個文件名為hello.php的。
在這裡，我要迅速 只是這樣做的printf，報價
引文結束的“hello world”。
>> 因此，通知，我會盡我的反斜線Ñ， 我沒有打擾申報主體。
事實證明，在PHP中，和很多 語言，你不需要一個主
功能本身。
您可以開始寫 你的程序。
現在，當我保存這個文件，通知我 要做到以下幾點。
我不會使用，我不 要使用鐺因為PHP，不像
C，是不是編譯語言。
這就是被稱為一種解釋 語言，這意味著你運行它
通過另一個程序作為輸入 所謂的解釋。
並且該程序讀取，頂 底部，從左向右，做
無論你告訴它做的。
>> 因此，在這種情況下，在這裡我有 行的printf說。
所以，當我運行這個源代碼， hello.php的，雖然一個程序，
情況下，方便，被稱為PHP， 該程序PHP要讀
這個文件，從上到下，從左到右， 它會做什麼，我
告訴它做 - 執行代碼，如果 它不承認的東西，只是
隨地吐痰出來。
所以，我要繼續前進， 運行PHP的hello.php。
回車鍵。
>> 這並不完全是我的本意。
那麼，這是為什麼？
嗯，PHP是一門語言，這實際上是 設計是相當
交織在一起的網絡。
當這種語言製作網頁 PHP的，因為我們很快就會看到，我們將
想要做類似打印 出像這樣的線。
>> 所以我要做到這一點。
打開支架，問號，PHP， 現在我只是要縮進只是為了保持
美好的東西。
現在我要做的一個問題 標記密切支架。
所以這是一個有點不對稱。
你不這樣做。
而且你不必做一個斜線，所以 PHP是一個有點不同。
>> 但現在，如果我重新運行這個程序， PHP的hello.php，現在我
實際上得到的Hello World。
我們將看到為什麼這是有價值的。
一，它讓我來指定， 超明確，這是
代碼執行。
而這的確是這些 特殊的標籤，意味著這裡。
>> 但是，這也意味著，如果我只是做 類似我的目標是在這裡，
，從字面上看，這將只是手段 被打印出來，而不需要
實際上調用printf或打印， 或任何類似的功能。
因此，我們會回來， 在短短的時刻。
>> 首先，讓我們做到這一點。
裡面的家電，我們有一個 目錄稱為虛擬主機，虛擬
主機，斜線本地主機，削減公共。
所以這是一個有點冗長，但很長的故事 總之，設備的設計不
只支持這也是 旨在支持PHP。
但它也被設計成一個網頁 服務器，和數據庫服務器。
它的設計，真正的配置， 任何讓人聯想
商業網站託管公司 你可能支付每月5美元，
$ 100一個月。
無論服務，它的配置 是非常類似於一個
真實世界的生產服務器。
>> 這是什麼意思是，運行 該設備是Web服務器軟件。
它發生在被稱為Apache的。
這只是免費的，開源的， 而大受歡迎。
我們已經配置好Apache知道 如果我訪問某個網址，
瀏覽器或任何瀏覽器裡面的 家電，尋找到這個目錄
文件 用戶請求。
>> 換句話說，讓我 繼續前進，做到這一點。
我的公開目錄裡面，我要去 繼續前進，建立一個文件
名為index.html。
這給了我這裡的標籤。
我要走得非常快 繼續前進，爆炸了
這個程序在這裡。
DOCTYPE HTML，現在，只 假設你必須鍵入。
這只是一個神秘的標籤，這不是 真正的HTML標記，它指定
這裡是一些HTML。
>> 我要繼續前進，並重新 我們剛才也看到了。
下面是在頁面頭部。
頭部內側 -
這樣的標題。
所以我們會說你好，世界。
再往下是身體標記。
讓我收身標籤。
然後在這裡，我也會說， 只是為了清晰世界，你好。
>> 因此，這是可以說，最簡單的 可能網頁
能使這是有效的。
這是語法上是有效的。
一切的打開關閉。
一切都很好 風格和縮進。
所以，讓我們來看看現在我怎麼 可以訪問此文件。
>> 好了，讓我去這裡的鉻。
並讓我去 http://localhost/index.html。
那麼什麼是本地主機？
嗯，大部分在世界上任何一台計算機， 在Linux，Mac OS，Windows中，有一個綽號
所謂本地主機。
所以，如果你想談 自己的電腦 -
不過，奇怪的本能 -
你稱自己為本地主機。
不管你的實際計算機 ，無論是大衛的MacBook
空氣，或更多的東西 冗長的那樣。
>> 所以這個網址顯然要使用 HTTP談論到本地主機，
在同一台計算機，家電， 要問，只取一
猜測，什麼樣的文件？
index.html的。
因此，該設備已配置在 提前知道，如果我問
類似的index.html，尋找 在一個文件夾中，在一個被稱為虛擬主機
文件夾，名為本地的文件夾中 其中被稱為公眾。
這就是我的所有公共 文件將要。
所以我現在要敲回車。
>> 該死的，還有就是禁 消息，否則403中，被稱為
它的數字代碼。
那麼，什麼是錯在這裡？
嗯，這是不夠的，只是把 我的文件夾裡面的文件。
我需要做以下。
>> 讓我去，進到我的虛擬主機目錄 本地主機，進入公共場所，並讓
我LS劃線升。
還有一些其他的東西 在這裡為今天的目的。
但是請注意，在左側，旁邊 到index.html，我們看到的只是一個RW。
而在過去， RW站在了？
>> 只要讀或寫。
事實上，它在左邊以rw說 意味著我擁有這個文件，可以
讀或寫它。
但我需要讓所有的人在 世界閱讀本，雖然沒有寫出來。
所以我要改變的模式 文件，屬性，給所有加r
每個人的讀取權限， 名為index.html的文件。
>> 如果我現在重新輸入LS幾許升，通知 在這裡，多了一些
R的彈出。
而現在，規範進入 的更多細節。
對於P套7，這只是意味著每個人 現在可以讀取這個文件。
如果我回到我的瀏覽器 現在重裝，瞧。
世界，你好。
>> 我什至可以打開我的Chrome工具 看看，就像谷歌和
Facebook上有我的HTML， 格式化了一下
不同的顏色。
如果我去“網絡”選項卡，並重新加載 的頁面，發現有得到
要求Chrome的發送 家電。
有200， 特定的文件。
因此，在短期，這是如何使所有這些 各個部分都撞在了一起。
它只是恰巧，在Web服務器 我們現在正在使用的並不遙遠，
像Facebook。
嚴格地講，它在同一台計算機上， 這是完全確定的。
>> 那麼什麼我們可以做一個網頁呢？
好了，只是，讓微風拂過 一對夫婦的這些東西。
不過，讓我繼續前進，重新打開 gedit中的index.html。
讓我繼續前進，打招呼CS50， 保存這個文件，回去
瀏覽器，真正給人留下深刻印象的變化。
>> 但是，如果我們想要真正 連結的東西呢？
所以，事實證明，我們可以有 在HTML中的鏈接，只是標籤
自己。
它發生在被稱為 錨標記。一個href的等於的
https://www.cs50.net，www.cs50.net 報價接近，靠近支架。
現在讓我們來看看 否則接下來。
>> 我已經打開的標籤。
我現在需要給它 短語像CS50。
讓我關閉標籤。
並注意幾件事情。
即使有這個神秘的東西 在這裡，我不重複它，當你
關閉標籤。
你剛剛關閉的標籤 其名稱本身。
這是被稱為 屬性的值。
屬性只需要修改的行為 一些標籤的一個頁面內。
>> 因此，這是指定的超級 花式一種說法參考，
此錨的URL，這 鏈接，應該是CS50.net。
而我們要顯示的文字 用戶不是該原始URL，而是
字CS50。
>> 所以，如果我現在重裝，讓我放大以 清晰度，讓我重新加載頁面，
注意到我們有這個老學校 藍色帶下劃線的鏈接。
如果我將鼠標懸停在它，它是怎麼回事 很難看到，在左下方
右下角的畫面，請注意 它說，到的URL
我要去。
如果我點擊那裡，瞧， 現在我製作網頁。
而且我們自己 到主頁。
>> 但是請注意，有什麼發展潛力 這為我們提供了。
安全是非常 在流行的這些日子。
如果我不是這樣說 這一點，我反而去，說，讓我們
看到，fakeCS50.net。
刷新此頁。
>> OK，所以發現它仍然看起來像我 CS50，除非一個精明眼
會注意到我要假CS50。
我猜此域不採取。
OK，所以無法使用。
所以這是很好的。
居然沒有一個人擁有該域名。
>> 但是，讓我們多了幾分惡意 因為這是一種愚蠢的。
如果我們改變到PayPal。
如果我們調用這個一樣， www.paypal.badguy.com
無論您正在訪問的域名。
這可能存在。
所以，現在讓我重新加載頁面。
這裡，我們有一個釣魚的排序 攻擊，p-h-I-S-H-I-N-G，這是
傻字的攻擊 嘗試魚信息，或更好
，錢，出人通過欺騙 他們到提供信息
否則他們可能不會做。
這看上去完全合法的，對不對？
我必須有一個鏈接在這裡Paypal.com的。
憑心而論，如果我絕育手術了一些 圖形，我們可以使它看起來
如PayPal。
對嗎？
因為我可以，順便說一句， 我可以去Paypal.com。
我們剛剛看到，我怎麼能 看到他們的HTML。
我可能只是把它複製並重新創建 美學貝寶，而不是去
這裡的老同學。
但是請注意，當然，這是一個有點 仍小，只有在底部
左上角，像一個10點 字體，你看你是什麼樣的網址
實際上是被領導。
>> 所以如果你曾經得到的垃圾郵件說 先走了，你的帳戶
已大打折扣。
請點擊這個鏈接，讓我們知道， 您的密碼，所以我們可以確保你
你永遠不這樣做。
這些東西應該是不言而喻。
但它的奇妙有趣，並且 慘烈，每年這似乎
發生一些非零 許多人。
>> 這就是美麗 網絡釣魚攻擊。
您可以發送100萬封電子郵件。
即使0.01％的人實際上 點擊Paypal和給你
密碼，這仍然是一個非零數字 剛剛給誰的人
你自己的錢。
接收和發送電子郵件，當然是相當 容易，從本質上講，自由
這些天。
>> 所以長話短說，奇妙 美麗的想法，對吧？
幾年前，這是最早的 網頁，使網
資源之間的超鏈接。
但如此之快可能是 用於生病的目的。
電子郵件，我只想說，這些 天，裡面嵌入HTML。
>> 好吧，讓我只是另一件事情。
我們將推遲主要部分 問題設置七，讓您
探索的詳情。
不過，讓我繼續前進， 在這裡做幾件事情。
我要去，並宣布 什麼叫做一個div，或
師的頁面。
讓我關閉該div標籤。
>> 我會說 這裡頁的前頭。
然後下面這個，我要做的事情 像另一個分區，請關閉此
標籤，做頁面底部。
讓我們保存它。
>> 所以，現在讓我們回到我的文件。
非常深刻印象。
但是，什麼樣的分工， 引擎蓋下，這實際上
一個很好的結構元素。
它不具有任何美學迄今 我們可以看到，以外，很顯然，
把東西放在新線。
>> 但是請注意，順便說一句，只是擊中 輸入不削減它在HTML喜歡它
並在C你可能會認為這是 打算把一個漂亮的大差距
在頁面的頂部和底部。
但它忽略。
基本上是忽略空白 網頁以外的第一
空格字符，回車， 你打在鍵盤上。
如果你想更多的換行符， 有自己指定它。
>> 所以我要做的幾件事情 這裡要說明發生了什麼事情。
我要添加一個屬性 存在並再次，你的學習方式
哪些屬性存在，存在什麼標籤， 真的，是網上的引用。
HTML語言的那種 - 這是 不是一種編程語言。
這是一種標記語言 - 後 良好的半個小時，也許一個小時，
它，你一定會把握，最 可能的是，基本的想法。
然後谷歌搜索距離是所有 你可能會對可能的標籤
感興趣
按照規範，那是相當的 歡迎這裡和鼓勵。
>> 所以，現在讓我繼續前進， 做這樣的事情。
背景顏色。
而現在，我要做的事情 喜歡紅色，分號。
你可以做到這一點 幾種不同的方式。
我只是那種超級鍵入 明確越好。
>> 但事實證明，這裡，這個值是 什麼叫做CSS層疊樣式
床單，這是另一種 語言完全。
CSS無關，與 打開標籤和關閉標籤。
它做與性能。
>> 和屬性是簡單的鍵值 對，這只是意味著一些字，
冒號，然後其他一些字。
如果你有多個，或者只是 在這裡，你可以結束它與
分號，只是為了清晰。
但是，這也將在這裡工作。
>> 現在這是什麼該怎麼辦？
你可能已經猜到了。
讓我繼續前進，然後刷新頁面。
而現在，它真的來了一起。
因此，我的網頁的頂部是紅色的。
但這裡的關鍵是，我提到 早些時候，該div給你
一個分工的頁面。
而這確實是它做什麼。
它實質上是將頁面分為 一個矩形，然後你可以
操縱。
>> 而這個概念是怎麼樣的矩形 引人注目的是，如果你認為
幾乎所有的網站，有可能是 它的一些結構。
你們中的大多數可能已經很少見到 如果你登錄Facebook的主頁
在所有的時間。
>> 但在Facebook的主頁上，有 某種格的頂部。
它可能不是那麼簡單 作為一個div，但有一個
矩形區域。
頁面的其餘部分是什麼樣的 一個巨大的div，就像一個多
更大的矩形區域。
所以長話短說，剛才有 這些小積木，
能力模型的東西如矩形， 無論是寬的還是窄的，你也可以
潛在列，讓你 頁面佈局，真的，但是你
想。
我們真的只是皮毛 這裡的表面。
>> 事實上，如果我做一個另一個， 讓我繼續前進，做款式，
背景顏色，我們會做一些事情 喜歡藍色，特寫報價。
重裝。
所以現在它變​​得更加醜陋。
但現在我可以種炫耀 我P設置5個技能，對不對？
紅色。
這讓我想起RGB，紅 綠色藍三倍。
哦，原來在網絡編程， 或網頁設計，它是這樣的，我們已經
尚未任何編程 本身，實際上，你可以
有十六進制代碼。
因此，一些東西，一些 一些東西，一些東西。
所以，你可以有六個十六進制 字符，或者在某些情況下，三，
和那些問號 是一個十六進制數字，
0到f。
>> 如果我想有很多的紅色， 沒有綠色，沒有藍色的，有什麼
相反為零時使用十六進制？
這是F。
所以我可以做FF，零，零， 保存這個，現在來這裡。
我沒有真正看到了變化。
所以報價引文結束的“紅色”顯然是 所有紅色的代名詞，
沒有綠色，沒有藍色。
同時，讓我們刻意改變 這樣一來的東西
隨機的，像ABCDF。
>> 讓我們來看看這是什麼。
這是一個非常漂亮的藍色， 實際上，粉藍。
所有的權利，所以這些都是剛才 有些隨機組合
字符。
因此，我們不會陷入在了這裡。
但是，這講的精度 你就可以開始
適用 - 即使你很不堪重負 美學。
事實上，如果你真的想成為 留下深刻的印象，讓我繼續前進，改變
的字體大小，例如。
注意分號， 存在是必要的。
>> 字體大小，我們可以只是可笑 這裡96點。
保存。
哇，這是一個大的字體大小。
所有的權利，所以它是很容易的。
而實際上，你基本上看到 我的第一個網頁
幾年前，當我第一次 學到這個東西。
這很容易做出非常 可怕的事情很快。
>> 如果你熟悉回程 機archive.org
可以找到我所有的猙獰 本科生的網頁。
一個青蛙柯密特的前面。
我經歷了一個階段，我想 涼爽的背景
一個紅色的窗簾，當我得知你如何 再次可以平鋪圖像，並再次，
再次，以填補頁 一個俗氣的大紅色幕布。
然後，在此之上，是一個圖標 ，你不得不點擊進入我的家
因為這是頁 非常流行。
>> 然後我的第一個程序，我曾經寫過 在PHP中，但在一種語言不是
稱為明珠，寫了一個留言簿， 是一個非常酷的事情，一個
很多人期待你 有一個主頁上。
當你得到的頁面，他們希望你 簽署，並說，你是誰，
為什麼你在那裡。
這是非常20世紀90年代風格的網頁設計。
>> 但這些天，當然，我們已經 來了很多更遠。
你會看到，在第，甚至 在問題設置七，
充分利用圖書館，這些天， 它是如此容易使
漂亮的東西很快。
真的在這裡，我們只是刮傷 表面你可以做什麼
文體。
>> 而事實上，已經讓我強調 這已經越來越醜，未
只是美觀，但在 我的代碼風格，或者
我的代碼設計。
我目前已comingled的HTML， 綠色開放的標籤，
CSS屬性， 是完全合法的。
這是真的，其中的語言 有它的起源。
>> 但在乾淨設計的興趣， 就像我們開始保的東西
從C文件到h文件，讓 實際上，我的那種練習
原則，並開始做 這個代替。
讓我把風格標籤， 也存在於HTML，讓我
指定以下。
讓我刪除。
背景顏色將是紅色的。
我要完全刪除。
我要擺脫的風格 屬性，我要去唯一
識別這個div用一個字 -
隨意，但合理報價 引文結束“頂”。和ID是一種特殊的
唯一定義的屬性 某些HTML元素
作為具有該ID。
>> 如果我現在要程式化，在這裡 我的網頁，裡面的頭
風格標籤，請注意 我可以做的哈希頂部。
然後我可以把一對夫婦的捲髮 牙套，讓人想起了C，然後讓
我貼在那個程式化。
讓我在這裡繼續和預期 我要去的地方這一點。
讓我還可以創建一個 底部的div。
讓我抓住這個醜陋的代碼從下 把它放在這裡，在這裡，我會
多一點現在肛門和程式化 只是把自己的事情
線，用分號結束。
讓我擺脫的風格標籤。
>> 但我還沒有完成。
我需要做的另一件事情。
是啊，ID等於報價引文結束，“自下而上” 或任何ID，我想
給該元素。
現在，在這裡讓我回去。
這是殘暴的。
我對付不了96點。
讓我們做24點。
或者你可以更精確。
實際上，你可以使用像素，像素，所以 你真的得到更細的顆粒
控制在你的網頁上。
>> 順便說一句，這是不一定 最好的東西，如果用戶，
輔助功能的原因，要 可以增加體積。
因此，意識到有辦法做 不一定的事情，
硬編碼的一切。
>> 所有權利，所以它比較大，24點， 比任何默認為。
但現在它的少許清潔劑。
讓我走這一步。
就像頭文件的想法， 請注意，我們一步步接近那個。
我有分解出來，但還是留下， 我的網頁，這些CSS規則內。
我為什麼要採取這一步 進一步，刪除，這完全
把它放在一個單獨的文件？
>> 所以，我可以重複使用它，對不對？
這僅僅是一種直覺 現在。
在此之前，我聲稱這只是 越來越難看的風格
裡面的屬性 自己的div。
但只是認為通過。
當你的頁面變長，如果 你把在這裡，並在這裡，
這裡，在這裡，所有這些不同的 顏色和字體大小，以及其他類似
屬性，你的網頁是非常快 將變得不可收拾您。
>> 如果有人來向你及 說，哦，你知道是什麼嗎？
我真的很想改變字體大小 另外兩個點，
可能去查找和替換 數量龐大的代碼行。
它更引人注目集中的 這裡所有這樣的美學。
但是，如果你想重用那些 美學的多個網頁，
更引人注目的， 例如，創建一個文件
調用這些內容。
>> 讓我這樣做。
保存這個文件。
我說styles.css的，任意的， 但傳統。
我將把它在約翰·哈佛的家 目錄現在簡單。
在我的網頁，我能做些什麼是 擺脫完全的風格標籤，
和有點unintuitively，使用鏈接 標籤，它不會給你一個鏈接
超鏈接，點擊感，但 我說鏈接，HREF等於
styles.css的。
的關係，這些元素 網頁已經是作為
它的樣式表。
>> 那麼我怎麼會知道呢？
一，你剛才讀手冊， 或者你谷歌身邊，和你
看看各種資源。
我的意思是，那才是真正的你挑 像這樣的技術，一致
這個想法自己新的教學 再次，語言，你會發現，
只有數量有限的東西 任何語言，一旦你得到
他們，你會發現，它得到 越來越快寫。
事實上，學習一種新的編程 語言是如此的速度遠遠超過了新的
口語，因為這些東西 更小的和更
精確的定義。
>> 不過，我已經強調了一點 這裡的異常。
我為什麼要強調這 向前斜線這裡？
因為我不得不閉上標籤。
我應該關閉標籤。
你會發現無數的資源 不在線
一定關閉標籤。
抓實，它不是嚴格 必要的技術，並且有
現實的原因，瀏覽器只是 在web相當寬容失誤
頁，或好或壞， 但大多是雪上加霜。
>> 因此，這僅僅是一個更清潔的方式 說這樣愚蠢的東西，
其中，如果你要打開的鏈接標籤 但關閉它，真的沒有概念
內容的鏈接標籤。
它只是意味著加載此 文件，並把它放在這裡。
C.您可以像尖銳包括 一次全部打開和關閉標籤
標籤相同的範圍內。
和其他這樣的例子。
這是沒有辦法做到這一點，但 br標籤，換行，如果我
真正想要對我是什麼 試圖按下回車鍵之前，如果
我明確地說線斷裂，線斷裂， 斷行，斷行，
然後重新加載這個頁面，你會發現 頁面的底部的是，
事實上，很多越走越遠 頁的底部。
但即使這樣，可以做得更多 乾淨，CSS和利潤，
與其它類似的審美 技術。
>> 因此，就目前而言，外賣店。
在HTML中，我們有這些 東西叫做標籤。
在CSS中，我們有這些事 稱為屬性。
我們，可以comingle這兩種語言， 通過使用樣式屬性，
或者樣式的標籤，或最好的還沒有，保 它完全，因為我們做的
問題7。
問題，那麼，約 這裡的概念基本？
>> 觀眾：我有一個問題。
>> 揚聲器1：哦，對不起。
>> 觀眾：為什麼沒有彩色 -
>> 揚聲器1：哦，在“其他”選項卡？
在這裡？
>> 觀眾：不，這是這樣的 -
>> 揚聲器1：哦，那是因為 我被馬虎。
我把文件放錯了地方。
所以，如果我把它放在這裡，和我 chmod將其所有+ R styles.css的，
現在刷新頁面，現在我們 得到程式化回。
因為字體大小 不同，我們沒有看到相當多
白色的空間。
我們不是看到什麼 而不是默認。
這個問題問得好。
是嗎？
>> 觀眾：為什麼是鏈接 標籤裡面的頭？
>> 揚聲器1：為什麼鏈接 標籤裡面的頭 -
簡短的答案，只是因為。
那是什麼決定。
這就是去當鏈接標籤 您有什麼所謂的一個
外部的樣式表。
其他問題嗎？
>> 好吧，讓我們做到這一點。
我們有這麼多的樂趣，今天擺在我們面前。
這只是刮傷 CSS的表面。
讓我們做到這一點。
讓我們這裡休息5分鐘 因為按我的電子郵件，讓我們掛在
那裡，直到今天2:30 ISH。
但如果你有 離開，這很好。
但是，我們將銳意進取 休息5分鐘。
我們將學習一點東西 關於PHP，MySQL和。
>> 好吧，讓我們來試試，現在，將比分扳成一 幾個在一起，使這些想法，
說，我們自己的搜索引擎。
我注意到，相當好奇， 以下。
當你在Google.com，你 通常在這裡像這樣的一個URL
沒有後點COM。
但是像一些愚蠢的事，如果我搜索 貓，並按下回車，我們會得到 -
笨，但你知道的。
>> OK，所以注意到，在頁面頂部， 現在，URL，當然改變。
這是沒有什麼 我們任何新的。
您點擊鏈接和東西 發生在網絡上。
但是，什麼是有趣的 是以下內容。
有一大堆雜亂的，但讓 我扔掉的東西，我不
不太明白或不 看看有關。
>> 讓我擺脫這種。
讓我擺脫這種。
讓我擺脫 所有這一切。
現在發現，貓是在URL中， 其次具有Q，那麼等於
簽署在它的前面。
因此，原來這是怎樣的 它的工作方式，當談到
輸入和輸出。
>> 我們早就談過 黑盒子，對不對？
因此，如果這是實現的功能 這裡是一個黑盒子，它需要輸入
並產生輸出，以及，意味著 您提供的輸入到
網站方式，很多時候，它的網址。
您只需打上問號 然後一鍵等於價值。
然後也許一個符號，然後 另一個關鍵等於價值，那麼也許
另一個符號，關鍵等於價值。
這是你如何通過鍵和 值，對輸入。
>> 所以，如果我現在敲回車，什麼是 有趣的谷歌，是所有
我刪除，雜波不會出現 是絕對必要的。
我需要發送到谷歌的問題 標記Q等於貓得到
備份一些貓。
那麼，寓意，然後， 如果我拉gedit中，我已經開始
在這裡我自己的搜索引擎 在一個名為seach0.html。
>> 讓我去和刪除 多行
不應該看到的。
現在，讓我進入我自己的瀏覽器， 所以沒有給谷歌，去
http://localhost的。
，這就是將要得到的方式。
因此，我們將不得不說再見 現在，移動在這裡，
哦，現在我們將不得不 該文件說再見。
>> 每當你有一個文件名為 在index.html或編輯
目錄，如果Web服務器 以這種方式配置，你會
，默認情況下，看到的內容 文件而不是上市
目錄，因為我想在這裡。
在這個問題上的規範。
你沒有看到這一點。
>> 所以這是我其實是想什麼。
不過片刻前，有一個 在此文件夾中的文件名為
index.html和index.php文件。
所以Web服務器 我的那些文件。
相反，我想這個目錄 在這裡列出。
>> 所以我要進入 CSS和去搜索0。
我要求，這是將是 開始我自己的競爭
搜索引擎。
而要做到這一點，我要去 在這裡，到CSS，並打開了
gedit中，搜索。
但不幸的是，有 沒有太多打算就在這裡。
我所做的只是使用標題標籤， 會發生被稱為H1，
基本上是指大 勇敢的，就是這樣。
但以何種方式，我們可以 通過這些提供投入
東西叫做形式。
>> 因此，讓我繼續前進，打開和關閉， 先發製人，有形式標記。
讓我繼續做 這樣的事情。
文本輸入，鍵入等於。
然後讓內關閉標籤 括號本身。
我並不需要啟動一個文本字段 並停止文本字段。
它只是將是有還是沒有。
>> 然後，讓我們做如下 輸入類型等於提交。
保存。
現在讓我們只是做了 快速完整性檢查。
讓我們重新加載。
>> OK，所以它不壞。
這不是谷歌的風格， 但它是相當接近的。
有一個文本字段。
我可以鍵入一些東西，敲回車， 但什麼也沒有發生。
那是因為我還沒有指定 這種形式的行動，可以這麼說。
所以，如果我回去的表單元素， 事實證明，我知道這是唯一的
從閱讀的文檔， 標籤的形式以一個屬性
調用的動作是URL 在網站中，您
要發送的形式。
>> 我真的不認為我們有時間 為實現整個後端
今天的搜索引擎。
所以，我們只是會說，哎， 去google.com /搜索。
現在讓我關閉我的報價。
讓我進一步明確 使用的方法是怎麼回事
被稱為。
>> 長話短說，有兩種方式， 至少，你可以提交信息
從瀏覽器到服務器。
一個，而且，對於今天的目的， 這僅僅意味著在URL中。
你清楚地看到問號，則 等號，和＆符號，
我們在前面看到的。
或者有另一種稱為後。
現在，知道後經常被用來 當你要上傳的文件，如
圖像等等，或當你想 提交信用卡信息，或
密碼，任何事情，它不 真正意義，概念，或
安全明智的，最終的URL 您的瀏覽器，窺探父母，
或室友，或任何訪問 到您的計算機可能會看到。
>> 所以，讓我們保存在這裡。
我需要做的另一件事情。
它不足夠 說給我一個文本字段。
我已經給該字段的 珍惜一個名稱。
因此，讓我借用谷歌的選擇 名，q和指定該第二
屬性我真的不關心 “提交”按鈕的名稱。
我只在乎提交 什麼類型的用戶英寸
>> 現在這是一種醜陋的。
它只是說提交。
事實證明，我知道這從 文檔，我其實可以說
值等於報價引文結束“CS50 SEACH“密切的報價。
然後，讓我們再次重裝。
所以我一直打命令-R，或 控制-R我的鍵盤上重新加載。
>> 現在我們有一個更有趣 搜索引擎。
它不完全的樣子 谷歌，目前還。
所以，讓我們繼續在這裡 做一個小小的斷行。
>> 好了，現在我們有谷歌。
實際上，我們幾乎看谷歌。
所以，現在什麼事情發生呢？
我要輸入的東西 像貓。
和瀏覽器解析 這種形式，我定義。
它會發送 該網址的用戶。
所以這個時候，一些奇怪的原因， 我得到了更多有關股票信息
比實際的貓。
但是，這很好，因為我們仍然注意到 在這裡結束了，Q等於貓。
>> 所以長話短說，它似乎相當 微不足道的來自用戶的輸入。
而且是公平的，有串 其他類型的表單字段。
有複選框，有點相互 獨家單選按鈕，
下拉菜單等。
但所有這些都是相對 輕鬆實現
這個文本字段。
最終，我們只需要做出 肯定有人聽其他
為了得到該行結束 信息處理，不知何故，
讓我們回到我們的貓。
>> 讓我們來看看一個稍微 更多參與的例子。
讓我去到我的虛擬主機的目錄， 到本地主機，公共場所，並在那裡我
把今天的源代碼。
所有這一切都將在球場上的 網站為你鼓搗。
我若去成froshims，讓我開 現在了這個文件，froshim0.php。
這是一個有點冗長，所以 我們不會寫這篇文章從頭開始。
但是，僅僅注意到現在幾點幾分 熟悉的特點。
>> 一，形式標記，不同的動作。
這不是一個完整的URL。
現在，它顯然文件名為 的register0.php，因為在某一時刻，
我要教自己一點點 一些關於PHP，編程
語言，因為PHP可以用來 實施什麼谷歌實施
搜索引擎的後端。
>> 谷歌，在現實中，可能使用 一些Python，一些C + +，
其他語言的串。
不過，我們當然可以實現搜索 使用PHP，如果我們想要的結果。
但是現在，我們將保持它的簡單。
這實際上是讓人想起一個 我第一網站
年前作出。
>> 早在我的日子，你註冊 作為一個新生的校內體育活動
填寫一張紙，走 穿過院子，並將其放置在
一個寶潔的郵箱 威格爾斯沃，那就是你如何
登記手續。
所以我的項目後不久，CS50， 是把，這使得完美
某種意義上說，在網絡上，這是不 作為時尚，因為它是現在。
但是，所有我們必須做的是創造， 從本質上講，一個HTML表單。
>> 而這種形式看起來 大致是這樣的。
我有一個輸入 大一的名字。
我有另外的複選框是否 他們想成為隊長，
他們的性別， 他們的宿舍是什麼。
然後，我硬編碼的事情 像Apley法院，卡納迪，
灰色，等等。
>> 如此反复，新的標籤。
還沒有看到這些之前，新 屬性，但還算訪問。
一旦你看到一個例子，你可以 借這個想法，使下降
下拉菜單對於大多數什麼。
但最關鍵的是，每個 這些東西的名字。
在這種形式的底部，有 一個提交按鈕的標籤，
或價值，是寄存器。
>> 所以，讓我們去到這個網頁。
讓我回去 目錄列表。
讓我進入froshims， 去froshim0.php。
因此，它是可怕的，是公平的。
所以，我可以肯定樣式 一些CSS，我可以做一些
圖形，也許添加一些顏色， 使這個漂亮。
但是，在功能，我認為這 實際上是相當完整。
>> 不幸的是，當我填寫了這一點， 船長大衛，男，我們會選擇，
讓我們說馬修斯，註冊， 所發生的一切是這樣的。
但是請注意，一對夫婦的外賣店。
一，什麼文件返回那些 結果，顯然？
因此，它的確是register0.php。
因此，事實上，我們看到的行動 剛才值寄存器，這
證實我們確實結束 在該特定文件的最多。
>> 目前這還只是醜陋的文字。
但是請注意，這個文本是 來自本地主機，
這是從該設備。
現在想想器具 可能在一個Web服務器
科學中心。
這可能是對實際的網絡。
因此，它的公開訪問。
>> 所以很明顯，有一些方式傳遞 表單字段輸入到服務器
因此，它可以做與他們的東西。
不幸的是，寄存器 是非常愚蠢的。
它是打印出一個數組 看起來像這樣。
它不是一個數組 我們知道它的意義。
原來，PHP，和大量的 語言，不僅數值
索引數組的第一個索引 零，那麼一個，兩個，然後點
點，點，N減1。
>> 這就是所謂的一個 關聯數組。
關聯數組是其中之一 你可以存儲鍵值對
關鍵是不一定的數字。
事實上，它可以是一個字符串，一個字。
所以這可以實現， 引擎蓋下，事實證明，
使用一個數據結構被稱為？
思想戲劇性的東西 即將發生 -
哈希表。
>> 所以一個哈希表，回憶，那些你 是誰做的P組6，甚至召回
它，至少，即使你做了一個嘗試， 哈希表中，在我們的使用情況，使用
只是存儲的話。
不過說真的，你是存儲 鍵和值。
如果您實現了一個哈希表為P 設置6詞典，鑰匙
詞本身，其值 有效真或假。
是的，在這裡，或含蓄， 不，不是在這裡。
>> 好吧，我們可以概括地說，想法。
我們可以使用一個非常類似的數據 結構來存儲而不是字符串
獨自一人在你的哈希表，但 假設在每一個你的哈希
表的節點。
你甚至可以做到這一點在一個try 而不是僅僅有一個bool。
你可以有別的東西。
關鍵是如果沒有麥克斯韋， 實例，但報價引文結束“的名字，”或
引用引文結束“的隊長。”裡面 C數據結構，你把一個
價值，而不僅僅是一個布爾值，但值 如報價引文結束“大衛”，或
“M”或“馬修斯”和等等。
>> 因此，我們使用那些相同的數據結構 在其他語言中顯然存在。
我認為它們實際上是多少， 簡單得多，在這裡訪問。
讓我們看一看其實 現在在一些這樣的語法。
>> 我要進入一個PHP目錄。
我要去開拓一個更好的 從之前版本的Hello-0。
請注意，我所做的就是 補充一些意見。
因此，我們可以擺脫那分心。
>> 這個程序的確會打印 你好，因為我之間指定
標籤，我想執行該代碼。
現在，我們將看到在某一時刻 為什麼，這是非常有用的。
但是讓我們在這裡打開一個其他的例子。
讓我去進取，不斷開拓說， gedit的條件之一。
>> 這是現在回來的路上時間。
但半個月前，我想，在每週一， 本週二，我們有一個例子叫做
conditions1.c。
我決定重新實現在PHP中， 只是一種強調
PHP語法，幾乎是相同的 C.這是不是一個巨大的飛躍
從上週到這一點。
>> 請注意，在上面這個程序， 開始時，和以前一樣，具有一定的
意見，我將擺脫 作為分心。
請注意，我在PHP 在這個文件中的模式。
所以這段代碼中，我們將看到的， 將得到執行。
請注意，有readline的， 這大概是
PHP的getString模擬。
請注意，這是一個有點不同。
實際上，你指定提示 函數調用讀線，而這
用戶看到。
所以，你不必手動printf的。
但是，這並不是什麼大不了的。
我要儲存，裡面的$ n， 這個返回值，所以無論
用戶類型是自己的詮釋。
這裡是另一種好奇心。
事實證明，在PHP中，任何變量 只是前綴
一個美元符號。
這是一個有點惱人。
但是請注意，我沒有做什麼在PHP。
從左邊缺少了什麼 一邊的等號？
>> 沒有提到的類型。
因此，這是為了更好地從C不同 或者更糟的是，PHP是一種鬆散
類型語言。
它確實有數字。
它有字符串。
它有布爾值。
它有幾個 其他數據類型。
但是，你的程序員，通常 不必關心他們。
這樣做的好處，是它使得 這一點更容易編程。
你可以少想一點。
不足之處是它也打開你到 潛在的錯誤，如果你不小心
對待一個數字作為一個字符串，一個字符串 數，有可能，但即使
然後，PHP和很多語言， 是相當寬容的。
他們將使用什麼叫做 隱式轉換。
如果您嘗試在上下文中使用n 的一個數字的情況下，它會
這裡將是一個轉換 字符串，因為如果用戶鍵入
的東西，你得到的結果， readline的，或者得到的字符串，
要返回一個字符串。
>> 但是請注意，幾行後，我 檢查，如果n是大於零的。
所以，PHP會隱式轉換 “串”123，或無論用戶
，進入一個int類型。
因此，在短期，東西只是工作 很多更直觀。
所以我們現在開始放鬆的幾個 在過去的事情，我們已經做了。
>> 這個東西有很多是 同樣的，雖然。
還有等於等於。
作為一個備用PHP也等於等於 等於，但更多的，或許，在
未來。
這是一個。
錯字，但兩個等號意味著同樣的 之前，進行比較的東西。
printf的意味著同樣的事情之前。
反斜杠n表示相同 和以前一樣的東西。
>> 所以我怎麼運行這個程序嗎？
好了，和以前一樣，如果我做PHP， conditions1.php，然後鍵入
這樣的數字123。
這是一個正數。
如果我鍵入0，我去接0。
如果我輸入負123，我得到 備份一個負數，這是唯一
也就是說，語法，PHP 是超級，超級相似。
>> 那麼，為什麼是現在這個有用 在web環境？
好吧，讓我們回到本froshims 例如，看起來，
再次，像這裡。
讓拉起網頁 再次，這個樣子。
我們可以做什麼用 數據提交？
>> 好吧，讓我打開了一個新的 版本的此。
你會看到這個問題 套規範引導您
通過幾個。
而不是從零開始， 讓我們看看froshims3，
這確實有點多。
>> 首先要注意，其實，讓我們打開 了0，所以你看
寄存器0是什麼。
注意寄存器0做什麼。
一，我在上面發表意見。
刪除那些只集中在此。
大多數的內容register0.php ，很明顯，什麼樣的語言？
只是原料PHP。
>> 所以通知，這個文件不啟動 ，此刻，打開支架，
問號，PHP。
PHP讓你交融 PHP與HTML標記代碼。
但我已經做了，在這裡裡面 的頁面在這裡。
>> 再次，現在，你只知道這 看著手冊。的print_r
事實證明，是print_recursive。 _recursive而這僅僅是一個方便的
效用函數，只是打印出來， 遞歸的，無論你把它。
如果你的手是一個數組， 它會打印一個數組。
如果你把它的數字， 它會打印一個數字。
把錢交出來一個字符串，它會 打印一個字符串。
如果你把它一個哈希表， 會打印出一個哈希表。
您不必編寫所有 的自己該代碼。
>> 現在可以看到我進入 PHP模式在這裡。
在這裡，我退出PHP模式。
所以當Web服務器讀取這個文件 從上到下，從左到右，因為
它結束在一個名為。php的文件名， 裡面沒有任何PHP標籤
只是要吐 出來，像原始的HTML。
沒有什麼大不了的。
但是，一旦Web服務器注意事項 這一點，它會說，我不應該
吐了出來，從字面上看，後的print_r。
我應該執行以下 一行代碼。
>> 那麼最後一個問題，那麼，這個文件 ，好了，你到底是這樣嗎？
採取一種猜測。
$ _POST是什麼，可能嗎？
>> 觀眾：[聽不清]
>> 揚聲器1：是啊，發布的數據。
回想一下，我們的向後滾動 時間只是一瞬間。
froshim0再次，這個樣子。
這是一個超級多數只是HTML。
同樣，一些你沒有標籤 見過的，或與
你已經很熟悉。
但有趣的事情是這樣的。
這一行是真正的鏈接 它來我們的register0.php文件。
我通過POST方法提交。
這意味著，參數 用戶類型
將要結束的地方。
>> 他們不會 顯示在URL中。
他們仍然要發送的 客戶端，從瀏覽器中，向
服務器，但只是通過其他 機制，我們將放棄我們手中
在今天，但它不是在URL中。
但是請注意，現在的關係 後，按照慣例，
小寫這裡。
>> 但如果我打開register0.php 我顯然印刷本。
因此，這是一種怪異 命名約定。
但是在PHP不錯的是，當 使用PHP在Web環境中，而不是在一個
剛才像我一樣的命令行， 當你真正使用它在Web
頁面，因為我們是在一個虛擬主機的目錄， PHP會自動填補這一
的事情，這是一個關聯數組， 可以這麼說，一個哈希表，
所有用戶輸入。
>> 總之，$ _POST全部大寫是一個 全局變量，PHP只是
奇蹟般地創造你的時候 使用PHP在Web上下文。
它把它裡面的所有的 的表單中的參數名稱
提交本文件及其所有 用戶輸入的值
因此，它的手給你什麼用戶 這種形式輸入。
>> 之前，我們得到了非常愚蠢的輸出 只看到這一點，因為我所做的
遞歸打印這個數組。
最關鍵的是名稱，值是大衛。
最關鍵的是船長。
該值上。
和雙箭頭和角度 有支架，這僅僅是任意的。
這是不是代碼。
這僅僅是PHP的方式向您展示 一些關鍵的價值是什麼。
>> 但現在讓我建議，在 froshIMs3，它幾乎相同
除了提交該文件。
再次，我們要種只是 看了一眼，正好看到一些
語法，但注意什麼 這個文件。
以此來猜測只是基於線 代碼，這可能看起來象
希臘，在一定程度上 顯然這樣做。
>> 此主題相關文件 郵件，電子郵件。
那麼，什麼是這個程序在做什麼？
在這個版本中，如果我是真正 填寫此表 - 讓我去
froshIMs3，不是froshIMs0 -
形式看起來是一樣的。
隊長大衛，男，宿舍，馬修斯。
但是，如果我提出這個，這個文件是 要去register3.php。
>> 我要求看在它的 源代碼，這將
以某種方式涉及到電子郵件。
讓我繼續前進，打開此 在一個更大的窗口，因此我們
可以看到它更乾淨。
我們在虛擬主機，本地主機， 公眾froshims。
我要開闢一個不同 程序，所以我們
一次可以看到更多的。
>> 所以，現在在這裡，發現了一些事情。
在該文件的頂部是開放的 括號，問號，PHP。
然後有一堆意見， 我們可以忽略，
現在無趣的。
>> 現在有這個。
PHP有很多 代碼調用需要。
它非常類似於在精神上C的 包括哈希包括
基本上抓住了一些內容 其他文件，只是他們在這裡，撲通一聲
這樣你就可以使用它們。
在這種情況下，該裝置安裝有 預裝，一個圖書館，自由和
稱為PHP的開源庫 郵件程序，任何人都可以
從互聯網上下載。
我們只是做給你。
這意味著我現在有電子郵件 在我手上的功能。
>> 現在，請注意幾件事。
我要驗證 表單的提交。
打開了PHP，一個驚嘆號 不是運營商，就像點
但是PHP也有一個功能 被稱為空。
>> 空，則返回true值 你的東西拿去
括號內是空的，像 用戶沒有輸入任何內容英寸
因此，這是說，並注意 語法，非常類​​似於C，如果
名稱鍵，這樣的name字段的形式， 這是提交通過後，
用戶來說是不空的，並且它們的 性別是不是空的形式
很好，他們的宿舍是不是空的 -
但是請注意，我不關心隊長， 那麼我們該怎麼辦？
>> 我要執行 這行代碼。
你能想到這種 像malloc的，但它是一個小
票友比。
但現在，這給了我一個特別的 結構類型的PHP郵件。
但是，忽視今天的新的關鍵字。
>> 現在，我要調用一個函數叫做 IsSMTP，它說，使用SMTP。
這是25端口，就像視頻 上週，被扔的東西
到防火牆的電子郵件。
是SMTP端口25。
SMTP是指使用的郵件服務器。
哪一個，我們可以使用哈佛 SMTP.fas.harvard.edu。
>> 我們可以設置從地址 是哈佛大學約翰的。
如果我繼續向下滾動，我可以設置 收件人地址，只是
任意約翰 哈佛。
於是，他將要寄給自己。
>> 現在，我可以設置主題 要註冊。
我可以定身 電子郵件如下。
這條線看上去多了幾分神秘， 但是這只是因為有很多
在它的信息。
其中，有一個點運算符。
必須有人已經知道了什麼 點運算。
它的串聯。
所以，如果你想利用PHP中的字符串， 追加或它前面加，
另一個字符串在PHP中，感謝上帝，你 不必，使用strcopy和malloc，
所有這一切了。
>> 如果你想連接兩個字符串， 誰在乎內存。
讓PHP的身影，為你。
PHP會做什麼用點操作符 這裡只是做一個大句子出來
這條線，這條線， 這條線，這條線。
現在通知，它會 插入值。
所以電子郵件，約翰·哈佛是怎麼回事 接收從字面上去說
名稱，結腸癌的東西，而不是，那麼我們 關閉字符串串聯
無論用戶輸入 ，然後在新的一行。
>> 然後，在約翰·哈佛的下一行 電子郵件，它會說
船長，開或沒有。
這是怎麼回事說性別， 男性或女性。
宿舍將是馬修斯 在我的情況下。
然後注意到熟悉的分號 結束。
然後，這裡通知，有點 神秘，但同樣，繼
圖案將變得更加熟悉 P後設置7，如果發送郵件
返回false，然後繼續前進，死了。
>> 因此，PHP有一個功能稱為模， 其中，從字面上看，只是殺死
網站僅僅打印出任何 你告訴它 - 它正在死去
也就是說，可以這麼說。
而這，的情況下，它會打印 出什麼錯誤信息
不管發生什麼事要出問題。
所以長話短說，在這裡，我們有什麼 是一個例子，其中，當用戶
提交形式，froshim0， froshims3.php，它去
register3.php。
但register3.php然後繼續 執行所有這些線路。
>> 所以這是一個很少人採取跳投。
一，它顯然是相當容易的， 編程，發送電子郵件，
這是很好的。
當用戶註冊，在為您的網站 這種情況下，在註冊時為您的
運動，你可以通過電子郵件大一 普羅克特或約翰
哈佛，在這種情況下。
>> 但是，這也意味著你可以做什麼？
任何人到任何發送電子郵件。
這是非常真實的。
這是不容易做，如果 你已經習慣了使用Gmail。
但是，如果你曾經使用Eudora或 Outlook中，你幾乎可以告訴
你的郵件服務器 任何你想要的。
而這正是我需要把 那頂帽子，並說，不這樣做。
但是，這是多麼容易證明 它是執行網絡釣魚攻擊，
發送匿名電子郵件， 垃圾郵件，更普遍。
它真的可以歸結為 事實上，所有你需要的是一些
編程方式訪問。
>> 順便說一句，我最親密的邂逅 廣告板，我自己的大一，
當我發現這個很酷 欺騙，哇，你可以
任何人發送電子郵件。
因此，我們有一些愚蠢的 的說法，從字面上看，馬修斯，
之間我的普羅克特組。
我什至不記得 問題是什麼。
但我想嘗試把一個 這個愚蠢的辯論結束。
>> 所以，我決定，我將只發送一封電子郵件 我的寶潔組，故作
其他的傢伙，我的意見 不同意，他默許
無論在我看來 這個特殊的辯論。
所以我使用偽造電子郵件 類似的技術精神。
但它實際上是更容易 的時間。
命中。
他很不高興，也不會 廣告板。
>> 我感到非常內迅速引起 因為，你知道，我簽署秒
我的電子郵件以某種方式。
雖然我做手工，在大 部分，15年後，因為我是
由創傷。
我沒有簽名 現在我的電子郵件。
但在1995年，我剛做了一個信號， 在我的電子郵件簽名。
因此就出現了這樣一個字條說，親愛的 普羅克特組，我默許我看來，
並同意大衛簽署 如此，新生產線，新生產線，DJM。
>> 所以，不要做，或在一般情況下，採取 這種技術的優點。
但是，當一個網站，喜歡 您的最後一個項目，當進行
網站創業的東西， 這是怎麼回事，務實的態度，你可以
利用在互聯網上的其他服務 如郵件，然後實際
送東西使用代碼。
>> 那麼我們如何才能改善？
嗯，首先讓我們來快速瀏覽 一些事情，你會看到，
然後看一看 一對夫婦的例子。
所以，放心，因為 我們正在通過PHP飛行。
我知道，在某些時候，你就會有 如果你真正開始寫這
已經沒有。
，一個實現，主要是一種 ，用PHP窗外。
如果你想編寫代碼獲取 執行時，你剛開始寫
一個名為。PHP只要 你有開放的支架
問號PHP標籤。
>> 但是請注意，這些都是 PHP中的條件。
請注意，這是確切的同一張幻燈片 我們在第一個星期，當我們有
C.條件的條件 PHP是結構和
語法相同。
唯一的區別是，如果你已經有了 涉及的變量，你有那些
美元的跡象。
>> 同時，布爾表達式 看起來就像這為
或或和的在一起。
開關長得一模一樣。
在PHP中什麼是好的，而在C語言中， 開關必須是個案
整數或字符等，在PHP中的原語 你的case語句實際上可以
一個整體的字符串上，這是 其實挺有意思。
為您節省一些時間。
不能這樣做，在C
>> 下面是一個PHP for循環。
這是相同的。
可能有一些美元的跡象 為變量。
您不必提 東西是一個int。
你剛剛宣布它與一個美元符號 和的變量的名稱。
但是，一個for循環是相同的。
while循環是一樣的。
一個do while循環是一樣的。
>> 這是一個有點不同。
因此，PHP中，一個數組，你可以 靜態聲明一個數組，在C，
但是你用方括號內。
在C語言中，你可以使用大括號， 如果你知道這一點。
但其實這是很常見的PHP 聲明一個數組，在這種情況下，
數字，並調用 變量的數字。
>> 變量本身這個樣子。
這裡是一個字符串，報價引文結束“你好 世界，“你可以有一個反斜杠Ń。
在這種情況下，我根本就沒有。
>> 現在，這是一個有趣的結構。
C沒有。
但是，這是超級有用。
你會看到在P組7 規範 - 每個構造。
如果你想重申所有 元素的數組，你不必
對付我，而且$ n $， + +，和所有。
你可以從字面上說，在PHP中，這 -
號，所以每個號碼 我假定數字
是一個數字數組。
而當我說每個號碼 作為數量，這將
自動執行我的循環， 更新，在每次迭代時，該值
裡面的美元符號的數 -
一遍，又一遍，並再次行走 對我來說，數組。
因此，它只是為我們節省了代碼。
沒有分號，沒有+ +的，沒有我的， 沒有n的，這是剛剛好。
>> 但是PHP也有這個。
這是超級強大。
你會使用這個，手 在P 7。
關聯數組也宣布 方括號。
但是請注意，現在的語法。
這讓人想起我們看到了什麼 剛才的print_r。
多少個鍵，作為一個小的完整性檢查， 似乎有這個數組。
>> 因此，它有兩個。
我稱這是一個陣列。
但是，如果它的幫助，你可以認為 此如哈希表中，或者作為
關聯數組。
但它僅僅是一個不同的 類型的數組。
再次，不同的語言 有這些。
我們會看到類似的東西 在JavaScript中也是如此。
有兩個鍵。
其一是報價引文結束，“符號”，一個是 引用引文結束“的價格。”和那些鍵
每個人都有一個值。
在這種情況下，符號的值是FB， Facebook和價格的值是49，26，
這是Facebook的股票 今天上午的價格。
>> 那麼，什麼是有用之 關聯數組。
我能有一個數字 只是索引數組
簡單的方括號。
我能有美元符號 報價等於這一點。
讓我真正做到這一點。
假設我不是剛剛宣布 像這個數組。
這是完全有效的， 語法。
它不丟失任何信息， 本身。
我仍然看到這個符號是FB， 而價格是49，26。
那麼，為什麼聯想 陣列引人注目嗎？
>> 觀眾：你不必記得 你把東西。
>> 揚聲器1：沒錯，你沒有 要記住，你放東西的地方。
您不必任意記得 ，股票代碼支架為零，
股票價格在支架一， 這是特別危險的，如果你
改變的事情，最終。
它要好得多關聯的 我們就這麼叫元數據
實際的數據。
我認為，我們真正關心 這裡是FB，49，26。
是元數據的符號和價格 它描述的數據，我們
真正關心。
但是，這僅僅是這麼多 更容易訪問。
>> 現在，一邊是什麼 我們付出的代價嗎？
我們一直在做這 在CS50週。
此功能必須拿出一些成本。
內存。
所以你不只是存儲一個32位 整數，例如。
你存儲符號/ 0，大概。
所以你使用更多的內存。
>> ，什麼是性能 在尋找的東西
關聯數組，可能嗎？
這也可能是更慢。
隨機訪問是不錯的，特別是 當你可以做二進制搜索。
但是，如果你現在實際上是在尋找不 數字，但對於字符串，這
真正下面實現 油煙機，可能作為一個哈希表，
你使用一個哈希表 單獨的鏈接。
或者你嘗試實際使用 存儲的值。
因此，也許你能做到恆定的時間，但 你還是得看S-Y-M-B-ó-L，
潛在的，而不是僅僅32 看起來位。
如此反复，這些同樣的想法 在此背景下備份復發。
>> 但同樣，PHP現在有一些超級 全局，事實證明，
關聯數組。
我們看到剛才，$ _POST。
，超級全局 有鑰匙和值。
具體而言，鍵 排隊什麼？
鑰匙在哪裡在$ _POST從何而來？
只要回顧一下？
>> 觀眾：姓名。
>> 揚聲器1：姓名，在哪裡？
>> 觀眾：[聽不清]
>> 揚聲器1：名稱的屬性。
那麼哪裡，哪裡他們 最初是從哪裡來的？
該表格。
因此，如果一個HTML頁面有一個表單標籤， 裡面是一些投入，如
檢查框，文本框，下拉 菜單，其中每一個都有一個名稱，那些
名稱最終在$ _POST鍵， 坦率地說，對於這個問題，$ _GET。
如果該方法是GET，同樣的想法。
它只是在不同的超級全局。
和的值，當然，來自 無論用戶在他或輸入
她的瀏覽器。
>> 但是，還有一些其他的。
有餅乾，我們將 最終回來。
但那些知道的事情，你 網頁使用一些善或惡。
但是，我們會回來的。
服務器和會話，這兩個 有一些特殊的實用程序。
>> 但是，讓我們來看看這個。
讓我去進取，不斷開拓的例子 所以MVC稱為mvc0.php
代表以下。
我們介紹這個比前面 典型的，真的，讓你設計
習題集7，也最終項目 行業排序
標準的方式，乾淨的方式。
這是很好的設計。
>> 所以你看到了，你會 經驗，在P組7，範式，排序
編程的心態，看起來 有點這樣的事情。
M為控制器的型號，C， V查看。
長話短說，MVC是正中下懷 一種方法，一種使
網站，特別是，由此 把所有你的，愚蠢的短語 -
業務邏輯 -
所有您的知識產權 什麼叫做一個控制器，一個文件
喜歡的index.php，否則我們將看到的， quote.php或buy.php的。
>> 的背景下，習題集7， 模型通常包含您的數據，
任何涉及到數據庫，我們會 最終看到的，和你的意見
包含你的美學 網站的HTML，CSS。
因此，我們已經看到了這一點在C 位使用。h文件。
我們真的看到了剛才用CSS， 通過分解的CSS風格化
出來的東西我們的HTML。
>> 因此，MVC是真的只是繪製 線在沙說，
有趣的編程代碼為您 網站屬於什麼我們稱之為
控制器。
東西通常涉及到數據庫 結束了在一個模型。
但是你會看到，在習題集7，我們 C和M合併，以保持它的簡單。
但是，鑑於你的HTML 和美學通常會去。
>> 所以，這是什麼意思，實質呢？
好吧，讓我進入我們的MVC 目錄，如下所示。
你會看到更多的這些 通過參觀在規範。
所以，在編碼對象，我聲稱，這是一樣， 版本CS50網站。
>> 我們有一些HTML，像 一個大h1標籤，顯然。
然後，項目符號列表。
我從來沒有見過一個項目符號列表 過，但沒什麼大不了的。
讓我們快速看的源代碼。
原來無序列表子彈 是開括號微升與一個或
多個列表項，李。
因此，這裡是通知一個錨標記。
我們看到前那一刻。
>> 所以這是我是如何實現 這一頁。
我有兩個環節，兩個列表項， 無序列表，UL和結束
結果，美觀，這是非常 漂亮的網站，這裡的版本0。
但現在有什麼有趣的是如何 是引擎蓋下實現的。
>> 讓我進入gedit和打開這個 第一個例子來畫一幅畫。
我們來看看什麼是有缺陷的， 可能在這裡。
現在，如果我去到本地主機，公共， MVC中，發現了一些文件。
我要調用這些， 此刻，所有的控制器。
但是，這是一個有點濫用，因為 你會看到一切都混合
它們內部。
>> 讓我走裡面的index.php。
我們看到，從字面上看，相同的HTML。
因此，即使這個文件結束 PHP，並不意味著它有
有任何PHP代碼。
它可以是原始的HTML，雖然 這是一種愚蠢。
但是請注意有沒有打開支架PHP 標記，除了這一點，其中，坦率地說，
只是作為評論。
但是，這是功能上並沒有 甚至是有趣的。
>> 但是，注意到這一點。
現在有趣的是什麼 此頁面上的變化。
讓我單擊講課。
注意到的網址即將改變。
現在我在lectures.php。
讓我單擊為零。
現在我在week0.php現在讓 在gedit，我打開這些文件。
不只是指數，但讓 我開了講座。
讓我擺脫的意見 只專注於這部分。
>> 現在我只是一個更開放， week0.php，扔掉的意見，
只是清理它。
現通知如下。
還真有幾分思考，仔細思考 設計，讓我們使它線
起來一樣，有什麼可以做 更好地在這裡，你覺得呢？
>> 我怎麼做第一個星期嗎？
這個怎麼樣。
所以這是我做了第一個星期。
我去的文件，新建，粘貼，保存， 的week1.php，然後我就在這裡。
我改變 -
事情經過是這樣，一到週五。
我改變了零一。
我改變之一。
>> 好了，現在看我的文件。
可以做什麼不同？
的機會在哪裡，也許？
所以有機會開始 保理這個東西。
讓我打開了，作為一個攪局者， 你會看到在P組7。
如果我打開了，現在版本的index.php 五本，它看起來方式
更神秘的，無可否認。
>> 但是，現在，是什麼，我會叫 控制器的控制
我的頁面邏輯。
而且，您可以樣的重構， 直觀的，也許，發生了什麼事情。
在第一行上，它的 有點神秘。
但是請注意，我需要的，喜歡與 尖銳包括一個名為
helpers.php。
然後我打電話，顯然， 功能，被稱為渲染，通過
兩個參數。
>> 其一是報價引文結束，頭。
另一種是，什麼樣的 數據類型是這樣的，基於
我們的語法同期？
這是一個關聯數組。
具體來說，它通過在標題中 一些元數據提醒
我它是什麼和它的價值。
然後，我看到一個硬編碼 UL，所以一些原始的HTML。
但後​​來我回到了PHP模式 調用一個函數渲染。
所以，即使你從來沒有使用HTML或PHP 之前，儘管這看起來
可怕的，這是為什麼可能 更好的設計嗎？
什麼是更好地了解它， 根據推斷？
>> 觀眾：[聽不清]
>> 揚聲器1：減多餘的 有沒有更多的HTML標籤，沒有更多的
頭標籤，沒有更多的身體標記 在每一個該死的文件。
相反，我已經考慮了 共性和大概把它們
主題相關到一個文件中 一個頭。
同樣的事情近身 標籤，密切HTML標籤。
這可能是在這裡裡面 的頁腳某處。
你會看到，在習題集7， 通過一個小的旅遊。
>> 那麼，是什麼樣的吧？
有一件事，我們還沒有能力 但對於實際存儲數據。
還等什麼，我們就可以看到 星期三，例如，​​是
老朋友Excel或數字， 允許你存儲大量的
以行和列的數據。
原來你可以做什麼 稱為數據庫編程。
狂躁而事實證明，在這之後， 我們將能夠存儲諸如
這一點，你會再次看到在P組 7，一大堆的用戶名和
密碼，其中後者是 實際上是加密的，就像他們
p設定為2的黑客版。
最終，你會實現這一點， ETRADE自己的網站
實現統稱CS50金融。
>> 最後，因為你在這裡住這麼晚 今天，如果你回來的這部分
校園，在今天下午4:00，我們將 不僅給你的意見，在SCES
諮詢洽談會，在下午4:00 麥克斯韋 - 德沃金，我們會給你一些
Americone夢，櫻桃加西亞， 巧克力布朗尼巧克力
片餅乾麵團，而且，當你谷歌 矮胖猴，你得到這個。
因此，所有等待4:00 PM在麥克斯韋 - 德沃金。
週三見。
>> 揚聲器2：在接下來的 CS50，RJ的睡眠。
>> RJ：我的部分！
哈！
哦，