[MÜZİK OYUN] ALLISON BUCHHOLTZ-AU: Pekala, Herkes, bölüm tekrar hoş geldiniz. Umarım hepiniz büyük bir vardı Cadılar Bayramı hafta sonu, ya da Halloweekend, Ben, tüm söylemek gibi dinlenmiş ve iyileşti. Ve şükür ki artık kar yağışı değil. Bu aslında dışında güneşli. Ben bu konuda gerçekten mutlu oldu. Benim kış çizmeler dışarı sürüklemek hazır değil. Umarım, pset6 oldukça iyi gitti. C yorgun iseniz >>, ben mutluyum Eğer şimdi C ile bitti demek. Biz tam geçiş var Web programlama içine, böylece HTML, PHP çalışıyor olacak, Belki JavaScript biraz. Ben önümüzdeki hafta ne en bilmiyorum pset, yani garanti edemez Ne sonraki pset olacak olabilir, ama bu haftaki pset temelde CS50 finansman, bir Web sayfasının tür uygulama Bu satın almak ve satmak için izin verir stok, ve onları takip. Ve hepsi, çünkü oldukça serin bunun dinamik olarak oluşturulur. Farklı kullanıcımız var kim Her kendi bilgi ve olmaya gidiyoruz Bunun tüm uygulama. Bir süre alır. Ben kesinlikle bu daha kolay olduğunu düşünüyorum C psets daha, ama daha uzun sürer. Yeni bir dil öğrenme konum, C'ye çok benzer PHP, ama tabii gerektirecek gidiyor Eğer sözdizimi bakmak ve anlamak için nasıl dil arasında dönüştürmek için. Ama ben bir şey olduğunu sanmıyorum süper kavramsal zor bu pset hakkında. Sadece öğreniyor yeni bir dil ve alma Bütün bu küçük parçaları ile. Siz aracılığıyla okudum spec, oldukça uzun. Ben bu 21 gibi düşünüyorum sayfalar, eğer doğru hatırlıyorsam. Uzun bir spec var. Eğer dökersin-- 22 okumadıysanız eğer öyleyse. 32. Vay. Yani kapalı orada% 50 oldu. Yani, 32 sayfa. Yani uzun. Orada parçalar çok, ama hiçbiri adet kötü olmalıdır. Sadece bir çok şey. Yani kesinlikle erken başlamak Mümkünse, her zamanki gibi, ama biraz hissediyorum gerektiğini düşünüyorum gibi özellikle psets daha güzel kurtarmak ve sadece olduğunu yeniden boyutlandırmak Çok zor başınızın etrafında sarmak için. Bununla Böylece biz dalış için gidiyoruz. Ben senin gündemi yok Bugün slayt, ama biz konum PHP hakkında konuşuyor olacak. Sana bir tür vermek olacak Bazı şeyler kurs PHP hakkında bilmek isteyebilirsiniz. Farklı sözdizimi şeyler, şeyler için dışarı bakmak için. Biz konuşurken gidiyoruz SQL hakkında biraz. Sadece çok basit şeyler Orada, ve sonra da MVC Model View Controller, hangi senin pset kurmak nasıl olduğunu, böylece anlamak nasıl çalışmaları süper yararlı olacaktır. Tamam. PHP Yani. Siz yapmalıydım çok, çok basit bir şey PHP ile, hangi Burada bu alt şey, Eğer bazı formu teslim nerede Bazı isim vardı ki burada top size giriş ve merhaba gibi söyleyebilirim, Ben, ya merhaba, Allison ve açılır olacaktır. Yani bu aslında ne o senin pset gelen benziyordu gerekirdi, durumda siz bilmek istedim ya da oldukça anlamaya vermedi. Ama biz bu soru işaretleri var Burada bu PHP olduğunu göstermektedir söyledi. Daha sonra sarın ve htmlspecialcharge, sadece olduğunu unutmayın güvendesin emin olun Herhangi bir deli enjeksiyon saldırı ya da birisi koymak çalışırsa çılgın zararlı karakterler Adınız alanına, değil mi Sunucu ya da etajer kadar seviyorum. Ve sonra fark ederseniz, bu HTML Form, hangi $ _GET bir yöntem vardı bizim superglobal'leri hatırlıyorum PHP, $ _GET, $ _POST, biz içine gidiyorum biraz bu. Ama biz biraz isme sahip olduğunu biliyorum Burada adına karşılık gelir ki Biz teslim olduğunu. Yani bu sadece tür gibi Çok basit bir PHP, HTML işbirliği Siz pset altı den vardı. Ama bu gerçekten değil PHP nedir cevap. Açıkçası bu bir dil var, ama biz gerçekten var Bu bölümde bu konuda konuştuk yani biraz daha var PHP aslında ne. Yani PHP sadece PHP hipermetin önişlemci. Aslında kabul edilir Bir programlama dili o eğer oysa mantığı, çünkü Biz HTML bahsediyoruz hatırlıyorum biz denilen bir biçimlendirme dili karşı Bir programlama dili HTML çünkü kesinlikle nasıl modifiye olduğunu şeyler sayfada bakmak. Sadece modifiye ediyor bir şey kalın olsun, ya da bir form olsun, eleman, ya da onun gibi bir şey. Herhangi bir mantığı yoktur. Bu döngüler veya koşullar yok. Bir şeyler kontrol hata olamaz. Ya şeyleri göstermek istiyorum veya belirli bir şekilde şeyleri sormak kullanıcıdan. Işte bu. PHP ile Yani, aslında bize izin vermez Bu daha mantıklı şeylerin hepsini yapmak için, gibi giriş doğrulamak veya bir şekilde manipüle. Biz sadece, HTML ile birleştirebilirsiniz Şu anda son pset gördüm ve ve bize oluşturmanıza olanak sağlar Bu dinamik web sayfaları. Böylece siz zaman-- eğer ben bilmiyorum Eğer benim gibi, ama orta okulda Onlar bize bu BT sınıfı nerede almak vardı biz sadece HTML web sayfalarını yarattı ve statik ve çevresinde tıklayın Diğer şeyler, ama onlar hiç değişmedi. Dinamik olanlar ile, ne yapabilirsiniz yapmak, CS50 Maliye olduğu gibi, bir Eğer farklı kullanıcılara için gidiyoruz. Bu kullanıcılar 'bağlı tercihleri, ve ne satın alıyoruz ya ne satıyorsanız kendi hisse senetleri için, görüntülemek için gidiyoruz farklı şeyler. Bazı varsa Yani belirleyici özelliği Kullanıcı, bu kullanmak için web sayfası, biz dinamik olabilir Onlar için ne görüntülemek karar. Her için tek aynı şey değil biz sadece HTML olsaydı kişi, sayfa için aynı olacaktır ziyaret her bir kişi. PHP bize sayfaları kişiselleştirmek için izin verir. Ve sonra biz ya onları koyabilirsiniz Aynı dosya, olduğu gibi, hangi Burada önce, biz gördük Hepimiz burada HTML var ve sonra PHP'nin bu biraz var. Biz böyle yapabiliriz, veya CS50 Maliye ile, Siz de baktım varsa files-- ve zaman olmalı Bunlardan bir çift ile adım Birlikte section-- biz sonunda nasıl olabilir görebilirsiniz Aslında onları ayrı tutmak, hangi aslında yapmak için daha iyi bir şeydir. So. Kurs. Tüm hızlı basit şeyler PHP için bilmeniz gerekebilir. Değişkenleri bildirmek. O mavi, biraz sinir bozucu ama umarım siz görebilirsiniz. Değilse, bunu yazacağım tebeşir gemide. ilan değişkenler. Bilmek bir şey, o, aksine C PHP gevşek veya dinamik yazıldığında, hangi gerekmez anlamına gelir o ne tür bir değişken söyle. Sen sadece basit bazı değişken söyleyebiliriz , sen bunu istediğiniz ne olursa olsun eşittir ve türünü karar verecek Sizin için çalışma zamanında bu değişken. Gördüğünüz gibi, bu oluşturabilirsiniz bazı çok ilginç şeyler. Ama en amaçlar için, size türünü belirtmek gerekmez. Sen can, ve yazabilirsiniz Normalde sizin gibi şeyler döküm Eğer isterseniz bakın olmaz Belirli bir tip olmasını zorlamak, ama bunu yapmak zorunda değilsiniz. Size bağırma gitmiyor Eğer sadece bir değişken bildirirseniz ve bunun için bir türünü belirtmek yok. Durumda okuyamaz Yani bu-- Ben bu iyi değil biliyorum. Ben better-- göstermek düşündüm Eğer herhangi bir değişkeni başlatılamadı yolu sadece bir dolar işareti ile ne Eğer çağrılacak istiyorum, ve bunu atıyorsanız sonra ne. Bu durumda Yani, bu bazı $ var = 3. Yani biz hiç $ var kullanırsanız yerde, o olacak sadece Orada 3 koyarak aynı olması. TAMAM MI? Peki, herhangi bir değişken, sadece Dolar işareti, ne olursa olsun Eğer değişken aramak istediğiniz, ve eşit istediğiniz ne olursa olsun. Küçük soğutucu. Başlatılıyor yazmak için daha az Sağ değişken,? Bu herkese mantıklı mı? Sadece hızlı sözdizimi farkı C ve PHP arasındaki. Diziler PHP çok serindir. Onlara anahtarları verebilir. Yani yol düşünmek öyle ki biz hiç eğer Bir erişmek istedi bir dizi içinde element biz bilmek gerekli Bunun endeksi, değil mi? Yani biz biliyoruz ki C, biz İlk elemanı erişebilir Dizi dirseğini sıfır yaparak, ya da biz eğer ilk elemanı istiyorum, dizi dirseği on. Ve biz bir şey istedim Orada, biz sadece olabilir sürece, yineleme var biz aslında endeksi biliyordu. Gerçekten Bir şey PHP dizileri ile serin onlar konum ne olduğunu Biz ilişkilendirilebilir diyoruz. Bu yüzden ilişkilendirebilirsiniz Bazı değere bazı temel, ve biz aslında gidiyoruz amaçlara yönelik sana göstereceğim Biz ikinci kullanabilirsiniz nasıl. Ama temelde, hiç isterseniz Böyle bir diziyi başlatmak için, Bazı $ dizi var. Aynı şekilde Böylece >>, sadece var Biz oluştururken bazı değişken. Bu denilebilir ne olursa olsun istedim. Bu $ örnek olabilir. Sadece başka bir değişken. Ne yapar bir dizidir Burada var dirsek sözdizimi. Sadece normal bir C Ve biz gibi Bazı değere bazı anahtar var. Yani anahtarı1 Value1 gider, anahtar2 iki değer2 gider. Bu çiftleri ile ayrılır sadece normal diziler gibi virgül. Ancak. Büyük bir. Anahtar isteğe bağlıdır. Bunları kullanmak zorunda değilsiniz. Eğer yapmazsanız, o sadece normal. Soru? Ya da, ah. İZLEYİCİ: Peki, hakkında doğru. Nereden bellek geliyor? Aynı zamanda gibi aynı olabilir [Duyulamaz] ve yığından? Ayrıca PHP kullanarak mı? Onları birbirine bağlayan yaparken gibi mi? ALLISON BUCHHOLTZ-AU: PHP ile, biz eğilimi yok Nerede endişelenecek bizim Bellek geliyor. Biz çok fazla zaman harcamak yok Zaman bu konuda konuşurken, bu yüzden gerçekten bir şey değil hakkında endişelenmenize gerek. Yani tuşları isteğe bağlıdır. Aynı şekilde, eğer yapmazsam Bu ilişkili yapmak istiyorum, Sadece normal bir dizi nerede istiyorum dizi sıfır ilk unsurdur ve dizi bir ikinci eleman, tam olarak bunu yapabilirsiniz C de bazı olurdu gibi senin dizi olacak değişken, ve burada bu parantez eşittir. Evet. İZLEYİCİ: Bu var mı gösterimde aynı nokta. Gibi, ben bir dizi ++ gibi yapabilirsiniz, ve ikinci bir işaret. ALLISON BUCHHOLTZ-AU: Sen sanıyor- edebilirsiniz Peki, i, bazı yineleyici olabilir, Eğer i yapmak ++ ve bir yapabilirsiniz Aynı şekilde, i dizisi. Ama o kadar. Yani, bu durumda olduğu gibi, 1 dizisi 20 eşit olur. Indeksleme gösterimde aynı tür. Bu temelde sadece bir örtük bir şeydir Burada, bu 10 sıfır, sıfır diyor nerede, 1 2-30, 20 veya. Bunun için sadece örtülü tuşları bulunuyor. PHP ile ne gibi değişiklikler olduğunu Şimdi güce sahip olduğunu Bu tuşları yeniden atamak için İstediğiniz her şeyi. Yani bir şey burada. Yani sadece bazı örnekler var Ben çocuklar için yazdı Burada ki Ben hep örnekler gibi hissediyorum çünkü sadece soyut daha yardımcı olur. Yani, burada, bu durumda biz Bazı ilişkisel dizi var O, benim ilk isim Benim soyadı, ve ben Sadece hangi yankılanan am Burada tüm amaçlar için Burada çıktı yazdırmak için gidiyor. Ve Tamam, diyor. Değerini yazdırın ki Anahtar Allison diziye karşılık gelir. Ve ben de sizi gönderebilir Dersten sonra tüm bu kodu. Bu çalıştırdığınızda Peki, ne yapmak Eğer ne olacak sanıyorsun? Ne yazdırmak için gidiyor? HEDEF KİTLE: Sizin soyadınız. ALLISON BUCHHOLTZ-AU: Benim soyadı. It does. Tam burada. Çıktı. Biz bu ve biz değiştirmek Yani Bizim list-- başkası eklemek vardı Yani biz burada Emma var diyelim, ve biz son aşkına-- ilişkilendirmek Ben bu hakkı büyü Bakalım. İZLEYİCİ: Evet. ALLISON BUCHHOLTZ-AU: Evet. İZLEYİCİ: İyi bir iş. ALLISON BUCHHOLTZ-AU: Güzel. Yani şimdi biz burada bu var ve eğer biz soyadını bulmak istedik, Eğer orada var. Yani sadece düşünebilirsiniz Burada bu tuşa değiştirilmesi gibi. Sadece endeksi değiştirilmesi ediyoruz. O izin verir Yani sadece arama çok daha kolay bir dizi aracılığıyla. Sen endeksi bilmeniz gerekmez. Eğer aradığınız bu tuşu sürece bir yerde dizide var, PHP bulabilirsiniz ve dönecektir ile ilişkili değer. Bu yüzden size çok daha fazla verir senin diziler güç. Evet. İZLEYİCİ: Eğer iki anahtar varsa Aynı, size bir hata verecektir? ALLISON BUCHHOLTZ-AU: Bu evet, sana bir hata vermelidir. Bu biraz yapıyor mu Sizin için daha fazla duyu? Aynı şekilde, bir dizi bilgisi Burada herhangi bir anahtarları yok. Ayrıca bu sözdizimi Eğer isteyebilirsiniz çünkü edeceğiz, farkında olmak senin pset bu kullanmak zorunda. Ne zaman bir yapıyoruz eko, bu tırnak var, ve ne zaman başvuruyorsunuz Bir dizinin parçası, Bu olmak zorunda çevrelerindeki kaşlı. Bu, can sıkıcı tür ama Sadece bunu yapmak zorunda. Yani sadece bir şey akılda tutmak. Eğer hatalar içine çalıştırıyorsanız, Bu benim dizide var olduğunu biliyoruz ancak, bana hataları atıyor etrafında parantez koymayı deneyin ve çalışması gerekir. Yani burada, bu durumda, bu bir biz alışık normal C dizisi. Has üç, beş, altı, ve biz sadece İlk elemanı yazdırmak istiyorum, bu nedenle bu üç çıktısını gerekir. Ve ben bu yüzden, bütün bu kaçtın umarım hiçbir şey değişti. Biz, burada altta görmek Sadece üç yazdırır. Serin. Herkes için bir anlam ifade? Ilişkilendirilebilir diziler. Normal diziler daha çok serin. David göstermek mi neden-- Bu Pset6 PHP uygulaması tüm ders sırasında? TAMAM MI. Yani, ben sana göstereceğim. Ben T- kapalı bilmiyorum İZLEYİCİ: Geçen hafta yaptı. ALLISON BUCHHOLTZ-AU: Geçen hafta miydi? İZLEYİCİ: Evet. ALLISON BUCHHOLTZ-AU: Evet. Yani yazım gibi altı hatlarında yapılabilir Bu gücü PHP, ve parça ile Bu ilişkisel dizi nerede Sadece her kelimeyi yükleyebilirsiniz, ve true veya false eşit olması. Ve böylece oh söyleyebiliriz. Bazı kelime sözlüğe dönün ve o varsa, doğru dönecektir. Aksi takdirde, bulamazsınız o ve yanlış dönersiniz. Serin bir küçük şey çok nazik. Tamam. Yani bu ilişkisel diziler vardır. Onlar oldukça serin olduğunu. Ben gerçekten onları seviyorum. Ve tabii ki Ah bu--. TAMAM MI. Şimdi çalışıyor. Olabilir. TAMAM MI. Başka bir şey. Yani, eşitlik ile, sadece bir Serin şey akılda tutmak. PHP ile, çünkü o dinamik yazılmışsa, tipi ne bağlı olarak değişebilir Bunu koşuyoruz nasıl, çalıştırın. Aslında bazı serin var Sizi göstereceğim örnekler. Ama == sadece denetler tipi hokkabazlık sonra eşitlik. Eğer bir şey varsa Yani var karakteri gibi 1 ve 1 numara, PHP söylerdim Bu onun yüzünden eşit türlerini dengeleyebilir ikisi de eşit olana kadar, hangi belki durum için gayet iyi. Olduklarını görmek için gerekiyorsa değer aynı tür ve aynı tip, Bu === istiyorum. Ve ben herhangi bir sanmıyorum Bunu kullanmak gerekir vaka senin pset içinde, ama bir sürü Kim web sayfaları yapmak için gidecek son projeler ve şeyler için, bu kadar İyi bir şey == bilmek ve === için farklıdır ve bir iyi ayrım anlamak için. Tamam. So. Foreach döngüleri. Onlar bir yolu vardır Bir dizi boyunca yineleme. Yani, sadece diziler oldu gibi böylece PHP daha serin, yineleme için yolu Bir dizi boyunca, sanırım, aynı zamanda çok soğutucu olur ve çok daha güçlü. Yani bunun yerine oluşturmak zorunda i için bazı 0 ve ne olursa olsun eşittir ve o güncelleme i geçmesi gibi, Bu müthiş foreach döngüsü var. Yani burada standart general Bu iki yapısı. Yani ya bazı dizi foreach var değer olarak siz yineleme yapmak istiyorum. Yani bu dizinin adıdır başvurmak istediğiniz değişken, ve bu ne istediğiniz döngü içinde onu aramak için. TAMAM MI? Yani bu karşılık dizinin her elemanı, ve bu döngü içinde bu değeri kullanın. Ben bir örnek var. Ben örnekler çok daha iyi biliyorum. Ve böylece bu varsa olduğunu Hiçbir tuşları, bu yüzden bu gibi Biz sadece bir anahtar varsa senin dizi normal göstergesidir. Ya da bu durumda if da tuşları için hiçbir faydası var. Hakkında umurumda değil tuşları ve sadece değerleri ile yineleme istiyorum ne olursa olsun, yada bunların her biri için, bu iyi. Siz yapısını kullanabilirsiniz. Aksi takdirde, anahtarlar, bizim, eğer orada olan $ Değer sadece $ anahtar değeri değişir. Yani sadece bir anahtar değeri çifti değişir. Ve sonra anahtar $ başvurabilirsiniz Bizim döngü içinde ve $ değer. TAMAM MI? So. Örnek. O güzel olun. TAMAM MI. Yani bu bir var Burada, hangi bazı var mudur Ayrıca yapabilirsiniz Böyle bir dizi oluşturmak bazı değişken eşit olmasından parantez ile diziye, ya da sadece braket yapabilirsiniz. Sen dirseğini, ama gerekir bu bunu yapmak için başka bir yoludur. Yani burada biz üç bazı dizi var Bir, iki ve üç unsurları, ve bizim foreach var. Bu karşılık edin Biz yineleme ediyoruz dizi, ve biz diyoruz ne Bizim dizide her şey. Ve tüm bu yapıyor bu kadar olduğunu Her değerini yazdırmak için gidiyor. Biz çalıştırırsanız Yani, biz fark biz o değerini bir değeri iki, üç değere sahip. Ve aynı şekilde, tipik haliyle diziler, tek tip olması gerekir diziler bütün zorunda değilsiniz Burada aynı tip. Şimdi bazı int var. Biz iki dizeleri var. Yani diziler yapabilirsiniz çok daha güçlü olsun ve belki biraz Bit Messier, bağlı yolda ona bakmak istiyorum. Yani biz bu değiştirebilirsiniz ne olursa olsun biz istiyoruz. Biz değerini kullanın. Yani kullandığımız sadece standart bir şey. Ama, sadece önemli biz bilmek Biz istedik, eğer böyle sayacı diyoruz. Ve sürece onlar kadar maç gibi, Açıkçası herkes mutlu. Hiç bir PHP çalıştırmak isterseniz Bu komutu gibi bir şey çalıştırmak çizgi Bunu biliyor Burada, sadece, PHP yapmak ve ardından çalıştırmak istediğiniz ne olursa olsun dosya. Yani etrafında karışıklık istiyorsanız PHP ve daha mantığı ile ve gerçekten gerek yok Bir web tarayıcısı gibi görmek, Sadece bunu çalıştırabilirsiniz Böyle komut satırı ve yankı basacaktır ne olursa olsun dışarı sizin gibi. TAMAM MI. biz başka bir yolu bu gibi. Yani bu istediğiniz belki bir durumdur anahtarı ve değeri her ikisini de kullanmak, Ben bu gibi biliyorum Süper yapmacık örnekler ama onlar yapmak umuyoruz biraz daha net. Yani burada bazı dizi var Yine, ama bu sefer, yerine sahip Eğer herhangi bir tuşa olduğunu biliyorum. Biz bunların her biri için anahtarları var. Yani bir tane olacak olacak, b karşılık gelecek iki ve c üç karşılık gelir. Bu durumda, eğer biz bu şekilde yazmak, ikimiz de anahtar erişimi ve bunların her biri için değer. Peki bu çalıştırdığınızda, biz onlardan her olsun. Yani bizim tuşları yazdırır ve değerleri tekabül etmektedir. Başka serin bir şey olduğunu, ve ben biliyorum bu bir anahtar yoktu gibi, dedi ama her zaman örtük olan bir tuşu temsilci yoksa, çünkü anahtar, tabii ki, kayıt tuşları sadece dizinleri ya bu yüzden olabilir endeksleri Her zaman da bu birini yapın. Böyle. Ben yazdırılacaktır. Bu durumda Yani, fark ederseniz, bizim örtülü anahtarları Burada sıfır, bir, iki ve. Ve bu bir aynı şekilde, her zaman sadece, değer olarak r söyleyebiliriz ve sadece değere erişebilir. Sen umurumda değil senin tuşları, senin tuşları olsa bile, Eğer umurumda değil, eğer Onları, mutlaka yok senin foreach döngüsü onları koymak gerekir. Bu herkes için mantıklı mı? İZLEYİCİ: sadece Can çok anahtarları diyorsun? ALLISON BUCHHOLTZ-AU: Sizi Evet tamamen de bunu yapabilir. Aslında, bekle. Tut. Hayır dökersin-- olur Eğer anahtarı, isterseniz Eğer değer anahtarı yapmanız gerekir. HEDEF KİTLE: değeri ekleyin. ALLISON BUCHHOLTZ-AU: Evet. Ve sadece değer hepsi asla kullanmayın. İZLEYİCİ: Tamam. ALLISON BUCHHOLTZ-AU: Eğer Sadece, orada bir şey koymak Eğer olduğunuzu varsaymak gidiyor değer, değil anahtar bahsediyoruz. Büyük soru. Tamam. Serin. Aslında, bekle. Bana ne görelim. Yani önce biz, yazı içine almak ve almak Sadece adamlar sana biraz göstermek istiyorum dinamik var nasıl tür serin olan yazdınız. Ben tüm bu var. Ben, buraya dört örnekler gibi var ve sana bütün bu kodu göndereceğiz Dersten sonra. Yani burada biz bazı değişken a var. Bu doğru, sadece 1 artı 1 değil? Ve biz bu ne yazdırmak için gidiyoruz eşit, ve sonra bazı tip var. Ve kimse herhangi bir tahmin var Ne hakkında bu olacak yazmanız? İZLEYİCİ: Bir int. ALLISON BUCHHOLTZ-AU: Evet, bu bir int var. Yani sadece bunları birbirine ekler. Bu bir int var. Tüm iyi. Yani bu bir sonraki, biz var dizeleri gibi ne görünüyorsun. Bu çalıştırdığınızda, oh, düşünüyor. Aslında çalışıyoruz sadece şeyler ekleyin. Sadece karıştı. Yani sadece sizin için bunu düzeltmek için gidiyorum. Sen int anlamına geliyordu. Ben int demek biliyorum. Peki bu yapabilirsiniz yollarından biridir bkz PHP kendi başına bir zihin vardır. Olsa bile biz açıkça söyledi, bak, bu olanları dizeleri vardır. Ben dize bir demek. Ama ah, diyor, ama Eğer bunları eklemek için çalışıyoruz, böylece bir tamsayı anlamına gerekir. Sadece bu konuda bana güven. Yani o bir tamsayı olduğunu söylüyor, ve normal gibi onları ekler. Eğer gidiyoruz Yani eğer tür serin senin şeylerle tembel olsun, ya bir şey eklemek istiyorum. Harika bir şey olduğunu, eğer Eğer, pset2 geri düşünüyorum Kullanıcı bir şeydi Biz düşünüyorum, doğru, girilen Bir karakter ya da ilk bir dizedir. Şimdi açıkça gerekmez oh, bu bir int yapmak, demek. PHP sadece oh yeah, gibi olurdu. Ben bir int anlamına biliyorum. Aptal sen. Bir dize demek istemedim. Şimdi, bu durumda So Biz ne bu var Siz burada ne yapacak sizce? Biz bir dize ve şimdi bir int var. İZLEYİCİ: Hala bir int var. ALLISON BUCHHOLTZ-AU: Hala bir int var. Ve neden ben koymak istiyorum bu-- Daha fazla örnekler, ancak bu kişinin eğlenceli. bunu yapıyor sebebi ise Eğer bir şeyler eklemek için çalışıyoruz gibi var. Eklemek için çalışıyoruz Yani eğer şeyler, ben, varsaymak gidiyorum makul, bir şey var Eklemek ki makul. Ben sadece ona bir int yapacağım, ve ben biz sadece her zamanki gibi, bunu eklemek için gidiyoruz. Sonra, aynı şekilde, bir Siz fikir edinmek düşünüyorum. Biz de burada, bu bir tane var Sadece chars ve aynı şeyi yapar. Bu aptal kullanıcı, gibi. Eğer bir int istediğini biliyorum. İZLEYİCİ: Biz bir mektup koyarsanız, olacak o [duyulamaz] değerini yapmak ya da değil? ALLISON BUCHHOLTZ-AU: Oh, Bu iyi bir soru. Görelim. Hayır, hala bir int. Bu yüzden biraz deli. Bu size PHP göstermek için sadece tür olduğunu bazen irrational-- Değil davranabilir tamamen mantıksız, ama davranabilir Eğer gerçekten sanmıyoruz şekilde. Yani, ne şüphe, kontrol şeyler türleri. Bu fonksiyon, gettype Süper yararlı olabilir. Genellikle, bir şey yapıyoruz Artı veya herhangi bir matematiksel operatörler, bir şey sanacak Makul sadece bir int. Yani, char, 1 veya a sahip dize 1 veya 1 gerçek int, o varsaymak gidiyor. Eğer typecasting istiyorsanız bir şey, tamamen yapabilirsiniz. Sen gibi bir şey yapabileceğini Burada çift, ben inanıyorum. Ve bu durumda, oh, söyleyecek. Ben bu çift, çünkü yapacağız açıkça bir çifte olduğunu söyledi. Her zaman açıkça can PHP şeyler yapmak, ama. İZLEYİCİ: Bekleyin, neden bir artı 1 var? ALLISON BUCHHOLTZ-AU: Oh. Orada. Sadece bir yankı oldu. Bu benim hatamdı. Yani, açıkça bunu söyleyebilirim Belirli bir Çeşidi şey yapmak, ama çoğu zaman, o gidiyor çalışma zamanında dinamik olarak karar. Bu yüzden geçiyor tutmak için gidiyor ve Tamam, gibi olacak. Ne en yapar Bu anlamda olmak için? Aslında bir dize olmalı? Bir int olmalı? O bir float olmalı? Bir çift olmalı? Ve sizin için karar verecek. Yapacak zorlayabilirsiniz Ne istediğinizi, ama- İZLEYİCİ: o yavaş yapar mı? ALLISON BUCHHOLTZ-AU: Peki, Yani, C derece verimli. Ben çünkü kesinlikle yavaş olduğunu düşünüyorum gidiyor gibi sürecine sahiptir. C ben hızlı neredeyse eminim. Ama açıkçası orada bir Burada serin şeyler çok biz hakkında endişelenmenize gerek yoktur. Yani, biz arıyoruz eğer Bir dizi boyunca, biz Aslında oluşturmak zorunda değilsiniz dizi üzerinden bazı arama. Biz sadece anahtar için sorabilirsiniz ve PHP bunu ilgilenir. Serin. Korku. Benim örnekler sonu gibi görünüyor. Siz hiç gidiyorsun Şimdi unutmak. Oh, PHP sadece olduğunu gibi olacaksın hayır, hayır, hayır gibi o anne gibi. Ne demek istediğimi biliyorsun. Ne istediğini biliyorum. TAMAM MI. Yani bu, umarım, bilgisayarınız için yararlıdır pset, başından en azından, Tüm ilgili hakkında, çünkü kullanıcı formları ve şeyler. Yani iki yolu vardır ki PHP ve HTML ile bilgi etrafında geçmek ne zaman biz geçen ediyoruz Bu iki şey arasında. Bu yüzden geçirilir hangi $ _GET, var URL yoluyla, ve biz, $ _POST var mesajında ​​taşınan olan Vücut ve bu yüzden gizli düşünün. Ama anlamak için bir şey olduğunu Bunların hiçbiri güvenli olarak kabul edilir. Eğer birisi varsa kim gidiş mesajları yakalama ileri ve geri size arasında Sunucu, onlar hala bu verileri alabilirsiniz. Onlar sadece biraz daha bakmak zorunda. Gerçekten bu kadar ki- değil Sadece URL'den gizli. Bu, ileti gövdesinde hala eğer öyleyse olsa, onlar erişebilir, gerçekten sadece da-- var Bu fark gibi şey arasında dışında yazılmış olan Bir zarf ve bir şey olmak içinde bir kağıt parçası üzerine yazılmış. Bu zarfı açmak zor değil ve iç kağıt parçası olsun. Verilen bu çok daha kolay olurdu Sadece dış okuyun. Ama bu nasıl olabilir var tür bu düşünüyorum. Bunlardan hiçbiri olan Gerçekten güvenli kabul. TAMAM MI? Gerçekten değil Verilen senin pset için önemli Eğer ilgili değil, çünkü ticari sır ile, ama tipik olarak bir bulunuyor şey biz gerçekten insanlara nedeniyle vurgulamak istiyorum oh, iyi, gizli olduğunu düşünüyorum. Süper güvenli olmalı. Hayır. Bu güvenli değil. Sadece biraz var daha az güvensiz, sanırım. Ya da güvensiz. Yani biz aslında bir örnek var. Bildiğiniz gibi, ben seviyorum örneklerle daha öğretmek. Bu daha çok yardımcı olur gibi hissediyorum. Yani, biz burada bazı basit form var Aslında hangi, siz hiç ise PHP hakkında karıştı, Bu, gerçekten küçük ancak php.net aslında Gerçekten iyi dokümantasyon. Ben gerçekten seviyorum. Ben bu hazırlanmak için kullanıyordum bölüm, bu yüzden senin için veteriner bunu yapabilirsiniz. Bu onlardan bir örnek nasıl $ _POST ve $ _GET çalışmaları. Tek fark, Bunlardan ikisi arasında, bilgi, burada ayrıca bu URL olsun, görüntülenen veya vücut içinde, aynı zamanda yöntem nedir. HTML-- This için formda Yani Bir çok basit bir HTML formudur. Herkes ne yaptığını söyleyebilir? HEDEF KİTLE: adınız ve yaş isteyin. ALLISON BUCHHOLTZ-AU: Kesinlikle. Bu yüzden çeşit eylemleri var. Yani bize bazı hareket formu olduğunu biliyorum sağlar. Ve ne ne olacak Biz Gönder vurduğunda, bir, o, action.php aramak için gidiyor Bu ne olduğu, ve onu aramak için gidiyor $ 'POST bir yöntem. Bu durumda Yani senin bilgi gizlidir. ve sadece senin adın bazı bulunuyor adını verdi giriş tipi, bazı yaş, Giriş tipi biz de diyoruz yaş = "text". Ve biz Gönder vurmak sonra eğer, Action.php arayacak gönderin. Yani biz aslında vurduğunda biz Gönder bu haberi olduğunu biliyorum, başına, ve biz aslında bu göreceğiniz senin Sorun set umarım yaparız ki biraz yürüyelim olsun. Ve burada yapıyor tüm POST bir süper küresel değişkendir Biz ders sırasında konuştuk ki. Ve yaklaşık $ _POST olduğunu düşünüyorum nasıl o sadece bir ilişkisel dizi var. TAMAM MI? Yani bu bazı anahtar bu, bir Bazı anahtar, ve ne olursa olsun Kullanıcı girişi olan bir Bunların her biri için değer. TAMAM MI? Yani eğer ne bu diziyi yazmak vardı Aslında biz sağdan gibi görünüyordu Formu teslim, biz-cekti var, bu, bizim $ _POST olduğunu ve bazı dizi bazı isim var burada. Sadece benim adını yapacağız diyelim, ve sonra, 21 bazı yaş var. Woo. Yani bu, tüm $ _POST olmasıdır. $ _POST Tamam, sadece bir ilişkisel dizidir? Sadece Tamam, diyor. Biz ettik şeyler nelerdir kullanıcıdan istedi? Değişkenler nelerdir biz etrafında geçen konum Bu formda için sordunuz ki? Ve sonra ne değerleri ile bağlantılı olarak? Yani bu durumda, eğer bunu teslim Ally bir isim ve 21 bir yaş, Bu $ _POST benziyor ne. TAMAM MI? Ve bu ne bu PHP dosyası erişimi vardır. Tamam? Bu durumda Yani, bu gibi bir Bizim diziden başka bir şey alıyorum. Bunun yerine bir indeksin bizim Dizi, bazı anahtar var. Yani bu verecek Beni anahtar adı değerdir. Yani bu Ally olacak, ve Bu beni burada verecek $ _POST nerede değeri Anahtar 21 olacaktır yaş vardır. Sen olacaksın Bu biraz yapıyor. Evet, hangi bölümünden? İZLEYİCİ: Eğer olsaydı alt kısmında işaret. ALLISON BUCHHOLTZ-AU: Bu alt bölüm? TAMAM MI. Yani, bu bizim HTML anlamak formu ve bazı yöntem $ 'POST var, hangi konularda. Bu, aynı zamanda, $ _GET olabilir ancak bu amaç için, biz sadece $ _POST olduğunu söylemek için gidiyoruz. Bu formu gönderdiğinizde, bu adında bir PHP dosyası bir parçası. Yani bu PHP dosyası artık çalıştırmak için gidiyor Bizim HTML bilgisi verilen Form. Peki ne yapıyor ne biz, bir Bizim HTML formundaki Gönder vurmak, size bu süper küreselini geçen ediyor, hangi sadece bir ilişkisel dizidir. Bu var. Sadece dosyaya bu geçen gibi. Ve ne diyor Tamam, burada $ _POST var olduğunu. Bu sizin ilişkisel dizi var. Ne istediğinizi onunla yapın. Ve biz Tamam, söylüyorsun. Isim de bana değer ver, ve bana yaşta değer vermek. Peki bu sadece tuşlar, ve bu bizim dizidir. Bu mantıklı mı? İZLEYİCİ: Mhmm. ALLISON BUCHHOLTZ-AU: Başar. HEDEF KİTLE: Eğer yeniden varsa Form sadece veriler üzerinde yazar? ALLISON BUCHHOLTZ-AU: Evet. Mhmm? İZLEYİCİ: Neden var bir int olduğunu belirtmek için? ALLISON BUCHHOLTZ-AU: Bu durumda, Kullanıcı sadece bir int olmak için zorluyor. İZLEYİCİ: Tamam. ALLISON BUCHHOLTZ-AU: Bilmiyorum Aslında bu ihtiyaç olsaydı, ancak amaçlar için, bu sahada Onlar istediği bir int olmak. Onlar sadece tiplemeleri ediyoruz. Belki onlar gibi kullanıyorlar Daha sonra başka bir şey. Bu sadece bir parçası olduğunu. Evet? İZLEYİCİ: Ne yazdıysanız 12, T-W-E-L-V-E, yaş için? ALLISON BUCHHOLTZ-AU: Eğer onlar int olarak bu tip denediniz mi? HEDEF KİTLE: Evet. ALLISON BUCHHOLTZ-AU: Ben Bu ne unutma. Ben dönüştürmek için deneyebilirsiniz düşünüyorum Bir int ilk karakteri, veya değeri almak ve dönüştürmek o, ama ben tam olarak ne unutun. Yazmak için eğlenceli bir şey Bir program ve deneyin. Bir kaç hatları yapın. Tamam, bu nedenle bu ana biridir Eğer gidiyoruz şeyler yapıyor olmak. Umarım yürümeye gidiyorum dosyaların bir çift ile Eğer çocuklar ile pset gelen. Biz gidiyoruz gibi görünüyor zaman var, bu yüzden bunu yapabilirsiniz. Ama olacaksın bir çok şey yapıyor Bu gibi sen geçen nereye bir HTML formundan şeyler Bu PHP forma o zaman olacak Talimatlar, bazı dizi yürütmek Resim veriler üzerinde. Bu anlamıyla pset özü var. Evet. İZLEYİCİ: type = "submit" diye HTML formundaki bir düğme yapar. Çağırmak için bir yolu var mı Bu düğme bir şey? Yani = "submit" adı gibi olurdu? Ya da düğme sadece olacak Şu anda boş çünkü siz sadece bunu bir tür değil, bir isim verdi. ALLISON BUCHHOLTZ-AU: Bence bu sadece şu anda boş olacak. Biz kesinlikle bakabilirsiniz pset, biz kesinlikle olacak çünkü bakıyor şey tür kayıt. Ama evet, kesinlikle belirtebilirsiniz Eğer düğmesini istediğiniz metni. Tamam, bu nedenle SQL. Eğer satın almadan ve satıyorsanız hisse senetleri, o izlemek gerekir. Yani biz bunu gidiyoruz yoludur sadece bir veritabanı SQL ile. Bir tablo nerede olarak düşünün Tüm bu bilgileri tutuyorlar senin farklı kullanıcılar hakkında. Ve siz aslında Bunlardan birini oluşturmak için gidiyor. Oldukça serin. Ve sadece dört ana şeyler vardır Bu pset için bilmeniz gereken, ve onlar güncelleme, bu yüzden temelde veri güncelleme. Yani zaten var olduğunu varsayar. Orada değilse, o gidiyor Bir hata ile vurmak, belki kontrol etmek istiyorum. Ve ben on-- güncellenir Ben vaktim aslında- olmalı, Ben bu birkaç yazacağım. Ben aslında sana adamlar a verecek numunenin çift, tam SQL komutları, Bu sadece ana çünkü olanlar, ancak onları bir arada katılabilirsiniz. Yani bunu yapacağım ve ben göndereceğiz Bu notları ile size işaret. Bir şey güncellemek istiyorsanız Yani, Eğer güncelleme şeyi anlatmamız gerekiyor ve nerede bunu güncelliyoruz. Yani tipik bir SQL komutu güncelleme olacak Şey şey eşittir kimliği. Ya da benzeri güncelleme adresi nerede ID 3 eşittir, ve bu adres alanı güncelleştirmek Üç bir kimliği vardır senin kullanıcı. TAMAM MI? Yani SQL ve W3Schools'da giderseniz, Onlar müthiş örnekler var. Aslında, ben çekin olabilir biraz bazı kadar. Ve sonra içine yerleştirin, sen sadece Orada belirli değerleri ekleyerek. Eğer bazı yeni oluşturmak için çalışıyoruz Yani eğer giriş, yeni bir kullanıcı oluştururken, böylece, içine insert yapabileceğini veritabanı denir ne olursa olsun, ve tüm bu değerleri olurdu. Sonra seçeneğini var görüntülemek için değerleri seçin. Eğer kontrol etmeye çalışıyorsanız Yani Bir kullanıcı var ya sen görmek Belirli kapmak için çalışıyor Bir kullanıcı hakkında bilgiler Eğer seçim kullanarak gidiyoruz. Ve sonra silin, sanırım, Orada oldukça basittir. Sadece silme konum Tablodan şey. Ve aslında, beni aslında çekin izin Sizin için bazı örnekler kadar. Ah benim 61 sayfa var, bak. Bu yüzden W3Schools'da giderseniz, umarım tekrar kalmış. Evet, bunu seviyorum. Biz SQL gidin. Yani, bu burada bir şey. Yani, bu çok basit bir SELECT. Dostum, ben bu fonksiyonu seviyorum. Yani, SEÇ olabilir müşteriler DAN bazı alan. Bu durumda, müşteri değinmektedir Kullandığınız çevrimiçi veritabanı, ne olursa olsun bu yüzden masa denir ve Yıldız her şeyi seçmek anlamına gelir. Bana her birini ver. Peki, ben sadece sana adamlar a vermek istiyorum Bu nerede örnekler çift. Bu yüzden SEÇ, UPDATE var. Yani burada genel sözdizimi türüdür. Yani UPDATE, ne olursa olsun senin tablo adı, ve sonra SET aslında gidiyoruz nerede Eğer değiştirirken hangi verileri olmak. Yani bu Let göre-- olabilir Beni burada bir örnek olun. Yani bu şey olmak gidiyor Tamam. Yani bizim için küçük bir veritabanı oluşturuldu. Biz bazı kimliği zorunda gidiyoruz, Bazı yıl, ve bazı adlandırılmış. Yani kimlik bir yıl '15 olacak, ve biz sadece bunu bana yapmaya gidiyoruz. Kim ikinci olmak istiyor masamıza kişi? Herkes. Ben sadece Emma seçmek için gidiyorum Adınız en hızlı çünkü. Emma, ​​hangi yıl olduğunu? İZLEYİCİ: Hangi yıl? ALLISON BUCHHOLTZ-AU: Evet. İZLEYİCİ: '16. ALLISON BUCHHOLTZ-AU: '16. Sadece olmak için gidiyoruz Bugün benim kobay. Tamam, bu yüzden bu iki kişi var. Aslında, bana yapalım. En Onu yanlış duydum diyelim, ve ben Aslında o bir yıl daha genç olduğunu söyledi. O '17 bulunuyor. Biz eğer, burada yapmak istiyorum ne Emma'nın yıl güncellemek istedim bu kullanarak doğru ne biz çok zevkli olur do burada üzerinde GÜNCELLEME verilerini söyleyebilirim olduğunu. Ve bu tek bir satırda olabilir, ama olabilir Burada alanı için sıkıştırılmış ediyorum yana Ben buraya yazmak için gidiyorum. Ve biz ayarlamak istiyoruz. Yani bu bizim güncelliyoruz tablodur. SET hangi sütun olacak ya hangi verilerin aslında değişiyor. Ne değişiyor ediyoruz, böylece yıl biz SET yıl = 16 söylemek için gidiyoruz ve sonra NEREDE söyler hangi kullanıcı veya ne satır biz aslında bu güncelliyoruz. Peki? Biz burada iki seçeneğiniz var. İki nelerdir? Bunlar doğru, eşsiz? Yani bizim adları benzersiz ve bizim kimliği, benzersiz böylece iki seçenek nelerdir biz bu nerede yapabiliriz? Ben sana bir tane vereceğim. Biz yapabiliriz NEREDE kimliği = 2, ya da biz neler yapabileceğini Burada bu paradigma kapalı gidiyoruz. İZLEYİCİ: [duyulamaz]. ALLISON BUCHHOLTZ-AU: Kesinlikle. Yani biz de = Emma adını yapabilirdi. Ve bu iki çalışacak. Bu koştu ve, Tamam, gibi olurdu. Biz bunu değiştireceğiz. Bunu, aslında 16 konum Şimdi tekrar sağ konum. Tamam, bu nedenle bu olurdu senin pset süper yararlı nerede belki birisi karar Apple 100 hisse satın almak için, ve sonra onlar sadece şaka gibi idi. Ben sadece 90 hisse istiyorum. Ve böylece onlar 10 satmak, bu yüzden hisse miktarını güncellemeniz gerekir sahip oldukları. Yani, tablo güncelleme, hisse senetleri güncellenmesi. Tamam. Yani orada bir örnek var. Bu güncelleme sözdizimi. SİL. Ah. Bizim diğeri içine yerleştirin. Bu yüzden, burada bir çok benzer. Biz sadece bu, söyleyebiliriz durumda en Birini ekleyelim. Biz Ben'e bu sefer ekleyebilirsiniz. Biz INTO INSERT, ve biz yapmak Bizim tablonun adını istiyorum. Bu durumda, veri var. Ve sonra biz sadece istiyorsanız, gidiyoruz DEĞERLERİ söylüyorlar, ve bunu için gidiyoruz ne , aslında emin olmanız gerekir edilir Her satır için bir şey var ki İstediğiniz. Sadece sırayla koydum. Bu durumda Yani, biz 3 söyleyebilirim. Sen, doğru Ben 18 mi? İZLEYİCİ: 19. ALLISON BUCHHOLTZ-AU: 19? HEDEF KİTLE: 19. ALLISON BUCHHOLTZ-AU: Sizin yılki '19? Haklısınız, '18 yılında mezun? HEDEF KİTLE: Ah. ALLISON BUCHHOLTZ-AU: Mezuniyet yılı. HEDEF KİTLE: Tamam. ALLISON BUCHHOLTZ-AU: Senin gibi oldu Zaten planlıyor Burada bir yıl çıkarmak? Yani, '18, biz Ben. Bu durumda Yani, içinden gitmek istiyorum, Burada yeni bir girdi yaratacak. Serin. Çok kötü değil, değil mi? Bu bir sürü gidiyor Sizin için sözdizimi. Kavramlar, gelmeli umarım, nispeten kolay. sözdizimi tek şey Bu biraz zor olabilir. Ve sonra bizim son biridir Fark olarak DELETE, ve, Ben çok bu web sitesini tavsiye ediyoruz. Bu harika. Şeyler bir ton var. Yani, aynı şekilde ki biz DELETE bazı GÜNCELLEME çok benzer. Bunun yerine Veri Sil var. Bu durumda, son yüzden bir ben buraya yazacağım. En biz beni silmek istediğini varsayalım. Ben bugün yazamam. DELETE ne olursa olsun Biz konum tablo, veri. Ve üç yolu aslında vardır Biz beni silmek için seçebilirsiniz. Siz bana söyleyebilir ne üç yolları, sen beni nasıl silebilir edilir? ID 1 eşittir kimlik, 1 eşittir. Yıl eşittir nerede yapabileceğini 15 ya da adı Allison eşittir. Tabii ki, sadece orada Üç farklı yolu, Bu nedeniyle tüm özeldir. Tipik sizin tabloda, ve özellikle pset olarak, Eğer birini ayarlamak için gidiyoruz Bu sütunlar benzersiz olması. Muhtemelen bazı benzersiz kimliği olacak sayı, aslında have-- çünkü eğer, aslında sen iki atalım olabilir. O izin verirseniz ben hatırlayamıyorum Aynı şey iki tane var. İZLEYİCİ: Sonra olur onların davranışlarını değiştirmek. ALLISON BUCHHOLTZ-AU: Bu olur. Bu, beklenmedik bir davranışa neden olacak Eğer gerçekten tahmin edemez. Yani kesinlikle bir sütun olacak veritabanınızda, benzersiz olacak ve genellikle ayarlayabilirsiniz oluyor böylece benzersiz bir kimliği gibi, ve sadece her güncellenir zaman tabloya eklemek. Her zaman yeni bir oluşturmak satır, otomatik olacak artırmak ve ona bazı benzersiz kimliği vermek. Yani pset için ipucu. TAMAM MI. Yani SQL olduğunu. Şimdi biz hakkında konuşmak için gidiyoruz içinde bağları en son şey, aslında oldukça iyi olan senin pset, ileri gitmek istiyorum. MVC, Model View Controller Yani. Bu gerçekten sadece bir yoludur şeyler organize tutmak için. C ile aynı şekilde biz sizi sormak fonksiyonları ve ayrı şeyler yaratmak için dışarı, bunu ayırmak için sadece bir yoludur kodu, web geliştirme yapıyoruz. Yani çok şeyler yapar daha şık ve basitleştirilmiş, ve bu aslında yoludur hakkında payar aslında bu Hoşuna mı yani, kurmak ya, bunu öğrenmek için gidiyoruz değil, bile sanmıyorum bunu öğreniyorsun. Ve bir şey de yapmanıza olanak sağlar, bir Bir kullanıcı işbirliği gibi çok daha fazlasını. Ben CS50 aldı Yani, ben yaptım benim son proje için web sitesi, ve ben, ben olacak gibi oldu Veritabanı şeyler işlemek. Ben son şeyler geri yapmak, ve sen benim Ben onunla alıyordu oda arkadaşı çok iddialı oldu. O sahne tasarımı yapar, ve o tüm oldukça yapmak istedim. Yani tamam, gibiyim. Sen bakabilirim Tüm ön uç şeyler. Ve bir şey gibi, bir biz çok yakında göreceksiniz Bu modelin görünümü denetleyicisi yapmanızı sağlayan Tamamen böylece kodunu ayırmak Ben işe yarayabilir ki sayfalarımızı uygulanması, ve manipüle bilgiler Bizim veritabanlarında, ve o sadece bir şeyler yapabilir güzel, ve biz, hem de gerçekten mutlu ne yapmak lazım çünkü biz de istedik ve biz diğeri ile uğraşmak zorunda değildi. Yani biz birlikte dışarı asılı. Biz takılmak ister. Ben sadece uğraşmak istemedim tüm CSS ve HTML şeyler. Ben gibi, bunu yapmak oldukça oldu. Ben veritabanı ile uğraşmak gerekir. Yani biz gerçekten bu var Serin, büyük küçük masa. Ben tabloları seviyorum. Ve temelde, modeli yapabilirsiniz hakkında sadece veritabanı olduğunu düşünüyorum. Ben benim proje için örnek insandı. Tüm depolama hakkında bilgi ve verileri organize. Yani biz sonuna geri çağırmak için ne gibi. Yani siz ile ilgili olacak SQL veritabanı ve veri dosyaları. Bu senin model. Sizin bakış, gibi olabilir tür, mantıklı, düşünmek kullanıcı aslında gördüğü şeydir. Bu kullanıcı arayüzü bulunuyor. O bakan ön bileşen var. Yani ne benim oda arkadaşı her zaman üzerinde çalışmak lazım. O süper mutlu oldu. Yani HTML hepsi, ve çok az PHP var. Sadece hakkında konuşuyor kullanıcıya görüntülenen ne, Biz Hipermetinde bahsediyoruz. Biz nasıl görünüyor bahsediyoruz. Biz, mantık bahsetmiyoruz veya koşullar, ya da etajer. Tüm bu ele alır kontrolör tarafından, tamam mı? Kullanıcı isteklerini işler Yani ve bilgileri alır. Bilmeniz gereken Yani bir şey senin pset, senin görüşlerinde, yani aslında her şey görüntüleniyor bilgiler yapım olmamalıdır senin modeline çağırır. Tüm bu işlenir senin denetleyicisi. Sizin denetleyicisi biridir Bu ikisi arasında arabuluculuk. Bu modeli soracaktır Belirli bilgi için. O üzerinde yineleme yapabilirsiniz bilgi, anlamaya Aslında ne gerek o, onunla ne yapacağını, ve sonra geçecek sadece bilgi size Bunu yazdırmak için görünümüne gerekir dışarı veya OK, kullanıcıya göstermek? Biz görünümü olarak görmek için ne olursa olsun, kullanıcıya karşı karşıya böylece çok daha kolay olacak Onları anlamaya için, oh, yapıyoruz eğer senin modelin bazı çağrı ve tüm kullanıcılar için soruyorsun A harfi ile başlar kim, ve siz, görünümünde o yapıyoruz web sayfasını görebilirsiniz herkes potansiyel olduğunu erişebilir. Mutlaka istemiyorum. İnsanların görmek istemiyorum daha veritabanına daha ne onlar görmem gerektiğini. Sadece kendi özel tercihleri. Bu nedenle kontrol cihazı işler. Yani .php dosyaları hepimiz göreceğiz ki Eğer denetleyici dosyalarınızı düşünebilirsiniz. Ve bu sen nerede Gerçekten olacak senin veritabanından şeyler soran, ve yineleme ya da manipüle gerektiği şekilde önce onu geçen görülebilmesini. Bence, gerçekten harika bir pset var. Ben biraz daha fazla olduğunu düşünüyorum anlık haz gibi, Bir uygulamaya çünkü küçük küçük şeyler çok, ve her şey kendi kendine çalışması gerekir. Her şeyi, gibi değil eğer çalışırsa ve sonra bakın. Yazılımı ile gibi Eğer gibisin nerede, ben değilim Gerçekten bu umut Doğru, öyle değil çünkü eğer, Bir sürü orada vardır Yanlış olabilir yerleştirir. Tamam. Sadece dedim emin her şeyi MVC hakkında söylemek gerekiyordu. Evet. Serin. Peki CS50 Finans, biz var Bizim modeli, ben sadece burada dedi. Bu MySQL ve phpMyAdmin olacak. Ben kesinlikle bu yüzden bu kadar indirebiliriz Siz ona bakmak için bir şans. Dediğim gibi, bu SQL önce veritabanı, senin model olarak görür ve biz sorguları dediğimiz gönderebilirsiniz, hangi şeylerden sadece bu tür vardır. Bunlar sorgu denir. Bu sadece konum bir sorgu, bir bir şey için veritabanı soran, ya, sizin değiştirirken bir şekilde bir veri tabanı. Yani tüm bu. Ve sizinle bunu fonksiyonlar burada size verdim. De işleyebilirsiniz bunları elle phpMyAdmin, hangi biz kesinlikle bir göz atabilirsiniz. Ben bir örnek oluşturmak olacak Eğer çocuklar veritabanı. TAMAM MI. Böylece, kontrol cihazı. Bu durumda, eğer Yani haber, bu tüm PHP. Bu tür dikkat edin senin denetleyici ana şey Çoğunlukla PHP olmasıdır. Eğer denetleyicisi HTML varsa, Orada neler oluyor gerçekten emin değil. Aynı şekilde Dediğim gibi, eğer [duyulamaz] HTML ile yönetmek, Gerçek ilgileniyorum. Yani biz burada ne var Eğer bazı sorgu olması. Sorgu bir fonksiyonu olduğunu biz çocuklar için inşa. Bu sorguları yapmak için bir sarıcı gibi Biraz daha kolay veritabanı. Bunu olmasaydı, sözdizimi için aslında SQL veritabanı konuşuyor farklı olabilir, bu yüzden istiyorum sadece çocuklar için kaynağı. Biz hayatı kolaylaştırmak istiyorum. Peki bu durumda, can siz Bu hat ne yaptığını söyle? Bazı tablodan SEÇİN *. İZLEYİCİ: Seçiniz Bu tablodan her şeyi. ALLISON BUCHHOLTZ-AU: Kesinlikle. O söyleyerek Yani, bana ver Bu tablodan her şeyi. Ve bunu saklamak oluyor Bazı değişken sonucu. Sonuç eşit değilse ve bu, diyor false, o zaman biz bu her birini. Yani eğer hesabınızla eğer bir şey, burada yok tablo boş ya da sadece yok, false dönmek için gidiyor. Bu durumda Yani, biz sadece yapıyoruz emin şey aslında Bize geri döndü. Ve sonra burada, biz var Bizim büyük foreach döngüsü biz üzerinden yineleme konum bizim Sonuç, ve biz satır aradığınız, ve biz bu şablonu hale demek nerede veriler bu sonucudur. TAMAM MI? Yani sadece işleme oluyor Sonuç satır. Aksi takdirde, bağırır. Bu nedenle, bu bir örnektir kontrolörün. Gördüğünüz gibi, bu Sadece üzgünüm, evet duymak yüzden? İZLEYİCİ: Neden orada satır önce işareti? ALLISON BUCHHOLTZ-AU: Satır önce imi. Biz sadece yineleme vardır. Bu da bir adres var of-- İZLEYİCİ: Yani C referans gibi. ALLISON BUCHHOLTZ-AU: It aslında sen emin Bir kopyası orijinal değil değiştirerek. Bu C nerede ile aynı şekilde var Biz sadece, burada referans geçiyoruz emin olmak için. İZLEYİCİ: == öyle değil mi yerine değil = PHP? ALLISON BUCHHOLTZ-AU: Bu == değil. İZLEYİCİ: C eşittir Çünkü sadece-- olduğunu ALLISON BUCHHOLTZ-AU: Bu sadece = değil. Hayır, evet. Bu == değil. PHP == denetler Çünkü toggle ile eşitlik, verilen, ama ekstra kalite. Yani, PHP == değil. Bu küçük biri sözdizimi farklılıklar. Evet. Yani biz sadece yineleme ediyoruz Her bir satır ile, ve render sizlerle eğer spec gezip, sadece başka bir işlevi aslında tüm HTML işlemek için gidiyor ve görüntülemek senin Sizin için web tarayıcısı. Tamam. Yani, biz denetleyicileri düşünmek istiyorum iş mantığı kolları olarak ne. Burada gördüğünüz gibi biz olduğun yerde, bu tablodan bizim veri alarak, Biz bir şekilde bunu işliyoruz ve sonra onu geçiyoruz. Bazı şablon oluşturma ne zaman, Bazı şablon bizim görünümüdür, ve biz sadece bunu geçirerek o almalısınız veri. Tüm verileri. Biz almak istiyoruz Sadece veri. TAMAM MI? Işlemden sonra Temel veri. Peki bu görüş, bu olduğunu Elimizdeki toplamı şablonu, ve tüm bu isimli yapabilirsiniz yapıyor senin görünümünde küçük bir PHP var. Bu görünümde bir hayır PHP gibi değil. Sadece olmalıdır Çok görünümünde minimal PHP, ve olmamalıdır Sizin görüşünüze göre sorgulama. Sen konuşurken asla senin görünümünde veritabanı. Bu büyük bir fark var. Peki burada oluyor biz, bir Satır yineleme var PHP. Bu durumda Yani, biz bu yana Her satır yineleme ve bir şey render, bu oldu Muhtemelen bir iki boyutlu bir dizi gibi bazı satır var nerede olan, kendi içinde bir dizi, Biz yineleme çünkü Bunun üzerinden tekrar. Ve biz sadece dışarı yazdırırken satır adı, daha sonra bitirin. Siz foreach bu gerekmez. Aslında daha önce hiç görmedim. Ben sadece foreach yapmak. Tamam, böylece görünümü var. İçinden yürüyebilir Bakalım senin pset biraz. Biz 15 dakika var, o yüzden emin değilim adamlar sadece daha o daha istiyorum Erken biten. Ben bu kadar getirebilir eğer bakayım. Bu yüzden çocuklar kaç bilmiyorum etajer henüz indirilen ve adres ama biz, burada adı var ve bazı şifrenizi var. Ve ne yazık ki, sağ Şimdi veritabanı, boş bu yüzden aslında ihtiyacımız Bir veritabanı oluşturmak için. Peki, bu garip. Beklemiyorduk. Teknik hatalar. Teknik zorluklar. Biz bazı pset7 var. Serin. Peki, yapabileceğiniz tek şey olan, bir Bir query-- Ben bir tablo oluşturmak gerekir. Yani bu users-- olacak ne Biz some-- varsa, isimli burada yapabilirsiniz Gerçekten şimdi? TAMAM MI. Açıkçası ben çok sıcak yapmıyorum. Ah. Ben nedenini biliyorum. Ben oluşturulan asla Çünkü benim gerçek tablo. Yani ilk ile başladığınızda Bir veritabanı, tabii ki ne karar vermek zorunda şeyler Buraya olması gerekir? Yani biz sadece kapalı giderseniz Burada bizim veri tablosu, bazı kimliği, vardı Sadece bir int kalabilirler. Burada üzerinde bakarsanız, orada Yani endeksi ki- serin bir şey. Eğer birincil yaparsanız, o yapacak tablo tarafından düzenlenen şey, ve aynı zamanda benzersiz yapacak. Bu durumda Yani, biz birincil yapacağız, ve ben bu isim yapmak için gidiyorum, o zaman biz sadece bir varchar yapacağız benzeri 26 harf, çünkü neden olmasın? Ve sonra sonra Kaydet gidin, ve olabilir Eğer görürseniz, biz burada bazı kullanıcılar var. Biz yapmak istedim Yani eğer biz bunu yapabiliriz, insert Eğer uygulamayı istedim, ya da eğer bu şekilde senin queries-- Ah çocukla. Sonsuza dek bu kullanmadım. Bunu geri almak. Ya kendi bu düzenleyebilirsiniz Sadece elle bilgi ekleyerek Senin gibi bir şey Bunlardan herhangi birini değiştirebilirsiniz Eğer isterseniz make-- istedim aniden adının kurtulmak, sen, bırakın Eğer tüm bu şeyler yapabilirsiniz. Hiç gerekiyorsa el tabloyu değiştirmek, Ben bunu yapıyor öneririz phpMyAdmin çalışırken karşı SQL anlamaya genel sorgular. Eğer ilk pset başlattığınızda, Eğer, burada çalışmak zorunda gidiyoruz böylece kullanılmış olsun. Ve sonra gerçekten istediğiniz zaman senin table-- içine şeyler eklemek için Nerede olduğunu gerçekten merak ediyorum İşte orada- çünkü öyle. Ben istediğim buydu. Eğer SQL giderseniz Yani, sen-ebil Burada gördüğünüz gibi aslında, bakın, Biz SQL sorguları var. Bir şey seçmek istedim Yani eğer ya da biz bir şey eklemek istedim, biz doğru, kullanıcılara içine insert yapabilirim? Ben ters eğik çizgi gerektiğini düşünüyorum. Bilmek bir şey varsa, bir Hiç bu kullanıyorsanız geri bu kullanmak zorunda tipik olarak tırnak gibi, sağ şeridin üstünde, bir Mac üzerinde iseniz. Yani iyi bir şey bilmek. Kullanıcılara içine eklemek olabilir, ve biz doğru, bizim değerlere sahip? Bu yüzden değerlere sahip, ve bizim değerler Bu durumda, sadece olacaktır, biz sadece bu yüzden bir kimlik var eğer biz istedi birini yapabilirdi. Bu garip. TAMAM MI. Yani bu sadece bir kısa gibi SQL ile küçük şey, ama aslında daha yararlı olabilir Burada bazı dosyalar bakmak. Yani İndirme gidin. Oh, İndirme. Yani, sadece hızlı bir örneklerde ne bu klasörlerin her var. Bu içerir biz sadece şeyler var Bu, tarayıcınızı yapılandırmak bu sabitleri var, ve bu işlevlere sahiptir. Eğer bunlardan herhangi ilgileniyorsanız, Ben fonksiyonları bakarak öneririz. Bunlardan biri, süper yararlıdır aslında burada bu, dökümü. Yani bu kullanırsanız, aslında olacak sadece ne olursa olsun değişkeni çıktı Bunu ister ki. Yani eğer sorun endam yaşıyorsanız Bu dizi gibi görünüyor ne, veya bu verilerin aslında ne biçimlendirilmiş nasıl, Bunu kullanmak için harika bir şeydir. Eğer varsa Özellikle bir Birden fazla hisse senedi ile kullanıcı, Bu olacak Büyük bir şey kullanmak için. O formatted-- olabilir çünkü Ben yaptım benim için en azından biliyorum Bu pset, bir şekilde biçimlendirilmiş Ben oldukça beklemiyorduk. Yani üzerinde yineleme için çalışıyordu o ve onu manipüle etmeye çalışıyor, ama ben gerçekten yoktu Ne yaptığımı anlıyorum. Eğer sadece dökümü ise, o olacak Yani tarayıcıya çıktısını, ve tam olarak görebilirsiniz nasıl biçimlendirilir. Bu, tipik bir şekilde dışarı basalım onun anahtarları ve değerleri ile dizi. Yani orada yardımcı olabilir. Aynı zamanda yapmak için yardımcı olabilir aslında sen emin veri kapma ki Eğer sanıyordum. Yani kesinlikle, benim masada gibiydi Bu kimliği ile bir kullanıcı var diyor, ama dökümü gittiğinizde Değişken, bu, orada değil Açıkçası bu biliyorum Nerede bir hata olacak. Bu en iyi araçlarından biridir Bence hata ayıklama için. Ve sonra orada bir Burada başka şeyler çift, ama çoğunlukla, işte Ben sizin dikkatinizi çekmek istediğim bir, çok yararlı çünkü. Kamu, biz isimli burada ne var, Bu bizim CSS şeyler hepsi. Yani CSS, yazı tipleri, bizim görüntüler, etajer. Bu, tüm şeyler olduğunu Değiştirmek zorunda değilsiniz. Siz eğer bu konuda düşünmek Can yazı CSS gibi şeyler vardır, Bu bir model, ya da olur Bir görünüm, ya da denetleyici? HEDEF KİTLE: [Duyulmaz] ALLISON BUCHHOLTZ-AU: Bu ediyorum Bir bakış daha doğru? Bu, tüm işleyen şeyler nasıl baktıklarını şeyler. Burada bu açarsanız, biz görmek Yani Bütün burada oluyor ki biz bir şey render ediyoruz edilir. TAMAM MI? Yani bu çok olur Bu bir görünüm olarak nitelemek. Yani bu sadece bazı alıyor, bazı portfolio.php çağırıyor Elimizdeki, ve geçen oluyor ki başlık ve portföyde. Ve bu sadece render ediyor. Aslında, ben geri alıyorum. Bunun nedeni, bir denetleyici olduğunu render hatırlıyorum, görünümü vermektedir. Bu yüzden portfolio.php durum sizin açınızdan olacaktır. Üzgünüm, beyler. Portfolio.php olacak senin bakış, ve bu sadece olur Bunun için senin denetleyicisi. Ve biz bu bir göz atın, eğer Burada son bir, şablonlar, şablonlar burada görüşlerini tüm vardır. Açıkçası, biz bakarsanız Yani Burada HTML bir sürü bakın. Yani bu sadece size gösteren ne giriş sayfası gibi görünmelidir. Sen bazı var fark Form grupları, teslim var. Burada ne karar nasıl Orada görüntülenir. Siz "Gönder" = bazı düğme türü var, ve sonra istediğiniz ne varsa düğmesine görüntülemek için. Yani bunu yapacak nasıl İstediğiniz ne olursa olsun gibi göstermek. Ve biz biraz var burada görmek Kullanıcı adınızı, bazı şifre, ve biz aslında Gönder vurduğunda, o, bazı sonrası olacak ve ne göndermek için gidiyor? Bu görünüm için kontrolör nedir? Biz Gönder vurduğunuzda, ne denir ki? Biliyor muyuz? O kadar login.php, burada. Bir şey adamlar hayata geçireceğiz. Yani her zaman söyleyebilirsiniz ne olacak Gönder düğmesini sonra çağırdı Burada bu ilk çizgi ile. Form eylemi nedir. Bu formu teslim edildiğinde, Biz hangi eylemin alıyoruz? Biz login.php diyoruz, ve biz Bu yöntemle diyoruz yazının hangi vardır Gizli bilgiler. TAMAM MI? Yani bu tabii ki daha sonra görünümüdür, ve Biz Do login.php-- gittik biz buna sahip Henüz? Evet. Burada, bu Gördüğünüz gibi çok daha fazla mantığı vardır. Burada tüm PHP bu. Biz, o $ _GET olmadığını görmek için çalışıyoruz o $ _POST şeyler doğrulayarak ise, sorgulama, tüm bu şeyler. Yani bu sadece üçü Burada farklı şeyler. Bir şeyleri değiştirmek zorunda değilsiniz. Bir şeyler oluşturmak olacak şablonda, muhtemelen, ama kadarıyla HTML ya da Bu gider herhangi bir stil, Eğer düz olarak bırakabilirsiniz veya İstediğiniz gibi karmaşık. Bazı insanlar gerçekten içine almak ve bazı oldukça harika web siteleri yapmak. Bunu yapmak zorunda değilsin. Eğer zamanınız varsa, bu kadar gerçekten harika bir şey. CSS ve HTML ile etrafında yapabilirsiniz karışıklık ve bunun için çok daha iyi bir fikir almak, ancak baskı hissetmiyorum. Eğer yapmak için bol var oturum hayata geçirilmesinden ile arka uç, Kayıt ve tüm bu şeyler ve. Yani umarım bu biraz yardımcı olur. Siz herhangi bir sorunuz var mı bir şey hakkında biz üzerine gittim başka kaynaklar? Ben kesinlikle tüm göndereceğiz Eğer çocuklar benim örnek PHP kodu, ve daha sonra almak için çekinmeyin resim veya bu etajer. Ayrıca çevrimiçi. Her zaman sadece tekrar izleyebilirsiniz. O kadar eğer, herkes iyi Yani? Evet. İZLEYİCİ: Ben sadece istiyorum Biz olduğunuzda, onaylamak için SQL seçin yapıyor Yıldız sağ, her şeyi demek? ALLISON BUCHHOLTZ-AU: Evet. HEDEF KİTLE: Ve sonra eğer Eğer yıldız yok, İsterseniz belirli bir almak için satır, o zaman sadece ismini koymak of-- ALLISON BUCHHOLTZ-AU: satır adı ve sen değerini istediğiniz istediğini. İZLEYİCİ: Ve sonra tarih. ALLISON BUCHHOLTZ-AU: Ne olursa olsun evet, arıyoruz. Aynı şekilde, bunu yaparsanız * den SİL Bazı tablo, her şeyi sileceğiz. Yani, * sadece bir vahşi Her şey için kart. İZLEYİCİ: Tamam. ALLISON BUCHHOLTZ-AU: Serin. Korku. Peki, büyük bir Pazartesi, çocuklar var. Önümüzdeki hafta seni görürsünüz. Senin pset İyi şanslar.