JASON HIRSCHHORN: Willkommen jeder Woche acht. Wir haben eine spannende Woche vor uns. Ihr habt in diesem letzten paar Tauben von Vorträgen, PHP, SQL, HTML, CSS, so vier ganz neue Sprachen, die gehen , sich der Rest dieses Kurses. Wir werden auch ein paar andere lernen Sprachen vor Kursende ist. Aber wie auch immer, unnötig zu sagen, das ist eine sehr aufregende Zeit in CS50, jetzt C haben, angeblich gemeistert und sind Bewegung auf die Programmierung für Websites. Also in dieser Woche, werden wir weitergehen ein Wirbelwind-Tour durch die vier Sprachen, die ich gerade erwähnt, HTML, CSS, PHP und SQL. Und hoffentlich werden wir viele verlassen Zeit am Ende von Abschnitt zu sprechen zu dieser Woche P-Set und Antwort Fragen können Sie alle haben. Jede Woche die gleiche Liste von Ressourcen für Sie, um Ihnen helfen, die Woche Problem eingestellt und gehen über das Material - aber in dieser Woche insbesondere für diese Web-basierte Problemstellungen gibt es Vielzahl von anderen Ressourcen aus es, dass Sie wahrscheinlich finden unglaublich hilfsbereit. Ich habe sie hier oben. Ich werde Ihnen diese per E-Mail nach dem Abschnitt, und dies auch online sein. Aber vor allem gibt es viele der großen Ressourcen gibt. Es gibt auch einige nicht so toll diejenigen, so vorsichtig sein, von denen sein. Aber auf dieser Folie, habe ich vier gute Mittel, eines für jedes der Sprachen, die Sie arbeiten werden mit dieser Woche - ein Referenzblatt für HTML, ein Referenzblatt für CSS. Dieses Recht ist hier die PHP-Handbuch. Also statt Tippen Mann und dann eine PHP- Befehl, das ist, wo man es gehen zum Nachschlagen der Funktionsprototyp und Beispiele und auch einige Tipps und Tricks im Umgang mit PHP-Funktionen. Sie werden diesen Ort häufig verwenden, so dass ich Sie ermutigen, sich mit ihm vertraut. Es kann ein wenig technischen, aber es auch eine Tonne von Ressourcen und Beispiele für alle Funktionen und auch andere, wie zB wie man Arrays verwenden oder verschiedene Arten von Variablen. Diese Seite ist sehr hilfreich für PHP. Und dann, für SQL, wenn Sie diese Taube Woche Problem Satz, werden Sie wissen, dass wir mit einer Datenbank. Und wir Zugriff auf diese Datenbank über eine relativ schöne Benutzeroberfläche. Oder das ist ein Weg, um Zugang dass Datenbank. Die Benutzerschnittstelle phpMyAdmin genannt. Es gibt eine SQL-Register, auf die wir Blick auf später heute. Und Sie können in ihre SQL-Beispiel geben Abfragen, die Dinge in der Datenbank zu tun und führen Sie dann diese Abfragen. Und wenn sie korrekt sind, wird es sagen, das hier ist richtig. Wenn sie falsch ist, werde es sagen wir, es ist falsch. Das ist ein großartiger Ort, um Ihre Praxis SQL-Abfragen, bevor sie in das Schreiben Ihr Code, um sicherzustellen, dass Sie haben das Format korrekt. Schließlich eine andere Website hier. Dies ist die Website, wo Sie können gehen und zu überprüfen, um sicherzustellen, dass Ihr machen HTML-Code ist gültig. Also, bevor Sie Ihre Probleme eingestellt in dieser Woche, sicherzustellen, dass alle Ihre HTML-gültig ist. Letzte Woche, Sie valgrind laufen hatte, sicherstellen, dass Sie keine Speicherlecks hatte. Diese Woche, müssen Sie sicherstellen, dass alle machen Ihr Gutscheincode ist gültig HTML5. Wenn es nicht gültig HTML5, sind Sie gehend zu erhalten Punkte aus. So stellen Sie sicher - nur weil es funktioniert nicht meine, es ist vollständig gültig. Führen Sie Ihren Code über diese Website bevor es in. Auch hier ist die Website. Wenn Sie Feedback für mich, wir haben ein paar mehr Abschnitte links, und ich will immer zu tun, was ich kann Sie alle bieten den besten Schnitt Erfahrung möglich. Also lassen Sie mich wissen, wenn ich etwas tun können, zu verbessern oder wenn es Dinge, die Sie sehen, dass ich besser machen könnte. Danke, Avi. Legen Sie es auf der Website. Dies war das Motorrad, das ich hatte, als ich wurde, sagen wir, vier zu Hause. Es ist ein Teenage Mutant Ninja Turtle Radfahren, für den Fall, Sie können nicht sagen, weil es ein wenig verschwommen. Sie können es jetzt bei ToysRUs bekommen für, glaube ich, etwa 100 Dollar. Aber das Merkmal dieses Fahrrad, das ich will Sie darauf achten, diese sind hier richtig. Dies sind die Stützräder. Bis jetzt haben Sie schon Handheld durch C. Und wir genommen haben eine lange Zeit, zwei Monate plus, durch C gehen Für diese nächsten paar Sprachen, wir gehen nicht zu so viel Zeit. Die Stützräder kommen aus. Und wir werden in diese eintauchen Sprachen schnell und bewegen sich durch sie schnell, das ist nicht zu sagen, dass wir sind gerade dabei, Sie schwimmen lassen gibt, mit keiner Weise zu unterstützen Sie selbst oder herausfinden, wie diese Sprachen zu arbeiten. Zeigte ich Ihnen nur eine Liste von Ressourcen, um Ihnen zu helfen. Aber bedenken Sie, dass PHP ist unglaublich ähnlich C. Wir gehen über noch heute, und einige der Unterschiede. Aber in den meisten Fällen, gibt es für Schleifen. Es gibt, wenn die Bedingungen. Wenn Sie ein Problem lösen möchten, Sie verwenden gerade ein Kombination von diesen. Es ist sehr ähnlich. Die Logik ist sehr ähnlich zu sein was Sie in der Vergangenheit getan haben. Was ist wirklich neu in dieser Woche ist die Syntax und wie Sie sich auszudrücken. Und Sie, um eine for-Schleife schreiben wollen, aber es aussehen könnte, ein bisschen anders. Oder Sie ein Array erstellen wollen, aber es aussehen könnte, ein bisschen anders. Also bedenken Sie, dass, nach vorne bewegt, die Logik ist sehr ähnlich, was Sie in der Vergangenheit getan habe. Aber Sie gehen jetzt zu stoßen werden viele neue Syntax. Und wir sind nicht dabei, Sie gehen durch Alle Elemente der Syntax. So ist es wirklich an Ihnen, herauszufinden, online oder über Annäherung auf Diskutieren oder per E-Mail oder im Gespräch mit mir einander, wie die Dinge zu schreiben, in PHP und wie SQL-Abfragen schreiben und wie man HTML und CSS zu verwenden. Aber nur, damit Sie wissen, ist es nicht so, dass wir versuchen, Sie dort rauswerfen erneut, um die Haie schwimmen. Dies ist, was Sie wahrscheinlich zu tun Ihr letztes Projekt, wenn Sie ein wählen andere Sprache, wie IOS und Objective-C, oder wenn Sie sich entscheiden, starten Programmierung in der Zukunft und tauchen in andere Sprachen, wie Python oder Ruby. Oft ist die Logik sehr ähnlich in all diesen Sprachen, und die Syntax ist, was ist anders. Und es wird bis zu Ihnen sein, da die Programmierer, gehen Sie nutzen das Internet Ressourcen zur Verfügung, um Sie und Figur Sie, wie um auszudrücken, was Sie wissen, wie in C ausdrücken, in eine andere Sprache. Also das ist eine gute Übung, sowohl für Ihre Abschlussprojekt, und wieder, für was Sie wahrscheinlich tun nachdem Sie CS50 verlassen. Bevor wir fortfahren, weiß jemand Fragen über das, was Ich bisher getan? Große. Gehen wir weiter. Zunächst werden wir kurz sprechen über den Befehl chmod. Diese werden wir zu Beginn zu tun Ihre Probleme einstellen. Einer der ersten Befehle für Sie, nach dem Herunterladen der Verteilung Code ist zum Ändern der Berechtigungen der Dateien und Verzeichnisse, die Sie erhalten. Kann jemand eine Vermutung wagen oder wissen, Deshalb ist es wichtig, das zu ändern Berechtigungen für bestimmte Dateien und Verzeichnisse auf Ihrem Computer? Avi - ZIELGRUPPE: Dann niemand außer Sie können sehen, was du tust? JASON HIRSCHHORN: OK. Also, wenn wir etwas auf die setzen wollen Web und Sie haben festgelegt, dass die Berechtigungen können nur Sie etwas sehen, dann niemand anderes kann sehen, was Sie geschaffen haben. Was sonst? Ja. ZIELGRUPPE: Verhindern, dass jemand anderes, dass Sie wollen nicht, etwas zu sehen, von etwas zu sehen. JASON HIRSCHHORN: Das ist auch wahr. Wahrscheinlich gibt es einen Code, Sie schreiben, dass Sie nicht wollen Menschen zu sehen. Du bist wahrscheinlich mit Menschen zu sehen, OK Ihr HTML-und Ihr JavaScript. Aber Ihre PHP, eine Back-End-Code, eine Menge von die Logik, um Ihren Code, vielleicht die Dinge, die einige Ihrer Passwörter für Ihre Datenbank, die Sie nicht tun wollen die Menschen sehen, dass Art von Informationen. Daher ist es wichtig, dass jede Datei und jedes Verzeichnis erstellen wir über Berechtigungen anwendbar, ob wir wollen Menschen, diese Arten von Dateien zu sehen und Verzeichnisse und in der Lage sein, auf sie zuzugreifen und möglicherweise sogar zu ändern. So gibt es drei Arten Berechtigungen. Es gibt eine Leseberechtigung, was bedeutet, Sie eine Datei oder eine Liste der lesen kann Inhalt des Verzeichnisses. Es gibt die Schreibberechtigung, die heißt, Sie können eine Datei oder einen Wechsel ändern ein Verzeichnis und dann die Ausführung Erlaubnis, das heißt, Sie können Ausführen einer Datei oder besser gesagt, Sie kann in einem Verzeichnis zu verschieben. Also CD etwas, wenn Sie die Erlaubnis, um sie auszuführen, können Sie verschieben in dieses Verzeichnis. Dies ist ein kleines Beispiel. Auch hier können Sie über diese gegangen in das Problem eingestellt. Aber ich ein Verzeichnis mit dem Befehl mkdir. Ich die Berechtigungen ändern. Diese beiden Linien tatsächlich tun genau die gleiche Sache. Es ist zu verdeutlichen, dass die Syntax für Ändern von Berechtigungen, ob Sie tun die a + x oder 711, das sind die gleichen. Wir sehen uns an diesem schönen Tisch. Wir sehen, dass es Benutzer Berechtigungen zuerst. Das bist du, das Individuum, und Ihr Server möglicherweise. Und dann gibt es Gruppe und andere. Die Unterschiede in den zwei sind relativ trivial. So allgemein, werden wir über einen Kamm scheren diejenigen zusammen. Aber im Grunde, wenn wir eine Datei haben genannt beinhaltet, dass wir sein wollen in der Lage, uns selbst zu bearbeiten und wir wollen andere, um auszuführen, es ist die Genehmigung 711. Und wir sehen, dass nach unten Hier in dieser Tabelle. Wir haben eine Lese-, Schreib-und Ausführungs. Für jeden von uns, wir wollen in der Lage, diejenigen zu tun. Gruppen und andere, wollen wir nur sie in der Lage, auszuführen. Die Art und Weise übersetzen wir, dass in eine Anzahl von Genehmigung ist durch binär. Wenn wir also drei Einsen, ist eine 1, dass in der diejenigen Spalte, eine 1 in den Zweien Spalte eine 1 die Vieren Spalte. Das ist 7 recht. Und diese Erlaubnis ist 1. Diese Erlaubnis ist 1. Also, wenn 711 ist die gleiche wie geben uns selbst zu lesen, schreiben und ausführen, und alle anderen Privilegien auszuführen. Diese Linie hier, wir in der Regel lesen und schreiben können, wenn wir ein Verzeichnis. Also diese Linie hier fügt nur ausführen Privilegien für alle. So, das wäre ähnlich, in Zusätzlich zu dem, was wir haben, Zugabe von 1, 1, 1 für alle. Während diese, es ist unnötig lesen und schreiben zu addieren. Aber wenn du gehst, um die Zahlen zu verwenden sind, man kann nicht einfach etwas hinzufügen. Sie überschreiben, was waren Erlaubnis es und setzen sie mit dem neuen Nummer, die Sie geben. Das war ziemlich schnell. Hat jemand irgendwelche Fragen haben, über das Ändern von Berechtigungen? OK. Wenn ich eine PHP-Datei, welche Berechtigungen will ich es haben? Dies ist in der Problem Satz spec. So können Sie bei der Spezifikation aussehen und dann lesen Sie mir die Antwort. ZIELGRUPPE: Sie wollen dem Benutzer, haben Lese-und Schreibberechtigungen. Und Sie wollen alle sonst nichts. JASON HIRSCHHORN: Und was Zahlen ist, dass? ZUSCHAUER: 600. JASON HIRSCHHORN: 600. Also chmod 600 - wann immer Sie drucken eine PHP-Datei, es chmod 600. OK. Ich habe ein Verzeichnis. Jemand neben Jeff, Ich habe eine Datei-Ordner. Welche Berechtigungen will ich um in diesen Ordner zu geben - auch in der Problem gesetzt spec, direkt unterhalb dieser Antwort oder die vorherige Antwort? Möglicherweise auch auf der Folie - Marcus. ZIELGRUPPE: Für die Ordner, es ist 711. JASON HIRSCHHORN: 711 - so ein Ordner, Sie wollen 711 geben. Sie wollen in der Lage, um diesen Ordner zu lesen, Verzeichnisse ändern, bewegen Sie in dass Ordner. Und Sie wollen alle anderen auch in der Lage sein, in diesem Ordner zu navigieren, aber nicht unbedingt seinen Inhalt zu ändern. Was ist mit einem nicht-PHP-Datei, sagen, eine JavaScript-Datei? Welche Rechte wollen wir diese Art von Datei geben? ZUSCHAUER: 644. JASON HIRSCHHORN: 644 - Deshalb wollen wir es 644 geben? ZIELGRUPPE: Um anderen Menschen lesen zu lassen. Und Sie lesen oder schreiben. JASON HIRSCHHORN: Also gut, alle sonst lesen kann, dass JavaScript-Datei. Und Sie können das ändern, zusätzlich zu der Möglichkeit, sie zu lesen. Damit wird eines der häufigsten Fehler Leute haben mit diesem Problem setzen und ihre Abschlussprojekt, wenn es eine Web-basierte Abschluss Projekt wird, werden sie nicht eingestellt haben die richtigen Berechtigungen. Und sie werden nicht in der Lage sein, auf ihrer Website zu sehen. Oder einen bestimmten Teil ihrer Website. So stellen Sie sicher, dass Sie setzen die Berechtigungen richtig. Sie nicht einfach davon ausgehen, dass es wird diese Aufgabe automatisch für Sie. OK. Das war eine kleine Sache, die wir haben eine gute Menge an Zeit auf, so wir könnten es nageln. Gehen wir weiter in HTML. Und wieder, für diesen nächsten vier Themen, wir werden durch sie gehen relativ schnell. Also bitte fühlen Sie sich frei, mich jeder stoppen Zeit, wenn Sie irgendwelche Fragen haben, ob sie im Zusammenhang mit, was ich abdecken oder etwas aus Vorlesung oder sogar aus das Problem eingestellt. Stoppen Sie mich, wenn Sie ihn brauchen. Wenn wir bis zum Ende erhalten, werden wir nur beginnen werde über das Problem Satz. So HTML steht für Hypertext Markup Language. Es ist keine Programmiersprache. Denn es macht nicht Struktur Ihre Inhalte und auch einige Metadaten. So zum Beispiel, vermutlich vielen Sie Facebook benutzt haben. Und Sie können Links in sind, oder Sie kann einen Link als Ihren Status setzen. Und dann werden Sie feststellen, dass Link hat immer ein schönes Bild zu ihm und etwas Text. Im Allgemeinen ist, dass einige Metadaten für eine Web-Seite. Und es ist Facebook-spezifische Metadaten. Und dann, wenn Facebook liest, dass Seite und Einsetzen, dass Link, es sucht die spezifische Metadaten, so dass es weiß, was Bild, um anzuzeigen, was Titel angezeigt werden, und was abstrakten Text angezeigt. So können wir mit Metadaten enthalten unsere Web-Seite mit HTML. Und es hilft uns auch Struktur der Gehalt im allgemeinen, was wir wollen gehen, wo. Alles in HTML ist ein Element. Und genau hier Elemente - Diese CS50 ist der Text-Element. Und es hat einige Umbauten. Es hat dies einen Tag. Und wir feststellen, es ist ein A an der beginnen und dann ein Schrägstrich ein, so Schließen der einen Tag am Ende. Manchmal gibt es keine offene -Tag und eine enge-Tag. Es gibt nur eine Sache. Wir werden ein Beispiel dafür sehen, auf der nächsten Folie. So brauchen Sie nicht eine offene und eine enge-Tag. Aber dafür sind wir umhüllt diese CS50-Element in der ein Anker-Tag. Und im Grunde, diese Tags zu erzählen der Browser, was damit zu tun, das jeweilige Element. Also noch einmal, CS50 ist der Text wir werden sehen. Und es wird sein, eine Art von Anker. Anker dient im wesentlichen für Links zu etwas. Insbesondere, wie Sie können schon sagen, das ist eine verlinken auf dem CS50-Homepage. Der nächste Teil von dem Tag - oder allgemein, ein Teil des Tags sind Attribute. Und wir sehen hier, dass die ein Tag hat ein Attribut, dieses href-Attribut. Und sie einen bestimmten Tag ändern. In der Tat, wenn Sie eine der gehen Websites oder die Referenzen, die ich dir gegeben habe vor oder schauen die einen Tag online, Sie werden feststellen, es gibt eine Tonne von Potenzial Attribute. Dies ist wahrscheinlich eine der häufigste. Das sagt mir ein erstellen Link zu der Website. Und Attribute im allgemeinen gegeben sind, wenn nicht ausschließlich gegeben, in Schlüssel-Wert-Paaren. Also hier ist der Schlüssel, href. Und der Wert ist hier richtig. Und das wird in handliches kommen später, wenn wir beginnen mit einigen Bibliotheken Helfen Sie uns, Code in JavaScript oder schreiben Sie HTML-Inhalte. Wir werden oft sein wird - so wie wir würde Array Halterung 0 und das zu tun würde uns einen gewissen Wert. In der Zukunft werden wir dabei eine Menge Dinge wie etwas href Halterung. Und das wird uns den Wert der zu geben href, oder wenn wir die href aktualisieren möchten -Taste und dann geben wir es ein bestimmter Wert. So wie mit Arrays, wo wir Taste 0 oder Taste 1 oder Taste 2 oder sogar mit einem Hash-Tabelle, nun, mit Hash-Tabellen wie auch, haben Sie wahrscheinlich hatte - es war ein Array, so dass die Taste 0, die Tasten 1, 2. Dieser Index gibt, können wir denken, dass als Schlüssel. Und der Wert ist, was dort gespeichert. Alle diese Attribute sind der Schlüssel-Wert-Paaren. Und das wird für den Wechsel sein oder sie zu aktualisieren oder Einsetzen später. Schließlich können Sie diese Struktur gesehen haben vor, aber dies ist die einfachste Struktur der HTML-Seite. An der Spitze, sagen wir euch, dass dies ist in der Tat HTML. Und dann haben wir einen offenen HTML -Tag und ein enger HTML-Tag. Also alles, was innerhalb der Hier ist die HTML. Wir sehen den Kopf und den Körper. Der Kopf des Dokuments umfasst in der Regel, was? Alle Vermutungen, was Sie legte in den Kopf? ZIELGRUPPE: Sie setzen den Titel und Stil. JASON HIRSCHHORN: Der Titel. Das war eine große Vermutung. Ich kann Ihnen, die gekippt sind ausgeschaltet. Was sind einige andere Dinge? Wir erwähnten, dass einer von ihnen könnte in den Kopf gehen. ZIELGRUPPE: Er sagte, Stile. JASON HIRSCHHORN: Styles - so, wenn Sie in einem JavaScript verlinken möchten oder sogar ein CSS, die Sie sprechen etwa, wenn Sie reden zu Stilen. Eine weitere Datei, die in eine verlinken möchten Sie außerhalb Datei, wird diese wahrscheinlich in den Kopf. Was sonst? Wir erwähnten, ein paar Dias vor eines der Dinge, die HTML für Sie tun können. Es kann liefern - beginnt mit einem M - ZIELGRUPPE: Metadaten. JASON HIRSCHHORN: Metadaten - so viel der Metadaten in den Kopf gehen, denn das wird nicht unbedingt Teil des Körpers des Codes sein. Das ist in der Regel - der Körper ist der Inhalt, was jemand sieht. Und so gab ich einfach weg, die Antwort zu meiner nächsten Frage. Aber in dem Körper ist in der Regel der Gehalt das wird angezeigt auf der Web-Seite. Wie wir sehen werden, komplizierte Websites neigen dazu, vermischen oder zu ändern, was bis sie in den Kopf und den Körper. Aber im Allgemeinen, enthält der Kopf Dinge dass der Benutzer nicht zu auf dem Bildschirm sehen. Es verbindet in anderen Dateien und stellt Metadaten. Während alles enthält der Körper der Benutzer wird sehen. Keine Ahnung, was das p-Tag bedeutet? ZIELGRUPPE: Absatz? ZIELGRUPPE: Drucken. ZIELGRUPPE: Bedeutet nicht, Druck. ZIELGRUPPE: Bedeutet es, Absatz? JASON HIRSCHHORN: Absatz - so ist dies ein Absatz. Und das p-Tag, konnte ich gerade eingegeben haben diese auf dem Bildschirm und dann enthalten einen Zeilenumbruch am Ende. Jeder weiß, wie zu zählen ein Zeilenumbruch? ZIELGRUPPE: pr - JASON HIRSCHHORN: pr - ZIELGRUPPE: Slash pr? JASON HIRSCHHORN: pr Schrägstrich steht für Zeilenumbruch. Aber Absätze haben spezifische Formatierung. Und wir werden um das Formatieren in eine bekommen zweitens, wenn wir über CSS zu sprechen. Aber alles in diesen p-Tags werden einige Standardformatierung haben zugeordnet ist, wahrscheinlich einige Abstand zwischen verschiedenen Absätze. Und es wird ein Weg, um zu differenzieren Codeblöcke. Alle anderen tags - was sind andere Tags, die Sie gesehen haben? JASON HIRSCHHORN: durch h6 h1. h1 bis h6, und was ist das? ZIELGRUPPE: Es wird zu bezeichnen, wie groß und fett die Buchstaben sind. JASON HIRSCHHORN: Rechts, sie steht für Header. Und so ist ein großer header1 Header. Es wird wahrscheinlich standardmäßig fett sein, ein große Schriftgröße, wahrscheinlich zentriert auf der Bildschirm, den ganzen Weg bis h6, die eine kleinere Schriftgröße, weniger ist betont. Natürlich können Sie, sind Sie in CSS-Datei oder irgendwo im Code - die, wieder, werden wir zu, dass in einem zweiten zu bekommen - ändern, was das Standardverhalten eines H1-Tag ist. Aber bedenken Sie, dass Chrome, Safari, Firefox, Internet Explorer alle haben Standard sieht für viele diese Standard-Tags. Sie können wieder immer ändern wie sie aussehen. Alle anderen Tags, die jeder gesehen hat? Yeah - ZIELGRUPPE: Ein div Ort. JASON HIRSCHHORN: Ein div-Tag - div-Tag keinen eingebauten Format pro se, die verwendet wird, zum Absperren verschiedene Codes. Alle anderen Tags? Ja. ZIELGRUPPE: li - JASON HIRSCHHORN: li - was ist für li? ZIELGRUPPE: Liste. ZIELGRUPPE: Liste JASON HIRSCHHORN: li ist für Listenelemente. Es gibt zwei Arten von Listen. Was sind die beiden Arten? ZIELGRUPPE: Bestellt und ungeordnete. JASON HIRSCHHORN: Bestellt und ungeordnete - so steht ul für ungeordnete Liste. Das ist, wenn Sie wollen, eine Kugel darauf, eine Liste von Kugeln. Eine geordnete Liste ist eine nummerierte Liste. Und so finden Sie einen offenen ul-Tag zu tun und dann Tonnen von Listenelementen und dann schließen Sie das ul-Tag. Und das wird eine ungeordnete Liste zu erstellen. Wir werden einige Beispiele zu sehen von HTML in ein bisschen. Aber bis dahin möchte ich auf CSS zu bekommen. Und CSS steht für Cascading Style Sheets. Und das ist sehr eng verwandt in HTML, aber etwas anders. Dies hilft Ihnen, sich die Inhalte zu formatieren dass die HTML-Strukturen. Also in CSS, wir in der Regel nicht wollen, Stil jeden einzelnen Kopf-oder jeder Einzelbild oder jede einzigen Absatz. Wir wollen einige Elemente zu stylen oder vielleicht ein bestimmtes Element. Und die Art, wie wir einen bestimmten Stil Element ist eine ID zu geben. Also das ist ein Attribut. Es hat einen Schlüssel und einen Wert. ID ist der Schlüssel. Logo der Wert ist. Ich nahm Logo zufällig. Und wenn Sie etwas eine ID zu geben, allgemein, dass nur gegeben werden sollte einem Element. Und dann, im Stylesheet können Sie Stil, dass bestimmtes Element jedoch Sie wollen es sehen. Wenn Sie eine Reihe von Stil wollen Elemente, vielleicht ist es eine bestimmte Klasse von Überschriften, nur einige Ihrer Header. Vielleicht ist es ein Kopf-und ein Bild und eine ist Absatz, den Sie alle wollen zentriert werden. Dann können Sie diesen Gruppen geben kann von Elementen alles eine Klasse. Und Sie die Klasse geben kann bestimmte Stile. So eine ID und eine Klasse gibt zwei Möglichkeiten, brechen Sie den Code, so können Sie helfen genauer, was Sie Stil. Es gibt drei Möglichkeiten, um zu stylen. Die erste ist, mit dieser Stil-Attribut. So können Sie sehen, der Stil ist Key-Stil. Der Stil ist eigentlich Wert ein weiterer Schlüssel-Wert-Liste. In diesem Fall nahm ich einen Schlüssel, text-align. Und ich sagte, Zentrum. Vielleicht fragen Sie sich an dieser Punkt, wie kam ich über text-align. Was bedeutet, dass auch tun? Das ist eine gute Frage zu stellen, und wir gehen, um dort in einem zweiten zu bekommen. Also das ist ein Weg, um etwas zu stylen, geben ihr einfach das style-Attribut. Ein weiterer Weg, um etwas zu stylen ist - dies Akshar erwähnt. Sie können Art-Tags benutzen setzen, dass im Kopf des HTML-Dokuments. Sie sind also im Grunde sagen, der Inhalt in hier Stil ist etwas Inhalt. Und das Format für das ist das, was Sie Möchten Art und dann, innerhalb von geschweiften Klammern, die Schlüssel-Wert Paar Attribute, die Sie geben wollen dass bestimmte Art von Element. Schließlich, und dies ist der häufigste Weg. Und das ist die Art, wie wir tun es in Satz 7 p. Es ist ein externes Stylesheet. So haben Sie eine. Css-Datei. Und in der es, eine Menge sehen Sie Dinge, die so aussehen, der Name einer Art von Element oder eine ID oder eine Klasse und dann, innerhalb von geschweiften Hosenträger, eine Liste von Schlüssel-Wert-Paaren. Natürlich, wenn Sie ein externes erstellen Datei, du bist zu gehen müssen sie gehören - scharf sind, das wäre werden die C-Analogie - in der HTML-Datei. Sie müssen also dafür sind Code in die HTML-Datei. Dies ist der Name der Datei, und vorausgesetzt, es ist im gleichen Verzeichnis. OK. Das war eine Menge. Und wir gehen jetzt zu atmen und schauen bei einigen echten, Live-Website und erkunden Sie mehr. Aber bevor wir das tun, weiß jemand Fragen? Also, wenn Sie dies tun möchten, zusammen mit mir, wir können an das Gerät gehen. Und ich wählte den CS50-Startseite. Sie können dies mit einer Website zu tun. Aber warum machen wir nicht mit zu beginnen CS50 die Homepage? Lassen Sie uns zu erfrischen. Ich empfehle Ihnen wirklich tun diese zusammen mit mir, weil das, was wir sind jetzt tun sein wird, unglaublich nützlich für Sie, nicht nur in P-Set 7, aber in der P-Set 8 als gut. Ja. ZIELGRUPPE: Gibt es eine Möglichkeit, um Kommentare zu tun in HTML, ohne die Verwendung von PHP? JASON HIRSCHHORN: Ja, Sie können machen Kommentare in HTML. PUBLIKUM: Was ist die Syntax? ZIELGRUPPE: Ausrufezeichen Bindestrich Bindestrich. ZIELGRUPPE: OK. JASON HIRSCHHORN: Ja. Das ist die Syntax. Sie können Kommentare in HTML zu machen. Sie können Kommentare in PHP zu machen. Wie Sie sehen werden, wird im HTML-Kommentar noch auftauchen, wenn wir auf die HTML-Quellcode einer bestimmten Website. Also das cs50.net. Wenn Sie rechts in den meisten modernen klicken Browser, die auf fast jeder Seite, sehen Sie die Seite Quelle. Also lassen Sie uns das tun, auf CS50. Und siehe da, wir sehen eine riesige Sache. CS50 sieht eigentlich ziemlich nett. Eine Vielzahl von Websites wird nicht sehen diese schön. Wenn Sie Google-Startseite gehen und öffnen Sie es. Es wird nicht so aus, dieses schöne. Aber Sie bemerken, dass an der Spitze - das ist eine Art von kleinen. Lassen Sie uns das größer. OK. An der Spitze, DOCTYPE HTML, das ist bekannt. Dann sehen wir den offenen HTML-Tag und der Kopf, genau hier, alle dieser Meta-Tags. Und Sie können diese og sehen, nicht werde nun darauf eingehen. Aber ich bin mir fast sicher, dass bei diese würden Facebook sein. Das ist eigentlich die Facebook. Ich denke, dass für offene Grafik steht. Also denken Sie daran, ich war zu erwähnen ist Faceboook spezifische Metadaten können geben, um einer Seite. Das ist, was hier ist. Also, wenn Sie diese Seite auf Facebook zu verknüpfen, das Bild, es wird zeigen, ist dieses Bild hier richtig. Und Sie tatsächlich sehen, dass es Facebook, weil es die Facebook-Bild. Aber egal, wir sind immer beiseite. So haben wir einige Metadaten-Tags hier. Wir sehen den CS50-Titel. Und wieder ist der Titel, was geht hier oben in der Registerkarte Browser. Wir sehen dies ist die Verknüpfung in, genau hier, eine externe JavaScript-Datei. Wir haben nicht viel geredet über JavaScript, aber nächste Woche - und sicherlich, wenn Sie tun, eine web-basierte Set Problem sind, Sie werden mit Hilfe von JavaScript. Dies ist, wie Sie in Externer Link JavaScript-Dateien. Wir sehen hier schließlich die CSS Stylesheet dokumentiert, dass diese Stile dieser Code. Lassen Sie uns zu öffnen, dass tatsächlich und schauen wirklich schnell. Das sieht verrückt. Es gibt keinen Weg, ich wäre der Lage, durch zu lesen. Also eigentlich kann man aber, wenn Sie nehmen ein Blick, Sie Art sehen, dass gibt es - dort gehen wir. Das sieht aus wie etwas, das wir gesehen haben, vor, Hintergrundfarbe, die Einstellung es gleich einem Rot-Grün-Blau-Wert. Dieses Zeug Art sollte nicht den Anschein, dass Fremd, obwohl, wenn vorgestellt wie diese, kann es ein wenig überwältigend. Wir gehen nicht an dieser CSS-Datei zu suchen oder verbringen viel Zeit auf, weil es ist wieder ziemlich schwer zu lesen. Gehen wir zurück in diese HTML-Seite für CS50. Und lassen Sie nach unten scrollen, um den Körper. Und innen sehen wir dieses div-Tag. Wir sehen eine Kopf hier richtig. Wir sehen die Anker-Tag. Und diese Liste Element bei einer bestimmten Klasse. Und wir sehen, dass Klasse wiederholt immer und immer wieder. Es gibt Sie Curtis. Es ist der Kommentar in HTML5. Und wie Sie bemerken, die wir immer noch sehen können es, aber es wird nicht angezeigt. Es ist eigentlich wirklich interessant. Es sieht aus wie dieser Partituren Liste Element auskommentiert. Wenn wir zu dieser Seite wieder, es immer noch dort erscheint, so interessant. Oh, das ist, warum, weil dieser nächsten Zeile. Was wir sonst noch von Interesse zu sehen? Der Rest ist eher verwirrend, in Umgang mit diesem Recht die Hälfte der Webseite, die ein wenig ist etwas komplexer. Also das ist, was einige HTML wird aussehen würde. Für mich aber ist das ein wenig überwältigend, und dies nicht helfen Sie mir, dass viel. Allerdings gibt es etwas, das hat in der Tat, helfen mir sehr viel. Und das ist, was ich bin, wenn ich versuchen, herauszufinden, wie etwas so aussieht, wie es funktioniert, oder wie kann Ich Änderungen an meiner Website. Und das ist ein Entwickler-Tool dass in Chrome eingebaut. Also, wenn Sie diese drei Balken rechts gehen hier und gehen Sie auf Tools, klicken Sie auf Entwickler-Tools, wird ein kleines Fenster Pop-up am unteren Rand der Seite. Und insbesondere Chrom, da es wunderbar, dieses Fenster zu formatieren und nehmen Sie die HTML und lassen es so aussehen viel schöner für Sie. So jetzt ist es eigentlich etwas, zusammenklappbar HTML, die Sie erkunden können, um zu überprüfen Die Elemente auf der Seite. Wenn wir wollen, um auf den Körper aus, es tatsächlich hervorhebt. Wenn Sie über einen Teil des HTML-blättern, unten in diesem Fenster, wird es Markieren Sie das Teil, da spricht etwa in der großen Fenster. Also lassen Sie mich noch einmal zu versuchen und blasen diese ein wenig. OK. Also öffnen wir den Körper. Und ich bin Scrollen über diese Links div. Und Sie stellen fest, dass es Hervorhebung diese linke Hälfte des Bildschirms. Lassen Sie uns also auf, dass Sie und zu erweitern, dass. Innerhalb von ihm, sieht es aus wie gibt es zwei divs. Es ist das erste div. Ich sehe nicht, dass hervorgehoben. Ich weiß nicht, aber es sieht so aus zweite, innere linke, der Gehalt Auf der linken Seite des Bildschirms. Dann gibt es dieses Ding namens Header. Es sieht aus wie das ist Hervorhebung Teil der CS50. Wenn wir uns öffnen, die sich, sehen wir, dass es nichts weiter als ein Kopf. Es ist eine ID gegeben, und es ist angesichts der Text CS50. Also noch einmal, es bei der Suche durch diese Konsole oder über die Entwickler-Tools Scheibe am unteren Rand des Bildschirms Marken Erkundung dieser Website hoffentlich ein viel weniger einschüchternd und viel mehr erreichen. Es erlaubt uns auch zu verstehen, dass Diese Website, obwohl es sehr aussieht hübsch und nett, ist gar nicht so viel mehr als was du sein wirst dabei auf Problem Set 7. Und dies ist völlig innerhalb Ihre Fähigkeit zu erstellen. Wenn wir wollen, - die andere kühle Sache über die Verwendung dieser Tools ist, wenn man einen Rechtsklick auf die Titel, können Sie die HTML bearbeiten. Also nennen wir es Jason. Und jetzt werden Sie feststellen, ich habe mich verändert die HTML-Datei auf dieser Seite. Natürlich habe ich nicht geändert dauerhaft. Wenn ich meinen Browser aktualisieren, dann wäre es gehen Sie zurück auf die ursprüngliche HTML. Aber manchmal möchte ich meinen Code zu debuggen, und ich möchte nicht aussehen muss nur meine gedit-Fenster und versuchen zu verstehen, , was los ist. Ich möchte sehen, was passieren wird live. Also werde ich Code wie diesen zu bearbeiten und erhalten es so, wie ich es will um zu schauen. Und dann werde ich das machen Veränderungen in meinem Code. Und ich finde, dass es viel einfacher wenn Sie die Dinge tun können, sofort, wie die. Sag mal, wieder einem anderen, wollen wir Chance, weil wir mit der Erforschung HTML und CSS jetzt. Ich kann die Datei jetzt bearbeiten. Und ich werde einen Link angeben. Also werde ich CS50 Heim ändern Seite, so dass es zu verlinken - sagen wir - meine Homepage. Was ist der Name, wenn jemand erinnert, oder was ist das Attribut Ich will geben zu einem Anker Registerkarte, wenn ich will es woanders verlinken? ZIELGRUPPE: href? JASON HIRSCHHORN: href - So, jetzt, werden Sie sehen, dass es ist ein Unterstrich unter Jason. Das ist, weil Chrome standardmäßig Anker gibt eine Unterstreichung. Sie haben wahrscheinlich gesehen, dass vor wenn Sie zu einer Web-Seite gegangen. Dinge, die Links sind unterstrichen und in blau. Der Standardstil für einen Link ist es in der Regel zu unterstreichen und steckte es in blau. Wenn ich es nicht mag, dass, Ich kann das ändern. Und wir werden sie in einer Sekunde ändern. Aber jetzt, auch feststellen, dass, wenn ich den Mauszeiger über diese, in der unteren linken Seite des Bildschirm, direkt über der Wortelemente ist die Verbindung, die ich gab ihn. So klicken Sie, wenn ich auf das - und wir können Rechtsklick auf diese, eine neue Registerkarte öffnen. Dies ist nicht wirklich meine Homepage. Es ist nur mein Name. Dort gehen Sie. Wir haben jetzt machen es zu einem Link. Lassen Sie uns einige CSS als auch. Die schöne Sache - und ich bin zu gehen machen diese etwas kleiner - ca. Diese Konsole ist, dass verrückt CSS Blatt bevor wir sahen, das war wirklich schwer zu analysieren, ist jetzt schön für uns auf der linken Seite gelegt von diesem Bereich. So können wir sehen. Und wenn wir diese Arten Registerkarte erweitern wir können alle von den verschiedenen Arten , die mit zugeordneten, in diesem Fall, Dieses besondere Element dieser Link-Element. Wenn wir das tun die Registerkarte Verbindung Stile, dass zeigt uns, nur nicht dort, wo alles stammt, aber im wesentlichen alle diese Stile, die auf sich Dieses besondere Element jetzt. Und sagen wir, wir wollen um es zu ändern ein bisschen. Also das ist alle Stile, die sind die auf diesem Element. Sagen wir, wir wollen es ändern, weil wir wollen sehen, wie etwas aussieht. Und wir sind nur spielen um gerade jetzt. Oder wir etwas aus zu testen, bevor wollen es im Code zu schreiben und Schieben es und es zu leben. Wir können Sie auf die Registerkarte Stile zu gehen. Und in der ersten Box es sagt, element.style. Und hier können Sie einfügen, Sie können etwas hinzuzufügen. So möchte ich - lassen Sie uns auf meinen Link und gehen die die Hintergrundfarbe. Und es tatsächlich AutoFills es für Sie, alle möglichen Eigenschaften. Hintergrundfarbe, und ich will , dass blau zu machen. Blus ist nicht ein Wort. Blue ist ein Wort. Habe ich sehe es kommen? Oh, das ist, weil es in der href? OK. Also ich sehe keine Veränderung hier. Und das ist, denn wenn wir das markieren Link, werden Sie feststellen, dass der Link ist eigentlich nicht die Kontrolle Eigenschaften dieses besondere Element. Es ist eigentlich, wenn wir den Link zu öffnen, dieser Header ist hier, dass Steuerung, wie es aussieht. Also, wenn ich will, um den Hintergrund zu machen blau, habe ich eigentlich ändern Hintergrundfarbe auf die Header-Element. Und nun sehen wir, dass die Hintergrund ist blau. Also noch einmal, dies schnell im Gange sein könnte durch dieses Material ziemlich schnell. Aber das ist im Wesentlichen, was Sie gehen zu tun. Es ist nicht auf Problem-Set 7, aber sicherlich, wenn Sie Codierung im Web. OK. Ich möchte den Hintergrund blau machen. Obwohl in diesem Fall, blau sieht ziemlich hässlich. Ich kann hier zu gehen, um zu spielen. Ich sehe, dass Sie es bis blau nicht auf dem ein zu arbeiten. Ich habe den Header tatsächlich ändern Element, um die blau sind Hintergrund. Und dann, wenn dann gehe ich zurück in mein CSS Datei, wie kann ich eigentlich diese eingestellt Hintergrund blau zu sein und Diese Änderung Stick? Denn wenn wir merken, wenn ich die aktualisieren Seite, werden alle Änderungen, die ich gemacht, sind vorbei. So erkannte ich, OK, meine Hintergrund ist blau. Ich muss in diesem header1 Element gehen und ändern Sie die Hintergrundfarbe zu Blau. Wie kann ich eigentlich machen, dass der Wandel? Nun, daran erinnern, dass, wenn wir reingehen von hier, dieser Header, die Titel hat eine ID. Und das ist Titel. Und so in unsere CSS-Datei, können wir sagen, OK, nehmen nichts mit der ID-Titel und geben ihm diese zusätzliche Eigenschaft. Wie können wir etwas mit der Referenz ID der Titel, Ideen, oder jemand wissen, wie wir verweisen IDs in unsere CSS-Datei? Ein Hash, das ist genau richtig. Und Sie, dass eine Spur von rechts hier. Also irgendwo in dieser CSS-Datei, es gibt diese Zeile Code - # Links # links-Innen # header # Titel. Und es ist ihm Rand unten, Festlegung der Marge Grund zu bestimmten Element. Nun, wenn ich wollte, das zu ändern, Ich würde in dieser CSS-Datei zu gehen. Und ich finde das könnte entweder Teil der CSS-Datei. Oder ich könnte meine eigene schreiben. Ich konnte Hash-Titel geschweiften Klammer und zu tun dann Hintergrundfarbe blau Doppelpunkt Semikolon und nah, dass geschweifte Klammer. Und das würde den Hintergrund ändern Farbe dieses Element zu blau. Der Grund warum sie hier geben Ihnen so viele ist dass es in diesem Fall notwendig, weil Titel ist eine eindeutige Kennung. Aber was Sie tun können, ist Nest Dinge. Also das ist zu sagen, OK, nach links zu gehen. Das ist sehr klein. Ich entschuldige mich dafür. Aber gehen Sie auf die Sache mit der ID links. Innerhalb der, dass, für die Sache mit ID linken Innen. Innerhalb von diesem Blick, suchen Sie nach die Sache mit ID-Header. Innerhalb der, dass, suchen Sie nach dem Ding ID Titel und ändern Sie die ID-Titel. Also das ist nur ein Weg, der Verschachtelung Dinge. Einige Leute mögen Nest, weil es macht es ein bisschen klarer. Sie werden auch hier unten rechts zu sehen, hier gibt es keine Hash. Es ist nur h1. Das ist, weil h1 ist angesichts der Name eines generischen Tag. Und es gibt einige CSS-Eigenschaften mit jedem einzelnen h1 verbunden. Also, wenn ich fand einen anderen h1 auf dieser Seite, Ich möchte auch sehen, dass dieser Stil war sowie beaufschlagt. Wenn ich wollte, um einen Stil zu einer Klasse gelten, wie kann ich verweisen auf eine Klasse oder sprechen von einer Klasse in einer CSS-Datei? ZIELGRUPPE: Punkt. JASON HIRSCHHORN: Es ist mit einem Punkt. Lassen Sie uns also zurück auf diese Seite gehen, bevor. Wenn ich Hash-ID. Das ändert den Stil der Sache mit Ausweis. Oder sorry, wenn ich Hash-Logo, das ist Suche nach der Sache mit der ID-Logo und ihm eine bestimmte CSS-Stil. Wenn ich etwas zu tun. Oben, das ist die Suche nach alles, was mit der Klasse der Ober-und Änderung ihrer Stile. Wenn ich einfach h1, dass jeder findet Einzel h1 und was auch immer gibt es die Stil will ich es geben. Wenn ich h1 Leerzeichen und dann. Spitze. Das wird gehen, finden Sie alle h1s und dann alle die, die mit der Klasse der Ober-und dann nur die Stile zu ändern was ich will, es zu geben. Und wieder, die wir geschrieben haben könnte einiges davon auf unseren eigenen. Aber wir wären nicht so weit gekommen. Viel besser, so scheint es eigentlich gehen auf einem echten Live-Website und sehen, wie sie es tun und schauen Sie sich alle der fantastische Dinge, die Sie tun. Schauen wir uns eine weitere Website bevor wir weiterziehen. Und das ist eine, die Sie wahrscheinlich werden vertraut mit. Dies ist CS50 Finance. Also noch einmal, können Sie tatsächlich in zu gehen und Diese CSS-Datei auf Ihrem beobachten Computer, weil Sie diese heruntergeladen haben CSS-Datei, wenn Sie die heruntergeladene Problem eingestellt. Wir können auf Extras und Entwickler-Tools. Und wir sehen eine viel einfachere HTML-Layout. Wir haben oben, Mitte und unten. Und wieder etwas, das man sein mit, denn Sie haben gesucht vertraut durch die Verteilung Code für diese Woche Problem eingestellt. An der Spitze ist, per Code, ein einzelnes Bild genannt. Und das ist der Bildquelle. Sagen, ich habe alles, was fertig Ich wollte für Set 7 Problem. Und es ist richtig arbeiten, aber Ich möchte zu ändern, wie es aussieht. Und ich, um den Hintergrund zu ändern von der Oberseite der Seite, zum Beispiel blau. Wenn es nach mir ginge, würde ich kommen in hier und herauszufinden, was OK will ich ändern. Mal sehen, div id top, dass sieht wie der oben auf der Seite. Lassen Sie uns also dorthin zu gehen. Lassen Sie uns versuchen Sie, die Hintergrundfarbe. Gehen wir tun Alice blau, weil das ist ein schöner, ein. Und Sie werden feststellen, dass - Sie wahrscheinlich nicht sehen können, dass. Aber es ist ein hellblau, neben dem CS50-Logo. Wir ändern es statt auf rot. Und Sie werden jetzt merke ich gerade geändert die Hintergrundfarbe auf rot. So, jetzt würde ich in meine CSS-Datei zu gehen und Typ # top lockig paren hier richtig. Sie können den Code der rechten Seite hier geschweifte Klammer. Und dann möchte ich hinzufügen, Hintergrund Farbe, rot. Und dann gäbe es sein, eine geschweifte Klammer. Das ist also, wie ich zu erforschen und experimentieren Sie mit dem Formatieren auf dem CS50 Finanzen Ort. Ich es hier und testen Sie tun könnten es ist in meinem Browser. Und dann konnte ich in meine eigentliche Code gehen und die Änderungen, dass Will tatsächlich live gehen und dass die Menschen tatsächlich sehen, wenn sie kommen sollten meine speziellen Ort. OK. Das war eine Menge. Ich entschuldige mich für das Durchlaufen es so schnell. Hat jemand irgendwelche Fragen haben, überhaupt über HTML oder CSS? ZIELGRUPPE: Können Sie etwas über zu gehen, wie Sie verknüpft wurde, was Jason, schon wieder? JASON HIRSCHHORN: Was Sie verknüpft das? ZIELGRUPPE: Sie ein Link zu einem anderen Website, mit dem Anker. JASON HIRSCHHORN: Also werden Sie fragen, nur allgemein, wie Sie einen Link zu machen? ZIELGRUPPE: Ja. JASON HIRSCHHORN: OK. Der Code für die Herstellung einer Verbindung - ZIELGRUPPE: Nein, wie in der HTML. JASON HIRSCHHORN: Hier unten, meinen Sie? Also, wenn ich einen Link einzufügen irgendwo, beispielsweise ist dies der HTML meine Seite hier richtig. Dies ist der HTML-Code. Vielleicht ist es in einer Datei geöffnet, index.html. Ich gehe in. Lassen Sie uns diese Copyright-John Harvard Link zu etwas. Also werden wir alles als HTML bearbeiten. Alles, was Sie tun, ist sind das eine, so umklammern eine enge Klammer an der Anfang, und dann Halterung Schrägstrich eine schließende Klammer am Ende. So, jetzt habe ich ein Anker-Tag enthalten. Und tatsächlich, wenn Sie auf aus diesem, wird sie jetzt formatieren Sie sie als HTML bearbeiten. Und sagen wir es verknüpfen möchten. Wir würden Sie die href-Attribut. Und wir sagen - Und nun, wie Sie feststellen, Urheberrecht John Harvard ist blau. Und wenn ich scrollen über es, es ist jetzt ein Link. So können Sie diesen Code zu schreiben. Sie können so ziemlich alles umgeben Sie in einem Anker-Tag wollen und schalten Sie es in einen Link. ZIELGRUPPE: OK. Verstanden. JASON HIRSCHHORN: Und wenn ich nicht wollte es - natürlich, manchmal Menschen neigen , diese Dinge, die nur schauen, dass blau und unterstrichen sind generisch nicht der schönste Weg, um einen Link zu machen. Also, wenn ich hier zu kommen, sehen Sie, dass, irgendwo in einer CSS-Datei, gibt es geschrieben und dann dieses eine zwei geschweiften Klammern. Also sagen wir mal, dass für Links, ich nicht wollen, dass sie blau, eher werde ich wollen, dass die Farbe eines Links zu sein, dieses schöne Magenta. Lass es uns die Farbe. Greifen wir Magenta. Nun, all die Links auf meiner Seite haben werden diese schöne Farbe Magenta. Manche Menschen wissen nicht, wie Farben überhaupt. Manche Menschen wissen nicht, wie Unterstreichungen. Sie erhalten zu holen. Mit Links, die Sie stylen können, wie sie aussehen, wenn man sie besucht haben. Wie werden Sie auf vielen Seiten bemerkt, Links abbiegen auf lila Sie sie besuchen. Sie können diese Farbe auch ändern. Ja. ZIELGRUPPE: Also Sie es ändern für jeden einzelnen Link. Aber wenn Sie nur wollten, dass Link tun selbst, würden Sie nur in der ID zu tun Boden oder so etwas? JASON HIRSCHHORN: Also große Frage. Wie Sie hier bemerkt, änderte ich einige Teil der CSS, die gilt alles, was ein A ist, wenn ich es wollte nur tun, dass Link am Ende, ich würde meine CSS-Datei gehen und wahrscheinlich tun, wie du gesagt hast, Hash- Bodenraum ein. Und das würde mir Als alle in den Boden. Oder ich könnte, alternativ, es zu eindeutige ID und dann tun Sie Hash-Link. Und das würde mir erlauben um dies heraus zu ändern. Allerdings nur austeilen IDs wohl oder übel ist generell eine schlechte Praxis, denn die sollte eindeutig sein. Und je mehr Sie haben, die es kann ein wenig verwirrend. Ja. ZIELGRUPPE: Können Sie das gleiche geben ID, mehrere Eigentümer? JASON HIRSCHHORN: Technisch ja. Nichts ist los, Sie zu stoppen, aber Sie sollten nicht Sie sollten ihm eine Klasse. OK, andere Fragen über HTML oder CSS? OK. Kommen wir nun zu PHP. Oh, ja. PUBLIKUM: Was ist es über diese Websites, die bedeutet, dass wir bearbeiten können, bevor wir sie aktualisieren. Aber sobald wir aktualisieren es kehrt auf die Anfangs HTML zurück? JASON HIRSCHHORN: Gute Frage - so, wenn wir diese geladen haben Web-Seite, es ist HTML. Und es ist kein JavaScript. Die PHP ausgeführt wird, um uns zu geben, was auch immer Art der Website, die wir sehen. Und es ist etwas HTML, manche erstellt JavaScript und einige CSS. Und das ist jetzt zugänglich von unserem Computer. Und eine Kopie dieser Dateien wird gespeichert lokal auf unserem Computer, vorerst. So können wir diese lokale Kopie zu bearbeiten. Aber natürlich sind wir nicht bearbeiten der Server-Kopie. Und wenn wir die Seite zu aktualisieren, wir bekommen einen anderen Server kopieren. Und so sehen wir die Dinge zurück, wie sie waren. Wenn wir in der Lage, von hier, zu bearbeiten die offiziellen Website, würden wir eine Menge haben Probleme. ZIELGRUPPE: Ja, so kann man lesen und schreiben Sie diese Kopie. JASON HIRSCHHORN: Richtig. Wir machen nur lokale Änderungen hier aber wieder, sehr hilfreich für die Erkundung, oft. Wenn ich schreibe meine Abschlussprojekt, für Beispiel, ich will sehen, wie einige Website gemacht etwas Look die Art, wie sie es taten. Ich werde gehen und diesen Bereich nach unten hier, zu welchem ​​CSS gab sie aussehen es oder welche Farbe sie abgeholt oder wie sie bekam es so, dass, wenn Sie schwebte über etwas, kam die Liste in einem schönen kaskadenförmig. Es ist ein guter Weg, um zu prüfen, welche anderen Websites zu tun und leihen, von ihnen. Kommen wir nun zu PHP. PHP steht, in einem rekursiven Sinn PHP Hypertext Processor. Und PHP, was es tun wird Ausführen von Code ist Server-Seite. So werden wir nie mit PHP-Code zu sehen. Allerdings ist es schön zu spielen mit HTML und häufig zu eine Menge von HTML-Code. Aber wie werden Sie mit Problem vertraut sein Set 7, wird Ihr PHP-Code auszuführen, erzeugen einige HTML, und das ist, was der Benutzer am Ende sehen. PHP ist unglaublich ähnlich C. Es gibt jedoch ein paar Unterschiede, und diese Unterschiede sind wichtig zu beachten. Ein Unterschied ist, dass die Variablen in PHP lose typisiert. Hat jemand einen Sinn haben von dem, was das bedeutet? ZIELGRUPPE: Keine Notwendigkeit, es stürze dich. Wie keine Notwendigkeit, in Text zu schreiben. JASON HIRSCHHORN: Ich würde nicht mit der Wort Besetzung, aber ja, keine Notwendigkeit zu erklären, ein Typ für eine bestimmte Variable. Wie wir stattdessen eine Variable deklarieren? ZIELGRUPPE: Verwenden Sie ein Dollarzeichen. JASON HIRSCHHORN: Verwenden Sie ein Dollarzeichen. So $ x eine Variable ist. Ist $ 1 eine Variable. $ String ist eine Variable. Die Variablen $ x konnte eine ganze Zahl sein. Dann könnte es eine Zeichenkette sein. Dann könnte es ein Zeichen sein. Es spielt eigentlich keine Rolle. Auch die kühle Sache über PHP ist, sagen wir, $ x die Zeichenkette ein. Und $ y ist der Charakter ein. Sie können $ x und $ y hinzufügen, und es werde geben Sie 2, was man erwarten würde. So gibt es Niederlassungen in PHP. Weil es locker typisierte Variablen, einige implizites Casting ist für Sie erledigt und einige Operationen. Sie können Operationen an Dinge zu tun von verschiedenen Arten. Während vor, erhalten Sie häufig eine Fehler in C-Sprichwort, das ist nicht die Art das soll hier. Nur Dinge dieser Art können hier. Du wirst doch nicht um diese Art zu erhalten Fehler, in der Regel, in PHP. Also das ist ein großer Unterschied - wie wir mit Variablen. Der zweite große Unterschied ist, dass PHP-Code interpretiert wird. Wheres wird C-Code kompiliert. Was ist das? Nun, für C-Code, den Sie lief es durch einen Compiler. Sie erzeugt eine binäre Datei. Und Sie, dass die Binär-Datei lief. Sie kümmerte sich um alle Fehler vor Sie die Binär-Datei erzeugt. Natürlich, es hätte sein können Segmentierungsfehler, wenn Sie lief der Binärdatei. Aber es ist nicht wie Sie vergessen haben, gehören die Definition von printf, oder Sie haben nicht nur eine Variable und erstellt eine verschwenderische variabel. Oder Sie definieren hat eine Funktionsprototyp. Alle, die vor euch zusammengestellt passiert. Es gab dir alle Fehler oder schlecht Dinge, die es gedacht passieren könnte. Und dann mussten Sie Ihre 0 und 1 Datei, die Sie lief. PHP-Code funktioniert so nicht funktionieren. Sie werden Ihre PHP-Code zu schreiben. Dann sind Sie gehen speichern Sie sie, vermutlich. Und zumindest in P-Set 7, Sie gehen Ihren Web-Browser zu aktualisieren, und Sie gehen, um zu sehen was passiert ist. Du wirst sehen, die Ausgangs dieser PHP-Code. Möglicherweise sehen Sie auch, an der Spitze Ihrer Seite ein Fehler auf. Denn Sie hatten einige Fehler in der PHP. Sie können immer noch den Rest der die Web-Seite ist in Ordnung suchen. Aber ein Teil ist falsch, und es gibt ein Fehler an diesem Ort. Und das liegt daran, dass ein Teil der Ihre PHP-Code funktioniert nicht. In der Tat, wenn Sie ausführen, wenn Sie gehen, um so etwas wie by.php. Es wird durch Ihre PHP gehen Datei Zeile für Zeile und führen Sie es aus dann und nur dann. Es wird nicht zum Kompilieren vor Zeit oder kompilieren eine Kopie und geben dass kompilierte Kopie an alle. Jedes Mal, es wird durchlaufen Zeile für Zeile und ausführen. So einige Zeilen funktionieren könnte und Ausgangs etwas richtig. Und andere Linien könnte gebrochen werden und stattdessen ein Fehler ausgegeben. Also, wenn das Debugging mit PHP, die wir gegeben haben Sie ein paar hilfreiche Dinge , Sie Debug-Hilfe, wie der Dump-Funktion. Aber im Allgemeinen, Sie gehen , um diese Fehler zu sehen. Und das ist, wie Sie zu gehen wissen, dass Sie etwas falsch gemacht haben. Aber Sie nur gehen, um den Fehler zu sehen wenn Sie tatsächlich führen Sie den Code. Ein weiterer wichtiger Aspekt von PHP und Web-Entwicklung ist die Idee der get gegen Post. Kann jemand erklären, was der Unterschied zwischen GET und POST sind? Nobody - Ja. ZIELGRUPPE: Hat nicht einer von ihnen damit der Benutzer die Daten sehen, und einer von ihnen nicht? JASON HIRSCHHORN: Großartig. Ja, haben Sie etwas hinzufügen? ZIELGRUPPE: Ich dünne Säule ist ein super-globalen Variablen. JASON HIRSCHHORN: Also diese beiden Variablen, die Ihnen. Dies sind nur Variablen. Und Sie wissen, dass sie Variablen sind, weil ich hier verwenden Sie die Dollar-Zeichen. Dies sind Variablen gegeben Ihnen von PHP. Und wenn man zwischen Web-Seiten zu bewegen, Sie einige Informationen speichern wollen. Wahrscheinlich wollen Sie sparen, wenn der Benutzer angemeldet Das ist nicht in GET-und POST gespeichert. Das ist in etwas anderes gespeichert, eine andere Variable. Jeder weiß, welche Variable, die gespeichert ist in, oder welche Variable, die Sie verwenden in P-Set 7, um sicherzustellen, dass der Benutzer eingeloggt? $ _SESSION, Das ist genau richtig, wahrscheinlich wichtig, vertraut sein mit die Namen dieser Dinge die Sie häufig verwenden. So können Sie den Session-Variablen verwenden, um zu sparen Informationen von Seite zu Seite. Das ist ein Super-Variable. Es gibt auf jeder Seite, vielleicht wie ein globale Variable, wenn Sie denken wollen darüber so. Es gibt eine Reihe von anderen Variablen Informationen, die Sie übertragen lassen von Seite zu Seite. Insbesondere die, die wir uns konzentrieren auf sind die GET-und die POST-Variablen. In PHP sie aussehen $ _GET Und $ _POST. Und der Unterschied, wies als Marcus sich zwischen den beiden ist, dass, Informationen in $ _GET ist in der URL angezeigt. Also, wenn wir hier unten schauen, wir sehen ein YouTube-Link. Wir sehen dieses Fragezeichen. Wir sehen v = und dann einen gewissen Wert. Zurück zu dieser Idee der Schlüsselwert Paar ist der v der Schlüssel. Und hier ist der Wert. Also, wenn wir auf diese Seite zu gehen oder Codierung auf dieser Seite, würden wir eine haben Variable namens $ _GET. Wenn wir nach $ _GET Klammer auf "v" Klammer zu, sehr ähnlich Array Notation ist dies ein assoziatives Array weil wir nicht über Indizes. Wurden mit Strings als Schlüssel. Aber sehr ähnliche Idee. Wenn wir gingen wir, diesen Wert zu bekommen. Auf dieser Seite möchten wir in der Lage sein, , um diesen Wert zu verwenden. Wenn wir tatsächlich aussehen, lassen Sie uns gehen Sie zu einem YouTube-Seite. Welche Video sollten wir sehen? Dieses sind die Menschen Hobbit-Fans? ZIELGRUPPE: Ja. JASON HIRSCHHORN: Also ich bin kopieren ihren Anteil URL Einfügen in einem neuen Fenster. Und jetzt, wenn Sie sich hier anschauen, werden Sie feststellen, dass wieder einmal - Ich werde in diese Adresse kopieren und gedit, so können wir sehen es größer. Sie werden bemerken, dass es Dieses Fragezeichen. Das Fragezeichen bezeichnet, dass alles, was danach sein wird, in der GET-Variable gespeichert. Es hat dann die v, das ist die erste Schlüssel und dieser erste Wert. Ampersand ist besonders. Ampersand ist zu sagen, OK, wir beendete den ersten Wert. Wir gehen nun zu einem anderen Schlüssel-Wert-Paar. Hier ist das Hauptmerkmal genannt, und der Wert ist youtu.be. Also, wenn ich eine Codierung diese Seite und jemand ging auf diese URL, und ich hatte vielleicht watch.php. Und ich habe diese Codierung. Und ich konnte die $ _GET-Variable verwenden. Und ich würde einen V haben, und Ich würde eine Funktion haben. Und wenn ich die Taste v, I würde diesen Wert zu erhalten. Und wenn ich $ _GET Klammer "Feature" Klammer zu, würde ich diesen Wert zu erhalten. Auch hier macht es nicht unbedingt gelten - offensichtlich, die YouTube Schlüssel und Werte und erhalten Informationen gilt nicht für unser Problem Set 7. Aber es gibt bestimmte Dinge, die wir gelangen über GET in unserem Set 7 Problem. Und sicher, wenn Sie auf eine Web-Seite zu gelangen oder Codierung Ihre eigene Seite, die $ _GET Wird sich als nützlich wenn Ihr Codierung. Was ist ein Grund, $ _GET verwenden, dann wenn es keine Privatsphäre bietet? Sie alle diese Informationen zu sehen das ist übertragen. Es ist alles für den Benutzer angezeigt. Aber was ist ein Grund, dass Sie vielleicht wollen etwas in $ _GET als zu sparen, auf $ _POST dagegen? Warum sollten Sie das tun wollen? Gut. Ich fragte Sie, in Quiz ein. Was ist die pro von $ _GET? Was ist ein Profi? Yeah - ZIELGRUPPE: Es ist einfacher, Informationen auszutauschen. JASON HIRSCHHORN: Ich denke, das ist großartig. Es ist einfacher, Informationen zu teilen. Es ist einfacher, Lesezeichen. Sie können nun Lesezeichen, YouTube.com / watch? V = etwas und gehen zu diesem bestimmten Video. Wenn YouTube immer tat POST-Anfragen zu verschiedenen Seiten, jeder YouTube URL wäre YouTube.com. Sie könnten eine einzelne Video kein Lesezeichen. Denn wenn Sie sagen, dass Link geteilt mit jemand anderem, sie nicht erhalten automatisch Ihre Post-Variable. Sie sind einfach immer diesen Link, und die Link ist für alle gleich. Das ist also ein Profi. Es ermöglicht Ihnen, bookmarken Informationen und teilen diese Informationen oder machen es ein bisschen benutzerfreundlicher. Natürlich gibt es keine Privatsphäre, so haben wir diesen Beitrag variabel. Und nach Informationen nicht in der URL angezeigt. Es ist nicht ganz privat. Aber es ist geringfügig mehr privat. Und so werden Sie diese URL sehen hier unten, cs50.net. Ob Sie in der angemeldete Website, es geht um das gleiche haben URL cs50.net. Offensichtlich ist etwas anderes, wenn Sie in die Website eingeloggt. Sie haben, ein, wahrscheinlich Eingabe Ihrer PIN. Und es wurde bestätigt, dass mit dem Server. Und es ist wahrscheinlich sparen einige andere Informationen. Aber die URL überhaupt nicht ändern. Und damit ist der Fall, wenn etwas wird von POST gesendet. Die URL ändert sich nicht. Diese Information ist nicht POST in der URL angezeigt. Aber einige Zustand hat sich geändert, und vielleicht gibt es einige Informationen in die gespeicherte POST-Variablen. Entschuldigung. bevor ich in SQL zu gehen, jede Fragen zu PHP, insbesondere Fragen über Dinge, die wir nicht übergehen dass Sie gefunden haben, oder einen Syntax-oder Logik Fragen zu PHP? OK. Die endgültige Sprache werden Sie Interaktion mit dieser Woche ist die Structured Query Language, SQL, Fortsetzung ausgesprochen häufig. Das erlaubt Ihnen, mit dem interagieren Datenbank in einer formalisierten Art und Weise. Und es spielt sehr schön mit PHP. Wie Sie in Problem Set 7 zu sehen, haben wir gegeben Sie eine Funktion namens Abfrage. Und es dauert eine SQL-Zeichenfolge und führt die Abfrage in der Datenbank. In den vergangenen Jahren waren Sie nicht Diese Funktion gegeben. Sie mussten PHP-Funktionen verwenden, um die Abfrage auf die Datenbank und die Prüfung für Fehler und erhalten dann die Ergebnisse. Und eigentlich ist es nicht so schwer, weil wieder, es spielt sehr schön mit PHP. Und PHP gibt Ihnen eine Menge von Funktionen mit einer SQL-Datenbank interagieren. So oft, die beiden von diese zusammen. Natürlich könnten Sie interagieren mit die SQL-Datenbank mit einem Reihe von anderen Sprachen. Aber PHP ist eine große man wählen. Eine Datenbank - wir über dies schnell gehen, weil dies ist ein Modewort wir zu gehen beginnen mit oft - ist eine Sammlung von Tabellen. Also wir daran denken können als Excel-Datei. Eine Excel-Datei mehrere Registerkarten auf der Unterseite des Bildschirms. Jede Registerkarte wir jetzt einen Tisch rufen, wo eine Tabelle ist eine Auflistung von Zeilen. Und was ist eine Reihe? Nun, das ist eine Zeile, die gleiche Sache in der Excel-Datei. Das hat nur bestimmte Werte für jede bestimmten Bereich oder jede gegebene Spalte. Es ist wie ein Eintrag in der Tabelle. Es ist ein Student, der eine ID, a spezifische ID und einem bestimmten Namen und eine bestimmten Haus. So dass eine Datenbank ist eine Sammlung von Tabellen. Und Tabellen selbst sind ein Anzahl der Zeilen oder Datensätze. Es gibt auch in jeder Tisch, bestimmte Felder. Und das gibt, was jeder Datensatz gehen zu müssen, manchmal auch als Felder Spalten, aber allgemein als Felder. In diesem sehr einfachen Tisch, ich habe drei Felder, ein ID-Feld, einen Benutzernamen Feld und ein Hash-Feld. Und ich habe drei Zeilen. Gerade jetzt sind sie leer. Sie würde wahrscheinlich nicht leer sein wenn dies meine eigentliche Datenbank. Also, wenn Sie Excel verwendet haben, ähnliche Idee zu dem, was Sie in Excel zu tun, obwohl, offensichtlich, jetzt sind wir in der Lage zu sein, viel mehr tun, mächtige Dinge auf die Informationen, die gespeichert wird in unserer Datenbank. Sie erstellen sich ein Datenbank Problem Set 7. Aber Sie werden das Erstellen mehrerer Tabellen in der Datenbank. Hier finden Sie eine Datenbank erstellen werden oder eine Tabelle für die Nutzer. Hier finden Sie auch eine Tabelle erstellen, werden für wahrscheinlich Aktientransaktionen, zu halten Spur von ihnen, weil Sie brauchen Umsetzung einer Geschichte Funktion. Sowohl die Tabellen haben verschiedenen Bereichen. Zum Beispiel, in einem Benutzerfeld, Sie wahrscheinlich wollen ihren Benutzernamen und ein ID und ein Hash sein Passwort. In der Tabelle, die Aktien der Spur hält Geschichte oder die Geschichte Tabelle können Sie wahrscheinlich nicht brauchen, den Benutzernamen und der Hash und die ID. Sie brauchen wahrscheinlich nur einer von denen, Werte, die einzigartig sind, zu assoziieren mit einem bestimmten Benutzer. Aber dann, auf andere speichern wollen Sie Dinge wie, was Zeit wurde Transaktion. Welche Aktie gekauft oder verkauft wurde? Wie viele Aktien aus dem Aktien wurde gekauft oder verkauft? Was war der Preis, zu dem die Aktie gekauft oder verkauft wurde? Also noch einmal, du gehst zu interagieren sind mit Datenbanken, die ist gehen, um mehrere Tabellen haben. Jede Tabelle ist zu haben, seinen eigenen Satz von Feldern. Es wird jedoch wahrscheinlich eine ähnliche sein Feld in jeder Tabelle, dass betrifft sie miteinander. Normalerweise ist dies ein ID-Feld. Denn wenn jeder Benutzer eine eindeutige ID und Sie diese ID assoziieren mit jeder Transaktion, die Benutzer macht oder die ganze Geschichte dieses Benutzers. Und Sie haben die ID des Benutzers. Sie können Informationen zu erhalten entweder Tisch. Sie können ihren Benutzernamen, und Sie können alle ihre Transaktionen zu bekommen. Haben Sie Fragen zu Datenbanken, oder spezielle Fragen? Eigentlich wollen wir halten, dass. Wir werden dort in zwei Seiten. So gibt es vier Operationen Datenbanken, die Sie verwenden werden, in Problem Set 7 und wahrscheinlich je verwenden werden. Das erste, was Sie tun möchten, ist Einsatz ein neuer Datensatz in eine Tabelle oder eine neue Zeile in einer Tabelle. Dies ist die generische Funktion, die generische Form, dieser SQL-Abfrage. INSERT INTO den Tisch, was auch immer Spalten Sie einfügen möchten, und dann die Werte, die Sie gehen zu wollen sind legte in diesen Spalten oder Felder. Wenn Sie mehrere Tabellen in einer Datenbank oder mehrere Datenbanken, die Sie Möglicherweise müssen Sie auch die Datenbank angeben und die Tabelle, die Sie wollen die Dinge kannst. Aber sehr einfach, wenn Sie einfügen möchten in etwas, sagen Sie, hier sind die Ich möchte Felder eingefügt werden soll. Und hier sind die Werte. In einigen Tabellen auch, und das Benutzer- Tabelle ist ein gutes Beispiel. Wahrscheinlich in der Tabelle dieser Bedienungsanleitung und wahrscheinlich in der Tabelle Ihre Benutzer in P-Set 7, es gibt nicht nur einen Benutzernamen Wert. Es ist nicht nur ein Geldwert, oder Feld, lieber. Es ist auch ein ID-Feld. Ich gehe nicht, dass die ID-Feld einfügen. Das wird gegeben werden mir automatisch, wenn ein neuen Datensatz eingefügt. So gibt es einige, die Sie Feld eingestellt automatisch sein. Vielleicht sind Sie für jeden Benutzer geben wollen 10.000 $ an Bargeld von der Fledermaus. So brauche ich nicht einfügen eine Reihe von Geld hier. Alles was ich brauche, um einzufügen ist der Benutzername. Und dann wird der Cash-Feld sein vorausgefüllt, und die ID-Feld wird werden vorbelegt. So oft, wir sind nicht das Einfügen etwas in allen Bereichen, denn die anderen Felder sind bereits besiedelt. Denn das ist, wie wir einzurichten, dass die Tabelle. Das zweite, was du zu gehen tun möchte, ist eine Aufzeichnung zu löschen. Löschen von etwas ist sehr einfach. Sie geben den Tisch, wo Sie wollen etwas aus zu löschen. Und Sie sagen, OK, ich möchte das löschen Datensatz, der einen Benutzernamen von Milo hat. Oder ich möchte alle Datensätze zu löschen, die einen Benutzernamen von Milo oder waren, dass eine Transaktion von Benutzer-ID-Nummer 2. Sie haben Fragen zu diesen zwei Typen von Abfragen? ZIELGRUPPE: [unverständlich]. JASON HIRSCHHORN: Ja. Also ich werde Reihe und Rekord verwenden austauschbar und einige mit Spalte und Feld. Aber eine Zeile ist ein Rekord. Eine Spalte ist ein Feld, gehen zurück nach dieser Tabelle. OK. Das nächste, was Sie wahrscheinlich zu tun ist, einige bekommen Informationen aus der Tabelle. Das ist eine Select-Abfrage. Und wieder, welche Tabelle Ich bin von der Auswahl? Und welche Spalte will ich die Option, oder welchen Wert will ich auswählen und aus welcher Zeile? Also die Auswahl ist ein wenig spezifisch. Ich sagen, OK, ich will diese Tabelle. Und dann möchte ich die Spalte Benutzername und Ich will es aus der Zeile mit der ID 2. Das ist ein Weg, um eine Auswahl zu tun. Oder ich kann sagen, mir jeden Einzelbenutzernamen ein. Oder ich kann sagen, gib mir eine ganze Zeile aus dieser Tabelle, wo der Benutzername ein. Also es gibt ein paar verschiedene Möglichkeiten, um SELECT-Abfragen zu tun, je nachdem, wie viele Informationen Sie möchten, Sie können immer nur alles wählen von diesem bestimmten Tabelle und dann die Schleife durch sie, Kommissionierung die Dinge, die Sie wollen. Aber denken Sie daran, wenn Sie mit der Auswahl sind eine Menge Dinge aus einer Tabelle und Sie haben einen wirklich großen Tisch, wird das dauern einige Zeit, also am besten nur wählen Dinge, die Sie gehen um am Ende mit. Auch mit auswählen und mit all diesen andere SQL-Befehle wie gut, ich bin was Ihnen die nackten Knochen-Version. Aber zu sagen, ich bin der Auswahl der Benutzer, und ich möchte um sie aus alphabetisch drucken, Ich konnte alle Benutzer auswählen und dann sortieren sie alphabetisch in meinem Code. Oder gibt es eine Möglichkeit die Auswahl zu schreiben Abfrage wählt, dass die Dinge in eine alphabetischer Mode, basierend aus einer bestimmte Spalte, aufsteigend oder absteigend. Also denken Sie daran, dass eine Menge von dem, was Sie tun möchte, kann wahrscheinlich gemacht werden die Abfrage durch eine zusätzliche zuzuschreiben. Also schauen diese Abfragen online oder die anderen Dinge, die Sie tun können, mit diesen Abfragen, um sie zu erweitern. Schließlich das letzte, was Sie tun möchten, ist nicht etwas, einfügen oder löschen etwas, sondern etwas zu aktualisieren. Und die mit der Aktualisierung durchgeführt Abfrage, und wieder, welche Tabelle. Und was ändern will ich machen? Und um die Zeile oder Platte machen Ich will, dass der Wandel zu machen? Sie haben Fragen zu SQL? OK. So haben wir etwa 15 Minuten. Und dies ist die letzte Folie die ich habe. Und hoffentlich ist diese letzte Folie ein guten Übergang in das Problem eingestellt, da zu verstehen, wo wir wollen Einfügen von Datensätzen, zu löschen, wählen Sie sie, und aktualisieren Sie sie uns helfen verstehen, die größere Logik und fließen von Problem Set 7. So weiß ich, alle Antworten auf diese Fragen. Ich werde mich nicht zu sagen, alle Antworten. Aber wenn jemand anderes möchte präsentieren eine Frage an die Gruppe oder eine Antwort auf eine dieser Fragen, können wir verwenden, die als Startpunkt zu sprechen über das Problem Satz. Oder wenn jemand eine generische Frage aus dem Problem-Set, das Gefühl, frei, das auch fragen. Und wir dort starten können. Beachten Sie, dass Sie schweigen schadet allen. Ja. ZIELGRUPPE: Also ist der einzige Weg, um übergeben Variablen zu und von verschiedenen Web Seiten oder die bequemste Weise mit POST oder GET? JASON HIRSCHHORN: Also ja, das ist die bequemste Weg zu sagen -, wenn jemand ein Formular ausfüllt - informieren Sie sich auf einer anderen Webseite Seite mit GET oder POST. Aufgrund der Rahmenbedingungen sind wir mit in diesem Problem-Set, werden Sie feststellen, dass eine Menge Zeit, die wir machen eine andere Seite. Oder wir machen wir eine weitere Datei, nicht notwendigerweise eine andere Seite. So gehen wir in einer Variablen. Und dann, macht es ein HTML-Seite, mit der Informationen aus dieser Variable. Das ist technisch nicht vorbei Informationen zwischen verschiedene Web-Seiten. Das ist vorbei Informationen zwischen verschiedenen Dateien. Und so können wir jegliche Nutzung Variable, um das zu tun. Aber ja, wenn wir wollten weitergeben Informationen von einer bestimmten Seite eine andere Seite, GET und POST würde sein, die Art und Weise, das zu tun. Alle anderen Fragen zu das Problem ein? OK. Lassen Sie uns gehen, dann eine spezifische Teil des Problems gesetzt. Sie werden zu müssen an einem Punkt, Portfolio jemand auf Anzeige der Bildschirm. Was meine ich, wenn ich sage, Portfolio, in Zusammenhang mit diesem Problem ein? ZIELGRUPPE: Es ist wie die Aktien, die sie haben, wie viele Aktien sie besitzen, der Preis, und wie viel Geld, das sie verlassen haben. JASON HIRSCHHORN: Das klingt toll. Deshalb möchte ich alle Aktien anzuzeigen sie besitzen, für jede Aktien Unternehmens Aktien und wahrscheinlich, wie viel das ist, wert ist, und dann eine separate Variable, wie viel Geld sie besitzen. Also sage ich, um zu beschreiben, dass. Lassen Sie uns darüber reden, wie ich konnte, gehen zu tun, welche Tabellen Ich bin gehen zu müssen, zu haben, in der Lage sein, das zu tun. Yeah - ZIELGRUPPE: Nun Benutzer, und dann, denke ich, Sie können eine Tabelle namens machen Aktien oder so etwas, was wäre, wie viele sie gekauft haben. JASON HIRSCHHORN: OK. Also werde ich eine Tabelle namens brauchen Benutzer, die den Überblick über die hält Benutzername, vermutlich, wahrscheinlich einige ID, wahrscheinlich eine individuelle Passwort. Was ist etwas anderes, die Sie gerade gesagt, dass ist verbunden? Jemand neben Michael, was ist etwas anderes, das verknüpft ist mit jeder Benutzer, einzigartig zu ihnen? ZIELGRUPPE: ID. JASON HIRSCHHORN: ID - was ist eine andere Sache, wir sind wahrscheinlich zu wollen Anzeige auf dieser Seite? ZIELGRUPPE: Ihr Name. JASON HIRSCHHORN: Ihr Name - was ist eine andere Sache, im Zusammenhang mit dieser besonderes Problem eingestellt? ZIELGRUPPE: Welche Aktien, die sie besitzen - JASON HIRSCHHORN: Es sind los sein, eine Menge, welche Aktien sie besitzen. Was ist eine der spezifische Wert aber, dass sie gehen zu müssen, mit ihnen verbunden? Wie werden sie zu kaufen und verkaufen ihre Aktien? ZIELGRUPPE: Cash. JASON HIRSCHHORN: Sie sind gehen, um Geld zu haben. Jeder Benutzer ist zu haben, ein Wert für Geld. Und das wird sein für jeden Benutzer eindeutig. So in der Tabelle des Benutzers, ermöglicht es Sinn in bar gebracht. Man könnte natürlich eine andere erstellen Tabelle, die Benutzer-IDs und hat ihre Wert von Bargeld. Aber es ist nicht sinnvoll. Es macht Sinn, setzen Sie einfach all dies in einer Tabelle. So werden wir einen Tisch haben mit diesen Informationen. Und dann, was ist die andere Tabelle wir gehen zu müssen? Sie sagte, ein Aktien-Tabelle. Was setzen wir in die Aktien Tisch? Jeder, Ideen - PUBLIKUM: Das Unternehmen. JASON HIRSCHHORN: Wir gehen im Namen der Put- Unternehmen, so AAPL für Apple. Ja. ZIELGRUPPE: Wie viele Aktien und wie viel sie wert sind. JASON HIRSCHHORN: Wie viele Aktien, wie viel sie wert sind - was ist etwas, was wir müssen in dieser Tabelle? ZIELGRUPPE: Eine Benutzer-ID zu indizieren. JASON HIRSCHHORN: Ein User ID. Also in dieser Tabelle, werden wir wahrscheinlich - sagen wir mal, wenn es jemanden, besitzt drei Aktien, drei Reihen mit jeweils dass Benutzer-ID oder dass einzelne Benutzer ID, aber eine andere Firma, eine unterschiedliche Anzahl von Aktien vermutlich und eine andere Preis-Wert für jeden über die Vorräte. Auch hier, was ich jetzt sage, ist nicht unbedingt die Implementierung, weil Sie erkennen, gibt es einige weitere effiziente Möglichkeiten, sie umzusetzen. Aber das ist ein guter Ort, um zu starten. OK. Das sind also die beiden Tabellen die wir haben. Jetzt wollen wir diese Seite anzuzeigen. Was die erste Art von Abfrage wir brauchen, um zu machen. Auf jeder Seite wird angenommen, dass ein Benutzer angemeldet sind, haben wir deren Benutzer-ID. Also, was ist die erste Art von Abfrage, die wir machen müssen? Ja. ZIELGRUPPE: Ihre Benutzer-ID. JASON HIRSCHHORN: Wir haben die Benutzer-ID, wenn wir beginnen, um Code auf der Anfang unserer Seite. Also, was ist die erste Art der Abfrage, die wir machen müssen, angesichts eines Benutzer-ID? Wir gingen über die vier Arten. Es gibt nur vier mögliche Antworten. ZIELGRUPPE: Es ist wählen Sie einen Eintrag. JASON HIRSCHHORN: A Select - wollen wir von der Benutzer-wählen Tisch zu bekommen, sagen wir, ihre Menge an Bargeld. Und wir können die Höhe der Geld drucken auf der Oberseite des Bildschirms. OK. Was ist der nächste Art von Abfrage, die wir tun wollen? Wir haben einige andere Dinge wir brauchen, um anzuzeigen. Die sind in einer anderen Tabelle gespeichert. Also, wie sollen wir das zu bekommen? ZIELGRUPPE: Sie wählen für sie. JASON HIRSCHHORN: A Wählen Sie - wieder es gibt nur vier Möglichkeiten. Wählen Sie wahrscheinlich Klänge wie das rechte. Also haben wir eine andere Auswahlabfrage tun müssen, wieder mit dieser Benutzer-ID. Und nun, nicht nur eine Rückkehr wollen wir Reihe, bu alle Zeilen, die unseren entsprechen Kriterien, wobei die Benutzer-ID gleich 1 ist. Und dann können wir gehen und lassen nur eine Schleife drucken alle, die auf dem Bildschirm Vielleicht drucken Sie das Unternehmen von jedes von denen auf dem Bildschirm. Toll, das klingt wie das ist, Anzeige eines Portfolios nicht viel mehr komplizierter. OK, dann entscheidet der Benutzer, dass sie haben viel Geld übrig. Und sie wollen, einige kaufen mehr Aktien einer Aktien. Lassen Sie uns sagen, die sie bereits besitzen Lager dieser Firma auch. Also gehen sie das Buy-Seite. Sie Eingangsnamen des Unternehmens. Was ist die Abfrage nach der Eingabe der Firmennamen, die Sie brauchen, ausführen als nächstes? Ja. ZIELGRUPPE: Update. JASON HIRSCHHORN: Update - und was Tabelle wollen Sie ändern? ZIELGRUPPE: Die Tabelle, die auf ihrer ID-Nummer? JASON HIRSCHHORN: So aktualisieren nicht Tisch des Benutzers - so die Aktien Tisch, zu aktualisieren, wo das Benutzer-ID passt nicht nur, sondern die Lager Name auch passt. Sie werden etwas Wert zu erhalten. Und dann werden Sie diesen Wert nehmen wollen und fügen jedoch viele Aktien sie wollen, um es zu kaufen. Also wollen Sie nicht blind diesen Wert überschreiben. Aber man kann in der Tat, nehmen, dass die ersten schätzen und einfach aktualisieren. Sie können tun, wie ein Plus entspricht, anstatt nur einem Gleichheits. Was ist etwas, obwohl - wenn wir Gedanken über dies und wir sein wollen so robust wie möglich - wir tun sollten bevor wir laufen, dass die Update-Abfrage? Sie wollen bis zu fünf Jahren von Apple zu kaufen. Jede Aktie von Apple ist 200 $. ZIELGRUPPE: Wir sollten Geld zunächst prüfen. JASON HIRSCHHORN: Wir sollten überprüfen Sie zuerst Geld. Wir sollten sicherstellen, dass sie machen genug Geld. Welche Art von Abfrage können wir ausführen, um sicherzustellen, dass sie genug Geld haben? ZIELGRUPPE: Eine weitere Auswahl. JASON HIRSCHHORN: A Select - wir auf der Grundlage ihrer Benutzer-ID wählen, um ihren Wert von Bargeld. Haben einige schnelle Mathematik. Und wenn das passiert aufbringen, sie haben genug Geld. Dann können wir unsere Update ausführen. Oder vielleicht, wenn nicht, dann gehen wir. Wir geben ihnen eine Warnung aus. OK. Sagen sie nicht über eine Gesellschaft zu haben. Sie kaufen ein neues Unternehmen. Sie kaufen Microsoft. Welche Art von Fragen, wollen wir tun, wenn sie Microsoft kaufen? Und sie keine eigenen Microsoft. Nicht Manu, jemand anderes, jemand neben Marcus? Carlos - ZIELGRUPPE: A Select, um sicherzustellen, dass sie haben genug Geld. JASON HIRSCHHORN: Klingt gut. ZIELGRUPPE: Und dann legen Sie auf die [unverständlich]. JASON HIRSCHHORN: Genau, wir sind gehen zu wollen, legen Sie in den Aktien-Tabelle. Und wir gehen zu wollen, einfügen. Wir können ihre Benutzer-ID den Namen einfügen, des Unternehmens, und wie viele Aktien sie kaufen wollen. Was sind einige andere Operationen, die sind Seiten oder Funktionalität sind Sie gehen, um in P-Set implementieren zu müssen 7, dass wir übergehen? ZIELGRUPPE: Eigentlich habe ich Art haben eine Frage zu diesem ein. Bevor Sie das Portfolio anzuzeigen, sollte Sie Yahoo-Website überprüft sicherzustellen, dass die Aktienkurse haben sich nicht geändert? JASON HIRSCHHORN: Das ist, Klänge wie eine gute Idee. Also, was ist, ist Marcus sagen, OK, Lager Preise ändern sich ständig. Bei den Aktien, die sie besitzen, Tisch, unsere Tabelle namens Stocks, könnten wir die sparen Preis der Aktie kauften sie es. Aber das scheint nicht so robust, weil der Preis der Aktie ist ständig ändern wird. Also in der Tat, werden Sie wahrscheinlich nicht brauchen um den Preis der Aktie zu speichern. Aber jedes Mal, wenn Sie zeigen ihre Portfolio, Sie zu aktualisieren oder zu aktualisieren, die Preis der Aktie. Und wenn Sie zu haben - und Sie haben bereits. Ich weiß, Sie haben alle in der gesuchten Problem setzt schon wieder. Sie haben erkannt, dass wir geschrieben haben ein Code für Sie, dass Sie damit um den Preis einer Aktie zu erhalten, gegeben den Namen eines Unternehmens. Also ja, das klingt wahrscheinlich ein bisschen robuster. Aber die Tabelle muss nicht unbedingt um den Preis der Aktie zu speichern. OK. Was sind einige andere Funktionalitäten Sie brauchen, um diese Woche zu implementieren, die wir können darüber reden? Ich möchte darüber reden. Was wollen Sie sprechen? Es ist wahrscheinlich in dieser Spezifikation. Ich würde einfach nach unten scrollen nach unten der Spezifikation und fragen mich, das erste Wort Sie sehen, dass macht keinen Sinn. Eine weitere Funktionalität - lassen Sie uns über einen reden. Wir werden dort beginnen. ZIELGRUPPE: Registrierung der Geschichten. JASON HIRSCHHORN: Aufnahme die Geschichte, die große. Also Sie gehen zu müssen, um Kurs zu halten sind einer Historie von Transaktionen. Damit Sie den Überblick behalten wollen jeden Zeit, die sie kaufen oder verkaufen ein Lager. Ich kaufte mir mein Lager. Wir haben gerade gesagt, wahrscheinlich ist es sinnvoll um eine Select gehören, um ihre Menge an Bargeld und überprüfen zurück. Es ist wahrscheinlich Smart dann gehören ein einfügen oder ein Update, je nach ob sie besitzen, die diesen Bestand. Wenn wir wollen, auch den Überblick zu behalten eine Geschichte, wie können wir das tun? Heißt das, dass in der Tabelle Stocks gehen? ZIELGRUPPE: Nein JASON HIRSCHHORN: Nein, ist es wahrscheinlich geht in eine andere Tabelle. Da sagen Sie 10 kaufen Aktien von Apple. Dann können Sie weitere 10 Aktien zu kaufen. Sie wollen schleppen separate Datensätze. Das sind zwei getrennte Geschäfte. So haben wir eine andere Tabelle, a History-Tabelle. Also noch einmal, die wir kaufen. Wir führen eine Auswahl, dann ein Einfügen oder aktualisieren. Was machen wir als nächstes? Was ist das nächste Abfrage, die wir ausführen wenn wir etwas zu kaufen? Wir wollen die Spur der Geschichte zu halten. Ja. ZIELGRUPPE: Sie wollen den Überblick zu behalten von fehlgeschlagenen Transaktionen zu. JASON HIRSCHHORN: Nun, bevor wir sagen, welche Art von Transaktion, was wollen wir - Welche Art der Abfrage, Carlos, würde es uns ermöglichen, den Überblick zu behalten der Dinge überhaupt? Sie haben vier Vermutungen. Welches meinst du? ZIELGRUPPE: Aktualisierung. JASON HIRSCHHORN: Nicht aktualisieren. Was ist Ihre zweite Vermutung? ZIELGRUPPE: Auswahl. JASON HIRSCHHORN: Wenn Sie behalten möchten Spur von etwas, möchten Sie wahrscheinlich es irgendwo notieren oder speichern Sie sie für später. Also, wenn nicht aktualisieren, dann - ZIELGRUPPE: Legen Sie es. JASON HIRSCHHORN: Einfügen, dort gehen wir. Ja, so können Sie die Anzahl der zu wählen Bargeld, das sie haben, hört sich toll an. Sie haben nicht genug Geld. Diese Transaktion ist nicht zur Arbeit gehen. Nein, müssen Sie nicht den Überblick zu behalten eine Transaktion, wenn es nicht funktioniert. Oder Sie können, wenn Sie wollen geben ihnen eine harte Zeit. Aber Sie müssen nicht. Dann können Sie einfügen oder aktualisieren in ihre Bestände Tisch. Und jetzt haben Sie Ihre anderen Tisch. Sie haben Ihre Geschichte Tabelle oder was auch immer Sie es nennen wollen. Und in dieser Tabelle, Sie gehen um eine neue Zeile einzufügen. Das ist wahrscheinlich zu haben die ID des Benutzers. Es ist wahrscheinlich gehen zu müssen der Name der Aktie. Es ist wahrscheinlich gehen zu müssen eine Zeit, dass sie es taten. Und in diesem Fall, werden Sie wahrscheinlich wollen den Preis einfügen. Da für eine Geschichte, die Sie nicht tun egal, was der aktuelle Preis ist. Sie kümmern, was der Preis ist, wenn sie gekauft oder verkauft etwas. So klingt es wie, um den Kauf zu implementieren vollständig beinhaltet eine Anzahl verschiedener SQL-Abfragen, aber ehrlich gesagt, nicht dass viel Code insgesamt. OK. Und kümmert Geschichte. Lassen Sie uns sagen, wir wollen Anzeigen unserer Geschichte. Wir sprachen über die Anzeige unserem Portfolio. Wie würden wir zeigen unsere Geschichte? ZIELGRUPPE: Vermutlich chronologisch. JASON HIRSCHHORN: Vermutlich chronologisch - was glauben Sie, Abfrage verwenden wir möchten? ZIELGRUPPE: Ein Auswahl. JASON HIRSCHHORN: Eine ausgewählte - wählen Sie vielleicht alle Zeilen aus dieser Tabelle entsprechen, dass die Benutzer-ID und dann zeigt sie chronologisch, klingt gut. Brauchen wir, um Code zu schreiben sortieren durch diese Liste? ZIELGRUPPE: Nein, weil Sie gesagt uns gibt es eine aufsteigende und absteigend Sache. JASON HIRSCHHORN: Thing? ZIELGRUPPE: Ja. JASON HIRSCHHORN: Ja. OK, nicht im Code drehen zu mir, dass manuell sortiert durch Ihre Anfragen, um sie zu sortieren. Dieser Code ist bereits gegeben. Sie können eine SELECT-Abfrage schreiben dass Dinge sortiert. Sortierung ihnen zuvor und dann ausdrucken. Es macht so viel mehr Sinn, zu tun, es so, als umge. Ja. ZIELGRUPPE: Müssen wir sortieren sie vorher? Heißt das, dass du meinst Art sie in der Datenbank? JASON HIRSCHHORN: Die Select-Abfrage gibt sie an Sie sortierten. So tun, und nicht nur sie haben zurück, um Sie in einer zufälligen Reihenfolge und dann sortieren sie sich. Ja. ZIELGRUPPE: Gibt es eine Möglichkeit, es zu halten in der Datenbank selbst sortiert, so dass Sie müssen nicht zu sortieren es jedes Mal, wenn Sie - ZIELGRUPPE: Können Sie es einfügen sortierten? JASON HIRSCHHORN: Frage - spielt es eine Rolle, dass die Dinge in der Datenbank sortiert? ZIELGRUPPE: Nein JASON HIRSCHHORN: Nun, sie werden sortiert. Sie sind chronologisch sortiert. Aber nehmen wir an, dass sich die Dinge sortiert chronologischer Reihenfolge, von oben nach unten. Wir haben eine Google-Form. Immer, wenn jemand zu unserer Google reagiert zu bilden, es wird nur in der Put- unten auf der Tabelle. Spielt es eine Rolle, dass die Dinge nicht chronologisch geordnet? ZIELGRUPPE: Wenn es nicht chronologisch, haben Sie nicht jedes Mal zu sortieren Sie nehmen Informationen aus. Aber wenn es bereits sortiert, kannst du nicht nicht haben, dass zusätzlich zu tun Funktionsaufruf? JASON HIRSCHHORN: Also das ist eigentlich ein guter Punkt. Für uns als Programmierer, könnte es egal. Und wir möchten Sie vielleicht, um eine Datenbank zu finden das bedeutet nicht, Dinge zu sortieren chronologisch. Oder unsere Datenbank hinterlegt, so dass es hält Dinge, sortiert nach Benutzer-ID. So so, sagen wir, wir haben 1000 Benutzer-IDs. Oder Facebook, Millionen haben wir von Benutzer-IDs. Wir wollen nicht, dass unser Tisch, gerecht zu sein zufällige oder unsere Datenbank zufällig zu sein. Es wäre schön, wenn alle Benutzer-IDs wurden sortiert. Also dann könnten wir binäre Suchanfragen laufen auf unserem Tisch und dann einfach zu finden die bestimmten Stück. Also ja, je nachdem -, wenn wir hochskaliert, wir möchten Sie vielleicht, um eine Datenbank zu finden gehalten, dass die Dinge in einem anderen sortiert Weise, so dass diese Abfragen würde weniger Zeit. Und wir hatten nicht zu durchlaufen unsere gesamte Datenbank in jeder einzelnen Zeile in eine bestimmte Tabelle. Aber das Niveau wir bei Arbeits wir Sie müssen nicht über das Halten Sorgen Dinge sortiert. Wir können annehmen, dass die Zeit, die Abfrage zu laufen sein wird vernachlässigbar ist, gegeben, was wir es zu tun haben. Aber ja, gute Idee - wie wir skalieren, könnte es Sinn machen, gestalten unsere Datenbank in ein bisschen anders. Eine letzte Datenbank-Design, was ich will als auch zu erwähnen, weil man sie bewertet werden, oder vielmehr hat, auf das Design Ihrer Datenbank. Wir sprachen darüber. Bar ist einzigartig für jeden Benutzer. So können Sie eine Tabelle namens Cash haben, dass hat seine Benutzer-ID und ihre Menge Geld und dann eine Tabelle namens Benutzer, die ihre Benutzer ID und den Benutzernamen. Diese Tabellen auf jede Karte andere Eins-zu-eins. Es macht wohl Sinn, sie einer Tabelle sein. Also nehmen wir an, Sie haben ein Benutzer Tabelle, die Spur hält Benutzernamen und Bargeld. Sie haben nun eine Tabelle, hat der Aktien ein Individuum besitzt. Und ein Einzelner besitzen mehr als ein Lager. Also diese nicht auf der Karte einander eins-zu-eins. Es macht keinen Sinn, eine Riesen haben Tabelle 30 Datensätze hat, dass alle einen Benutzernamen zu wiederholen, dass alle wiederholen Sie ein Passwort, dass alle wiederholen, eine Reihe von Bargeld. Aber jeder hat vielleicht eine andere Lager Namen oder eine andere Aktienkurs. Es macht keinen Sinn zu haben, dass viele große Datensätze. Seien Sie schlau zu, wenn Sie diese erstellen Datenbanken, so dass Sie nicht tun etwas albern wie das, sich wiederholenden viele unnötige Informationen. OK. Wir haben zwei Minuten. Menschen außerhalb sind begeistert, kommen uns oder wahrscheinlich, vermutlich, beginnen ihre eigene Klasse. Hat jemand irgendwelche Fragen haben, bevor wir beenden? OK, das war in der Tat ein Wirbelwind über alles. Ich entschuldige mich, dass es hatte so schnell zu sein und dass wir nicht wie Hands-on in dieser Woche, wie ich es haben gern gewesen wäre. Aber wenn Sie Fragen zu haben gingen wir über alles oder alles in dieses Problem eingestellt - Vorausgesetzt, Sie es gelesen und gesetzt haben in einer guten Glauben bemüht - sich bitte an mich per E-Mail oder kontaktieren Sie mich. Ich bin mehr als glücklich, durcharbeiten Ihr Code mit Ihnen oder beantworten jeder Fragen Sie haben. Bedenken Sie, dass in dieser Woche eine Menge Ihre Zeit wird damit verbracht werden, die neue Syntax und versuchen zu verstehen, wie SQL-Abfragen oder PHP schreiben Funktionen oder befassen sich mit ein MVC-Framework. Eine Menge Zeit in dieser Woche wahrscheinlich wird nicht versucht, herauszufinden, werden die verrückte Logik, dass wir fragen, was Sie tun. Eine Menge davon gingen wir etwas über ist relativ einfach. Also das bedeutet nicht, warten bis zur letzten Minute. Aber es bedeutet, einstellen, wie Sie tun entsprechend zu arbeiten, um sicherzustellen, dass Sie verstehen und Lernen Sie die Syntax. Sie sind also nicht, ganz plötzlich, wohl wissend, genau das, was Sie tun möchten, aber keine Ahnung, wie man genau schreiben. OK, ich werde Sie nächste Woche.