Erstellen eines PHP- und Ajax | Kalob Taulien | Skillshare

Playback-Geschwindigkeit


  • 0.5x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 2x

Erstellen eines PHP- und Ajax

teacher avatar Kalob Taulien, Web Development Teacher

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Eine Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Eine Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Einheiten dieses Kurses

22 Einheiten (2 Std. 53 Min.)
    • 1. Willkommensvideo

      2:52
    • 2. Einführung

      3:40
    • 3. Erste Schritte mit Git

      9:51
    • 4. Anmeldeseite und HTML

      8:49
    • 5. Hinzufügen deiner Konfiguration und mehr Seiten

      11:35
    • 6. Helfen Sie mir?

      0:33
    • 7. Kennwörter speichern

      3:00
    • 8. Einrichtung unserer Datenbank Teil 1

      10:22
    • 9. Einrichtung unserer Datenbank Teil 2

      6:43
    • 10. Formularvalidierung Mit JavaScript Teil 1

      7:54
    • 11. Formularvalidierung Mit JavaScript Teil 2

      8:00
    • 12. Unser erster Ajax Anruf

      12:51
    • 13. Benutzerregistrierung Teil 1

      10:36
    • 14. Benutzerregistrierung Teil 2

      9:29
    • 15. Benutzer-Login über Ajax Teil 1

      8:16
    • 16. Benutzer-Login über Ajax Teil 2

      8:47
    • 17. Login auf bestimmten Seiten erzwingen

      6:54
    • 18. Logout

      5:06
    • 19. Funktionen erstellen

      13:54
    • 20. Objekte erstellen OOP Teil 1

      8:25
    • 21. Objekte erstellen OOP Teil 2

      8:28
    • 22. Was du als nächstes erstellen kannst

      6:59
  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Alle Niveaus

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

785

Teilnehmer:innen

--

Projekte

Über diesen Kurs

Erfahren Sie, wie Sie ein website und Registrierungssystem mit PHP, JavaScript, Ajax, JSON und MySQL erstellen. Dieser Kurs zeigt dir alles, was du wissen musst, um ein komplettes login-logout mit einem user zu erstellen.

Dies ist ein schneller Kurs und du wirst viele fortgeschrittene Konzepte haben, die dir ein typischer Kurs "Erstellen eines login nicht beibringen werden.

Du wirst mehr erfahren als nur wie du ein Login-System erstellen kannst. Hier ist, was wir lernen:

  • So verwenden Sie JavaScript und jQuery zum Erstellen einer Ajax-Anfrage zum Registrieren und Anmelden von Benutzern.
  • Erstellen eines Anmelde- und user von Grund auf mit PHP und MySQL
  • Der gesamte Code ist auf GitHub für dich jederzeit (der eigentliche Code und seine Geschichte).
  • Nach jedem Kurs herunterladbarer Code.
  • Lektionen zum Schutz von Sicherheit und Passwörtern
  • So erstellen Sie nur für Mitglieder Seiten.
  • So erstellen Sie Kurse aus grundlegenden Funktionen.
  • Sichere Datenbankverbindungen mit PDO, anstelle von MySQLi (PDO, ist der OOP und gilt als "besser").
  • Was du als nächstes auf dir selbst bauen kannst.

Du solltest schon mit einigen PHP, MySQL und JavaScript vertraut sein.

fc968b2a

Triff deine:n Kursleiter:in

Teacher Profile Image

Kalob Taulien

Web Development Teacher

Kursleiter:in

Hi everybody! I'm Kalob Taulien.

 

Here's the TL;DR (short) version about me:

I have been coding since 1999 and teaching people how to code since 2013 I have over 350,000 web development students world-wide I'm on the Wagtail CMS core development team (Wagtail is Python's #1 most popular website making system) I try my best to answer EVERY question my students have  I love teaching — it's definitely one of my natural talents  Also I love goats! (Great conversation starter with me if we ever get to meet in person)

Below you can find all my Skillshare courses. The categories go from easiest to hardest, except for the Misc. Coding Courses at the very end. 

If you're brand new to coding, start with BEGINNERS WEB DEV.&nb... Vollständiges Profil ansehen

Kursbewertungen

Erwartungen erfüllt?
    Voll und ganz!
  • 0%
  • Ja
  • 0%
  • Teils teils
  • 0%
  • Eher nicht
  • 0%
Bewertungsarchiv

Im Oktober 2018 haben wir unser Bewertungssystem aktualisiert, um das Verfahren unserer Feedback-Erhebung zu verbessern. Nachfolgend die Bewertungen, die vor diesem Update verfasst wurden.

Warum lohnt sich eine Mitgliedschaft bei Skillshare?

Nimm an prämierten Skillshare Original-Kursen teil

Jeder Kurs setzt sich aus kurzen Einheiten und praktischen Übungsprojekten zusammen

Mit deiner Mitgliedschaft unterstützt du die Kursleiter:innen bei Skillshare

Lerne von überall aus

Ob auf dem Weg zur Arbeit, zur Uni oder im Flieger - streame oder lade Kurse herunter mit der Skillshare-App und lerne, wo auch immer du möchtest.

Transkripte

1. Willkommensvideo: Oh, hallo da. Willkommen bei der Erstellung eines PHP-Anmelde- und Registrierungssystems mit Ajax. In diesem Kurs werden wir lernen, wie JavaScript zu verwenden, Jake müde Ajax PHP meine SQL und bekommen für unsere Versionskontrolle. Wir werden alle unsere Ajax-Anfragen dazu bringen, Jason-Objekte zurückzugeben. Also, wenn Sie nicht mit Jason vertraut sind, während dies eine perfekte Zeit ist, um Ihre Hände wenig Verschmutzung der Praxis mit Jason zu bekommen, dieser gesamte Kurs ist ein großes Projekt. Dies ist ein echtes Projekt, das Sie in Zukunft auf jeder Website verwenden können, und dieser Code ist 100% für alle Ihre Projekte anwendbar. Alle Ihre Websites, die Sie jetzt erstellen werden, werden ein Logging-System, ein Registrierungssystem, ein Logout-System und einen Bereich nur Mitglieder erstellen ein Registrierungssystem, . Die Leute müssen also angemeldet sein. Nachdem Sie sich registriert haben, um diese Seiten am Ende des Kurses zu sehen, werden wir einen Teil des Codes in Funktionen verwandeln, und dann werden wir diese Funktionen in Klassen verwandeln, die ihre Hände schmutzig mit einem objektorientierten -Programmierung. Nun, wenn Sie nicht mit objektorientierter Programmierung oder O p vertraut dann wieder, dies ist eine gute Zeit, um es vorgestellt zu werden. Jetzt werden wir auch Ihr my SQL Wissen aktualisieren. Also, wenn Sie meine fragen Sie Verbündeten stattdessen in diesem Kurs verwendet haben, was wir lernen werden, ist PDO, das ist die Hopi-Version meiner Anfrage. Man merkt, dass es viel sauberer ist und viel sicherer ist. Hallo, mein Name ist Caleb und sagt, dass ich dein Lehrer für diesen Kurs bin. Ich habe mehr als 38.000 Schüler unterrichtet und zählen, und diese Zahl scheint jeden Monat um ein paar 1000 zu wachsen. Und ich stelle seit fast zwei ganzen Jahrzehnten Websites bereit. Wenn Sie glauben können, dass jetzt etwas, das Studenten sagen, dass sie wirklich mögen über mich ist meine Fähigkeit, eine komplexe Idee oder ein komplexes Problem zu nehmen und es wirklich in kleinere, leichter zu verständliche Stücke in einer Weise zu zerlegen , die Sie wirklich lernen und absorbieren. Und genau das werden wir in diesem Kurs machen. Nun, dieser Kurs ist definitiv für Sie. Wenn Sie an Ajax PHP meine SQL I interessiert sind oder wenn Sie daran interessiert sind, nur eine Mitglieder Art von Website wie Facebook zu erstellen , wo Sie sich registrieren müssen, um tatsächlich zu bekommen. Oder, wenn Sie lernen wollen, wie man benutzt, kommen Sie in die reale Welt Rial Life Coding Szenario. nun diesen Kurs absolvieren, erhalten Sie 24 7 Zugriff auf alle HD-Videos. Holen Sie sich nach jeder Lektion herunterladbare Codebeispiele, damit Sie mit jeder Lektion folgen können. Schritt für Schritt und Sie erhalten tatsächlich die vollständige Codequelle. Es ist auf „Get Hub“. Im Moment ist es Open Source, und Sie können genau sehen, was ich verwendet habe. Also gibt es nichts davon hinter den Kulissen Zeug. Jetzt. Ich freue mich sehr darauf, mein Wissen mit Ihnen zu teilen, und wenn Sie an diesem Kurs oder einem Teil dieses Kurses interessiert sind, gehen Sie weiter, gehen Sie weiter, klicken Sie auf den Anmelde-Button und ich werde Sie auf der Innenseite sehen. 2. Einführung: - Hallo? - Hallo. Wie niedrig? Herzlich willkommen. Herzlich willkommen. Herzlich willkommen. In diesem Kurs lernen wir, wie man ein Anmelde- und Registrierungssystem erstellt. Aber wir werden PHP, Jake, Riri, Riri, Ajax und meine SQL für die Datenbank verwenden. Wir werden ein Registrierungssystem erstellen, denn wenn Sie sich nicht einloggen können, wenn Sie kein Konto haben, werden wir das auch abdecken. Wir werden dich benutzen. Ich Kind anstelle des typischen Bootstrap oder Fundaments für das Front-End-Framework. Nur weil wir nicht daran interessiert sind, viel HD Miller zu schreiben, weiß CSS natürlich. Dieser Kurs soll Ihnen beibringen, wie Sie sich einloggen und wie Sie sich registrieren. Registrieren Sie einen neuen Benutzer mit PHP. Es ist nicht entworfen, um eine schöne Website zu sein. Nein, was ist in diesem Kurs erforderlich? Nun, Sie sollten ziemlich vertraut mit einigen HTML-CSS ein wenig Javascript sein, aber wissen Sie was? Wenn nicht, ist das in Ordnung, denn wir werden nicht in das Zeug gehen. Wir werden nicht in wie, fortgeschrittenes JavaScript gehen . Was wir verwenden werden, ist J-Abfrage, die ziemlich unkompliziert ist. Wenn Sie nicht wissen, welche bestimmte Funktion in Javascript-Wüste nicht tut, Uh, Google es. Dasselbe mit PHP. Wir gehen zu Wir werden viel in dieser Lektion oder in diesem Kurs eher übergehen und fühlen sich einfach frei, Video zu posten, wenn Sie etwas sehen, das Sie nicht wissen, was es tut. Wenn es PHP JavaScript für meine SQL ist. Wenn Sie nicht wissen, was es tut, halten Sie es an. Ah, und geh und google's. Jetzt. diesem Sinne habe ich einen anderen Kurs, der den ultimativen HTML-Entwicklerkurs nennt. Ah, und es geht darum, zu lernen. Nur HTML. Ich habe einen anderen Kurs namens JavaScript Essentials. Sie können tatsächlich etwa die Hälfte davon auf YouTube jetzt kostenlos und die andere Hälfte bekommen. Wenn Sie es möchten, können Sie einfach den Google-Maschinentyp in JavaScript-Essentials eingeben. Caleb erzählt. Werfen Sie einfach meinen Namen da rein, und Sie werden wahrscheinlich etwas finden, wo Sie sowieso den vollen Kurs finden. Ah, und wenn du dich für den ganzen Lampenstapel interessierst, ist das die Bettwäsche. Apache, mein SQL- und PHP-Stack. Ich habe einen anderen Kurs namens The Complete Web Developer Kurs , den Sie auf YouTube erraten können. Absolut kostenlos. Es ist 18 Stunden lang Es ist ein wenig älter, aber es ist Sie wissen, dass es alt ist, aber es ist Gold hat eine Menge nützlicher Informationen in gibt es ein gehen überprüfen, dass auch, Wenn Sie jemals stecken bleiben, Es gibt eine Menge Informationen, die ich kostenlos im Internet zur Verfügung gestellt habe. Plus das gesamte Internet ist da, um jetzt über diesen Kurs zu helfen? Dieser Kurs soll nicht sehr lang sein. Es wird sehr schnell sein. Also wieder, pausieren Sie, wenn Sie auf Google etwas gehen müssen. Wenn du Teoh brauchst, musst du nicht das ganze Video ansehen und dich an alles erinnern. Erste Aufnahme, können Sie das gleiche Video sehen drei oder vier Mal können Sie gehen und etwas Neues lernen und Sie können zurückkommen. Das ist die Schönheit an Online-Kursen. Also bitte, mit allen Mitteln, das wird schnell sein. Also, äh, Pause in Google, wenn du musst. Das letzte, was Sie über diesen Kurs wissen müssen, ist, dass er mit einem Code geliefert wird, also erhalten Sie am Ende also erhalten Sie am EndeZugriff auf den gesamten Code, den wir verwenden. Ich werd es wahrscheinlich sogar einfach aufstehen, damit du den ganzen Code kostenlos da drin bekommst. Wir werden Get eigentlich nur ein bisschen benutzen. Ich werde nicht darauf gehen, wie bekommen unnötig verwendet wird. Könnte in ein paar grundlegende Erklärer gehen, aber nichts zu fortgeschritten. Und schließlich werden wir PHP-Funktionen schreiben. Also anstelle von Klassen würden Funktionen zu Beginn schreiben. Nur weil es für uns einfacher ist, unsere Köpfe umzuwickeln, weil dies ein sehr kleines Projekt ist . Wir müssen wirklich nur Funktionen jetzt schreiben. Am Ende des Kurses könnte ich am Ende all diese Funktionen in Klassen verwandeln, um sie auf get Hub zu setzen , so dass Sie sehen können, wie alles funktioniert, und Sie können es herunterladen und damit spielen und all das gute Zeug. Aber im Moment werden wir bei Funktionen bleiben, nur weil es schön und einfach sein wird. Also mit all dem gesagt, lasst uns voran gehen und sofort loslegen 3. Erste Schritte mit Git: Hallo. Hallo. Hallo. In dieser Lektion werden wir lernen, wie wir mit unserem Projekt eingerichtet werden können, bevor wir wirklich etwas anderes tun . der Grund, warum wir das tun wollen, weil es großartig für die Versionskontrolle ist. Sie können sehen, wer Änderungen an welchem Code vorgenommen hat Wenn wir irgendwann vermasseln, wollen wir einfach keine Stunde damit verbringen, Ihren Code zu debuggen. Wir können immer einfach zurückrollen und gehen und den Bug finden. Wir können die verschiedenen Versionen verschiedener Dateien zu verschiedenen Zeitpunkten betrachten. Auf das ist wirklich der Turm von Get Now, warum ist das nützlich, wie ein einzelner Entwickler vielleicht nicht sein. Es ist wirklich nur ein Backup-Plan, nur für den Fall, dass Ihr Computer abstürzt oder so. Aber als Team ist es absolut wichtig, weil Sie und andere Menschen gleichzeitig an demselben Projekt arbeiten und die Arbeit des anderen einbeziehen können . Wir werden das nicht tun, und dieser Kurs ist nicht, ah, bekommen Kurs. Aber ich möchte Sie ein wenig mit Get jetzt vertraut machen. Wenn Sie mit vertraut sind, Sie genial. Ignorieren Sie einfach das Get Zeug Wenn Sie nicht mit get vertraut sind, ist dies wahrscheinlich ziemlich gute Praxis. Dies ist eine kleine Einführung in die Welt von Kit. Also nichts weiter. Schauen wir uns unsere Website an. Wir haben lokale Gastgeber. Das ist meine Webseite. Hier werde ich das Login-System erstellen. Es ist auf meiner lokalen Maschine und wenn Sie es bemerkt haben, benutze ich auch Sie Brötchen. Ich benutze Lennox. Das musst du nicht. Sie können Fenster verwenden. Sie können Mac lokalen Host verwenden funktioniert alle auf die gleiche Weise. Sie können auch einen Server in der Cloud verwenden, den Sie verwenden können. Aws Ah Host Gaber Host Gator eher Ah Lin schuldet Digital Ocean Was auch immer ein Lied. Läuft das? Grundsätzlich Linux Apache, My SQL On PHP Sie können nicht auch Windows anstelle von Lennox Toe Host diese Umgebung verwenden, aber es ist nur ein wenig mehr ein Schmerz im Hintern. Gehen wir, um Hub zu bekommen. Das erste, was wir tun wollen, ist ein neues Repository zu erstellen. Nun, ich meine, wenn Sie kein Konto haben, erstellen Sie ein Konto und erstellen Sie ein neues Repository, Der Repository-Name für dieses ist nur PHP Loggins System Nichts Lust auf ein Beispiel-Login-System mit Benutzerregistrierung, öffentlich oder privat. Ich meine, es ist wie in der Öffentlichkeit, weil ich will, dass ihr euch diese Ziege ansehen könnt. Ich möchte auch nicht für einen privaten Rebo Rebo bezahlen, Short für Repository, was im Grunde mein Mantel ist in der Cloud initialisiert dieses Repository mit dem Read me? Ja, könnte auch ein Schöpfer mich für mich lesen, wenn es etwas weniger Arbeit ist, die ich Awesome machen muss . Tu es für mich. Repository erstellen. Jetzt habe ich einen Bericht. Wenn ich gehe, um Hub dot com slash kale italienischen Schrägstrich PHP Login System zu bekommen. Ich werde mein Login System haben. Hier ist der Name. Hier ist die Beschreibung. Nichts Phantasie, aber wir wollen, ist dieser grüne Knopf hier sagt Klon oder Download kun mit ssh bedeutet, dass get Hub meine SSH-Schlüssel hat, was im Wesentlichen nur bedeutet, dass get Hub weiß, dass mein Computer authentifiziert wurde. Ich muss mein Passwort des Benutzernamens nicht mehr eingeben. Er weiß nur, wer ich bin. Wenn Sie diese Option nicht haben, wenn Sie nicht wissen, was das alles ist, ist das in Ordnung. Sie können die https-Methode verwenden, und Sie haben bemerkt, dass der Earl tatsächlich ändert sich von Get out, get out dot com Doppelpunkt töten italienischen Projektnamen mit https, das ist https Doppelpunkt Schrägstrich bekommen Hub dot com Schrägstrich Benutzernamen Schrägstrich Projekt, so können Sie einfach https verwenden und sagte, Und es wird nur Sie nach Ihrem get Hub Benutzernamen fragen. Ah, und dein Passwort, und das ist völlig in Ordnung. Get Hub ist sehr vertrauenswürdig. Sie können ihnen diese Informationen senden. Aber denken Sie daran, Sie müssen Hilfe Konto bekommen, damit das tatsächlich funktioniert. Jetzt werde ich die S H verwenden, weil ich nicht mein Benutzername und mein Passwort jedes Mal, wenn wir etwas mit get machen, so dass wir einfach die ganze Bühne überspringen und ich werde dieses Jahr kopieren, wo ich zu meiner Konsole gehe und Klonen PHP Login System. Also alles, was ich getan habe, war klonen das gesamte Projekt, das ich benutze, auch weiß, wer ich bin. Und das ist das Verzeichnis, in das es gehen soll. Ich will es eigentlich nicht System nennen. Es heißt natürlich PHP Log, ich schätze Hit. Tragen Sie Kleidung in PHP Log In natürlich ist alles gut dort. Ich sehe keine Erben CD PHP Logging Kurs Al l oder L A Stash A oder L s Dash L A. Alle diese verschiedenen Optionen zeigen Ihre verschiedenen Ordner. Jetzt haben wir 11 Ordner. Wir haben unseren Get-Ordner ,wo Get all seine Änderungen speichert, Ähm, seine Geschichte und all das. Wir haben unseren Get-Ordner , wo Get all seine Änderungen speichert, Ähm, Und dann haben wir das Lesen Sie mich jetzt, das Lesen Sie mich. Ist diese Datei genial, die mich lesen Dot MD Jetzt öffnen Sublime. Ich habe PHP Logging-Kurs, und ich habe nur die eine Datei. Nun, mein Computer hat genau den gleichen Code, den get Hub hat. Das ist ziemlich cool. Jetzt machen wir unser erstes Commit. Also, was wir wollen, ist ein neues Datei-Index dot PHP erstellen Wenn ich das Recht buchstabieren könnte, um großartig zu sein . Nun, das ist derzeit, wie die Indexseite aussieht, bevor ich die Indexpunkt-PHP-Datei erstelle. Und wenn ich jetzt aktualisiere, da ich eine Indexdatei habe, erscheint nichts. Ehrfürchtig. PHP-Echo. Hallo, Welt. Wenn Sie nicht mit sehr viel PHP vertraut sind, ist das in Ordnung. Sie müssen nicht wirklich diese Kurse und Super-Fortgeschrittene oder irgendetwas auf sein. Wir werden weiter fortgeschritten werden, wenn wir weitergehen. Es wird eine großartige Lernkurve für dich sein. Speichern. Aktualisieren Sie die Seite. Hallo, Welt. Da gehen wir. Wir haben unsere erste Seite, aber wenn wir gehen, um zu bekommen, ich aktualisieren Sie einfach die Seite und es gibt keine Index Punkt PHP-Datei. Ich habe einen Index Punkt PHP-Dateien. Warum? Warum bekommt man das nicht? Nun, es liegt daran, dass wir Get nicht gesagt haben, die Datei von uns herunterzuladen, oder besser gesagt, wir haben es nicht gesagt. Holen Sie sich unseren Code zu drücken, um Hub dot com zu bekommen Also gehen wir zurück zu unserem Terminal, sie haben Status bekommen, und wir haben Dateien nicht verfolgt. Wir haben nur eine nicht verfolgte Datei, also erhalten Sie ad index dot PHP. Erhalten Sie den Status erneut. Es ist jetzt in grün statt rot und sagt neue Datei Awesome. Nun, wenn ich zurückgehe, um Hub zu bekommen und ich die Seite aktualisiere, rate mal was? Der Code ist immer noch nicht da. Nun, warum ist das? Was, weil wir nur getan haben, dass wir den Code inszeniert haben. Das bedeutet, dass es sich bereit macht, hochgeschoben zu werden, um umarmt zu werden. Eher jetzt, wenn wir 203 100 Dateien gleichzeitig bearbeiten würden, wenn wir einige ah, kein Front-End-System NPM mit Grunzen oder Schluck, vielleicht einen SAS-Compiler, es könnte eine Menge Dateien gleichzeitig bearbeiten, und wir möchten vielleicht nicht all diese Änderungen vorantreiben. Wir wollen nur die eine Datei schieben. Das ist alles, was wir jetzt tun wollten. Also, jetzt, da dies in grün ist, geben wir get status. Großartig. Alles, was ist, wenn wir gerade da sind, bedeutet alles, was grün ist, diese Bühne. Holen Sie sich Commit em. Nennen wir diese Hallo Welt. Also get ist ein Befehl zum Ausführen. Jede get-Befehle commit ist im Grunde die Funktion auszuführen. Es braucht einen Parameter Bindestrich M, und das ist die Nachricht, die wir ihm geben werden. Ich habe jetzt LG bekommen, das ist eine benutzerdefinierte befohlen sagte Sie bekommen log geben könnte im Grunde zeigt Ihnen die gleiche Sache , aber es ist Ihre E-Mail-Adresse drin. Ich sehe das nur gerne, weil es uns zeigt, wo es ist, wo wir sind. Origin Master ist, wo get Hub ist Origin Head ist, wo get Hub denkt, es ist. Und unser Kopf nicht Herkunft. Slash hatte nur unser Kopf ist in einem anderen Stadium. Jetzt gehen wir zurück, um Auffrischungsseite zu erhalten. Ratet mal was? Der Code. Immer noch nicht da. Warum ist das? Nun, wieder haben wir das Commit gemacht. Wir haben ihm eine Nachricht gegeben. Wir sagten, Ja, das ist bereit, ihn zu holen, aber wir haben es nicht wirklich geschickt, um Hub zu bekommen, also brauchen wir noch einen Befehl. Ich weiß, das klingt nach vielen Befehlen, aber sobald Sie sich daran gewöhnt haben, ist es super schnell. So geben wir get push Ursprung, Master Was es getan hat, war die Anzahl der Objekte zu zählen, die wir Anzahl der Dateien haben. Im Wesentlichen verwendet es Delta-Komprimierungsmethoden im Grunde, um zu komprimieren oder zu speichern, so dass sie es nicht müssen . Weißt du, es muss nicht jedes Mal zwei Gigabyte hochschicken, um Hub zu bekommen. Es kann das in etwas Kleineres komprimieren, also ist es viel schneller. Komprimierungsobjekte 100%, um zwei tolle Schreibobjekte zu haben. Es schrieb ein paar Objekte für uns auf Wohin geht es? Es geht dorthin, wohin wir gesagt haben, dass er hingehen soll. Hier haben wir unser Repo geklont. Nun, wenn wir gehen, um Hub zu bekommen, aktualisieren Sie die Seite Jetzt ist, wenn unser Code angezeigt wird. Sieh dir das an. Wir haben Index dot PHP und es hat unsere Nachricht hier. Es hat sogar unsere Zeit. Also, wenn wir auf hallo Welt geklickt, konnten wir sehen, was hinzugefügt wurde, was nicht an ihm war? Wenn wir zurück gehen, können wir auf Index Punkt PHP klicken und wir können tatsächlich den Mantel sehen. Nun, das stimmt mit dem, was das jetzt ist, wenn ich Test hier eintippe , der nur reguläre Text, richtig? Und wir gehen hierher zurück und wir aktualisieren nichts wird passieren, und das ist, weil wir nicht gesagt haben, dass es noch irgendwelche Änderungen gibt, also würden wir diesen ganzen Prozess wieder durchlaufen. Wir machen das ein paar Mal durch diesen Kurs wird Ihnen wieder sehr vertraut . Dies ist kein Get-basierter Kurs, aber wir wollen nur ein Projekt mit get einrichten, so dass wir verschiedene Versionen haben können und Sie sehen können, ob Sie wollten, Sie könnten den Verlauf unserer Dateien sehen. Also, das wird mit aufgestellt. Holen Sie sich, wenn Sie wollten, können Sie diese ganze Prozedur mit Ihrem eigenen Konto folgen. Sie müssen nicht den genauen Namen PHP Login System verwenden. Sie könnten anrufen, was Sie wollen und einfach Ihre erste Datei erstellen und ah, im Grunde verpflichtet. Legen Sie es in Ihren Staging-Bereich und drücken Sie es dann nach oben, um zu bekommen. Und sobald es da ist, können Sie mit der nächsten Lektion fortfahren. Wenn Sie bereits vertraut mit bekommen und Sie nicht wollen, um dieses Zeug völlig in Ordnung zu machen, und wir werden Sie im nächsten Video sehen. 4. Anmeldeseite und HTML Einrichtung: Alles klar, jetzt sind wir fertig und lassen Sie uns unser Projekt mit Ihnen realisieren. Ich baue ein. , Ich weiß,dass viele Leute Bootstrap lernen wollen, und das ist fantastisch. Aber Sie mögen es, wenn es darum geht, nur eine Website auszupeitschen. Wirklich, wirklich schnell ist extrem mächtig. Bootstrap ist extrem leistungsstark. Versteh mich nicht falsch. Stiftung ist fantastisch. All diese Frameworks sind erstaunlich, aber Sie mögen es hat nur diese kleine zusätzliche Note. Alles klar, was Sie vor Ihnen sehen, ist nur unsere HTML-Grundstruktur. Richtig? Also haben wir unseren Doc-Typ ist HTML fünfmal. Nimm ihren Kopf. Wir haben ihren Körper. Wir haben einen Titel da drin. Äh, alles, was ich getan habe, war, dich zu verknüpfen, ich setze CSS mit Cloudflare. Ich habe auch in Jake müde auf und du magst es min dot Js und seine Ikonen Dodgy s. Nun, wenn Sie nicht wissen, wie ich das habe, um Sie wie es dot com bekommen und klicken Sie es gestartet und im Grunde Installation und alles, was ich tat, war das CSS und ich packte den Jake müde und ich schnappte das du, das ich Js Kit habe. Das ist alles, was ich getan habe. Wenn Sie nicht wissen, wie Sie dieses Zeug packen, wenn Sie noch nicht wissen, was Sie hier drin tun , , ist das wahrscheinlich ein guter Zeitpunkt,um zurück zu gehen und etwas über HTML zu lernen. Ja, ich habe den ultimativen HD-Entwicklerkurs für männliche Entwickler. Geben Sie das in Google ein. Vielleicht setzen Sie meinen Namen da rein und Sie werden ihn finden können. Aber Sie sollten uns inzwischen vertraut sein. Jetzt werde ich das entfernen und alles, was ich tun werde, ist zu retten. Gehen Sie zurück zu Chrome, aktualisieren Sie meine Seitenvorstellung. Nichts taucht auf. Ich drücke F 12, um meine Entwicklertools zu öffnen oder alternativ, rechts , klicken, inspizieren und ich gehe zur Konsole und es gibt keine Fehler. Das bedeutet, dass alles so geladen wird, wie es geladen werden soll. Ehrfürchtig. Nun, dieser Kurs ist nicht dazu gedacht, dich zu lehren. Gefällt es dir? Es ist nicht dazu gedacht, Ihnen beizubringen, wie man einfaches HTML-CSS-Markup macht. Also, was ich im Begriff bin zu tippen, können Sie völlig ignorieren, oder wenn Sie daran interessiert sind, dass Sie es mögen, können Sie darauf achten. Ich werde es nicht lernen. Aber ich werde nicht zu viel darüber beibringen . Esso UK Abschnitt U K Container UK Textcenter. Irgendwie. Ich mache einen Test. Da gehen wir. Wir haben ein paar Inhalte da drin. Schön und einfach. Einrasten. Wenn ich schrieb, äh, machen wir ein Gitter UK Raster. Das britische Kind mit diesem, dass niemand von drei bei klein auf auch UK Kind mit ist eins von eins. Dies ist zuerst mobil, was bedeutet, dass es diese standardmäßig verwenden wird. Es wird mit einem von eins sein, was 100% ist und wenn der View-Port klein ist, was, glaube ich, 640 Pixel, äh, äh, oder größer ist, wird es ein mit 1/3 sein und Sie können rasten. Ich benutze auch einen Plug in namens Emmett , der es mir erlaubt, im Grunde HTML CSS und Attribute wie dieses einzugeben , und alles,was ich tue, ist Tabin zu sitzen. Es schreibt den ganzen anderen Code für mich. Ähm, also lassen Sie uns voran, aber testen Sie es. Cooles Deluxe. Okay auf. Und jetzt gehen wir zu dir wie es und legen Sie in einen Wagen. Schauen wir uns eine Karte an und ich bin nicht einmal ein Recht der HTML, weil ich nicht wirklich wichtig für sie. Ähm, weißt du, eigentlich wäre eine bessere Form, wenn es in Ordnung aussieht. Etwas mit diesem Markup machen und alles, was ich tun werde, ist das nochmal zu schnappen. Wir suchen nichts Phantastisches. Speichern. Aktualisieren. Ich habe ein Basis-Form-Tech-Center. Lassen Sie uns dieses coole Grundformular loswerden, anstatt Text darin zu lesen, lassen Sie uns E-Mail und lassen Sie uns das kopieren. Setzen Sie das Passwort und hier geändert, dass Geben Sie zwei Passwortänderungen. Geben Sie eine E-Mail ein, die ideal für Mobilgeräte ist. Grundsätzlich ändern Sie den Typ von Text-E-Mail auf mobilen erlauben ist eine andere Tastatur auf Ihrem Telefon, so dass Sie nicht als der Benutzer, Sie müssen nicht auf der Jagd dafür gehen. Wenig am Symbol erscheint nur für Sie. Normalerweise, äh, wissen Sie, E-Mail Punkt com Das ist nicht das at Symbol Passwort. Ihr Passwort. Pass Wort Rechtschreibung auf richtig tippen heute ist eindeutig nicht meine Stärke. Werden Sie alles los, sagen Sie jeden frischen Da wir gehen und wir müssen tun. Lassen Sie uns voran und kopieren Sie das tatsächlich. Wir müssen die Schaltfläche einreichen. Gib mir das. Eigentlich brauchen wir es war UK Marge auf dann Taste. Wenn Sie mit CSS vertraut sind, wissen Sie, dass dies alle Schaltflächen auswählen würde. Dann tun wir UK Knopf UK Taste Standard Band ist gleich senden und anmelden. Jetzt haben wir ein grundlegendes Protokoll. Informieren Sie, richtig? Nichts Schickes. Nichts Schickes, aber das macht den Job. Müssen diese also benötigt werden? Das ist also Ja erforderlich Ist gleich erforderlich. Kopiere das. Stellen Sie sicher, dass beide benötigt werden. Was passiert, wenn wir das Formular HTML fünf Validierung Kicks jetzt einreichen. Verlassen Sie sich nicht nur darauf, aber es ist okay, Zehe, Zehe, erlauben Sie die Validierung. Jetzt möchten wir eine Klasse hinzufügen. Alles, was mit JavaScript zu tun hat. Ich neige dazu, den Klassennamen mit Js zu starten. Also wurde Js uns genannt Log in. Das werden wir ein wenig später erreichen, und jetzt haben wir unsere grundlegende Login-Seite. Ehrfürchtig. Okay, was ich tun möchte, ist, dass ich das nicht auf jeder Seite aufnehmen muss, und ich möchte nicht Ah, eine Menge Kopfmaterial auf jeder Seite hinzufügen müssen , und ich möchte eine Konfiguration und all das Zeug einschließen. Also, ähm, in der nächsten Lektion und dem nächsten Video, was ich tun werde, ist, dass ich das ein bisschen aufräumen werde. Ich werde das strafrechtlich verfolgen und stattdessen werden wir diese in ihre eigenen Akten schreiben. Eso, dass, wenn wir jemals die Version von J Query ändern müssten, könnten wir einfach von ändern, wie 3.213 Punkt 22 Und es wird auf jeder Seite wirksam werden, in die die Fußzeilen geladen werden . Also, das ist das für das jetzt, äh, äh, lasst uns den Status bekommen. Lassen Sie uns ein get def auf Index PHP tun. Sehen Sie sich alle Unterschiede an, damit Sie hier oben sehen können. Es steht, Ah, in rot minus Hallo Welt. Es gibt keine neue Zeile am Ende der Datei und alles grüne Zeug ist der neue Code. J lässt mich nach unten scrollen K lässt mich nach oben scrollen. Ehrfürchtig. Also haben wir einen Haufen neuen Code da drin. Lassen Sie uns voran und erhalten Index Punkt PHP hinzufügen. Wir können es nochmal überprüfen. Stellen Sie sicher, dass es tatsächlich da drin ist, anstatt den Status zu erhalten. Ich mag, schlug vor, dass wir Commit hinzugefügt log in Form bekommen würden. Holen Sie sich Push Origin Master, holen Sie sich LG oder melden Sie sich. Du könntest stattdessen Elegie werden. Wenn Sie nicht den LG-Befehl haben, was Sie wahrscheinlich nicht, aber log ist die Standardeinstellung. Eine zeigt Ihnen im Grunde dasselbe. Nun gehen wir zurück zu unserem Browser Hit, Refresh hinzugefügt Log, informieren. Sieh dir das an. Und es gibt unseren ganzen Code, der vollständig für das Internet zugänglich ist. Ziemlich cool, richtig? So können andere Leute sich Ihren Code ansehen, manchmal großartig, manchmal nicht großartig ist, abhängig von Ihrem Projekt. Ich meine, wenn du für eine Firma wie Facebook arbeitest, willst du nicht, dass die ganze Welt deinen Code ansieht. Aber wenn Sie ein Open-Source-Projekt machen, ja, sicher, sicher, es ist immer noch sehr gut. Mir ist aufgefallen, dass mir das Erfinden gerade nicht zu sehr wichtig ist. Wir können das etwas später mit einer Editor-Konfiguration beheben. Das ist also unser Protokoll. Informieren Sie Styled Mit Ihnen. Ich mache wieder Kinder. Nichts Schickes. Das sollte es nicht sein. Alles, was es tun soll, ist Arbeit und Sinus, und zu der Zeit haben wir nichts zu validieren. Wenn jemand seine E-Mail-Adresse und ihr Passwort eingibt, wird es buchstäblich nichts tun. In der Tat, lassen Sie es uns sogar testen. Test bei test dot com Test test test test test test test test test. Es hat sich geändert, dass Sie in der Lage waren, ein Fragezeichen. Äh, das ist nicht gut, sollte eigentlich nicht einmal eine Frage sein. Richtig? Und es ist mitten in der Form. Wir wollen, dass dies eine Ajax-Form eso völlig andere Dinge. Also in der nächsten links werde ich diese Datei bereinigen und dann werde ich eine Registrierungsseite erstellen und wahrscheinlich nur die grundlegende Indexseite. 5. Hinzufügen deines Config, und mehr Seiten: Alles klar. In der letzten Lektion haben wir nur unser PHP durch HTML ersetzt. Nichts Schickes. In der Tat sollten wir voran gehen und uns aufräumen, und das werden wir tun. Also das erste, was ich eigentlich tun möchte, ist eine Konfigurationsdatei zu erstellen, damit ich tahp Include eigentlich nicht den Unterschied zwischen ihm und dem Unterschied zwischen Recall require und include erfordern. Include schließt die von Ihnen angegebene Datei ein. Aber wenn es nicht existiert, wird die Seite im Grunde versuchen, weiterzugehen. immer, es könnte an mehreren Stellen brechen, besonders wenn es die CONFIG-Datei nicht finden kann, während require versuchen wird, die Einreichung zu erfordern. Wenn die Datei nicht da ist, geht es im Grunde nur zu Fuß. Äh, es ist Geist wird explodieren. Sagen Sie, Oh, ich weiß nicht, was zu tun ist und einfach sterben Jetzt, in einigen Fällen wollen wir, dass, wenn wir die Konfiguration nicht laden können, wir nichts anderes tun können, also Once und Let's Dio Inc Slash ich herausfinden könnte PHP Speichern Sie, wenn wir auf unsere Seite gehen, beobachten Sie den Fehler tatsächlich bekommen uns 500 gegen, weil das nicht existiert. Cremige Ordnerinte erstellen eine neue Datei dort namens config dot PHP. Jetzt funktioniert es. Okay, cool. Also, was können wir hier tun? Aber wenn wir PHP Echo Test Exit tötet ihre Seite mit dem Wort Texttests darauf. Das ist perfekt. Das ist es, was wir wollen. Wir wissen, dass Konfliktdateien tatsächlich durch den Index geladen werden. Nun, als Sicherheitspraxis, ist das etwas, was Sie tun können. Es gibt andere Möglichkeiten, um dies, Aber wenn Sie gehen, um Ihre Konfigurationsdatei in einem h E-Mail zugänglichen Ordner haben, das bedeutet, wenn jemand ging auf Ihre Website dot com slash ng slash config dot PHP, könnten sie diese Datei sehen? Technisch gesehen, ja. Könnten sie auf ein Ja zugreifen. Würde es Fehler verursachen? Höchstwahrscheinlich, auch wenn Fehler deaktiviert sind. Ist das eine tolle Sache für Leute, eine leere Seite zu sehen? Nein, das willst du nicht. Stattdessen möchten Sie sicherstellen, dass sie keinen Zugriff darauf haben. Also werde ich das loswerden, weil es unnötig ist zu sagen, wenn nicht config cool definiert ist. Laden Sie die Seite neu. Ich habe keine Konfigurationsdatei. Das liegt daran, dass dies jetzt in PHP nicht definiert ist. Wir haben Variablen. Wir haben konstant. Wir haben all das andere tolle Zeug. Statt oben auf der Seite zu verlangen, wir sicher, dass diese Seite tatsächlich erlaubt ist, die Konfigurationsdatei einzuschließen. Wir tun das, indem wir definieren. Im Grunde wäre dies der konstante Name anstelle einer Variablen. Es ist eine Variable, die sich nie ändern kann, wenn sie gesetzt ist, sie ist auf das Leben eingestellt. Oder im Grunde, bis die Schrift fertig ist, und wir werden das nur wahr machen. Und lassen Sie uns einige Kommentare hinzufügen, weil Kommentare immer eine gute Idee sind. Ah, erlauben Sie, dass die Konfiguration die Konfiguration erfordert. Da gehen wir, werden bezahlt auftaucht. Aber wenn wir uns ändern, hat sich das zu da drin addiert. Wir haben jetzt keine Konfigurationsdatei. Was wir tun könnten, ist, dass wir jemanden hierher umleiten könnten, anstatt zu verlassen. Könnten wir. Genau das sollten wir tun, wie wir umleiten sollten. Oder wir sollten ihnen eine 404-Seite zeigen, so sieht es so aus, als gäbe es nichts. Aber der Einfachheit halber, der Kürze willen, umder Kürze willen,werden wir das schön und kurz mit einer Ausstiegsmeldung halten. Nun wieder, dass ein Kommentar, wenn es keine Konstante definiert namens config. Laden Sie diese Datei jetzt nicht. Alles nach der Exit-Funktion. Äh, es wird nicht cool werden. Also im Grunde, wenn unser Code hier vorbei kommt, tut alles andere Luftkurate. Aber es ist sicher. Es ist nicht wirklich sicher, aber es ist sicher. Äh, es ist nur eine Vorsichtsmaßnahme, die du jetzt treffen kannst. Unsere Konfiguration ist unten, und was wollen wir in unserer Konfiguration? Im Moment wollen wir nichts innerhalb der Konfiguration, das immer noch schön und leer gehalten wurde, und das ist unsere erste benötigte Datei. Wenn wir das an einen anderen Ort verlegen wollten,könnten wir das auch tun. Wenn wir das an einen anderen Ort verlegen wollten, PHP erforderlich. Einmal einmal erforderlich, versucht offensichtlich nur, die Datei zu verlangen, wenn sie bereits benötigt wurde. Uh, und statt erforderlich. Eigentlich könnten Sie Include einmal verwenden, und wenn die Dateien bereits erforderlich oder enthalten wurden, wird es nicht versuchen, erneut eingeschlossen zu werden, und das ist wie wenn Sie eine Schleife haben, zum Beispiel Das läuft immer und immer und immer wieder. Anstatt die gleiche Datei 55 55 100 Millionen Mal zu erfordern, wird es nur versuchen, auf einmal zu verlangen. Ah, und hier werden wir mit Schrägstrich Fußzeile Punkt PHP gehen, die nicht existiert. Schneiden Sie den Code, der hier geht. Neue Dateien namens Fußzeilenpunkt PHP Setzen Sie das hier ein. Abstand Tabs spielt keine Rolle. Jetzt. Wenn wir das Gleiche mit Fußzeile machen wollten, könnten wir das hier reinwerfen. Stellen Sie sicher, dass wir unsere PHP-Hoping-Syntax und diese schließende Syntax haben. Jetzt wird unsere Fußzeile nie geladen, wenn keine Konfiguration geladen ist und unsere Konfiguration jetzt wieder hier geladen wird , vielleicht nicht der beste Weg, es zu tun. Äh, sicher nicht der schlimmste Weg, es zu tun. Anstatt Sie wissen, Fuß oder überprüfen Sie die Konfiguration, könnten Sie eine andere Konstante hier drin haben. Lassen Sie Fußzeilen Eagle wahr auf hier in, wir sagen, wenn nicht definiert, erlauben Fußzeile. Grundsätzlich erlaubt die CONFIG-Datei nicht, dass Sie das in haben. werden sie nicht tun. Wir werden es wieder behalten. Sehr einfach. In der Tat ist es mir egal, ob Leute überhaupt auf diese Datei zugreifen können, weil es nur ein bisschen Javascript ist. Es gibt nichts Geheimnisvolles in dieser Akte, das wir von allen fernhalten müssen. Es ist im Grunde nur eine Vorlagendatei. Also und machen Sie das Zeug rückgängig. Sag das zurück zu ihrer Seite, Reload, inspizieren. Und in unserem Rat gibt es keine Fehler ohne Warnungen, nur um Ihnen zu zeigen, was ich damit meine, ist, wenn ich es tat, Sie hätten ein paar zwei hier drin und machen das wirklich eklig, und ich aktualisiere die Seite. Es steht, dass ich keins davon kriegen kann. Im Wesentlichen, was es sagt, ist diese Luft 404 ng Diese Dateien existieren nicht. Aber wenn ich die rückgängig mache, bekommen wir diese Warnungen nicht. Das bedeutet, dass diese Dateien perfekt auf unsere Seite geladen werden. Und Voila. Wir haben eine sauberere Index-Seite. Nun, das bringt uns zu unserem nächsten. Wir wollen nicht unbedingt, dass dies Ihre Indexseite ist. Also lassen Sie uns voran und speichern Sie dies auf einem kürzlich duplizierten. Ich rufe Login an und auf dieser Seite wird nichts drauf haben. Und das wird nur sagen, du weißt schon, du weißt schon, geh hallo, Welt. Und lassen Sie uns ein wenig PHP in dort werfen Datum Jahr, Monate. Ich verabrede mich nicht. Sicher, was auch immer. Uh uh, heute ist es speichern, gehen Sie zurück zu unserer Index-Seite aktualisieren. Heute ist ein Tag nicht kontrollieren, weil wir es nicht Echo haben. Da gehst du. Das ist das Date. Nichts. Großartig. Aber wenn wir jetzt in log in dot PHP gehen, haben wir eine spezielle Login-Seite. Nun, was wir tun werden, ist, dass wir das noch ein Mal duplizieren, die Login-Seite selbst Duplikat zu duplizieren, und wir werden es registrieren nennen. Und anstatt diese Js aufzurufen, rufen wir Js Register auf und haben eine andere Funktionalität. Sie können Ihre E-Mail hinzufügen. Sie können Ihr Passwort hinzufügen. Sie können dort ein zweites Passwort hinzufügen, so dass die Leute das Passwort und zweimal alle möglichen Sachen nehmen müssen . Aber im Wesentlichen, wenn dieses Formular ausgefüllt wird, wird anders durch JavaScript handeln. Und das bringt uns zur Ajax-Abteilung, die gerade ein bisschen ah vor uns ist . Aber wir haben im Grunde eine reguläre Seite hier, wo wir uns einfach registrieren lassen, also wissen wir, auf welcher Seite wir sind. Ah, wir haben hier normale Seiten, auf denen unsere Seite tatsächlich ein bisschen anders aussieht und hier einige Abstände hinterlassen , ich bevorzuge nicht viel Abstand. Äh, aber das mache ich vor allem für das Video hier. Und wenn ich das getan habe, ist dies Anmeldeseite. Und wenn ich mich bei PHP registriert habe, bekommen wir eine registrierte Seite, und tatsächlich kann ich das ändern. Muss nicht eingeloggt sein. Das könnte registriert werden. Jetzt werden wir eine Menge mit diesen Anmelde- und Registrierungsseiten machen, und sie werden tatsächlich drastisch anders sein, wenn man bedenkt, dass sie zu diesem Zeitpunkt ziemlich identisch aussehen. Da haben wir es. Wir haben eine Index-Seite. Wir haben Anmeldeseite und Registerseite. Fakt, das gefällt mir nicht mal. Gehen wir weiter und ändern uns um zwei. Uh, protokollieren, dass PHP hier einen Lincoln hinzufügen würde, loggen Sie sich ein und registrieren Sie sich. Und jetzt, wenn ich auf die Indexseite zurückgehe, müssen wir uns einloggen und wir haben einen Register-Link, um sich anzumelden. Ich gehe zurück und klicke auf registrieren geht, um sich zu registrieren. Ehrfürchtig. Also jetzt haben wir unsere grundlegende Seite der Einrichtung. Schließlich kam Caleb tatsächlich in etwas Gutes. Ja. Dies ist jedoch Teil der Einrichtung eines Projekts . Ist das Boarding Each TML Elemente die Einstellung Ihrer Seitenstrukturen, die Ihre Konfiguration einrichten Leute neigen nicht dazu, das zu tun. Web-Entwickler wirklich langweilig machen grundlegende Dinge wie so, was wir zu Dio gehen, ist dies gerade jetzt einrichten. Wir haben aufgestellt, bevor wir das alles gemacht haben, und dann können wir jetzt anfangen, etwas Spaß zu haben. Ich erwähnte bekommen Status. Sieh dir das an. Wir haben den Index geändert. Wir haben auch eine Reihe von neuen Dateien in Ihrer Projektdateien-Aktion. Ich sollte sogar da drin sein. Dies ist jedoch ein gutes Beispiel, um mehrere Dateien hinzuzufügen. Holen Sie sich Anzeige Kid. Add Inc wird das gesamte Verzeichnis hinzufügen, und das hätte ein Leerzeichen darin haben müssen. Wenn ich dort den Status bekomme, gehen wir. Diese Dateien werden in unserem nächsten Commit aufgenommen werden Die Projektdateien sind nicht. Wir machen ein get commit, hinzugefügt config hinzugefügt. Anmelden Reg Seiten hinzugefügt Flitter. Schön und kurz. Du bekommst Nachrichten. Muss sehr lang sein. Holen Sie sich Push Origin Master, gehen Sie rüber, um aufstehen erfrischt. Schauen Sie, dass wir haben Index Logging Register Inc. Wir haben alle Arten von genial Zeug in Ihrem kühlen, cool cool. Hätten diese in ihren eigenen Nachrichten gewesen sein sollen? Hätten wir uns verpflichtet fühlen sollen? Eine Akte nach dem anderen? Ja, hätten wir wahrscheinlich tun können. Aber nur weil dieses Projekt so winzig ist , ist es nicht so wichtig. Nun, wenn Sie an einem großen Projekt wie $100.000 Website arbeiten, ja, vielleicht andere Nachrichten zu bekommen, damit die Leute in Ihrem Team sehen können, was genau vor sich geht oder wenn Sie eine Nachricht wirklich lang sein wird, vielleicht teilen Sie es in zwei, erhalten Sie Nachrichten oder erhalten Commits eher. Also da hast du es. Fahren wir mit der nächsten Lektion fort. 6. Hilf mir mir?: Hallo, ich bin's. Ich bin die Stimme hinter den Videos. Nur eine kurze Erinnerung, dass, wenn Sie eines dieser Videos bisher genossen haben, können Sie mir auf Skill Share folgen. Aber noch wichtiger ist, dass Sie diesen Kurs tatsächlich bewerten können. Und einfach nur durch das Lesen dieses Kurses hilft mir das tatsächlich sehr. Es ist super einfach und super schnell dauert nur ein paar Sekunden, und ich meine, es würde wirklich die Welt für mich bedeuten. Wenn du also geliebt hast, was ich dir beigebracht habe, wenn du den Stil meiner Kurse magst, gib dem einen guten alten Daumen hoch, um, und lass andere Leute wissen, was du über diese Videos geschluckt hast. Prost. 7. Passwörter speichern: Herzlich willkommen. Willkommen, willkommen. Letzte Lektion. Wir haben eine Anmelde-Seite erstellt. All das Zeug. Wir haben unsere Konfiguration eingeschlossen. Wir haben eine Fußzeile eingefügt, damit wir Änderungen auf mehreren Seiten sehr, sehr einfach vornehmen können. Aber bevor sich jemand anmelden kann, bevor sich jemand registrieren kann, benötigen wir eine Datenbank. Ansonsten speichern wir nur Passwörter in der einfachen Steuer. Nun, mit dem gesagt, möchte ich etwas wirklich schnell erwähnen. Okay, in Ihrem JavaScript habe ich in letzter Zeit zu viel gesehen, aber in Ihrem JavaScript haben Leute Passwörter gespeichert. Speichern Sie niemals Ihre Passwörter und JavaScript speichern Sie nie Ihre Passwörter und HTML CSS. Diese sind alle Browser zugänglich. Es spielt keine Rolle, wie Sie versuchen, diese zu verstecken. Es ist für jedermann sichtbar. Lassen Sie mich also, lassen Sie mich das ganz klar machen. Nicht aus irgendeinem Zweck oder Grund. Speichern Sie immer ein Passwort in JavaScript, HTML oder CSS. In der Tat würde ich sogar sagen, nie ein Passwort in einem normalen PH speichern. B-Saite wie diese. Tun Sie dies nicht einmal, weil die Tatsache der Sache ist, dass kein Server unzerbrechlich ist. Das bedeutet, dass jemand reinkommen kann. Es ist vielleicht nicht heute vielleicht nicht morgen, aber wenn jemand wirklich reinkommen wollte, könnte er Ihren Code bekommen. Jetzt gibt es noch eine Sache, auf die Sie achten müssen, ist, wenn wir eingeben Passwort ist gleich Passwort. Und das haben wir auf „Get Hub“ gesetzt. Ratet mal was? Alle haben es eingehalten. Wenn Sie einen P I Schlüssel wollen, suchen Sie weiter. Steh auf. Es gibt Zehntausende von P I Schlüsseln auf ihren Zehntausenden von Passwörtern , die hart in Projekte codiert sind. Und Leute brechen einfach ein, nur weil es öffentlich zugänglich ist. Also tu das nie. Stattdessen werden wir eine Datenbank erstellen, damit wir völlig umgehen können , dass wir nicht einmal Passwörter verwenden, die dem Passwort entsprechen . Wir werden keine Passwörter in Variablen speichern, nur weil wir das nicht wollen. Ich will dir nicht mal zeigen, wie das gemacht wird. Viele Leute sagen, Oh, Oh, aber wissen Sie, PHP hat viele Sicherheitslücken wie Nein, nicht wirklich, nicht wenn Sie wissen, was Sie tun. Es ist nur, dass die Leute manchmal schlechte Entwickler sind, und ich möchte, dass Sie ein großartiger Entwickler sind, also setzen Sie Ihre Passwörter nie in Klartext so. Es ist schlimm genug, wenn Leute Passwörter in Klartext setzen, wie wo wir hatten Passwort ist in der Lage, Passwort, und ich könnte das lesen. Aber selbst wenn es mit etwas verschlüsselt war, das auch schlecht ist , stell das nicht rein. Wenn jemand in Ihren Server einbricht, lassen Sie ihn dafür arbeiten. Sie müssen wirklich hart arbeiten. Und damit wir das tatsächlich so funktionieren, wie wir es wollen, brauchen wir eine Datenbank. Also bin ich fertig. Meine Verzweiflung über Passwörter bitte immer sicherheitsorientiert sein. K Security kommt vor gutem Aussehen. Sicherheit steht vor der Funktionalität. Die Sicherheit kommt vor allem. Wenn Facebook einen Einbruch hätte und zwei Milliarden Passwörter verloren hätte, was würde das mit dem Vertrauen von Facebook tun? Niemand würde Facebook mehr von Google vertrauen. Diese Dinge passieren. Seien Sie also sehr achtsam darüber 8. Einrichten von unserer Datenbank Teil 1: Was ich tun werde, ist, ich werde lokale Host Schrägstrich Petri gesinnten Männer Ruedas Route Wenn Sie nicht wissen, ein PHP könnte, Männer ist es nur eine Schnittstelle für meine SQL. Sie können meine Fähigkeiten Workbench verwenden, die Sie verwenden können. Ich muss meine Schule nicht benutzen. Sie können Maria db verwenden, was technisch die bevorzugte ist, was ein Ersatz für meine SQL ist. Und das ist völlig in Ordnung. Sie können das stattdessen verwenden. Aber was wir hier wollen, sind Datenbanken und ich werde alles in Ordnung, ich werde das danach tun und lassen Sie uns einfach dieses Login-System aufrufen. Nein, ich benutze das Wortsystem nicht, weil es eine Art Le Guin Kurs und die Kollision ist. Ich werde nach unten utf acht m vor Unterstrich Unicode-Unterstrich c I c. Ich meine, ist Groß- und Kleinschreibung unempfindlich? Das werde ich saugen. Grundsätzlich bedeutet das, dass jedes Zeichen in dieser Datenbank gespeichert werden kann. Es ist erlaubt. Jetzt speichern wir nur e-Mails und Passwörter, die normalerweise nur utf a sind, die im Grunde nur reguläre Zeichen sind. Aber für den Fall, dass Sie Ihre Datenbank toe erweitern wollten, halten Sie Vornamen, müssen Sie denken, Einige Leute schreiben Arabisch. Arabisch geht von rechts nach links. Es sieht ganz anders aus. Sieht nicht nach Wut aus. Zitadelle. Was Russisch Russisch ist ein anderes hatte ganz anderes Alphabet Japanisch. Mehrere verschiedene Alphabets. Du musst diese Dinge richtig in Betracht ziehen? Also lassen Sie uns voran und erstellen Sie eine Tabelle. Nennen wir es einfach Benutzer. Anzahl der Spalten Wir wollen uh, nein, wir wollen Benutzer, i d. Wir haben die E-Mail-Adresse, wir haben ein Passwort und lässt Ihr Registrierungsdatum So haben Sie vier war richtig und nein, nicht Roadie Benutzer I d. Jetzt versuche ich immer, diese Kleinbuchstaben zu halten und mit einem Unterstrich getrennt. Sie werden einige Orte sehen, die wie Roe i d. in einer Datenbank schreiben werden. Und es ist super inkonsistent, Ganz zu schweigen von einigen Datenbanken mögen einfach nicht, wenn Sie Großbuchstaben haben, die Sie zwingen, alles in Kleinbuchstaben zu tun. Du hast recht. All Ihr Code wird lokal Großbuchstaben verwendet, ähnlich wie Peitschen. Und dann legen Sie Ihren Mantel auf einen Live-Server, und plötzlich ist es, als ob ich nicht weiß, welche Reihen-Ideen, denn anstatt nach einer Reihe zu suchen , unterstrichen Idee. Eigentlich, nannte es Benutzer I d. Ah, hier drin. Lassen Sie uns einfach mit regulären in fünf Standardwert-Augen gehen nichts sein. Es wird immer etwas haben, ein Auge, Auto Schritten zu tun. Speichern Sie, dass Attribute ohne Vorzeichen bedeutet, dass Zahlen immer Null oder höher sind. Wenn wir nicht unsigned auswählen, was das im Grunde bedeutet, ist, dass es anstelle von gehen würde, wie gestartet zu 56, die von minus 1 28 zu positiver 1 28 gehen Wir brauchen keine Ah-Anwenderidee, die unter Null geht. Also ändern wir das in einen signierten Kommentar. Benutzer i d. Alles andere, was wir gerade verlassen werden. Name. E-mail. Dies war ein variables Zeichen. 250 definiert, äh, wie definiert. Wir können sagen, der Standardwert ist immer E-Mail an email dot com oder so. Nicht das, wonach wir suchen. Äh, Handels-E-Mails sind leer. Nein. Aktuelle Zeit Zeug. Nichts damit zu tun. Gehen wir weiter und ändern Sie den Index in Index und, uh , naja , tatsächlich, wir könnten das auch einzigartig machen, weil ein Benutzer nur eine E-Mail-Adresse haben kann, also muss es völlig einzigartig und geben Sie eine E-Mail, gehen Sie Kommentare, Benutzer, E-Mail-Adresse Passwort. Schrecklicher Charakter. Lassen Sie uns tun 200 werden wahrscheinlich nie 200 sein, weil es ziemlich verschlüsselt sein wird. Aber das ist in Ordnung. Das ist in Ordnung. Dasselbe , , Standardwert spielt keine Rolle. Das Passwort muss nicht eindeutig sein. Muss keine Indizes sein, wenn jemand genau das gleiche Passwort hat und irgendwie den gleichen Hash verwendet , was wahrscheinlich nie zu irgendeinem Zeitpunkt passieren wird. Aber wenn es Toe passieren würde, würde es einzigartig brechen. Einzigartig muss absolut einzigartig sein. Index. Nun, das wird als verschlüsselter Wert gespeichert werden. Also werden wir nicht wissen, was das ist. Eso müssen wir das nicht indizieren. Indizierung bedeutet im Grunde Hey, mein SQL. Wir haben eine bestimmte Information in einer bestimmten Tabelle, die Sie priorisieren müssen. Aber wenn jedes Passwort verschlüsselt gespeichert wird und es anders ist, haben wir keine Ahnung, was das sein wird. Und so sollte es nicht indiziert werden. Wir werden die Leute zuerst an der E-Mail-Adresse nachsehen. Dann holen wir uns das Passwort und dann überprüfen wir es. Und schließlichbist du es, bist du es, Reg Time. Und das hier könnte sein, wo Sie Zeitstempel. Aktueller Zeitschritt, äh, bei Updates Aktueller Zeitstempel? Nun, nein, denn die Anmeldezeit passiert immer nur. Sobald angenommen, dass Register, speichern wir, dass Der Index, wir brauchen nicht zu indizieren, weil wir keine tun, wie Data Analytics. Basierend darauf, wann sich Personen registrieren. Wir wollen nur sehen, wann sie die Uhrzeit und das Datum der Registrierung des Benutzers registriert haben. Nennen Sie dies, dass Benutzer Tabellenkoalition dasselbe tun, was Speichermodul Sie in einer DB oder meinem ISM wollen . Nun, WordPress-Seiten verwenden gerne meine SM, weil sie nicht schreiben eine Menge von Informationen, aber sie lesen eine Menge von Informationen, was großartig ist. Aber wissen Sie, D B wird eine Menge Informationen lesen und schreiben, hat einige Vor- und Nachteile, wie mein Assam Volltextindizierung hat, also könnten wir sagen, Volltextindex, und es wird sogar versuchen, in verschiedenen Sprachen zu passen, Während in ODP, das hat, das ist nicht so toll damit, einfach in Ordnung, weil wir nicht versuchen, ganze Blogger-Artikel oder so etwas zu indizieren . Sie wissen, DB unterstützt auch Transaktionen, was bedeutet, dass Sie 10 Benutzer und 50 blowing Posts hinzufügen können und all das, und wenn etwas scheitern würde, könnten Sie einen try, catch-Block haben . Und in diesem und dem Catch-Block könnte man im Grunde „Roll back“ sagen, all das rückgängig machen. Denn wenn etwas scheitert, kann ich nicht durchgehen und das ist großartig für kann ich nicht durchgehen und das ist großartig für Zahlungen oder Banksysteme,muss die Transaktion unbedingt durchlaufen. Zahlungen oder Banksysteme, Wenn es nicht durchläuft, dürfen keine anderen Daten durchlaufen. Du willst keine Leute sehen. Ich Sie auf Ihren Kontoauszügen, Sie wollen nicht sehen, dass Sie einen Haufen Geld ausgegeben haben, das tatsächlich nicht ausgegeben wurde. Du wirst sehr verwirrt sein. Deshalb würden sie Transaktionen verwenden. Das wäre ein echtes Beispiel. Lass uns das retten. Das hat wirklich einen Benutzertisch. Und wenn wir auf unsere Seite zurückgehen und uns anmelden, passiert nichts, weil wir nicht mit einer Datenbank verbunden sind. Nun, was ich tun will, ist, dass ich einen anderen Ordner in Tinte erstellen werde, und ich werde es einfach Nein nennen, keine Funktionen, die er ist, sollten wir das tun. Du machst, äh, cremige Akte. Es heißt Funktionen, die PHP. Dies ist eine alte Schule Art, Dinge zu tun, und Lassen Sie uns auch einen beliebigen Ordner hinzufügen, nennen Sie es Klassen, und in diesem Ordner, lassen Sie uns eine neue Klasse namens devi dot PHP erstellen. Okay, was ich hier habe, ist, dass ich gerade in diese DB-Klasse eingefügt habe. Jetzt wird dies eine Singleton-Klasse genannt, was bedeutet, dass es versuchen wird, die Datenbankverbindung einmal zu erhalten. Wenn es nicht existiert, wird es dann tatsächlich die Verbindung bekommen. Wenn es existiert, wird die Verbindung zurückgeben. Auf diese Weise können wir unsere Datenbankverbindung immer wieder aufrufen. Aber es wird nicht wirklich warten, dass, wissen Sie, 50 Millisekunden jedes Mal, wenn wir eine Verbindung zu unserer Datenbank herstellen müssen, oder was auch immer es sein wird , es wird nur wissen, dass es schön und einfach wird. Es wird immer nur ein einziges Mal bekommen, um das schnell durchzugehen. Also schrieb ich etwas Ähnliches wie dieses, äh, für mehrere andere Projekte und schneide es einfach ab, um es sehr einfach zu machen. Nun, was wir hier betrachten, ist objektorientiertes PHP, und das liegt daran, dass wir nur singleton uh wollen, das Singleton im Grunde die Struktur dieser Klasse entworfen hat, muss, wissen Sie, nur sagte, es einmal nur immer die eine, die gesetzt. Also, was das tut, ist, definieren wir eine neue Klasse namens DB Ist kein db dot PHP Also haben wir es genannt d sei geschützt statisch, was bedeutet, dass dies eine Variable ist, die eine Eigenschaft innerhalb einer Klasse genannt wird und es ist geschützt bedeutet, dass wir es nicht von außerhalb mit Klasse. Und es ist auch statisch, was bedeutet, dass wir es bekommen können, indem wir sich selbst Colin Technisch, private Funktionskonstruktion nennen. Dies ist eine magische Funktion, äh, magische Methode eher die, sobald Sie in Stan, sie acht db Also, wenn Sie TV tippen ist gleich neue DB, wird dies automatisch auf Awesome aufgerufen. Das ist genau das, was wir wollen, wird unseren Betrüger schaffen und hier sind diese tatsächlich tun. Ist das falsch? Lass uns umziehen. Es war sehr schnell. Da gehen wir. Uh, und wir werden PDO benutzen. Also statt meiner sq eine Lüge, die viele Leute benutzen, werden wir etwas Fortgeschritteneres verwenden, weil dies ein Technisch ist, das ist viel besser. Mein SQL I ist irgendwie wie die Rookie-Art, meine SQL-Anweisungen mit PHP zu schreiben , . Ah, der Code wird verfügbar sein, damit Sie sich keine Sorgen machen müssen, all das zu schreiben. Aber im Grunde bleibt das in Verbindung. Mein SQL Toe zu meinem SQL Verwenden Sie den Zeichensatz utf acht. Und bevor Sie daran denken, haben wir das mit ihrer Datenbank eingerichtet. Ehrfürchtig. Ehrfürchtig. Unser Gastgeber ist lokal. Host Airport ist standardmäßig 33 von sechs. Unser Datenbankname, den wir eingerichtet haben, war die Protokollierung Unterstrich Kurs, mein Benutzername und mein Passwort. Nun, wenn nichts davon funktioniert, wird nicht sagen, chronisch konnte nicht die Datenbank wieder verbunden werden. Entschuldigung. Es liegt daran, dass ich dort von einem anderen Projekt kopiert habe. Seien Sie, anstatt dies austippen zu müssen. , Wenn du mir im Grunde zusiehst,wie ich das austippe, wird es ziemlich langweilig sein. Sagen Sie einfach, konnte sich nicht mit der Datenbank und den Trägern verbinden. Deine Leitungen müssen nicht da sein. Wahrscheinlich 1000 gerne dort gehen wir. Koukal 9. Einrichten unserer Datenbank Teil 2: Jetzt wird das nichts tun, weil ich meine, wenn wir ihre Seite laden, wird sie nicht aufgerufen. Also, wenn wir in unsere Konfiguration gehen und wir sagen, raten, was die D v dot PHP-Datei enthalten? Wir könnten einmal Klassen db dot PHP einschließen und ich hatte diesen Raum tatsächlich geschrieben. Lass uns einfach umbenennen. Es gibt eine zu viele. Ja, ist jetzt, was passiert, wenn ich die Seite aktualisiere, wird immer noch geladen, aber wird es tatsächlich geladen? Wir wissen es nicht. Test beenden? Ja, das ist es. Da gehen wir. Jetzt. Wir könnten dasselbe tun, was wir mit config gemacht haben. Und wir können diesen Code nehmen. Und wenn jemand versucht, über Devi Dot PHP-Datei zuzugreifen, können wir sagen, Nun, warten Sie eine Minute. Wenn Sie nicht die Konfigurationsdatei haben, die eigentlich nur aus unserem Login Dot PHP oder Index Dot PHP oder einer unserer Anwendungsdateien geladen wird, dann raten Sie was. Du kannst keinen Zugang dazu haben. Also, du weißt schon, geh weg. Das ist für uns auf Lee. Das ist im Wesentlichen, was das Sprichwort und so ja, aktualisieren. Da gehen wir jetzt, es tut gar nichts. Das ist nur unsere Klasse. Es war noch nicht in San. Sie hat es noch nicht angefangen. Wir müssen damit anfangen. Also lassen Sie uns voran und erstellen Sie eine neue Variable innere Konfiguration und d b get Verbindung, aber getötet. Wie haben Sie das bekommen? Nun, D B ist der Name unserer Klasse. Wir könnten es leicht Datenbanken nennen. Nun, wenn wir wollten. Ah, und die Get-Verbindung ist die öffentliche statische Funktion. Nun bedeutet die öffentliche statische Funktion public, dass wir diese Funktion von außerhalb von sich selbst aufrufen können . Also jeder Code, der hier nicht gut ist, wir können es immer noch als statischer Teil bezeichnen, bedeutet im Grunde, wir werden Coghlan verwenden, um darauf zuzugreifen. Die Funktion ist Nun, es ist eine Funktion, und das ist der Name. Also, jetzt haben wir Condi bekommen Verbindung. Ehrfürchtig. Cool. Was passiert, wenn wir Refresh speichern? Nun, wir verbinden uns. Anscheinend. Cool, weil nichts passiert ist. Was ist, wenn ich einfach reingehe wie ein Verspotten? Einige von diesem Zeug Konnte Datenbank nicht verbunden? Was, wenn ich nur einen davon verspottet habe? Was ist, wenn ich das Passwort gerade in root geändert habe? Zwei können keine Verbindung zur Datenbank herstellen. Da gehen wir. Also sind wir offiziell mit der Datenbank verbunden, und das ist alles, was es gibt. Nun, bevor wir fortfahren, wenn Sie eine Datenbank erstellen, war die, die wir erstellt wurde log. Natürlich brauchen Sie jetzt einen Benutzer. Wenn Sie dies lokal tun, ist es wahrscheinlich root root. Uh, wenn Sie eine Live-Anwendung erstellen, verwenden Sie keine Route. Jeder wird den Weg erraten. Verwenden Sie keine Werbemänner. Vermutlich nicht Ihren Namen verwenden Sie entweder etwas völlig dunkles auf Ihrem Passwort sollte verrückt sein. Jetzt ist dies eines der wenigen Male sind schwer. Das Einbringen Ihres Passworts in Ihre Anwendung ist tatsächlich XX zugänglich. Und das ist nur, weil es keinen anderen Weg gibt. Und deshalb haben wir hier jetzt zusätzliche Sicherheit hinzugefügt. Wenn wir noch mehr misstrauisch gegenüber all unseren Benutzern werden wollten, was eine gute Sache ist, würden wir tatsächlich den gesamten Inc-Ordner aus unserer Anwendung und woanders verschieben, so dass, äh, die Konfiguration könnte sagen, Sie wissen, gehen Sie zwei Ordner nach oben, die außerhalb des Ortes ist, wo die Leute auf Index zugreifen können, dass PHP oder Logging Dot PHP , Uh, und wirklich nur etablierte unsere Anwendung wird Zugang dazu. Nun, das ist so gut, ich denke, das ist eine andere Art, wie wir tun, und so sollten wir es tun. Aber um dies für Sie klar zu machen, um zu verstehen, ähm, und um zu sehen, wie die Hierarchie tatsächlich funktioniert, werden wir es so behalten. Beachten Sie jedoch bitte, dass es Möglichkeiten gibt, die Sicherheit für Ihre Benutzer zu verbessern . Wenn Sie keinen Benutzer haben, können Sie in PHP meinen Admin gehen. Oder Sie können es direkt über Ihre Konsole oder Ihr Terminal schreiben. Vielmehr könnten Sie all Ihre meine SQL schreiben und hier, wenn Sie es so machen wollten. Ich mache es gerne visuell, damit du sehen kannst, was los ist. Befehlszeile neigt dazu, eine Menge Leute zu erschrecken, vor allem, wenn es darum geht, Datenbanken zu verwalten und Benutzer zu erstellen und so weiter. Es ist ein bisschen einfacher für Leute zu zeigen und zu klicken, und in diesem speziellen Fall ist das überhaupt keine schlechte Sache. Wir haben Datenbanken, SQL Status Benutzerkonten. Wir wollen Benutzer. Ich habe einen da drin namens Caleb. Dies ist eigentlich für Docker, aber ich habe dort wieder alle meine Privilegien, nur lokale Host-Privilegien als nur lokaler Host. Also darf ich alle Privilegien haben. Roots, Roots Passwort. Ja. Wieder global alle Privilegien. Aiken machen im Grunde alles damit. Sweet eso Das ist alles, was ich getan habe, um ein neues Benutzerkonto zu erstellen. Erstellen Sie Benutzer Sie haben Ihren Namen, Ihren Hostnamen, uh, lokalen Host. Passwort ändert Route oder was auch immer. Wenn Sie sich auf dem Live-Server befinden, stellen Sie sicher, dass dies sicher ist. Das ist völlig anders, aber weil wir lokal sind, verwenden wir nur, du weißt schon, beschissene kleine Anmeldedaten. Es spielt keine Rolle. Gehen Sie weiter. Und wenn Ihr lokaler Sie alle überprüfen können, wenn Sie nicht lokal sind, möchten Sie die 's einschränken. diese Weise können Sie mehr Sicherheit hinzufügen. Wenn Ihr Benutzer also nur dazu berechtigt ist, Update löschen zu wählen. Ähm, vielleicht darf Veränderung nicht fallen. Ähm, das war's. Also, jetzt haben Sie, wie, einen grundlegenden Benutzer. Uh, selbst wenn jemand reinkam und wieder bösartige Sachen wie Leute gemacht hat, reden Leute über PHP mit Sicherheitslücken. Es ist nicht unbedingt PHP. Es sind Leute, die nicht wissen, wie die Werkzeuge funktionieren. Und so erstellen sie diese Benutzer, die alle diese Optionen haben und dann plötzlich das SQL injiziert, das im Grunde nur SQL hinzufügt, wenn Sie alle hier sind. Also, wo es heißt, Benutzer hinzufügen und sind, wo es Token sagt, richtig? Dies sucht jetzt ein Token in meiner Datenbank. Meine PHP ID Männer Datenbank. Nun, wenn ich Drop-Tabellenbenutzer eingegeben habe und wir uns das ansehen, haben wir eine Tabelle namens Benutzer dort drin und dieser Benutzer darf Tabellen löschen. Ratet mal was? Sie haben alle Ihre Benutzer verloren. Nun, wir werden das nicht lokal tun, weil wir offensichtlich nicht alle unsere Benutzer fallen lassen wollen . Wir würden in der Zeit rückwärts gehen und unsere ganze Arbeit rückgängig machen. Aber wenn wir eine Live-Website betreiben, möchten Sie deaktivieren, dass Sie in Check im Grunde alle diese Onley überprüfen die, die Sie unbedingt brauchen, und das ist eine andere Möglichkeit, die Sicherheit Ihrer Anwendung wirklich zu verbessern. Das ist also, dass wir in der nächsten Lektion etwas JavaScript bekommen sollten, eine Javascript-Validierung einrichten und Leute dazu bringen sollten, sich tatsächlich bei unserer Anwendung zu registrieren . In Ordnung, sehen Sie, da 10. Formularvalidierung mit JavaScript Teil 1: Hallo. Hallo. Willkommen zurück. Also habe ich etwas hinter den Kulissen gemacht, das ich das letzte Video hätte machen sollen. Ah, oder in diesem Video. Stattdessen werde ich erklären, was ich im letzten Video gemacht habe. Ich habe eine Datenbank eingerichtet. Ah, und alles, was ich getan habe, war, dass ich es abgelegt habe. Was bedeutet, dass ich im Grunde eine SQL-Datei erstellt habe, die alle Informationen der Struktur der Datenbank hier im Grunde geht, so dass Sie das in Ihren Projektdateien vollständig finden können. Wenn Sie Ihre Datenbank zu irgendeinem Zeitpunkt erneut einrichten müssen, wird diese für Sie eingerichtet. Alles, was Sie tun müssen, ist diese SQL-Datei hochzuladen und es wird genau so für Sie funktionieren. Jetzt in diesem letzten Nein, was ich tun möchte, ist, dass ich mit etwas JavaScript beginnen möchte. Lassen Sie uns diesen kleinen Ajax sehen. Lassen Sie uns das ein wenig dynamischer machen. Mal sehen, was wir können und können dio jetzt, bevor wir etwas gut tun, müssen wir eine neue JavaScript-Datei zu unserer Fußzeile hinzufügen. Jetzt können wir zu unserer Fußzeile gehen und wir können jede Art von Javascript hinzufügen, die wir hier wollen. Aber ich meine, das ist eklig, weil ich jedes Mal in das d.. O M in das Dokumentobjektmodell auf die Seite geladen wird . Und während das ist, ist das nicht cool. Stattdessen, was wir tun werden, ist, dass wir ein anderes Verzeichnis erstellen und dieses Assets nennen werden . Wir werden eine da drin erstellen und wir werden es Js nennen, und wir werden dort eine Datei erstellen. Wir werden es Hauptpunkt Js nennen. Jetzt ist der Grund, dass ich es in Assets Slash Js Schrägstrich setzen, während Sie hier tatsächlich oben sehen können Assets Schrägstrich es Slash Hauptpunkt Js Sie können CSS und Bilder und Sachen innerhalb Ihrer Assets setzen . Und so sind alle Ihre lokalen Assets, alle Ihre statischen Assets zusammen. Es ist nur sauberer auf diese Weise. Anstatt Sie es wissen zu lassen, drei oder vier verschiedene Verzeichnisse überall. Wenn ich nur dieses gesamte Projekt anschaue, habe ich nur 23 Verzeichnisse. Wenn ich mir eines meiner statischen Assets ansehen wollte, weiß ich, dass es nur Javascript gibt, aber wenn es CSS gibt, könnte ich einen anderen Ordner namens CSS. Wenn es Bilder oder S P G's gab. Das könnte ich auch tun. Nun, in diesem Schmerz, alles, was ich tun möchte, ist Alarmtest, um sicherzustellen, dass das tatsächlich funktioniert. Gehen Sie in unsere Fußzeile Typ und Skript als R C gleich Assets Slash es Schrägstrich Hauptpunkt gs ist. Und der Schlüssel hier ist, dass es mit einem Schrägstrich beginnt. Das bedeutet, gehen Sie an die Basis des Projekts. Was auch immer der Basis des Projekts am nächsten ist , wo der Index lebt. Und es wird nach Assets suchen, die wir haben und das wird nach einem JavaScript suchen , das wir haben, und es wird von maine dot Js aussehen, die wir haben. Speichern Sie das. Gehen wir zurück zu unserer Seite. Ich erfrischte und es sagt Test nur ich wurde cool, so dass wir wissen, dass das jetzt funktioniert. Aber was passiert, wenn sich jemand tatsächlich registriert? Nun, lassen Sie uns von Login und gehen Sie zu einem registrierten PHP. Ich werde im Grunde alle anderen Dateien schließen, weil wir sie im Moment nicht brauchen, und wir wissen, dass dieses Formular Js Register heißt. Jetzt. Wenn du nicht mit Jake müde vertraut bist, ist das okay, dannist das okay, wir machen etwas anderes. Was Viele Leute Ihnen sagen werden, dass Sie mit J-Abfrage dio tun, ist technisch falsch, besonders bei Ajax-Anwendungen. Sie werden Ihnen sagen, etwas wie diese Klickfunktion zu tun. Und wenn die Seite geladen wird, wird sie diese Klasse auswählen, die dieses Formular ist, und es wird die On Click-Funktion binden. Aber wenn wir das auf die Seite anjax, nun, das existiert nicht. Also ratet mal was? Das wird nie gebunden und es funktioniert nicht. Ich habe gesehen, wie Menschen mit diesem Konzept kämpfen und kämpfen. Stattdessen binden wir alle unsere Funktionen alle unsere Zuhörer an die Kuppel, an das Dokumentobjektmodell, was wiederum ist, dass wir das gesamte Dokument auswählen, das wir auf Vorlage gebildet A J s Registerfunktion E auf entscheiden, ein wenig mehrdeutig zu essen. Lass uns eine Veranstaltung machen. Ah, werde falsch, egal was passiert. Ähm, und wir wollen immer, dass Ereignisse den Standardwert verhindern, was auch immer das sein könnte. Einige Browser verhalten sich anders, manchmal nicht notwendig, manchmal notwendig. Wirklich, abhängig von Ihrem Publikum. Welche Browser sie verwenden. Ich werfe es da rein, sowieso ich es nehme oder gehe? Es spielt keine Rolle und lassen Sie uns gehen Alert Formular eingereicht wurde. Sagen Sie, dass gehen Sie über eine Seite aktualisieren und wenn wir auf registrieren Wow klicken, wird es uns nach Informationen fragen und wir klicken registrieren. Sieh mal, dass formell eingereicht. Denken Sie nun daran, als wir das Formular vor ein paar Videos eingereicht haben, hat dies uns tatsächlich von der Seite weggenommen. Das macht es nicht mehr. Es hält uns jetzt auf der Seite. Warum ist das so? Ist es, weil die Ereignisse Standard verhindern? Es hängt vom Browser ab. Könnte sein, aber meistens ist es, weil es falsch zurückkehrt. Also, jetzt haben wir etwas zu arbeiten. Jetzt müssen wir in der Lage sein, die E-Mail-Adresse und das Passwort zu erhalten. Also, wenn wir diese Form annehmen, werfen Sie es in eine Variable namens Form Variable Namenskonventionen in JavaScript sehr weit verbreitet , vor allem, wenn es um Jake müde kommt. Also, was wir tun könnten, weil es ein Selektor ist. Wir könnten die J.J. Korea nutzen , um Dinge auszuwählen und ein Dollarzeichen zu verwenden und dies zu sagen. Dies bezieht sich auf das gesamte Formular. Oder wir könnten sagen, Form ist gleich diesem oder einige Leute wie die kürzere Art und Weise können wir sagen, f Punkt Adler Teoh F ist gleich diesem oder wir könnten einfach tun, die normale Art und Weise Form ist gleich dieser Gruppen wirklich hängt von Ihrer Präferenz. Was ich bleibe, ist Unterstrich um des Staates willen mit Underscore, denke ich, da zwei Formen gleich diesem sind und jetzt, wo wir die gesamten Formularelemente haben, schauen wir uns das JavaScript an. Aber wir haben dieses gesamte Formularelement in einer Variablen. Wir können jetzt den Rest des HTML hier analysieren und genau das finden, wonach wir suchen . Könnten wir also unsere Eingabe finden, wo der Typ E-Mail ist? Können wir ihre Eingabe finden, wo der Typ Passwort ist? Ja, du hast gewettet, aber wir könnten das machen. Lassen Sie uns ein Objekt erstellen. Variablendaten sind gleich Objekt. E-Mail ist gleich Well, lassen Sie uns nach dem Eingabetyp von E-Mail suchen. Wir wissen, dass es nur eine gibt, also ist es völlig in Ordnung, und die meisten Leute lassen es dabei. Aber lustige Tatsache. Wenn Ihre Seiten riesig sind, wenn es wie ein Amazon-Patienten nur 10.000 Zeilen HTML ist, ist das eine Menge HTML zu durchlaufen. Stattdessen werden wir Unterstriche Form eingeben, die sich auf dies bezieht und im Grunde, was das sagt, ist Schauen Sie durch diese. Sieh dir das einfach durch. Das ist alles, was noch alles ist. Nein, nicht einmal das hat nur das Formular durchgeschaut. Das ist alles, was du musst. Sie schauen einfach durch das Formular und ignorieren alles andere. Andernfalls, wenn wir nicht angegeben haben, dass wird durch den gesamten Deal zu suchen. Ich bin jetzt unsere Seite von klein, also spielt es keine Rolle, nicht der Punkt. Der Punkt ist, Ihre Anwendungen schließlich riesig werden, und Sie werden sicherstellen wollen, dass Ihr JavaScript so schnell wie möglich ist. Jetzt sind einige Leute wie, Oh, na ja, warum sogar gebraucht erfordern? Sie benutzen einfach Reaktor? Er benutzt einfach eckig. Nun, Tatsache ist, dass die meisten Websites J-Abfrage verwenden, und deshalb sind wir Husing Jake. Oder wenn Sie aktualisieren möchten, um zu reagieren oder eckig, irgendetwas anderes. Sei auf jeden Fall mein Gast. Geh drauf. Es ist nichts falsch daran, aber die meisten Seiten benutzen Jake müde, also lernen wir den Jake Weary Weg. Jetzt nehmen wir vier, erhalten den Wert Komma und lassen Sie uns das Passwort bekommen. Eingabetyp entspricht erneut dem Kennwort. Das Gleiche. Unterstrich Form Punkt Foul. Und wenn wir das tun, Konsul, protokollieren Sie nicht jedes Mal Daten, wenn das erstere eingereicht hat. Sagen Sie, dass Refresher Seite und wir tun Test bei Test dot com und und ein Klick registrieren. Oh, sieh dir das an. Es gibt meine E-Mail-Adresse und mein absolut sicheres Passwort. Nun, warum sollte ich Text nicht so in meinem JavaScript speichern? Es liegt daran, dass JavaScript öffentlich für Ihren Browser zugänglich ist. 11. Formularvalidierung mit JavaScript Teil 2: Eine Sache, die Sie sicherstellen müssen, ist, wenn Sie Kennwörter verwenden, wenn Sie Formulare treffen , wenn Sie irgendeine Art von sicheren Informationen senden, Sie möchten immer sicherstellen, dass Sie https verwenden. Jetzt. Das habe ich nicht vor Ort. Ich brauche das nicht lokal, weil ich das nur lokal führe. Aber wenn dies auf einer Live-Website war, wenn dies auf arc mont dot com war, die eine sehr ähnliche Login-Form wie diese verwendet, oder wirklich jede andere Website, die jemals mit PHP und Ajax gemacht wurde, verwenden Sie immer https. Da ist diese Sache, die man hier ausgibt. Lassen Sie uns verschlüsseln, und das gibt uns SL's kostenlos. Richtet es für Sie ein. Es ist ein kleines Kommando Futter, aber es ist wie zwei oder drei Zeilen ohne Grenzen Kommandozeilen und geben Ihnen den Code und dass es einfach funktioniert. Und das sichert grundsätzlich Ihre gesamte Website für Sie. Nun, ich sollte nicht sagen, sicher. Es verschlüsselt tatsächlich nur den Code, der von Ihrem Browser an den Server und zurück gesendet wird . Also ah, es ist wieder nur eine weitere Sicherheitsschicht, auf jeden Fall zu empfehlen. Vielleicht mache ich sogar einen Kurs. Lassen Sie uns verschlüsseln So haben wir unsere Daten und bewegen uns voran. Wir möchten sicherstellen, dass die E-Mail eine bestimmte Länge hat und wir möchten sicherstellen, dass das Passwort bestimmte Likes ist. Jetzt werden wir nicht in die Validierung kommen. Äh, wirklich? Denn natürlich, geht es nicht zu viel um Validierung. Aber, weißt du, lass uns nur ein bisschen machen. Nur eine winzige Menge. Also hier drin, lasst uns div tun, dass UK Marge dot Js Fehler? Ähm, ja, sicher. Wenn ich und zwei UK UK Alarm UK Gefahr Js Luft Hit Tab Test Freshman Seite und ich habe eine kleine Alarmbox da drin. Ein kleiner Fehler. Also, was ich jetzt tun möchte, ist Stil Anzeige keine. Stellen Sie sicher, dass das nie auftaucht. Seite aktualisieren. Sieh dir das an. Es geht weg. Ehrfürchtig. Ehrfürchtig. Das brauche ich nicht mehr. Und wir werden dies als unseren Fehler auswählen. Jetzt können wir wieder in unser JavaScript gehen. Ihre Variable namens Fehler ist gleich unserem Fehler, aber irgendwie durch das gesamte D. O. M. Weil es mehr als eine Klasse oder mehr als ein Element mit einer Klasse von Js air Onley geben könnte schauen Sie in der Form, weil die Formulare nur eine haben oder sollte nur eine haben sowieso. Und jetzt können wir sagen, wenn Daten Punkt E-Mail Punktlänge weniger als das, was ist die kürzeste mögliche E-Mail-Adresse? A an einem Punkt c A. Sechs Zeichen, richtig? Also, wenn es weniger als sechs Zeichen ist, geben Sie false zurück und tun Fehler Punkttext. Bitte geben Sie eine gültige E-Mail-Adresse mit Dot Show ein. Und lassen Sie uns das hier auf mehrere Zeilen setzen, denn es wird es nur sauberer für Leute machen , die lesen. Also, jetzt wählen wir Fehler aus, der ist, genau das Air Dot Jazz Air zu tun. Wo sind wir? Genau da? Es wird das auswählen. Und dann werden wir sagen, Oh, nun, nun, wenn die E-Mail weniger als sechs Zeichen ist, nun, nun, zeigen Sie die Luft. Gehen wir weiter und geben dem eine Chance. Ah, ein Eigentlich, nein, das wird nicht funktionieren, weil ich HTML fünf Anschuldigungen in der Küche brauche. Also, als Beispiel, lassen Sie uns tun, wenn es weniger als 16 ist, also testen Sie den Test aus. Komm, sieh mal. Geben Sie eine gültige E-Mail-Adresse ein. Warum ist das? Weil dies nicht 16 Zeichen lang ist. Jetzt stellen Sie sicher, dass Sie so etwas tun wollen. Die Rückkehr fällt. Es funktioniert auf die gleiche Weise. Ist, dass kein Code unterhalb der Rückgabe tatsächlich ausgeführt wird, und es stoppt Ihren Code daran, etwas anderes zu tun, was ich sonst getan habe. Wenn Passwort-Punktlänge jetzt weniger als acht ist, sollte es technisch nicht wissen. Hier. Das ist ein guter pädagogischer pädagogischer Moment für alle. Wir sollten keine Passwörter verwenden. Wir sollten vergangene Sätze verwenden. Passwörter sind leicht zu knacken, wann immer Sie haben, wie ein Fünf-Zeichen-Passwort. Weißt du, wenn ich mein Passwort mag war, weißt du, Caleb, 111 ist so einfach einzubrechen. Wenn mein Passwort nur Passwort war, raten Sie was? Das ist der häufigste Pastor der Welt. Es ist auch das häufigste Passwort, das jemals in gebrochen ist, aber Computer, was sie tun, was eine Brute-Force ist, wird im Grunde versuchen Passwort und dann gesendet, um Passwort-Gruppen auszuprobieren . Das tue ich nicht. Ich wollte Capital t ah, und dann ist es nicht versuchen Passwort, und dann wird es versuchen Passwort. Und es wird einfach so weitergehen und weiter und weiter, und dann wird es irgendwann ins Schlepptau kommen. Wissen Sie das und das. Und das ist dann das. Dann das und so weiter und so weiter, bis es eine Übereinstimmung findet. Aber raten Sie, was Wenn Ihr Passwort wie super, super, super super lang ist super, , wissen Sie, auch wenn es einfach ist und keine Sonderzeichen enthält, rate was? Es ist super sicher. Rate mal, wie lange ein Computer braucht, um jeden Buchstaben bis hier zu erraten, und dann jede Variation hier und in jeder Variation hier, als jede Variation hier in jeder Variation bis hier, wird es wahrscheinlich nie brechen. Dieses Passwort benötigt keine Nummern. Es braucht keine Sonderzeichen, wenn Sie sich bei einer Bank oder PayPal anmelden und es ist wie, Oh , Sie brauchen , Ah, Ihr Passwort muss mindestens acht Zeichen sein und Sie brauchen, ah Zahlen und, wie ein Großbuchstaben und all das andere Zeug Jetzt brauchst du nicht nur ein super langes Passwort. Deshalb sollten wir vergangene Sätze verwenden. Jetzt werde ich das Wort Passwort verwenden, weil das ist, was jeder vertraut ist. Du weißt, ob sie es lange machen oder nicht. Das liegt jetzt an dir. Wir könnten sagen, wenn Ihr Passwort weniger als acht Zeichen ist oder von uns sagen könnte, wenn Ihr Passwort weniger als 18 Zeichen 28 Zeichen nicht zu lange machen, weil die Menschen davor Angst haben. Es ist zu viel Veränderung. Aber wenn du sagtest, dass du weißt, dass dein Passwort mindestens 11 Zeichen lang sein muss, wird das besser. Das ist deutlich besser als acht Zeichen oder sechs Zeichen an einigen Stellen verwenden. Das werden wir also tun. Wenn das Passwort weniger als acht Zeichen, wählen wir Fehlerpunkttext. Bitte geben Sie eine Passphrase ein, die mindestens 11 Zeichen lang ist. Long zeigt und gibt false zurück. Lassen Sie uns das einen Shot-Test bei test dot com geben, und mein früherer Einfrieren könnte wirklich alles sein. Oh, sieh mal, Passwort ist nicht definiert. Das liegt daran, dass es nicht Passwort sein Datenpunktpasswort ist. Nun, das ist ein Objekt aus einem Grund, und wir werden das in ein bisschen frisch bekommen. Versuchen wir das noch einmal. Bescheinigt Test dot com, Put Darm. Passwort. Bitte geben Sie Passwörter ein, die mindestens 11 Zeichen lang sind. Ehrfürchtig. Also jetzt haben wir einige grundlegende Validierung. Nun, vorausgesetzt, dass unser Code so weit kommt, können wir, uh, es ist eigentlich, dass ich davon ausgehen, dass der Code dieses ferne Wochenende bekommt. Starten Sie den Ajax-Prozess. Jetzt. Die Leute wollen in der Regel sehen, dass eine Fehlermeldung verschwindet, sobald etwas mit der Arbeit beginnt . Also, was wir tun müssen, ist statt zeigen, äh, tippen Sie hide or hide statt hoid. Und das ist der Aktualisierungstest beim Test Taco, kommen Test Test Test Test, Test Test. Ich werde ein paar Testbriefe einlegen, die es schön machen. Cool. Nichts ist passiert, ist das, was wir wollen. Was passiert, wenn ich einen kurzen Fehler mache? Was, wenn ich es tue? Ein langer geht weg. Das heißt, die Dinge beginnen zu funktionieren. Jetzt haben wir das alles in der nächsten Lektion eingerichtet. Ich werde tatsächlich den Ajax-Code hinzufügen und wir gehen zu Ajax unsere erste Seite. 12. Unser erster Ajax: Hallo, schon wieder. Bis zu diesem Punkt habe ich im Grunde nur meinen Code begangen, um immer und immer wieder zu kommen. Ich habe Ihnen die letzten Videos nicht gezeigt, und das ist wahrscheinlich in Ordnung. Ich zeige es dir noch ein paar Mal. Ah, aber ich glaube nicht, dass wir uns immer und immer wieder verpflichten müssen. Außerdem können Sie den gesamten Verlauf auf get Hub selbst sehen. Nun, in dieser Lektion, möchte ich tatsächlich etwas Ajax hinzufügen. Also, wenn sich jemand registriert hat, haben wir dieses tolle kleine Ereignis, das gerade darauf geachtet hat, dass ein Formular eingereicht wird. Das Js-Register bilden grundlegende Jazz-Validierung. jetzt nicht nur auf JavaScript-Validierung. Es ist schön für das Frontend, aber es könnte leicht gefälscht werden. Und jetzt, wenn wir etwas Ajax hinzufügen wollten, schreiben wir nur folgendes ein paar Kopien und Einfügen, weil mir zuzusehen, wie ich ein paar Sachen tippe , ist nur Ja, es ist langweilig. Vielleicht sehen Sie in der Zukunft ein bisschen mehr davon. Wenn du mich jemals kopierst und bezahlst, dann ist es wahrscheinlich, weil ich es nicht eingegeben habe. Ich habe gerade das Video bearbeitet, damit du es nicht so sehen musst wie ein Kopf nach oben. Du brauchst nicht 2 Stunden zusehen, wie ich tippe. Das ist langweilig. Ordnung, also kopiere ich das einfach da drin, wir haben Jake müde Ajax. Der Typ ist gleich post. Wir wollten schon immer Posterinformationen. Wenn wir dies zu erhalten, bedeutet dies, dass die Informationen in der URL zugänglich sind. Das ist nicht warten. Wir wollen, dass wir es versteckt haben. Obwohl es nicht narrensicher ist, ist es wieder ein bisschen sicherer. Diese eine kleine zusätzliche Sicherheitsschicht immer hilfreich. Der Euro ist nicht festgelegt. Die Daten werden auf unser Datenobjekt gesetzt. Wir nennen diese Daten in Ordnung O B J für Objekt zu tun. Denken Sie daran, all Ihre verschiedenen Orte zu ändern. Ah, wenn wir fertig sind, wird unsere Website zurückkehren und was auch immer Daten sind und Daten werden auch ein Objekt sein weil Datentyp Jason und machen dies synchron Was passiert, wenn dies fehlschlägt? Das ist fehlgeschlagen. Was passiert, wenn dies fehlschlägt oder erfolgreich ist? Tu immer, was hier drin ist. Und so wird unsere Form immer falsch zurückgeben. Es spielt keine Rolle. Aber was wichtig ist, ist jetzt dieser kleine Abschnitt hier drin und was wir wollen, ist, dass wir im Grunde die Ajax-Funktion ausgeführt haben. Die fertige Funktion ist jetzt wichtig. Bevor wir irgendetwas tun können, müssen wir sagen, wo wir sollen. Ajax die Seite. Also wieder, beginnen Sie mit Schrägstrich, der in die Wurzel Ihrer Seite geht und lassen Sie uns Ajax Schrägstrich registrieren Punkt PHP und alles, was ich tun werde, ist Consul. Protokollieren Sie keine Daten, um, Council dot log e Wenn es einen Fehler gibt, um, um, und Konsolenprotokoll immer nur, dass wir sehen können, dass es jetzt in unserer Route funktioniert, gehen wir neuen Ordner Ajax erstellen einen anderen neuen Ordner, eine andere Datei, und wir werden das auf PHP registriert nennen. Und im Grunde nehmen wir das, was wir aus unserer Login-Datei Kehle hier genommen haben, weil wir immer wollen, dass diese Konfiguration hinzugefügt wird. Aber wenn wir von unserem aktuellen Verzeichnis in das Verzeichnis , dann wird es von gehen, wenn wir oben lesen. Hier geht PHP Logging Kurs Schrägstrich Ajax, der einen Schrägstrich mit Schrägstrich Konfiguration bis riesig p gehen wird, die nicht existiert. Also müssen wir diesen papa-Ordner genau so verschieben und alle Daten, die wir zurückgeben sollten im Jason-Format auf PHP sein, ermöglichen es uns, das wirklich einfach zu machen. Lasst uns das tun. Honore ist gleich Test Test drei zu testen. Und, äh, lasst uns Echo Jason und Code-Array machen. Jason. Hübscher Druck. Und das wird uns sehen, Sie mit dieser Seite sieht tatsächlich aus wie. Also, wenn wir in Ajax weniger Register gehen, wir tatsächlich 500 Fehler. Wahrscheinlich deswegen. Da gehen wir, und es gibt uns nur regelmäßige Informationen zurück. Was eigentlich sucht, ist Jason-Format. Also, wenn wir diesen netten kleinen Header hier hinzufügen, der besagt , im Grunde, , im Grunde, anstatt Klartext zurückgeben Jason, wir haben einen Content-Typ-Anwendung Schrägstrich Jason, Wir werden das an der Spitze werfen. Wenn wir eigentlich sehen wollten, was unter der Konfiguration. Stellen Sie sicher, dass Sie zuerst geladen und immer wieder Jason-Format konfiguriert. Und da gehen wir jetzt, wo Seiten tatsächlich anders laden. Wenn wir Quelle wären, sieht es auch anders aus. Aber was, wenn wir hier ein anderes Array wie ein Array in Andre hinzufügen? Richtig, also haben wir in der Tat, lassen Sie uns tatsächlich ein mehrdimensionales Array machen. Name ist gleich Caleb, nicht gleich Teoh Fett Pfeil eso Schlüsselwert Paar. Und jetzt haben wir gut, harte Klammern bedeutet Array. Wir haben Wert, Wert und wir haben ein Objekt. Wenn wir einen anderen da drin hatten, ist der Nachname gleich groß mager, der auch in das Objekt geht. Und so Jason, hübscher Druck lässt das für uns schön aussehen. Ansonsten sieht es so aus, dass das, was im Grunde das gleiche ist, das liest und das ist hässlich. , Ich ziehe es immer vor,hübsche Abdrücke zurückzugeben. Alles, was es tut, ist, im Grunde, fügen Sie neue Zeilen und einige Registerkarten hinzu. Uh, ich sehe das Problem damit nicht, besonders wenn Sie versuchen, etwas zu debuggen. Jetzt müssen wir sicherstellen, dass diese Seite Ajax ist, weil ich auf diese Seite ohne Ajax zugreifen kann . Als ob ich gerade zum lokalen Schrägstrich Jack Slash Register Punkt PHP gegangen bin und raten Sie was? Bumm! Da ist es. Es zeigt alles, was ich sehen muss. Das will ich nicht. Stattdessen tun wir das. Wenn die Serveranforderungsmethode gleich posten ist, andernfalls sterben. Ah, töten Sie das Skript, leiten Sie den Benutzer um, tun Sie etwas, was auch immer. Also lassen Sie uns es Ihnen tatsächlich zeigen. Ich werde die Gap-Methode verwenden, was bedeutet, dass gerade Teoh Ajax Schrägstrich einen PHP registriert hat, und ich sehe nichts drin. Weil ich ein kleines Sternchen drinnen hatte. Jetzt ist es immer noch zurück. Jason. Sie können feststellen, weil die Schriftart ein wenig anders. Also ist es tatsächlich, das hier reinzuziehen. Andernfalls immer nur das reguläre Format zurückgegeben. Lassen Sie uns das in unsere Postbereiche verschieben. Nun, jetzt gibt es andere Möglichkeiten zu validieren oder zu überprüfen, dass Sie tatsächlich über Ajax auf eine Seite zugreifen. Eine der Möglichkeiten ist durch die Post-Methode. Ah, aber ich meine, wenn du ein normales Formular einreichst, wird es auch hier arbeiten. Welche Art von Zukunft beweist in ein bisschen. Denn wenn jemand versucht hat, ein Formular einzureichen Ah, und der Himmel bewahre, dann benutzten sie kein JavaScript. Nun, was wird passieren? Nun, wenn sie es in diesem Jahr eingereicht haben, waren Sie aus, um Ajax Schrägstrich Register Punkt PHP. Die Post-Methode würde immer noch perfekt funktionieren. Aber wenn sie Javascript haben, raten Sie, was sie die netten kleinen Funktionen bekommen, die damit einhergehen. Jetzt wissen wir, dass wir gar nichts tun müssen. , Ein paar Dinge,über die ich hier reden möchte. Der 1. Jason-Code. Okay, also ist es immer auf der Suche nach einem Rennen. Stellen Sie also sicher, dass Array immer existiert. Es muss nicht unbedingt angeklagt werden. Nur wir könnten es sogar zurückkehren oder zurückkehren anstatt Rückkehr nennen. Ah, der Ausgang. Weißt du, Python Entwickler, sie beschweren sich. Javid Java-Entwickler sind wie PHP. Es ist so schlimm, weil , weißt du, du könntest jederzeit aussteigen. Aber ehrlich gesagt, das ist eine gute Sache, denn warum muss es danach etwas anderes ausführen? Es ist wie eine Funktion, wenn eine Funktion dieses kleine Rückgabe-Schlüsselwort hat. Nichts darunter. Innerhalb der Funktion wird gerendert. Es wird nicht ausgeführt. Dasselbe mit dem Ausgang. Es hat keinen Sinn. Obwohl es nur drei Zeilen gibt, gibt es keinen Sinn zu laufen. Der Rest davon. Nur boom, verschwinde. Du bist fertig, das zu tun, was du brauchst. Also, jetzt müssen wir den Benutzer registrieren, aber wir brauchen ein paar verschiedene Funktionen. Zuerst müssen wir sicherstellen, dass der Benutzer nicht existiert. Wir müssen sicherstellen, dass der Benutzer hinzugefügt werden kann, uh, und tatsächlich hinzugefügt wird, und dann raus. Wir möchten die richtigen Informationen zurück zu JavaScript zurückgeben, um uns jetzt mit PHP umzuleiten. Wir können einen Header verwenden, um Leute umzuleiten. Alles, was wir tun müssen, ist Typ, Header, Ort. Uh, h denke, Google Dot com. Richtig? Und das wird jemanden an Google umleiten, nicht das, was wir wollen. Nicht, dass das sowieso funktionieren wird, denn raten Sie was? Der Benutzer trifft technisch nicht auf Ihre Ajax-Seite. Also Umleitung wird nicht funktionieren. Ich meine, es wird die Seite von dem, was auch immer Paige du gehst, umleiten, damit wir sagen könnten, anstatt von welcher Seite der Lauf jetzt zu gehen, lasst uns das eigentlich ein wenig visuell machen. Also jemand Ajax ist diese Seite. Sie füllten das Formular Click-Center Informationen in JavaScript gesammelt geht auf unsere Ajax Schrägstrich Registerseite sind PHP-Datei. Aber wenn es eine Umleitung gab, könnten wir umgeleitet werden, um in Punkt einzuloggen PHP wird versuchen, das auszuführen und sagte, aber es könnte nicht Ihre Post-Header halten. Ein besserer Weg ist also, alles zu tun, was Sie tun müssen, und einen Umleitungswert zurückzugeben oder ein Teil eines Objekts zurück zu Javascript wird zurückkehren. Wir könnten sagen, Rückgabeumleitung ist gleich, und dann, uh, lassen Sie einfach gehen Index PHP. Das war eine Weiterleitung. Und um Ihnen zu zeigen, was ich meine, wenn die Datenpunktumleitung nicht undefiniert ist, was bedeutet, dass sie definiert ist, existiert sie. Wir könnten sagen, Fensterpunktposition ist gleich Datenpunktumleitung. Nun, was passiert, wenn wir diesen Test bei Test dot com Test S S s EZ Test ausführen. Denken Sie daran, 11 Zeichen oder mehr. Und schauen Sie sich diesen Index Punkt PHP an. Das war eine Weiterleitung. Es ist nicht in ihrem JavaScript. Es ist nicht auf einer Registerseite. Nein, das ist alles in unserem PHP. Also jetzt haben wir unseren Server, der Javascript sagt, wohin die Person verschoben werden soll, wenn sie fertig sind. Das wollen wir eigentlich nicht. Wir wollen eine zukünftige Seite, die wir nicht erstellt haben, genannt Dashboard und Dashboard wird Menschen zwingen, angemeldet zu sein. Das wird in Zukunft kommen. Äh, nicht etwas, worüber wir uns Sorgen machen müssen. Wir müssen zuerst einen Benutzer erstellen. Und das ist alles, was es für Ajax gibt. Nun, als ein weiteres Beispiel, lassen Sie uns zurückkehren. Name ist gleich Caleb. Colleen. Nichts Schickes. Aber denken Sie daran, dies ist ein Array. Wir wissen, dass dies kein Array ist. Es wird im Grunde genommen genommen, dass Obre Jason, es codieren und es zurück zu JavaScript werfen. Jetzt können wir sehen, wie das aussieht und wir können darauf zugreifen. Wir können sagen, dass Daten alarmieren, dieser Name zurück auf Ihre Seite und ich werde den Test Dot com testen. ist mir egal, welcher Typ im Moment war. Und wenn ich auf Registrieren klicke, gehen wir. Da ist mein Name und wir können eigentlich nein, wir hätten ihn sehen können. Es gab eine Umleitung ihrer weil zu effizient. Da ist mein Name. Er taucht immer auf. Immer, immer läuft. Dort ist nichts passiert, aber es gab einen Konsul, der für eine Daten eingeloggt ist, was er zurückgegeben hat. Ratet mal was? Es wird uns zurück zum Armaturenbrett leiten, und es wird unseren Namen als Caleb setzen. Und wir sahen, dass, als wir das Formular eingereicht, es sagte Alarm. Caleb Aufruf, das war wieder von PHP, das war nicht von Javascript. Das war von PHP. Jetzt müssen wir nur noch unsere Datenbank abfragen. Gibt es diesen Benutzer? Wissen Sie, ob sie nicht existieren, erstellen Sie eine. Wenn der Benutzer existiert, versuchen Sie vielleicht, sie in Simple als das zu protokollieren Also im nächsten letzten, was wir tun werden, ist, dass wir einen neuen Benutzer erstellen. Aber bevor wir weitergehen, bekommen Status. Holen Sie sich Anzeige uh, bekommen Sie nur erhalten Status wird un einschreiben oder entwirren. Das Ajax-Verzeichnis wird uns zeigen, was da drin ist. Holen Sie sich Commit hinzugefügt Erste Ajax-Seite erhalten Push-Ursprung Master. Da ist es einfach so. Also in der nächsten Lektion, lassen Sie uns fortfahren und tatsächlich einen Benutzer erstellen. 13. Benutzerregistrierung Teil 1: Alles klar, was wir jetzt tun müssen, ist eigentlich nach einem Benutzer zu suchen, weil wir keine doppelten E-Mails und in derselben Tabelle haben können . Weil, denken Sie daran, ich gehe zurück und klicke auf Strukturindizes. E-Mail muss eindeutig sein. Sie können nie mehr als eine der gleichen E-Mail sein. Also mit dem besagten, Lasst uns voran und werfen einen Blick auf unseren Ajax Register-Code, damit wir wissen, dass wir Zugriff auf Khan haben , weil Khan in der Konfiguration als Art ist und die Konfiguration hier geladen ist, was bedeutet, dass wir Zugriff auf diese Variable haben. Nun, das ist in unserem Rahmen. Wenn Sie an meine SQL gewöhnt sind, wird das etwas anders aussehen, wenn Sie nur an meine SQL gewöhnt sind . Während hier ist ein wenig Leckerbissen für Sie vielleicht fragen Sie wurde veraltet ID für eine Weile. Es hat eine Menge Sicherheitslücken. Verwenden Sie PDO, das ist meine SQL I, die die Funktion basiert, oder PDO, die eine Klasse basiert. Ich benutze PDO, weil es besser ist. Es ist einfacher zu lesen. Es ist nur die zukünftige Klassenbasis, wo es ist, und wir werden Sie langsam dorthin bringen, also müssen wir sicherstellen, dass dieser Benutzer nicht existiert. Was? Was haben wir hier zu tun? Wir müssen die Datenbank abfragen. Also lasst uns eintippen. Gut. Benutzer ist gleich con Vorbereiten Benutzer auswählen I d. Von Benutzern Wo Benutzer i d gleich Benutzer ist. Ich schränke eins ein. Jetzt lass mich das sehr schnell erklären. Wir wählen nur den Benutzer I D Row aus, was bedeutet, dass wir Gerechtigkeit nachlassen. Wir werden das später in einer Sitzung speichern, und so wird das sein, wie die Anwendung weiß, dass Sie angemeldet sind oder nicht. Wir werden in der Tabelle des Benutzers rechts Benutzer Tabelle genau dort zu suchen. werde nach dem Benutzer suchen i d. Wo die Anwenderidee gleich kalt und verwenden ist. Bereit? Das ist komisch. Aber im Wesentlichen ist das nur auf der Suche, wo die Benutzerideen dem Benutzer i D. entsprechen und das ist eigentlich völlig falsch. Das sollte es sein. E-Mail ist gleich E-Mail, also suchen wir nach dem, was auch immer die E-Mail ist, und wir werden ein Limit von eins tun. Das heißt, wenn wir 500 Millionen Benutzer haben und die E-Mail-Adresse finden, die wir suchen. Ah, sagen wir, in der 1. 10 Rose sieht es nicht mehr aus. Es tut nicht den Rest von dem, was es dio soll. Es ist genau das gleiche von einer Funktion zurückkehren oder diesen Exodus bald verwenden, ist es fertig. Das macht Ihren Service noch schneller. Deshalb verwenden wir jetzt Limit eins. Das Ziel hier ist idealerweise, es geht durch jede Reihe und es existiert nicht, also hoffentlich geht es durch jede Reihe. Wenn wir 500 Millionen Nutzer hätten, tun wir es nicht. Diese Verwendung wird also nicht existieren. Aber lasst uns etwas kaufen. Also diese kleine Kälte in, dass Sie dort Doppelpunkt E-Mail sehen, waren verbindlich. Das ist, wo wir Ah bekommen, feine Benutzer ist ein Objekt und wir verwenden die Methode durch Param-Parameter und wir tun E-Mail PDO param Stärke Gehen Sie vor, um dieses Band zu führen und auszuführen. Und was das tun wird, ist, dass es diesen Wert mit diesem Wert binden wird. Caleb, warum schreibe ich nicht einfach eine E-Mail? Caleb, Nun, das Schöne an PDO ist, dass Sie Ihre Variablen tatsächlich außerhalb Ihrer SQL-Anweisung ziehen können. Das bedeutet, dass die Wahrscheinlichkeit einer SQL-Injection geringer ist und PHP Ihre Variable so handhaben kann, wie sie benötigt wird . Also, jetzt haben Sie nicht einige böswillige Benutzer kommen in der Annahme, dass es geben, dass ihre E-Mail Drop-Tabellenbenutzer ist. Ups, heruntergekommene Tabellenbenutzer und hier injiziert zu werden, wäre eher wie. Dort gehen wir etwas wie etwas, wo E-Mail gleich ist und im Wesentlichen, was dies sagen wird. Und dies ist eine schnelle Lektion über SQL-Injektion, wo E-Mail gleich ist. Es spielt keine Rolle. Sie hätten einfach einen dort und betrunkene Tabellenbenutzer Semikolon setzen können, sagt SQL. Nun, das ist das Ende der Aussage. Also führe nichts anderes aus, löse deine Benutzertabelle, da schlechte PDO versucht, etwas von diesem Zeug zu entfernen, versucht sicherzustellen, dass wir anstelle des Apostrophe Schrägapostrophe haben, auf die wir Zugriff hatten vorher durch meine SQL-echte Escape-Zeichenfolge und all diese anderen bösen benannten Funktionsmaterial. Aber dieses Mal haben wir PDO auf unserer Seite. Jetzt wollen wir PDO nicht vollständig vertrauen, und wir wollen PHP nicht vollständig vertrauen, und wir können auch nicht einfach E-Mail verwenden, weil E-Mail noch nicht existiert. In der Tat, was es eigentlich ist Post E-Mail. Nun, wie haben wir das bekommen? Die Post E-Mail stammt von der Post Methode, die die Ajax Post Methode ist. Und die E-Mail stammt von diesem Datenobjekt. Nun, es kommt von dort. Jetzt haben wir Ajax mit ihrem Server gesprochen. Wir können jetzt wirklich damit arbeiten. Sie können nicht einfach eine E-Mail an E-Mail Punkt eingeben, die hier üblich ist. Dies muss eigentlich eine Variable sein. Muss auf etwas verweisen, das Teil der PDO Magie ist. Aber auch hier wollen wir nicht nur PHP vertrauen. Warum sollten wir? Warum sollten wir irgendetwas vertrauen, was wir nicht erschaffen haben? Und selbst wenn wir es erschaffen hätten, sollten wir ihm immer noch nicht trauen. Als Entwickler müssen Sie erkennen, dass Sie klug sind. Du bist kluger Mensch. Aber es gibt wahrscheinlich klügere, böswilligere Menschen da draußen als Sie, und sie werden einen Weg finden, das zu vermasseln und Ihre Anwendung zu zerstören. Also, wie kommen wir das herum? Nun, wir können meine SQL I echte Escape-Zeichenfolge verwenden oder wenn ich gehe über zu meinem get home Konten habe ich gehen um dot com Schrägstrich Caleb Antalya Schrägstrich PHP Benutzerdatenfilter und Filter PHP. Und ich werde die ganze Klasse nehmen und ich werde eine neue erstellen, wo wir eine neue Datei und ich werde es ausfiltern nennen. PHP. Wirf das da rein und ich gehe auch Teoh, kopiere das da drin, weil wir keine Leute versuchen, versehentlich darauf zuzugreifen. Und was? Diese kleine Funktion macht diese kleine Klassenfilterzeichenfolge Und wenn Sie E-Mail haben, zum Beispiel, wird die Zeichenfolge und die Zeichenfolge filtern, die Sie trennen möchten. Also eigentlich ist das unnötig, denn das ist nur ah, im Grunde erlauben wir uns dabei zu sein. Es ist von einem alten Projektbetrag. Wir filtern die Variable, wir werden die Saite bereinigen und wir werden uns ausziehen. Ah, niedrige Priorität. Grundsätzlich, wenn ein sie männlich nicht erlaubt ist, einen Kinderadler zu falscher HMO's Adler zu false, dann fügen Sie auch diesen und dort sonst nur sanitisierte volle Sonderzeichen hinzu, die HTML-Codierung erlaubt. Also im Wesentlichen, was das tut, ist PHP geht. Es wird die Variable filtern. Es geht Teoh, tun, was es tun kann, um sicherzustellen, dass diese Variable tatsächlich eine Variable ist und dass wir Filterstring und in unserer Konfiguration gehen könnten . Wir müssen das da drin haben. Jetzt. E-Mail ist vermutlich sicher. Wir wollen auch sicherstellen, dass E-Mail, physische Zeichenfolge in Kleinbuchstaben e Mails. Es ist immer Kleinbuchstaben. Oder anstatt das hier drin zu haben, machen wir eine E-Mail. Wir könnten niedriger machen und lassen Sie uns mein SQL damit umgehen. Und lasst uns meine Schule. Lassen Sie uns meine SQL damit umgehen. PHP muss das nicht tun. Meine Schule ist superschnelle grundlegende Dinge wie diese. Wenn wir eingeben suchen Benutzer Rollenanzahl ist gleich einem Benutzer existiert sonst. Der Benutzer ist nicht vorhanden. Haben sie jetzt Google, richtig? Was passiert also, wenn der Benutzer existiert? Nun, wir können auch überprüfen, ob sie sich anmelden können. Aber anstatt das jetzt zu tun, was wir sagen werden, ist Rückgabefehler gleich, dass Sie bereits ein Konto haben, und gehen wir zurück zu unserem JavaScript und hier drin, weil dieser 200 http-Status ist sehr wichtig. A 200 bedeutet, dass alles ein OK ist, und wenn wir sonst haben, wenn Datenpunktfehler nicht gleich undefiniert ist, bedeutet das, dass es einen Fehler gibt und wir sagen, dass jemals Punkttext gleich ist, was auch immer Datenpunktfehler ist und es zeigen und Lassen Sie uns das auf mehrere Zeilen für die Lesbarkeit setzen und da gehen wir. Also, wenn jemand kein Konto hat, wird das schon auftauchen. Was passiert nun, wenn der Benutzer nicht existiert? Nun, wir müssen ihnen ein Konto machen. So machen wir verschiedene Aussagen, dass der Auswahl, wir einfügen. Also, anstatt ich war im Begriff, Kampf zu tippen, was ich zu tippen wollte, war am Benutzer gleich con vorbereiten, fügen Sie in Benutzer ein. Und was wollen wir einfügen? Nun, wir wollen das Sie wissen und das Passwort einfügen, also werde ich das einfach einrichten, und dann machen wir einen Schritt zurück und erstellen das Passwort selbst. So gehen wir einfügen in Benutzer E-Mail, Passwort, diese Luft, die Dies sind die Spalten. Also haben wir eine E-Mail. Ein Passant, sie sehen aus wie Rose. Das sind eigentlich Säulen. Ah, und dann Werte sind E-Mail, Passwort und Benutzer. Wir binden unsere erste Parameter-E-Mail Tiuna PDO Param String. Wir wissen, dass das übrigens erlaubt ist, ist diese Param-Zeichenfolge, weil PDO weiß, dass PDO weiß, dass dies eine Zeichenfolge sein wird, während Sie ihm sagen, dass tatsächlich eine Zeichenfolge sein wird. Wenn es nur eine Zahl war, wie wenn Sie einen Benutzer nach seinem I d ah anstatt, wissen Sie, tun Sie dies anstelle von E-Mail, könnte es sein, wie Benutzer I D und Benutzer, den ich d technisch eine Zeichenfolge sein könnte, weil meine Schule technisch speichert alles Strings, die wir PDO pyramid int eingeben könnten oder wenn es ein kein Wert war , wäre es kein eso. Wir haben dort ein paar verschiedene Möglichkeiten. Wormit wir gerade arbeiten, sind nur die Strings und kopieren Sie diesen Passwort-Boom. Kopieren Sie das. Führen Sie Truppen ausführen, löschen Sie alles andere. 14. Benutzerregistrierung Teil 2: Dies wird eine Variable namens Passwort hinzufügen, die nicht existiert. Wie schaffen wir das? Nun, wir müssen tatsächlich einen Hash erstellen. Also, was wir tun, ist, dass wir eine Variable namens Passwort erstellen, und wir müssen nicht diese Vergangenheit oder irgendetwas zu verschlüsseln, weil nicht verschlüsselt sind. Aber ich denke, Filter, wir müssen nichts darauf filtern, weil es sowieso verschlüsselt wird, so dass es buchstäblich abgelegt werden könnte Tabellenbenutzer. Es könnte buchstäblich die Welt beenden. Aber wir werden diese Saite in etwas verwandeln, das völlig unlesbar ist. Und wir tun das mit Passwort-Hash. nun Vertrauen Sie PHPnunmit diesem nicht harten Passwort, Hash, Hash, Post-Passwort und Passwort-Standard. Also, was das tun wird, ist, dass es Ihr Passwort braucht, richtig? Sie können pH-Wert für die Verwendung als vertrauen und wird es in einen Hash verwandeln. Nun, wie sieht das aus? Gehen wir zurück, um sich anzumelden. Werfen wir hier etwas rein und gehen wir. Äh, ja. Pässe gleich, äh, ich weiß nicht. Hallo. Mein Name ist Caleb Echo. Passieren Sie dabei. Wir machen Veränderungen. Ich tue das nur, um dir zu zeigen, wie das aussieht. Eco Passwort, das ist unsere gehashte One Exit Refresher Seite. Dies ist das Kennwort, das als Zeichenfolge gespeichert ist. Dies ist das Passwort, das von PHP gespeichert wird. Es ist Es hat sein Hashing dort, das für jeden Benutzer einzigartig ist. Es hat das eigentliche Passwort, irgendwie. Da drin. Es hat seine eigenen Verifizierungsmethoden. Es ist solide. Nein, ich muss dir sagen, niemals, nie, nie , , jemals , jemals, jemals, jemals, jemals ein Passwort im Klartext zu speichern. Sie möchten, dass Ihre Kreditkarten gestohlen werden, im Klartext gespeichert werden. Sie wollen Ihr Passwort. Auf dein ganzes Leben hier ist ein ganzes Online-Leben ruiniert. Speichern Sie Ihr Passwort im Klartext. Sie wollen das Leben anderer Menschen ruinieren, ihre Passwörter im Klartext speichern, worauf wahrscheinlich eine sehr große Klage folgen würde. Seien Sie also sehr vorsichtig, dass Sie nie, jemals Passwörter oder sensible Informationen im Klartext speichern. Ende der Geschichte, kein Wenn, Unds oder Aber. Verschlüsseln Sie es einfach. Und wir sprechen Einweg-Verschlüsselung nicht in der Lage, unverschlüsseltes Passwort. Also haben wir einen Passwort-Hash. Wir können dieses Passwort hier verwenden. Awesome! Ehrfürchtig. Ehrfürchtig. Nun, wenn wir den Benutzer wollen, wenn wir den Benutzer wollen, dann könnten wir in der Abfrage gehen. wenn wir den Benutzer wollen, dann könnten wir in der Abfrage gehen. Wir erhalten im Grunde einen ausgewählten Benutzer i d von Benutzer, wo E-Mail gleich ist. Eigentlich, was ich hier wollte, war, dass ich völlig vergessen habe, dass tiefer. Ah, aber wir könnten Benutzer I d von Benutzern auswählen. Wo E-Mails Sie e-Mail-Limit ein zu senken. könnten wir noch mal machen. Oder wir könnten einfach sagen, Benutzer i d ist gleich con last insert i d Was wäre, was auch immer das sein wird. Jetzt wissen wir, dass es eins sein wird, aber es könnte 255.401 für alles sein, was wir wissen. Nun, wenn wir den Benutzer signieren möchten, in dem wir Sitzungsbenutzer erstellen, ich d ist gleich dem Benutzer i d und was ich hier tun werde, ist dies Casting genannt, oder? Dies wird wahrscheinlich als Ganzzahl zurückkommen. Aber wenn wir den Benutzer I d. gleich von hier aus auswählen , wäre dies eine Zeichenfolge. Jetzt können wir etwas später darauf eingehen. Ich möchte nur sicherstellen, dass das, was ich an JavaScript zurückschicke, genau das ist, was Javascript denkt, dass es sein sollte. Es sollte nicht denken, dass man eine Zeichenfolge ist, weil man nicht dasselbe ist, wie man nicht das Gleiche ist . Technisch gesehen ist das anders. Die sind anders. Dies ist, was meine SQL versucht zurückzugeben. Das ist es, was wir zurückkehren wollen. Das ist nur ein Schwimmer. Es hat also Dezimalstellen. Jetzt ist alles gut. Wir können umleiten. Die Umleitung ohne Rückgabe ist gleich Dashboard PHP. Und dann könnten wir sagen: „ Nun, Nun, äh, Nachricht ist gleich willkommen oder etwas, was ich habe, und wir werden das loswerden. Es ist nicht mehr nützlich. Und so oder so, wir sind zurückgekehrt. Als Gegenleistung wird etwas zurückgeben, das es existiert. Und es wird Jason Coda sein, um wieder zu JavaScript zurückzukehren. Wenn es einen Fehler gibt, wird auf Sendung angezeigt. Wenn es ein, wenn es funktioniert, wird uns eine Weiterleitung geben. Wir könnten sogar dio Rückkehr eingeloggt ist gleich wahr. Und wenn wir wollten, könnten wir sagen, dass einer falsch ist. Und dann in unserem JavaScript könnten wir sagen Ah, anstatt wenn Datenpunktfehler, sagen wir, wenn dot uh oops eingeloggt ist, ist gleich wahr. Wir könnten etwas anderes tun. werden wir nicht tun. Wir haben genug Informationen. Wir müssen nichts extra zurückschicken. Also lassen Sie uns voran und geben das eine Chance. Äh, eigentlich habe ich das gerade erst aus der letzten Lektion bemerkt. Nein, kein unschätzbarer Wert oder so. Test bei test dot com registrieren. Cast-Test bei seinem richtigen Test dreimal. Oh, sieh dir das an. Okay, also haben wir einen 500-Fehler. Also, wie habe ich das bemerkt? Nun, das aber hat nichts in meinem Konsul getan. Ich habe ein kleines X, und es sagt Post 500 internen Fehler. Ich klicke darauf. Und das bringt mich zu dem kleinen Netzwerkbereich, wo es heißt Register X h r. Das ist x http Anfrage oder xml http. Fordern Sie technisch an. Eso bei x h r bedeutet JavaScript bedeutet Ajax, was technisch JavaScript ist, geben Sie unser sorry klicken Sie auf die Antwort registrieren. Jetzt kommt nichts zurück. Warum ist das? Warum kommt nichts zurück? Nun, Wellenformdaten jetzt, was passiert, wenn wir es taten? Oder eins ist gleich eins, und wir wollen das nur debuggen. Oh, nun, sieh mal, nichts taucht auf. Also in unserer Konfiguration, lassen Sie uns voran und setzen Zulassungsgruppen erlauben Fehler und Pop, dass dort. Ein Reporting minus eins bedeutet alles, was ich und ich die Anzeige einstellen. Ares ist eingeschaltet. Mal sehen, was passiert. Sieh dir das an. Ich bekomme einen tatsächlichen Fehler. Jetzt. Ich glaube, das wäre auch Jason. Und das wollen wir nicht. Also lasst uns das mitkommen. Oh, unter fünf variablen E-Mails. Nun, ist das nicht interessant? Okay, nun, wir wissen, dass das undefiniert sein wird, weil, na ja, seine Post-Methode und wir derzeit keine Post verwenden, die wir derzeit Get verwenden. Aber hier haben wir das eigentliche Problem. Syntax, Fehler oder Zugriffsverletzung Yada, Yada, Yada, Yada. Ah, in der Nähe von E-Mail. Passwort. Und das ist, weil ich ein wenig zu aufgeregt wurde und ich die niedrigere in die falsche Stelle, die hätte sein sollen, war es wird eine Kleinschreibung E-Mail einfügen. Jetzt. Was wir tun können, ist, dass wir zurückkehren können. Können wir das noch einmal versuchen? Oh, eigentlich schon wieder. Ah, filtern Sie online. Diese Filterlinie acht. Das war ein Problem. Ist dieser Test Test Test Test Test Test ist das Passwort Undefined? Denn denken Sie daran, es hat versucht, meinen Namen zu alarmieren. Nun, es existiert nicht mehr. Kam zurück ist undefiniert. und sieh dir das an. So sind wir eingeloggt. Es sollte uns umleiten. Es macht seine Arbeit. Ich habe das JavaScript einfach nicht richtig eingestellt. Also, jetzt habe ich im Grunde nur auf die Weiterleitung kommentiert. Es wird umleiten. Befreien Sie sich von den Warnungen. Das ist unnötig. Befreien Sie sich von dem Konzertprotokoll unnötigen oder dass Rat augat notwendig. Aktualisieren Und eigentlich werde ich einen anderen Benutzer erstellen, weil sieh dir das an. Ich gehe in meinen Tisch und ich habe den Benutzer. Ich habe die E-Mail, die ich hinzugefügt habe, ich habe das Passwort, was auch immer das ist und die Zeit, die ich registriert habe, was auch immer die Serverzeit ist, was seltsamerweise ist wie tot. Normalerweise ist das ein paar Stunden frei, wenn es um die lokale Entwicklung geht, so dass wir wissen, dass das funktioniert. Lassen Sie uns den Test Dot com testen. Versuchen wir es noch mal. Verwenden wir genau die gleiche E-Mail-Adresse. Oh, Sie haben bereits ein Konto. Warum ist das? Nun, weil Test bei test dot com bereits existiert, also haben wir es. Wir haben eine Ajax-Anfrage, die eine Benutzerkraft erstellt. Jetzt müssen wir nur eine Login-Funktion erstellen, die im Grunde sagt: Oh, Oh, existiert diese E-Mail tatsächlich in unserer Datenbank? Wenn ja, okay, gehen Sie und ziehen Sie das Passwort. Und wenn dieses Passwort, der Hash mit dem neuen Hash übereinstimmt, den wir für die Passphrase erstellen werden, die sie verwendet um sich anzumelden, und wir werden PHP den Algorithmus machen lassen, weil wir als Menschen irgendwie Socket Algorithmen machen. Aber Computer sind genial darin, wenn diese Algorithmen übereinstimmen und es ist nicht das gleiche ist wie, Sie wissen, man ist gleich eins, das sind sehr, sehr verschieden. Aber wenn sie dort übereinstimmen, schicken wir den Benutzer ein. Und als wir diesen Benutzer angemeldet haben, können wir ihn wieder auf das Dashboard umleiten. Das war's also für diese Lektion. Und die nächste Lektion. Lassen Sie uns voran und erstellen Sie tatsächlich das Login 15. Benutzerlogin über Ajax Teil 1: Hallo. Hallo. Hallo. Bereits haben wir die Registrierung über Ajax erstellt. Das war ziemlich cool. Lassen Sie uns nun das eigentliche Login über Ajax erstellen. Auch ziemlich cool, aber es erfordert ein wenig etwas, das ein bisschen anders ist als das, was wir normalerweise tun. Ah, und anstatt einen Passwort-Hash zu verwenden, werden wir im Grunde das neue Passwort wiederverwenden und überprüfen, ob die to-Hashes und anstatt einen Passwort-Hash zu verwenden, werden wir im Grunde das neue Passwort wiederverwenden und überprüfen, ob dieto-Hashes übereinstimmen. Sie stimmen technisch nicht mit der Zeichenfolge überein. Aber die Daten, die die Algorithmen am Ende produzieren, sind tatsächlich die gleichen. Also lasst uns anfangen, indem wir uns in Dot PHP einloggen und macht das etwas Neues? Sicher nicht. Alles klar, klar, was müssen wir hier tun? Lassen Sie uns in unsere Log in Dot PHP-Datei gehen und wir haben Js Login. Nun, gehen wir zu unserer Hauptakte. Wir haben Js Logan nicht. Was wir also tun können, ist, dass wir kopieren und einfügen können, ist jetzt das bricht. Eine der grundlegenden Regeln der Programmierung ist, dass wir hier ziemlich viel Code kopieren und einfügen , und in aller Ehrlichkeit sollten wir nicht sein Wir sollten eine Funktion schreiben, die im Grunde all dies behandelt. Aber das ist natürlich kein Hausmeister . Also müssen wir diese Regel nicht befolgen. Äh, ich ich überlasse Ihnen das in Ihren zukünftigen Anwendungen, um diesen Mantel zu optimieren. Also, äh, durch das Kopieren von Tempo und wir müssen Zeile für Zeile gehen, sonst werden wir definitiv etwas Komisches über Jazz-Login verpassen. Macht das schon Sinn? Js Logging ist eine Klasse verhindern Standardfehler. Gibt es das? Nein, ich glaube nicht, dass es das tut. Also gehen wir. Äh, nun , was wir nicht registriert haben. Kopiere das einfach, buchstäblich. Kopieren Sie das. Oben. Das ist genau die gleiche Klasse und alles, was dort wird sich freuen und die E-Mail und das Passwort bilden . Wir haben eine E-Mail. Wir haben das Passwort für diejenigen, die mit diesen Typen übereinstimmen. Geben Sie E-Mail und Passwort richtig ein. Das ist perfekt. Wenn wir weniger als sechs E-Mails senden. Ja, ja. Immer. Wenn Ihr Passwort kleiner als 11 ist, gehen sie davon aus, dass. Okay, da gehen wir. Wir möchten, dass sich Änderungen einloggen. Und sieh dir das an. Wir haben hier fast nichts verändert. Ah, wir haben wirklich nichts geändert. Alles, was wir geändert haben, war das. Und das ist alles, was wir jetzt ändern werden. können wir dies sehr, sehr einfach optimieren . Und anstatt diesen ganzen Zuhörer zu haben, können wir im Grunde hier hoch gehen und wir können sagen, zu tun, wenn wir hier eine Wendung machen Eri Also habe ich mich gebildet auf hat Klasse Js loggen? Dann würden wir das Login machen. Ansonsten ist Ajax bei PHP registriert. Wenn dies also ein Protokoll ist, informieren, versuchen, sich einloggen, sonst versucht, sich anzumelden, das ist, was wir tun könnten. werden wir nicht tun. Ich möchte diesen Code behalten. Obwohl es viel länger ist, möchte ich es getrennt halten, nur um später experimentieren zu können. Jetzt ist dies ein guter Punkt, um weiterzumachen, optimieren Sie Ihren Code, wenn Ihr Interesse an der Optimierung des Codes. Aber normalerweise warte ich etwas länger und optimierte meine Trainer, weil ich mir nicht sicher bin ob diese Protokollierung jetzt tatsächlich etwas anderes haben wird. Ich weiß es, weil ich so viele gemacht habe. Locketts Protokollierung wird nichts anderes für diesen speziellen Gebrauch haben, aber wenn dies lange und etwas anderes tun musste, möchte ich möglicherweise nicht den exakt gleichen Code für die Registrierung verwenden und einloggen. Also lassen Sie uns zu ihrem Register gehen sind Ajax Schrägstrich Registerseite. Sagen wir, das wird los, und bevor wir etwas tun, weil ich das letzte Mal total tun will , bekommen Status. Holen Sie sich die Anzeige. Wir haben unseren Filter hinzugefügt. Wir haben ein Login hinzugefügt. Wir haben die Index-Konfiguration, Haupt- und Register geändert . Also lassen Sie uns einfach voran und fügen Sie all diese hinzu. Außerdem ist es eine sehr, sehr gute Praxis, jede Zeile tatsächlich zu lesen. Nur dauert es nicht so lange, denn manchmal ist da etwas drin, das man nicht unbedingt begehen möchte. Also begib dich. M hinzugefügt Registerregistrierung über Ajax Ajax, Ajax bekommen Push-Ursprung Mestre aus dem Boom fertig. Ja, da ist es. Schauen wir uns das an. Wir sind nicht einmal mehr im richtigen Repo. Und sieh dir das an. Wir haben eine Menge Informationen in Ihrem süßen Wir haben neue Akten. Wir haben alle möglichen Sachen in deiner tollen Lektüre. Ich brauche ein wenig Liebe, aber das ist okay. Das ist nur ein einfacher Abschlag. Jetzt zum Login. Lassen Sie uns fortfahren und duplizieren dieses Duplikat Rufen Sie das erneut an. Duplizierung muss alles durchlaufen. Ah, wir benutzen die E-Mail. Wir werden auch immer das Passwort verwenden. In Ordnung, müssen wir den Benutzer finden? Ja, das tun wir. Wir müssen sie an ihrer E-Mail-Adresse finden, und wir müssen ihr Passwort erhalten, damit wir nicht nur ihren Benutzer wollen. Wollen Sie auch ihr Passwort abwägen, wenn der Benutzer nicht existiert? Denken Sie daran, was wir hier tun, ist, dass wir Benutzer I D und Passwort aus der Tabelle des Benutzers auswählen, wobei die Benutzer-E-Mail gleich der E-Mail ist, die sie in das Formular Grenze eins hinzugefügt haben. Nun, wenn der Benutzer vorhanden ist süß, versuchen Sie und unterschreiben Sie sie. Und wenn der Benutzer nicht existiert, raten Sie, was er benötigt, um ein neues Konto zu erstellen. Also lassen Sie uns einen Fehler erstellen. Lassen Sie uns eine neue bei PHP registriert, und all dies wird zu dio ist, wenn der Benutzer nicht über eine Zählung, wird ihnen einen Link geben, um zu gehen Konto erstellen, denn warum nicht, dass es etwas nicht zu erwähnen. Sie können die Kopfzeilen tatsächlich ändern. Sie können einen 200-Status hinzufügen. Wenn alles gut läuft, können Sie ein 4034 verbieten hinzufügen, können Sie ein 302 oder drei ein für Rita Rex, Um und Jake Weary hinzufügen Und Ihre Ajax-Funktion kann diese verschiedenen http tatsächlich aufnehmen. Status ist aber wieder der Einfachheit willen. Wir machen es nur so. Wir werden hier einen Fehler hinzufügen, oder wir werden versuchen, jemanden anzumelden und ihn umleiten. Das ist alles, was wir tun. Aber es gibt tatsächlich einen viel besseren Weg, der ein wenig näher an einem P I ist, wo es ein wenig staatenloser ist, und Sie können HTTP-Header verwenden, um den anderen Entwicklern im Grunde zu sagen, Oh, wenn sie versuchen, sich anzumelden Da bekommen ein vier oder drei, Nun, warum bekommen sie eine 43? Kommt es mit einem anderen Fehler? Tut es sonst noch etwas? Und dann plötzlich, wenn du es hast, wie ein 403 bist du erfolgreich. Ajax-Code ist nicht mehr in der Ajax fertig. Es wäre wahrscheinlich im Scheitern, oder es wäre hier, wo es seinen Statuscode geglaubt wird. Und dann setzen wir, wie 403 Funktion und dann alarmieren, nicht erlaubt oder so etwas, damit wir etwas zusammen tun können. Diese Zeilen würden nicht darauf hineinkommen, wenn Sie wollen. kannst du definitiv. Aber dieser Kurs soll,weißt du, weißt du, verkürzt süß sein. Also lassen Sie uns voran und Benutzer existiert. Lassen Sie uns das schließen, weil ich das nicht mit einem anderen Code verwechseln möchte. , Und jetzt brauchen wir,dass wir sowohl den User I d als auch das Passwort abrufen müssen. Also lassen Sie uns voran und sagen, dass Benutzer gleich ist, um Oops zu finden. Benutzer finden, PDO holen, eine Socke holen. Uh, und was das tun wird, ist erstellen und es Ray Also, Benutzer, Jetzt sieht plötzlich aus wie Benutzer I d. Ziegel zu einem und Benutzer-Passwort ist gleich gut, was zum Teufel das ist. Und das ist im Wesentlichen das, was für uns erschaffen wird, oder? So haben wir jetzt Zugriff auf diese, ohne sie tatsächlich schreiben zu müssen, weil es in der Datenbank für uns gespeichert ist . Aber ich mag es zu werfen, weil es ein guter Weg ist zu wissen, womit du arbeitest. Es setzt Sie auch irgendwie für Python in der Zukunft und andere Sprachen, die sich auf, wissen Sie, es gibt ein wenig mehr streng geschrieben PHP ist nicht streng geschrieben, wo Sie wissen, wir könnten . Richtige Benutzeridee ist gleich eins. Und wir könnten sagen, äh, wenn der Benutzer I d gleich eins ist. 16. Benutzerlogin über Ajax Teil 2: Richtig. Also wird es versuchen, das und das zu entsprechen, und das wird wieder wahr werden. Und das ist nicht immer in anderen Sprachen anwendbar. Was ich also gerne mache, ist der Benutzer i d gleich Inter. Juror, wirf es einfach. Benutzer Benutzer I d auf das Passwort. Wir brauchen nichts mit jetzt in diesem Bereich zu tun. Wir müssen den Benutzer validieren. Wie machen wir das? Weil wir dieses grobe Passwort haben. Wir haben keine Ahnung, was das ist, und das ist gut. Wir müssen nicht wissen, was das ist. Also der Einfachheit halber, nehmen wir das Passwort ist gleich Benutzerkennwort. Lassen Sie uns das auch auf Benutzer I d. ändern so dass diese nur ein wenig standardisierter sind. Wir wissen, womit wir später arbeiten, also müssen wir jetzt kein grobes Array verwenden, bevor ich fortfahre. Der Grund dafür, dass ich dies nicht in eine Zeichenfolge geworfen habe, die ich konnte und es wäre vollkommen in Ordnung weil diese Passwort ist bereits eine Stärke. Wenn unsere Datenbankabfrage zurückkommt, denkt sie im Grunde, dass dies nicht unser Passwort ist. Das ist unser Passwort. Und es kommt zurück in einer Zeichenfolge, die wir wissen, dass es in der Zeichenfolge ist, weil wir um Anführungszeichen gewickelt sind, wir wollen das nicht. Und warum tun Sie das? Weil die ganze Zeichenfolge zu tun wird, wird man in eine verwandeln, die immer zu dio so dasselbe jetzt geht , um den Benutzer zu verifizieren. Wir tun tun tun tun Passwort-Überprüfung. Wir möchten ihr Passwort mit ihrem Hash verifizieren. So Backtracking hier Passwort ist gleich Post Passwort Google, das nie in die Datenbank gesendet wird , dass wir nicht brauchen Zehe saubere Luft, Streifen Sie es oder irgendetwas. Dieses Passwort. Wir werden den Hash umbenennen, weil es technisch gesehen ein Hash ist. Jetzt haben wir unser Passwort. Wir vergleichen, was auch immer das Passwort des Benutzers ist mit dem Hash. Dies ist so, was es im Grunde versucht zu tun ist, dass dies mein Passwort war. Wie, passen die zusammen? Nein, aber PHP ist klug genug, dass es herausfinden könnte, wie man diese zusammenpasst. Benutzer ist in ungültigen ungültigen Benutzer-E-mail-Passwort-Combo angemeldet und Luft zurückgeben. Lassen Sie uns sogar sagen, dass in einem gültigen Benutzer sogar eine Schärpe Passwort-Combo, und hier könnten wir zurückkehren. Redirect ist gleich, wo immer wir sagen werden, um umzuleiten, welche nur die Dashboard-PHP-Seite sein wird . Aber wir müssen auch eine Sitzung Benutzer I d setzen. Ist gleich dem Benutzer I d. Nun der Grund, dass ich dieses wenig früher gegossen, nicht nur, weil es eine großartige Übung ist, vor allem, wenn Sie ohnehin Sprachen wie Python in der Zukunft schreiben wollen. Aber jetzt ist diese Sitzung auch als Ganzzahl festgelegt. Es ist keine Stärke mehr. Ist das wichtig? Nicht in PHP? Nicht wirklich. Es ist nur eine gute Übung. Jetzt gibt es eine Sache, die du wissen musst. Erste vollständige Sitzungen sind winzige kleine Dateien, die auf dem Server gespeichert werden, genau wie ein normales Cookie in Ihrem Browser. Aber anstatt in Ihrem Browser zu sein, raten Sie was? Es ist auf dem Server. Wenn Sie also 100 Millionen Benutzer haben und 100 Millionen kleine Dateien haben, aber Ihre Server langsamer werden, müssen Sie sich jetzt darum kümmern? Nein. Wenn du dieses Video ansiehst, erstellst du wahrscheinlich keinen Service, der im nächsten Jahr 100 Millionen Menschen haben wird . Also ja, viel Zeit zum Lernen. Also mach dir keine Sorgen darüber. Die andere Sache, die Sie wissen müssen, ist, dass Sitzungen standardmäßig in Stan Shih ated sein müssen. Sie sind nicht eingeschaltet. Und nur aus diesem Grund auch. Wenn wir also zu unserer Konfiguration gehen und wir sicherstellen, dass unsere Sitzungen immer eingeschaltet sind, werden Sitzungen immer eingeschaltet, könnten wir sagen, wenn eine Sitzung gesetzt ist. Und das ist eine globale Supervariable, genau wie wir Post oder get oder Anfrage oder Server geschrieben haben. Es ist die gleiche Sache Sitzung und alles, was wir tun wollen, ist Sitzungen beginnen und wieder. Caleb, du hast heute einen schlechten Tag, wenn du tippst. Aber alles, was wir tun, ist, die Sitzung zu setzen. Es begann nur, pH-Verhalten zu sagen, dass wir erwarten könnten, dass eine Sitzung hereinkommt. Lassen Sie das vielleicht einfach passieren. Gehen Sie voran, sagen Sie, dass innere Konfiguration. Wir haben unsere Sitzung in Ihrem Wir haben einen Benutzer, ich d genial. Ehrfürchtig. Ehrfürchtig. Jetzt gehen wir weiter und sehen, was passiert ist. Oh, eigentlich, bevor wir das tun, haben wir einen Fehler, der html cool zurückgibt. Das Problem ist, unser Fehler zeigt nicht ein sie männlich. Jetzt tut es das. Es zeigte nur Text vor den Unterschieden. Es wird Ihr HTML nehmen und es wird es als Text zeigen, versus tatsächlich mit der HTML-Methode hier wird tatsächlich als normales HTML gerendert. Also lasst uns weitermachen. Aktualisierungstest beim Test Duck. Hoppla, Tessa Test Dot com Test Test Test Nun, sehen Sie sich den Patienten gefunden. Das ist großartig, weil wir kein Dashboard-Dot PHP haben. Also funktioniert alles tatsächlich und wir sind jetzt angemeldet. Woher wissen wir eigentlich, wo es unterschrieben wurde? Nun, gehen wir weiter und lassen Sie uns Index nehmen und lassen Sie uns duplizieren und nennen, dass Dashboard-Punkt PHP und Eco Session Benutzer I d ist Ihr Benutzer. Ich verlasse alle. Wir werden dio Schau dir an, dass du dein Benutzer ist, ich d Jetzt, wenn ich hier im Inkognito-Modus ging, passiert nichts. Schau dir diesen undefinierten Indexbenutzer an, ich d Warum ist das? Und das beschwert sich im Grunde, dass dies nicht existiert. Aber weil wir uns einloggen, existiert es. Und jetzt, da wir wissen, dass es existieren kann oder nicht, können wir den Menschen jetzt bestimmte Informationen geben. Wir können ihnen einen kuratierten Newsfeed geben. Wir könnten ihnen den Zugriff auf ihre e-Mails erlauben. Wir könnten ihnen erlauben, andere Personen zu benachrichtigen, die ebenfalls angemeldet sind. Wir haben diese ganze Welt, die uns mit nur ein bisschen Überprüfung öffnet, und alles, was es ist, ist eine kleine Zahl. Und in diesem Fall ist die Nummer eins. Das ist alles, was es jetzt in der Zukunft ist, wir werden diesen Sitzungsbenutzer ich d als die eigentliche Anwenderidee verwenden, um zu gehen und andere Teile von Informationen zu greifen . Also setzen Sie nicht nur gelobt ist gleich wahr, denn das ist nicht nützlich. Nun, sicher, der Benutzer ist eingeloggt, aber , wie sollen wir seinen Benutzer bekommen? Ich d Und so, welche Sitzungen Sie Sitzungen pro Miss? Äh, Sitzungen bleiben bestehen. Seite über Seite. Also, wenn ich das nahm und ich ging über zu Let's go to register ein ist der Benutzer i d. Was, wenn ich ging, um in One ist der Benutzer I d. Also jetzt haben wir diese Information, die auf jeder einzelnen Seite existiert, ohne dass wir es setzen müssen. Sie müssen sich nicht auf jeder Seite anmelden. Wir müssen kein Cookie verwenden, es ist sicher auf dem Server. Und ich werde die eigentlich machen, weil die hässlich sind und wir nicht wollen, dass diese das Armaturenbrett behalten und uns einfach weitermachen und loswerden, was da drin ist , weil das unnötig ist. Google cool. In dieser Lektion haben wir also eine Ajax-Login-Seite erstellt. Wir haben jetzt eine Registrierungsseite. Wir müssen nur Leute zwingen, sich auf bestimmten Seiten wie dem Dashboard anzumelden, keinen Fehler zu haben, und wir müssen in der Lage sein, Leute abzumelden. Und das war's. Das ist alles, was es dazu gibt. Es ist jetzt ziemlich einfach. Es gibt Möglichkeiten, dies viel komplizierter zu machen, aber wir werden nicht darauf eingehen, weil wirklich, an diesem Punkt, alles, was Sie brauchen, ist ein Login-System. Jetzt, bevor wir abheben, bekommen Sie den Status. Holen Sie sich die Anzeige. Möchten Sie nicht hinzufügen, kann ich die Konfiguration noch hinzufügen? Ja, ja. Also möchte ich das Protokoll hinzufügen, falls Sie es tun. Ich möchte das Dashboard-Tempo hinzufügen. Ja, lassen Sie uns Tier den Status bekommen. Holen Sie sich commit em, fügte Le Guin über Ajax hinzu. Holen Sie sich Push-Ursprung, Meister, da gehen wir. Das ist da drin. Gehen wir zurück zu dir. Holen Sie sich Hub! Sieh dir das an, Ajax hat hinzugefügt. Melden Sie sich über Ajax an. Süß. Alles funktioniert so, wie wir es erwartet hatten. Cool, Cool. Also werde ich Sie im nächsten Video sehen 17. Login auf bestimmten Seiten forcieren: Ordnung. Willkommen zurück. Die Dinge werden also aufgeregt. Wir haben ein Registrierungssystem mit Ajax erstellt. Wir haben Logging-System mit Ajax erstellt. Wir könnten theoretisch ein Abmelden System v Ajax erstellen. Obwohl das ein wenig Overkill für das ist, was das funktional tatsächlich ist. Das kommen wir in ein bisschen. Aber heute, oder besser gesagt in diesem Video, werden wir lernen, wie man jemanden zwingt, einen Benutzer zu haben. Ich d-Sitzung und es ist eigentlich ziemlich einfach. Was wir tun können, ist, können wir sagen, wenn Sitzungsbenutzer I d gesetzt dann ist alles gut. Wir könnten etwas anderes tun und nicht ist, wenn der Benutzer hier erlaubt ist und wir können anders sagen, wenn der Benutzer hier nicht erlaubt ist. Also, was wir tun, wenn der Benutzer nicht erlaubt ist, lassen Sie uns einfach umleiten. Lassen Sie uns Header-Position tun und lassen Sie uns einfach verschieben, um sich in Dot PHP anzumelden und wir wollen nicht, dass dies jemals danach ausgeführt wird, also fügen wir einen Ausgang hinzu und das war's. Also, wenn ich gehe zu Armaturenbrett gut, es erlaubt mir in ihrer eso. Gibt es irgendetwas drin, das einfach sagen Dashboard, nur damit wir es sehen können Dashboard hier, Google Dashboard ist da, was bedeutet, dass ich London bin. Aber was passiert, wenn ich einen Inkognito öffne, in dem keine Sitzung eingestellt ist? Das war ziemlich schnell. Also, wenn ich zu einem lokalen Host-Dashboard Punkt PHP gehe, nun, es zwingt mich zurück auf der Login-Seite diese Angelegenheit, wie oft es mich vor immer wieder zwingen wird , mich anzumelden. Das ist alles, was es dazu gibt. Nun, anstatt dies stattdessen zu schreiben, weil dies eine super globale Variable ist technisch, was genannt wird, können wir eine Funktion namens Grundsätzlich schreiben, wir können es alles nennen, was wir wollen. Überprüfen Sie, ob loggen Sie sich ein oder drei direkt oder wir sagen einfach gezwungen anmelden, das ist die, die ich gerne verwenden. Wirf das da rein und sieh dir das an. Also, wenn wir jetzt zum Dashboard gehen, ist das eigentlich tun Dashboard Inkognito. Dies wird cool erscheinen, nicht das, was wir wollen, weil wir nicht im Inkognito-Modus angemeldet sind. Aber wenn wir erzwungene Anmeldung mit einem einzigen kleinen Befehl ausgeführt haben und wir zurück zu unserer Inkognito-Seite gehen , zwingt es uns, uns wieder anzumelden. Perfekt. Was wollen wir also mit dieser Funktion machen? Nun, wir erstellen eine Datei vor langer Zeit, vor langer, langer Zeit genannt Funktionen. Da sind wir PHP Syntax Crabber Funktionen durch einen Kommentar in dort, gezwungen, den Benutzer eingeloggt oder umgeleitet werden. Dies sind keine großartigen Kommentare, aber sie sind zumindest Kommentare. Das wird nichts tun, denn wenn du Gäste hättest, ist es nicht hier drin, weil du recht hast. Es wird noch nicht in ihre Akte aufgenommen. Nun, wir müssen den Klassen-Teil nicht einschließen. Alles, was wir einschließen müssen, ist die Funktionen dot PHP. Jetzt. Warum ist das so? Obwohl CONFIG im Tintenordner genau hier ist und nach Funktionen sucht, sucht es nach einem Geschwister, kein Kind, keine Großeltern, kein Elternteil, kein Elternteil, nur nach einem Geschwister. Und das ist in der gleichen Hierarchie. Also verwenden wir nicht den DOT Wir verwenden keinen Ordner. Name hat nur Funktionen in PHP. Gehen Sie weiter, sagen Sie das und lassen Sie uns das tun. Loggins, wie alles läuft, zwingt uns, sich anzumelden und gehen zurück zum Dashboard, während wir eingeloggt sind. Also ist es genau da. Wir haben es, und das ist, wie Sie jemanden zwingen, sich anzumelden Jetzt was, wenn wir das Gegenteil tun wollen, wo niemand erlaubt, die Anmeldeseite oder die Registrierungsseite zu treffen, während sie angemeldet sind. Nun, gehen wir zurück zu Funktionen und lassen Sie uns Funktion, Kraft, Dashboard oder so etwas erstellen Kraft, . Und im Wesentlichen ist es das Gleiche wie das hier. Wir könnten sagen, wenn die Sitzung Sets ist, Aber anstatt dies zu tun, wir gehen Dashboard. Und wenn die Sitzung nicht eingestellt ist, werden wir nur weiter weitermachen. Aber umleiten sowieso. Und wenn wir rüber zu oh gehen, ein Foto, das wir einstecken wollen, setzen wir für ein Versteck. Und wenn wir gingen zu registrieren und wir für ein Versteck setzen und wir gingen zum Dashboard und sagte, Dashboard, Dashboard, hier sind Sie als Benutzersitzung angemeldet bereit Wald Dashboard verwenden, unerwartete Syntax gibt. Was steht da? Drew, um Zeile 13 zu tun. Und der Grund dafür ist, dass ich geschrieben habe, dass das falsche Cool Dashboard funktioniert. Jetzt gehen wir auf die Seite einloggen. Es wird mich nicht in einen Baumstamm lassen. Seiten haben mich tatsächlich wieder zum Dashboard gezwungen, genau so. Und wenn ich nochmal auf die Registrierungsseite gehe, es mich nicht dorthin lassen. Es zwang mich zurück zum Armaturenbrett. Ehrfürchtig. Also jetzt haben wir ein System, bei dem Leute, die bereits angemeldet sind, nicht die Anmeldeseiten sehen die sie nicht sehen, die Registrierungsseiten basieren alle auf einer kleinen Sitzung und umgekehrt. Wenn sie sich auf der Dashboard-Seite befinden und sie nicht angemeldet sind, haben wir sie gezwungen, sich ganz einfach anzumelden. Jetzt, da wir wissen, wie all diese Stücke tatsächlich zusammen funktionieren. Das lässt uns also einfach nur ausloggen. Und dann könnten wir nachher etwas Code aufräumen. Und wie immer, ähm, ähm, klären Sie das Dashboard für den Kinderstatus. Äh, was ich sehen will? Was habe ich auf dem Dashboard anders gemacht? Ich meine, ich weiß ganz oben auf meinem Kopf, aber wenn ich mich nicht erinnere, ob das von gestern war so, oder so, sieh dir das an. Ich fügte Force-Login hinzu und ich habe eine neue Zeile in ihrem kühlen. Also weiß ich, dass ich das haben kann. Überhaupt nicht. Was? Ich wollte das Anzeigen-Dashboard nach oben bringen. HP bekommen def. Gibt es etwas, das ich in der Funktionsdatei anders gemacht habe? Ziemlich ein bisschen. Sieht aus, als ob ich die beiden Funktionen hinzugefügt habe, um Funktionen hinzuzufügen, den Status zu erhalten, habe ich jetzt eine Konfiguration. Morgan und melden Sie sich an. Ich war Gott. Der Rest von denen, die ich berufen wurde. Log und Funktionen werden gepusht. Herkunft, Meister. Und jetzt lüften die auf und stehen einfach so auf. 18. Logout: schon. Also jetzt haben wir ein Login. Wir haben eine Registrierung. Wir haben Seiten, auf die nur Personen zugegriffen werden kann, die angemeldet sind. Jetzt müssen wir uns abmelden können. Also lassen Sie uns voran und kopieren Sie einfach log. Und ich schätze, ich habe mich abgemeldet und das brauchen wir nicht. Das brauchen wir nicht. In der Tat brauchen wir nichts. Technisch gesehen, alles, was wir brauchen, ist Also, was Sie hier sehen, ist die vergangene Zeit, Äh, welche Zeit gerade jetzt ist? Minus in der Regel eine Stunde. Gut genug. Obwohl ich Orte gesehen habe, wo eine Stunde nicht gut genug ist. Also Zeit minus eine Stunde Sekunden, die 60 mal 60. 3600 ist gut genug. Also werden wir mit der Rezession beginnen, dass wir die Sitzung zerstören werden. Wir werden die Sitzung schließen, und, ah, ah, wenn wir irgendwelche Cookies von der Sitzung haben und wir werden diese loswerden, und wir werden auch Ideen regenerieren, und das wird den Benutzer zwingen, sich jetzt abzumelden, Schließlich müssen wir den Benutzer auch irgendwo weiterleiten, wo Sie wissen, dass er wieder eingeliefert wird oder die Homepage oder etwas. Also lassen Sie uns sie einfach wieder einschreiben, nicht schicken Sie sie nicht rein. Uh, lieber Lassen Sie uns sie einfach in den Index nach oben verschieben PHP-Seite Absicht, dass, weil ich Code nicht mag der die Wände zu oft berührt. Speichern Sie das. Geh hier rüber. Richtig. Okay. Dashboard denkt, dass ich eingeloggt bin. Ich gehe, um mich abzumelden. Ich bin jetzt wieder im Index, aber ich weiß nicht, ob ich tatsächlich eingeloggt bin, also gehen wir zurück zum Dashboard. Kein Armaturenbrett lässt mich nicht wieder rein. Warum lässt du mich nicht wieder rein? Oh, ist es, weil ich keine Sitzung mehr habe? Mein Benutzer i d Sitzung ist weg. So wie wir tatsächlich eine Sitzung loswerden. Technisch gesehen, Augen können wir die Sitzung starten, aber wir können es den Wert der Vergangenheit übergeben, die in diesem Code tatsächlich veraltet ist. Darauf könnten wir die Sitzung im Grunde zerstören, indem wir sagen, OK, diese Sitzung läuft vor einer Stunde ab, und so wird ein Computer gehen. Oh, abgelaufen vor einer Stunde. Okay, es ist nicht mehr relevant, aber stattdessen werden wir Sessions verwenden. Fangen Sie an, zerstört an. Schließen. Wir werden alle Cookies entfernen und die I d regenerieren , und so haben wir es schon lange her. Nun der Grund, dass ich Ihnen den letzten Teil gezeigt, der gleich Zeit minus 3600 geht. Das liegt nur daran, dass viele ältere Projekte wie PHP 5.6 uh, Session Destroy nicht notwendigerweise ihre Session zerstören. Alles, was es tun wird, ist eine Sitzung auf einer Seite zu zerstören. Es gab ein wenig Kontroverse darüber, aber im Wesentlichen in PHP 5.6 und jüngeren Versionen oder älteren Versionen, denke ich 5.6 und darunter. Sie benötigten im Grunde eine Sitzung, die vor einer Stunde ablaufen sollte, was irgendwie seltsam war, wenn man bedenkt, dass Sie nur in der Lage sein sollten, die richtige Sitzung zu zerstören und und es ist weg. Ich schätze, das ist heutzutage behoben. Ehrfürchtig. Ehrfürchtig. Damit müssen wir uns nicht mehr damit auseinandersetzen. Aber ich wollte dir zeigen, dass du, weil du mitkommen wirst, in Zukunft einige PHP-Projekte sehen wirst. Und genau das werden sie haben, ist so etwas. Du wirst dir denken, was zum Teufel, aber ratet mal? Es spielt keine Rolle. Wir müssen auch nicht unsere Konfiguration in dieser Datei haben. Es ist ziemlich einfach. Alles, was tut, ist, Ihre Sitzung loszuwerden und Sie zurück auf die Startseite zu bewegen, und das ist alles, was es gibt, um sich jetzt abmelden, wie üblich, gehen wir weiter. Status abrufen. Holen Sie sich Anzeige hinzufügen, erhalten Status, erhalten Sie Commit auf einer Abmeldeseite. Holen Sie sich Push Origin Master, und lassen Sie uns gehen, um Hub zu bekommen. Stellen Sie sicher, dass wir da reingehen. Wir überprüfen nicht wirklich getups, um uns diese kleine Nachricht hier zu geben und Delta eins von eins zu lösen, die mit einem lokalen Objekt abgeschlossen ist. Es gab uns auch unseren kleinen Hash da drin. Und so, ja, es sagt uns, dass alles gut läuft, also müssen wir nicht wirklich nachsehen. Holen Sie sich Hilfe dot com dafür. Wir wissen nur, dass es funktionieren wird, weil es uns die Arbeitsmeldung gegeben hat. Und so gibt es ein bisschen Vertrauen, das Sie mit get bauen müssen, aber es ist. Es ist sehr, sehr zuverlässig. Es ist ein Tool, das Programmierung in Teams gemacht Programmierung gemacht hat, dass Facebook und Google, Yahoo, Amazon oder all diese anderen Unternehmen. Es ist eigentlich sehr, sehr möglich, sonst wird der Umgang mit 2000 Ingenieuren zu jeder Zeit sehr, sehr schwierig sein , so dass Sie nicht immer auf bekommen schauen müssen und das ist unsere Lago Seite. Und so haben wir im Grunde ein Login. Irgendein Lagos-System, wir haben ein Registrierungssystem. Dies geschieht alles durch Ajax. Wir haben ein Dashboard, das nur bestimmte Personen sehen können, ob es tatsächlich registriert ist. Und jetzt ist das einzige, was noch zu tun ist, unseren Code wirklich aufzuräumen. Und obwohl Sie sich vielleicht nicht darum kümmern, den Code zu bereinigen, ist es wirklich wichtig, Ihren Code zu pflegen. Das ist das schwierigste daran, Web-Entwickler zu sein. Pflegen Sie Ihren Mantel. Wenn Sie Ihren Code nicht pflegen können, wie werden Sie ihn jemals verbessern? Du wirst deinen Code hinterlassen. Das Gewicht ist jetzt, was ehrlich gesagt ist, der R-Code ist ziemlich schlampig und wir werden in zwei Monaten wieder kommen. Wir werden uns überlegen, woran wir gearbeitet haben? Was haben wir gemacht? Warum ist das nicht in einer Funktion? Warum ist das nicht in einer Klasse 19. Funktionen erstellen: Alles klar, in Ordnung. Willkommen zurück. Also, für diese Lektion, was ich gerne tun würde, ist einfach einen Teil des Codes aufzuräumen, vielleicht fügen Sie nur eine kleine persönliche Note und vielleicht einen Abmelde-Link hinzu. Ah, nichts Schickes wird passieren. Hier ist, ich werde versuchen, das wirklich schnell durchzustehen . Also das erste, was ich tun möchte, ist im Dashboard, anstatt zu sagen, dass Sie in seinem Benutzer angemeldet sind . Ich möchte Ihre E-Mail-Adresse anzeigen. Aber wie bekommen wir das vom Benutzer? I d So können wir dies tun Benutzerideen gleich Sitzungsbenutzer I d. Wir wissen, dass, wenn der Code vorbei erzwingen Login, dass wir den Benutzer haben, der für uns zugänglich ist . Denn wenn wir einfach zu Funktionen hinüberspringen, PHP, wenn es gesetzt ist, tun Sie nichts. Wenn es nicht gesagt wird, wird es uns umleiten. Wenn also nicht gesagt wurde, würden wir keinen dieser Codes ausführen. Ein gewisser Sinn, dass der Benutzer i d. Anstatt Sitzungsbenutzer zu schreiben, d ich einfach, um die Dinge über den Rest der Anwendung konsistent zu halten. Und dann lassen Sie uns finden, uh, Lassen Sie uns die Registrierung Datum der E-Mail-Adresse von diesem Benutzer So gehen wir erhalten Benutzerinformationen gleich con Vorbereiten, wählen Sie E-Mail und ah, lassen Sie uns Reg Datum von Benutzern tun, wo Benutzer i d ist gleich dem Benutzer i d linnet eins. Erhalten Sie Benutzerinformationen über Remember, wir haben den Kauf der Parameter mit PDO. Wir binden immer, Verwenden Sie rechten D-Typ in der Variablen verwenden right. Und dieses Mal werden wir PDO param int verwenden und Benutzerinformationen erhalten. Wir führen es einfach aus. Nun, wenn Sie ein System haben, das Menschen löschen könnte, wenn Ihr System vielleicht nur jemand einlädt und Sie sie rauswerfen wollten, können Sie ihre Informationen löschen. Ah, wenn du so etwas hast, wirst du immer überprüfen wollen, ob der Benutzer tatsächlich existiert. Wenn etwas gefunden wurde, ist es nicht schwer zu dio. Und es braucht auch nicht viel Rechenleistung. Es ist also ein schneller kleiner Gewinn für Sie, wenn Sie einfach tippen. Wenn Jack user info throw count gleich einem anderen Benutzer ist nicht angemeldet, weil mit unserer Funktion dies tut, wird diese Überprüfung dieser Sitzung gesetzt. Also, wenn jemand auf der Website ist, aber innerhalb der 15 Minuten, dass Sie wissen, dass die Sitzung am Leben ist, bis sie treffen, dass nächste Seite grob geben oder ein paar Minuten dauern. Wenn Sie diese Informationen gelöscht haben, wenn Sie ihren Benutzer aus der Datenbank gelöscht haben. Wenn Sie diese Informationen gelöscht haben, Nun, rate mal was? Sie werden immer noch auf alles zugreifen können, was Sie brauchen, um sicherzustellen, dass sie auf nichts zugreifen können . Und so wäre ein echtes Beispiel dafür, aus einer Gruppe verbannt zu werden oder von Facebook geworfen zu werden, zum Beispiel. oder von Facebook geworfen zu werden, Also wollen wir überprüfen, um sicherzustellen, dass der Benutzer nur und wenn nicht, wir tun Header-Position, und wir werden sie zwingen, sich abzumelden und sich anzumelden. Oh, es wird ihn zu indiziert bringen riesig zu sein, aber es wird alle anderen Sitzungsinformationen los werden s, so dass das System irgendwie nur ihre Einstellungen aktualisieren kann . Nun, wenn der Benutzer gefunden wurde. Benutzer waas gefunden Begin-Typ Benutzer ist gleich Benutzerinformationen zu erhalten, holen PDO. Hol eine Socke, die Honore ist. Wenn Sie ein Objekt abrufen wollten, anstatt nicht bereit zu sein, geben Sie einfach fetch LBJ ein, aber lief den Typ Jae Sok aus. Und jetzt wissen wir, dass, wenn der Benutzer existiert, dieses Benutzerobjekt in unserem Code sein wird. Aber wenn der Benutzer nicht existiert, , raten Sie, was der Rest des Codes nicht ausgeführt wird. Und lassen Sie uns einfach ein wenig hinzufügen. Der kleine Ausgang ist nur ein wenig Sicherheit, aber nur für den Fall. Und so wollen wir sagen, Lasst uns das tun. Das Wort des Strichs, nicht die Schärpe. Und hallo, Paige P echo user email Sie registrieren sich bei PHP User registriert. Ähm, Reg Date. Und so alles, was ich dort getan habe, war, dass ich die E-Mail-Adresse von unserer Anfrage bekommen habe. Ich habe Reg Datum von unserer Abfrage, und ich habe die Variable, das Benutzer-Array wieder von unserer Abfrage bekommen. Also, wenn ich sage, dass aktualisieren Blick auf Reg, Datum existiert nicht. Warum ist das? Nun, wenn wir in seinen nicht roten Zustand zurückkehren, ist es Reg. Zeit zu gehen, Reg Zeit. Und da gehen wir. Das ist meine E-Mail-Adresse, und ich habe mich damals perfekt registriert. So wenig persönliche Note da. Nun, wenn Sie einen Vornamen Ah haben, können Sie dort ihren Vornamen hinzufügen, wenn sie sich registrieren. Sie können das auch hinzufügen. Und lassen Sie uns nur zu einer Jury von Zika zu lago Gott PHP mit einem kleinen Lago Link dort. Also müssen wir uns ausloggen Link, und das wird im Wesentlichen einfach Leute wie in und out cool lassen. Das ist also ein kleiner Tidier. Jetzt schauen wir uns unsere Funktionen auf einige unserer Ajax-Schritte an, die wir einloggen haben, oder? Nun, wir wollen den Benutzer einloggen, aber wir wollen nicht unbedingt all diesen Code schreiben. Was wir also tun können, ist, dass wir dies in eine Funktion einbinden können und grundsätzlich immer und immer wieder verwendet werden. Also ist es richtig eine neue Funktion. Werfen , wir einen Blick darauf,was das tun kann und das tut. Ah, was macht es? Es ist nur auf der Suche nach dem Benutzer. Wenn der Benutzer existiert, wird er versuchen, ihn anzumelden. Wenn es nicht existiert, wird es ihnen nur eine andere Luft geben. Welchen Teil davon können wir mehr als einmal verwenden, während wir nach der Luft suchen wollen? Äh, tut mir leid. Wir wollen mehr als einmal nach dem Benutzer suchen. Wir wollen wahrscheinlich nach dem Benutzer suchen, ist hier gut, würden Sie sich das ansehen? Es ist im Grunde der gleiche Code. Was passiert, wenn wir das nur einmal schreiben wollten? Was? Wir nehmen dies und wir gehen finden Benutzer ist gleich Benutzerfunktion zu finden, die noch nicht existiert. Und was, wonach hat es gesucht? Ich habe nur die E-Mail gesucht. Es sind die einzigen benutzerdefinierten Daten, und es erfordert auch die Verbindung. Also lasst uns die E-Mail eingeben. Nein, anstatt die Verbindung und dann die E-Mail zu nehmen, ist es eine großartige Funktion. Finden Sie Jahre, unsere Verbindungs-E-Mail. Und lassen Sie uns das in Worten bewegen. Und so haben wir jetzt E-Mail, die hier gefiltert werden soll. Aber lass uns dem trotzdem nicht trauen, denn wenn jemand anderes diese Cola schreibt, weißt du nicht, ob es Vertrauen ist oder nicht. Und es für ein zweites Mal zu filtern, ist wirklich keine große, große Sache . Eso E-Mail ist gleich String-E-Mail, und lassen Sie uns einfach sicherstellen, dass dies immer eine Strings ist, wird es umwandeln, und was wir zurückgeben müssen, ist, naja, im Grunde, die ganze Abfrage. Wenn die Straßenanzahl gleich eins ist, äh oder nicht, also könnten wir einfach die Rollenanzahl zurückgeben, weil das alles ist, wofür dies nur hier und da verwendet wird . Also lasst uns finden Sie Benutzer. Und wenn find User geschrieben count gleich einer Rückgabe true ist, sonst false zurückgegeben, könnten wir auch zusätzlich Ihre, uh sonst eher ich denke, wir könnten Ah tun, Benutzer gefunden ist gleich Boolean finden Benutzer bro count und zurückgeben Benutzer gefunden. Also, was dies tun wird, ist, wenn ein Benutzer gefunden wurde, während einer in Boolean wahr ist und Null in Boolean falsch ist, so dass wir einfach den booleschen Wert zurückgeben können, wie viele Zeilen zurückgegeben wurden. Also jetzt, anstatt das sogar in ihre Variable zu setzen, könnten wir einfach sagen, ob Benutzer finden und es nach dem Benutzer sucht. Jetzt. Wir werden das nicht tun, weil das ein bisschen chaotisch ist. Wir würden es vorziehen, das in unsere eigene Variable zu setzen und dann, wenn wir den gefundenen Benutzer tatsächlich umbenennen . Also, wenn das wahr ist, geht es in den Weltraum. Wenn Sie ja sagen, ist der Benutzer bereits gefunden. Wenn es falsch ist, IDs gehen voran und erstellen Sie einen neuen Benutzer, aber lassen Sie uns voran und ergänzen, die das in Logan dot PHP als auch injizieren und alles löschen, was jetzt nur ein Kopf nach oben. Wenn Sie mit WordPress arbeiten, werden Sie eine Menge von dieser globalen Con sehen, was im Grunde bedeutet, dass diese Verbindungsvariable, die aus unserer Konfiguration kommt , hier verwendet werden kann , und es wird nicht als Parameter angezeigt. Ich rate Ihnen, das nicht zu tun. Das war vor 15 Jahren akzeptabel. Das ist nicht mehr akzeptabel. Tu das nicht. Gib es einfach rein. Nichts falsch daran, eine Ihrer Variablen in einen der Parameter Ihrer Funktionen zu übergeben . Also gehen wir hin. Anstatt die Abfrage zweimal schreiben zu müssen, haben wir die Abfrage eigentlich nur einmal geschrieben. Und wenn sich diese Abfrage zu irgendeinem Zeitpunkt ändern muss, wird sich auf beide Orte auswirken. Jetzt ist es extrem effizient. Also lassen Sie uns ausloggen. Stecken Sie Tess bei test dot com ein. Testtest Test besagt, dass Sie bereits ein Konto haben. Äh, was eigentlich zu tun ist, wenn Sie da sind, fanden wir, dass wir das Gegenteil tun wollen. Wenn kein Benutzer gefunden wurde, gehen Sie weiter und melden Sie den Benutzer an. Aber in der Tat ist es, dass dieser ein bisschen anders ist, weil er nach dem Suchbenutzer sucht. Also lasst uns weitermachen. Und, äh, lassen Sie uns diese Funktion ein wenig komplexer machen. Und das ist eine Rückkehr eine Socke ist in der Lage, falsch. Aber wenn es aus irgendeinem Grund wahr wäre, dann könnten wir sagen, wenn das wahr ist, kehren Sie einfach zurück. Suchen Sie den Benutzer, holen Sie PDO, holen Sie eine Socke und das wird nur das gesamte Objekt zurückgeben. Andernfalls wird es den Booleschen Wert zurückgeben. Also lasst uns das Login machen. Das hat sich in „True“ geändert. Jetzt steht, ich habe kein Konto. Nun, warum? Warum ist das? Nun, es ist, weil sagt bereits ein Konto haben. Nun, das ist völlig in Ordnung. Aber warum ist das jetzt? Nun, sieh mal, wir hatten eine Umleitung. Wir haben Luft hier drin. Wenn wir eine Luft haben, wollen wir diesen Fehler nicht zeigen. Es steht immer noch, dass wir bereits ein Konto haben. Nun, warum ist das? Nun, schauen wir uns ihren Debug-Zeh an. Dies ist ein großartiges Beispiel dafür, wie wir tatsächlich debuggen können. Also lassen Sie uns auf diesen Klick einloggen. Oh, schau dir diese undefinierte Variable an, die Benutzer 9 22 findet und was wir hier tun wollen, ist Straßenzählung. Das weißt du nicht. Wahrscheinlich sagen das gleiche auf dann Rat wieder. Wir werden diesen ganzen Debugging-Prozess gemeinsam durchlaufen. Ah, rufen Sie an, um die Funktion zu erinnern. Fetch Honore auf 9 22 Es gibt keine Notwendigkeit, das zu tun, weil das bereits existiert. Stattdessen können wir tun, weil, wenn wir setzen, dass diese letzte Variable oder dieser weniger Parameter wahr ist , denken Sie daran, denken Sie daran, eine Socke zurückzugeben. Es gibt die A-Socke genau so zurück, wie wir es vorher gemacht haben. Jetzt werden wir uns einfach ändern. Das ist eigentlich nicht nützlich. Also lasst uns weitermachen. Löschen Sie das, und ändern Sie diese. Es steht, dass Sie bereits ein Konto haben. Okay, nun, warum ist das? Nun, gehen wir wieder da rein. Schnell wieder. Schau, das Passwort, Invalidpassword. Nun, Nun, warum ist das so? Nun, denn wenn wir wieder hier reingehen, denn wenn wir wieder hier reingehen, ist es nicht auf der Suche nach dem Passwort. Das sollte es sein. Geh da rein, ändere es. Und das ist im Grunde, wie wir durch Ajax debuggen. Nun, ein paar Leute haben das vor nicht allzu langer Zeit gefragt. Wie debugge ich durch Ajax? Genau so machen wir es. Sie haben das funktioniert. Jetzt sind wir eingeloggt. Was passiert nun, wenn wir uns mit dem registrieren wollen, was wir den alten Code gegen eine Funktion ausgetauscht . Irgendetwas musste wirklich eins schreiben. Also lassen Sie uns einen neuen Registrierungstest bei Test dot com Test Test Test. Und das hat funktioniert. Und schauen wir uns unsere Benutzer an und schauen uns diesen Test auf Perfect an. Jetzt funktioniert alles, und wir haben alles in Funktionen verschoben. Nun könnten wir dies auch zu einer Funktion beim neuen Benutzer hinzufügen. Ah, und im Grunde nur den Benutzer zurückgegeben. Eigentlich könnten wir dasin der nächsten Lektion tun. Eigentlich könnten wir das Also für das letzte, werde ich das einpacken, wir werden jedes, was wir alles bewegt haben, zu Funktionen bewegen, und in der nächsten Lektion werden wir alles um alles bewegen. Ich meine, wir werden diese Funktionen in eine Klasse übergehen, damit Sie sehen können, wie objektorientierte Programmierung tatsächlich funktioniert. Nun, das werden nur statische Funktionen sein, was völlig in Ordnung ist. Aber es zeigt Ihnen irgendwie nur, wie wir eine Funktion auf ein tatsächliches Objekt oder eine tatsächliche Klasseverschieben können tatsächliche Klasse 20. Objekte erstellen OOP Teil 1: Hallo. Willkommen zurück zu einem der letzten Lektionen in diesem. Wir werden unsere Funktionen übernehmen. Wir werden sie in den Unterricht bringen. Also werden wir unser PHP-Spiel nur ein wenig erhöhen. Ich werde total ehrlich zu dir hier sein. In den meisten Fällen, wenn Sie anfangen, mit Klassen zu arbeiten, sind Sie bereits WordPress entwachsen . WordPress ist immer noch sehr funktionsbasiert. Der Unterricht ist die Zukunft. Es ist einfach einfacher zu arbeiten. Sie haben unterschiedliche Designmuster. Das Leben wird nur viel einfacher, wenn Sie anfangen, mit der Klasse zu arbeiten. Es ist so, dass wir eine gute Benutzerfunktion haben und lassen Sie uns voran gehen und das in eine Klasse geben. Also lassen Sie uns voran und machen Sie okay, das nennen Sie es Benutzer dot PHP und weil Klasse, Benutzer und so werden wir zwei Dinge tun. Wir werden eine statische Funktion schaffen, die Angst vor diesem Telefon hat. Greifen Sie das durch das und hier und rufen Sie diese öffentliche statische Funktion auf. Und so, anstatt eine Funktion wie find user aufzurufen, nennen wir es wie user find user. Oder wir könnten es in User find umbenennen. Und wir können auch die Verbindung hier drin loswerden. Aber zuerst. Also lassen Sie uns dies umbenennen, um zu finden, dass wir in Le Guin gehen und dies ändern müssen, um Benutzer zu finden, die sich registrieren wird. Benutzer finden so statische Funktionen oder Methoden immer das zu kalte innen an Seite verwendet. Und das sagt PHP. Oh, wir suchen nach einer statischen Funktion. Es ist im Wesentlichen nur eine Funktion, die mit dem Benutzer oder unabhängig vom Namen Ihrer Klasse als Namensraum aufgerufen werden könnte . Das ist wirklich alles, was es ist. Als Nächstes könnten wir Khan loswerden. müssen wir nicht mehr da drin passieren. können wir. Es gibt kein Problem, es da drin zu halten. Aber wenn wir es loswerden wollten, damit wir uns einen Parameter weniger Sorgen machen müssen, schwächen Sie, dass Khan gleich DB ist. Verbindung abrufen. Und was das zu Dio wird, ist Devi. Verbindung abrufen Jetzt, wenn die Verbindung nicht gesetzt ist, wird eine neue DB-Instanz erstellen, deren einzige Funktion ein Konstrukt ist. Sobald es und Haltung erstellt wird, wird es dieses Objekt erstellen und wird es als Selbstverbindung speichern. Wenn Sie das nächste Mal gehen und es holen, ist es bereits wieder verbunden. Das wird Singleton-Design genannt, ist sehr, sehr nützlich. Jetzt brauchen wir keinen Pass con mehr da drin, was auch bedeutet, dass wir bei der Anmeldung die Verbindung loswerden können. Wir brauchen das da drin nicht, und du kannst es auch loswerden. wir also sicher, dass das funktioniert. Was, eigentlich, es wird nicht, weil Filter dort. Jetzt wird es funktionieren. Test bei Test up Kammtest, Test. Da gehen wir. Ich bin dabei. Also wissen wir, dass das funktioniert. Nun, wenn wir wissen, dass das funktioniert, können wir ziemlich zuversichtlich sein, dass Register Arbeit. Aber wenn Sie eine grundlegende Änderung an Ihrer Codebasis wie folgt vornehmen, gehen Sie vielleicht voran und testen Sie es trotzdem, ich werde nicht nur, weil ich weiß, dass es funktionieren wird. Oder zumindest hoffe ich wirklich, dass es funktionieren wird. Ansonsten ist es peinlich, wenn es nicht tut, ähm, aber ja, normalerweise gehen Sie einfach weiter, testen Sie Ihren Code, nachdem wir noch eine Sache haben, die wir hier drinnen tun können. Wir machen öffentliche Funktionen konstruieren und lassen Sie uns private con machen, die eine private Funktion namens Con ist. Und jedes Mal, wenn wir eine neue Benutzerinstanz erstellen, was im Grunde das ist. Es wird diese Verbindung als TV-Get-Verbindung einstellen, was bedeutet, dass wir diesen Aero con jetzt jederzeit verwenden können, wenn wir ihn brauchen. So können wir jetzt die Anwenderidee übergeben. Wir werden hint es mit einer Ganzzahl eingeben, was bedeutet, dass diese Klasse immer nur zu gehen oder diese Methode wird immer nur in der Lage sein , dies als Inter zu akzeptieren. Registrieren Ich verschwende meinen Finger hier Funktioniert nicht, muss eine ganze Zahl sein, die jetzt deshalb auf ihrem Dashboard eingestellt ist. Unser Benutzer I d ist immer eine ganze Zahl. Was zerstört es? Hätte eine Schnur sein können, wäre vollkommen in Ordnung gewesen. Aber wir haben es als Ganzzahl gesagt, und jetzt bekommen wir in einige gute Programmierpraktiken zehr gute Programmierpraktiken. Also, wenn wir Anwenderideen gleich in Benutzer i D filtern und das ist nur eine der Funktionen oder eine der Methoden, die mit der Filterklasse kam, die ich hier injiziert habe, zwingt Ihre Daten grundsätzlich nur dazu, ein ganzzahliger Streifen zu sein alles andere, was wir tun konnten, finden User Wow! Müssen wir das tun? Nein, nicht unbedingt, weil wir es bereits haben. Also, was wir tun könnten, ist der Benutzer gleich, was zu finden? Wir kennen die E-Mail nicht, also können wir das nicht wirklich tun. Also schätze ich, sie sind Hände ein wenig gefesselt. Also lassen Sie uns eine neue Abfrage schreiben Benutzer ist gleich dieser con. Denken Sie daran, dieser Con ist auf die Verbindung hier oben gesetzt. Bereiten Sie Kappen vor. Sperre ist auf Select user i d. E-Mail Reg Time von Benutzern Where User Ideen an Benutzer i d. Begrenzen Sie einen Benutzer Bind Param User I d Fortsetzung der User-Idee, dass wir PDO Param Integer injiziert haben, weil wir wissen, dass es eine Verletzung ist und dann ausgeführt. Und dann könnten wir sagen, ob die Anzahl der Benutzerzeilen gleich einer anderen ist. Kein Benutzer umleiten lago dot PHP und extra ausloggen, nur für den Fall, dass wir gehen Zeile Konten zu tun. Heute gehen wir und dann könnten wir sagen, Benutzer ist gleich dem Benutzer Fetch PDO holen eine Socke. Aber eigentlich lassen Sie uns dio BJ stattdessen Dieses Objekt und wir können diese E-Mail ist gleich Benutzer e-Mail . Dieser Benutzer i d ist gleich dem Benutzer i d. Diese französische Zeit ist gleich der Benutzerreg-Zeit, also lasst uns das einfach aufräumen. Ich mag es, mein PHP sauber zu machen. Es ist vielen Entwicklern egal. , Ich würde es vorziehen,wenn es dir egal wäre, dass dir das in Zukunft helfen wird. Dinge wie Python oder Go oder nein. Wollten dir Sketche wirklich helfen? Und so werden wir diese als String-Ganzzahl und String umwandeln . Und all dies tut, ist der Benutzer ein Objekt ist. Und jetzt haben wir Benutzer, ich d wir können sehen, dass es hier unten passt. Wir haben die E-Mail-Übereinstimmungen da unten. Wir haben Reg Time Matches da unten, und es setzt all diese Dinge für uns ein. Wenn du das je hast, als du das warst. Und jetzt, anstatt privaten con user i d oder so etwas schreiben zu müssen, können wir es einfach innerhalb des Konstrukt setzen. Wir werden keine schlechte Praxis, sondern stattdessen, was wir öffentliche Nutzeridee verwenden werden. Wir geben ihm keinen Wert. Er hatte Recht, D, äh, E-Mail, Französisch Zeit und diese Luft. Dies sind alle leere Werte. Da ist nichts drin, aber sobald Sie Benutzer anrufen, ähm, Benutzer gleich neuen Benutzern. Und dann stellst du ein Interview ein, wie deine Session. Es wird automatisch ziehen Sie uns Informationen und Sie können uns verwenden. Es macht momentan nicht viel Sinn, aber ich zeige Ihnen die Magie dahinter. Wir gehen zum Dashboard, anstatt diese Informationen zu erhalten. Dio Benutzer schwächen ist gleich neuen Benutzer. Injizieren Sie einfach die Sitzung, die ich da drin habe. Und es muss nicht eine Sitzung des Wenn Sie ein Administrator waren, könnten Sie jede Idee dort hineinsetzen. Sie könnten eine Reihe von Benutzern nachschlagen und einfach jede Idee reinlegen und ihre Informationen bekommen . Und so wissen wir, dass der Lago es wird automatisch für uns arbeiten. Wenn es keinen Benutzer gibt, wird es sich automatisch ausloggen, was vollkommen in Ordnung ist. Und das brauchen wir nicht mehr. Und stattdessen, weil dies ein Objekt ist, verwenden wir die Array-Klammern nicht mehr. Wir verwenden Pfeile 21. Objekte erstellen OOP Teil 2: Hören Sie, ich erfrische meine Seite, und es funktioniert perfekt. Du hast nicht mal bemerkt, dass sich irgendetwas geändert hat. Also haben wir jetzt eine Funktion in eine Klasse verschoben. Aber an diesem Punkt fragst du wahrscheinlich Caleb warum? Warum sollte ich das tun? Das war eine Menge Arbeit für keinen zusätzlichen Gewinn, als mein ganzer Code bereits da war und funktionierte. Das ist total fair. Das ist eine große Frage. Eigentlich. Der erste Grund ist, dass dies nur eine gute Programmierpraxis ist. Wenn Sie in Frameworks wie Larry Bell einsteigen, werden Sie anfangen, mit Objekten und Klassen zu arbeiten. Wenn Sie in Python einsteigen, werden Sie anfangen, mit Objekten zu arbeiten, Klasse. Besonders wie Django, zum Beispiel, werde ich anfangen, mit größeren Awesome zu arbeiten. Unser CMS ist in der Zukunft. Sie werden anfangen, mit einer Menge objektorientierter Programmierung zu arbeiten. Und, ehrlich gesagt, Arbeitsplätze zahlen mehr. Wenn Sie wissen, Opie objektorientierte Programmierung, so dass wir es haben. Wir haben unsere Benutzerklasse erstellt. Ehrfürchtig. Ehrfürchtig. Ah, wir gehen hier rein und lassen uns das bewegen. Eigentlich könnten wir es sogar anschnallen. Los geht's, Klassenseite, und ich werde weitermachen, und ich werde das nochmal duplizieren. Wir werden diese eine Seite nennen, die du gehst und diesen Wurf in unserem neuen Seitencode löschen. Awesome! Ehrfürchtig. Ich gehe auch hier drinnen. Und jetzt anstatt Dashboard nach erzwungenem Login zu suchen, in dem Sie wissen, dass es gut ist , lassen Sie mich hier sagen, dass es nicht mehr in Ordnung ist, weil diese Funktion nicht existiert. Alles, was wir tun müssen, ist zu gehen und es zu finden und in Seite vier zu setzen. Sloggen Sie rechts ein. Ich habe diese ekstatisch nicht deklariert, und ich hätte es tun sollen, denn technisch gesehen gibt es nichts. Es gibt keinen Grund, warum die nicht Sadiq sein müssen. Sie beziehen sich nicht wirklich zu sehr miteinander. Da gehen wir. Dann melden Sie sich an. Wir würden nichts tun. Allerdings Register Register Seite des Index Alter statische Methode selbst, nicht die Agents Seite. Da gehen wir. Oh, gut. Und das ist alles, was wir getan haben. Wir haben es gerade in eine Klasse gebracht. Nun, der zweite Grund, warum eine Klasse verwendet wird, ist besser als nur Funktionen. Denn wo sind wir hier, um dysfunctions Datei zu tun, die jetzt leer ist, wenn Sie aus einem schlampigen PHP-Hintergrund kommen und wenn Sie es tun, gibt es nichts falsch daran. Aber es gibt bessere Wege. Ist diese Funktionen sind PHP-Datei kann sehr, sehr, sehr lang werden. Wir sprechen Tausende von Zeilen lang und jetzt alle von uns, und Sie haben Funktionen aufrufen Funktionen. Colin Funktionen Colin Funktionen, und während sie alle versuchen, sich miteinander in Beziehung zu setzen, gibt es keinen Kontext. Sie können Kommentare hinterlassen, aber es wird nicht unbedingt funktionieren. Ganz zu schweigen von allen Funktionen sind global. Ah, und manchmal möchten Sie, dass sie innerhalb dieses kleinen Containers arbeiten und manchmal möchten Sie, dass sie innerhalb dieses kleinen Containers arbeitenund miteinander kooperieren, zum Beispiel, wenn Sie einen neuen Benutzer erstellen. und miteinander kooperieren, zum Beispiel, Also lass mich das einfach noch mal ausschalten. Weg haben Benutzer gleich neuen Benutzer. Und lassen Sie uns einfach den Benutzer von einem da reinbringen. Wir könnten dann User set email aufrufen, neu bei email dot com, und was dies sagt, ist innerhalb dieser Klasse, rufen Sie eine Funktion auf. Rufen Sie diese öffentliche Funktion mit dem Namen „E-Mail setzen“ auf, die neue E-Mail eingeben. Jetzt haben wir das schon eingerichtet. Wir haben bereits die bestehenden E-Mails. Wir könnten sagen, echo diese E-Mail und das wäre die aktuelle E-Mail-Adresse. Wir könnten sagen, echo dieser Benutzer i d Theo bestehenden Benutzer. Ich d. Jetzt sind wir nichts durch Parameter übergeben, die nicht unseren Weg durch PHP mit globalem Benutzer I. D oder GlobalSieb betrügen Weg durch PHP mit globalem Benutzer I. D oder Global mussten. Und du denkst so. Wenn wir eine Verbindung zu unserer Datenbank wollten, müssen wir nur diese con vorbereiten und dann unsere SQL-Anweisung hier drin. Fertig, erledigt, erledigt. Es ist alles für Sie im Konstrukt gerüstet. So haben wir jetzt eine Möglichkeit, wie E-Mail senden kann sich auf die anderen Daten beziehen, die automatisch für Sie eingerichtet werden . Und das ist nur eine magische Funktion. Es gibt auch andere. Also denke ich, der zweite Grund, objektorientierte Programmierung so zu verwenden, ist, weil Sie ein nettes kleines Funktionieren wie diese erstellen können. Andernfalls, wenn Sie Funktionen verwenden, die PHP verwenden, würde es ähnlich wie Funktionsänderungs-E-Mail aussehen. Dann haben Sie Benutzer I d. Neue E-Mail kann eine Verbindung sein. Vielleicht nicht. Wenn Sie keine Verbindung haben, sieht es schlampig aus, denn dann ist es wie global con und dann con und dann Ihre SQL-Abfrage. Und da hast du deine E-Mail und da hast du all diese anderen Sachen geschnitten. Es sah nur eklig aus, während ich meine, wenn du es nicht bist, wenn du mit O. P. nicht vertraut bist. Das sieht so aus, als würde mir glauben, es ist nicht so groß, und das ist wirklich alles, was Sie tun müssen. Also werde ich das kommentieren und das werde ich dir überlassen, damit du gehen kannst was du damit machen willst. Wenn Sie das vielleicht abholen und den Leuten eine Profilseite geben wollten, wo sie gehen und tatsächlich ihre E-Mail-Adresse ändern können , können Sie das mit einem Ärmel tun. Dass es bei dir auskommentiert ist. Es wird also niemandem wehtun. Und so wäre das der zweite Grund für objektorientierte Programmierung. Der dritte Grund ist Wartung. nun Wenn wirnunzu dieser Funktionsdatei zurückkehren, könnten wir Funktionsnamen haben. Nun, ich meine, wir werden nichts schwebendes oder öffnendes Syntax, Funktion, Namen haben , Funktion, und so weiter und weiter und weiter und weiter und weiter weiter weiter. Und manchmal haben Sie Funktionen, die im Grunde dasselbe tun, aber für verschiedene Teile Ihrer Anwendung. Also, wenn es so ist, ah, wenn es wie Name ändern Nun, was ist, wenn das den Benutzernamen ändert, also würden Sie es nennen, den Benutzernamen zu ändern. Aber was, wenn Sie den Namen ändern wollten. Natürlich. Lektion ändern. Name des Kurses. Was ist, wenn Sie den Namen Ihres Haustiers ändern möchten, oder? Was ist, wenn Sie den Namen von ändern wollten und es geht weiter und weiter. In einer Klasse ist es eigentlich so viel einfacher, weil Sie die gleichen Funktionen immer und immer wieder benennen können. Du kannst es haben. Alles klar, Sehen Sie diese Klasse Haustier öffentliche Funktion, setzen Sie den Namen oder ändern Sie den Namen. Wenn Sie mit unseren vorherigen Beispielen konsistent sein wollten, könnten Sie Benutzer haben. Und natürlich, das ist nicht ich benutze das Gefühl, dass das seltsame kleine Art von dort war. Und jetzt haben Sie einen Haustierbenutzer und Kurs, die alle genau die gleiche Funktion haben. Name. Der Methodenname ist in allen drei von ihnen gleich. Es spielt keine Rolle. Nein, aber wenn Sie dieselbe Funktion haben, benennen Sie nicht mehr als einmal. Eigentlich, wenn Sie zwei der gleichen Funktionen haben, wird PHP Sie anschreien und sagen: Oh, na ja, na ja, können wir nicht müssen, weil wir nicht zwischen ihnen unterscheiden können. Also, jetzt haben Sie eine Möglichkeit, im Grunde Leerzeichen zu benennen und es gibt Ihnen Kontakte. Name des Haustierwechsels? Was machst du da? Sie ändern den Namen Ihres Haustierbenutzers Geändert acht. Was machst du da? Sie ändern den Namen des Benutzerkurses. Was machst du da? Du änderst den Namen des Kurses. Und indem Sie einfach nur zwei Wörter zusammenfügen, haben Sie sich mehr Kontakte gegeben. Sie haben Ihren Co-Entwicklern Ihrer Kollegen oder Ihrer Teamkollegen den Kontext in das, was Sie tatsächlich tun, gegeben. Und das ist ein guter Grund, in ein wenig p zu bekommen Nicht der Punkt dieses Kurses, aber ich dachte nur, ich würde das mit Ihnen teilen, weil es extrem wichtig ist, wenn Sie weitermachen, um ein größeres, großartiges oder Entwickler zu sein . Ich wollte all das begehen, übrigens, als ich Get Add Dog tippte. Vergiss überhaupt. Ich habe schnell nachgeschaut, welche ich hier hinzufügen wollte. Verschieben von Funktionen in Klassen. Nur etwas im Grunde Schlechtes. Holen Sie sich Schub Origin, Meister! Und da gehen wir. Wir haben es. Es gibt unseren Code genau so. Also, jetzt haben wir ein voll funktionsfähiges Login Log-Out-Registrierungssystem 22. Was du noch aufbauen kannst?: Alles in Ordnung. Dieser Kurs ist im Grunde vorbei, aber ich wollte dir nur ein wenig eine Vorstellung davon geben, wohin du als nächstes gehen sollst. Die Leute sagen immer, ich weiß nicht, an welchem Projekt ich arbeiten soll. Ich weiß nicht, was ich damit machen soll, was ich hier lerne. Dies war also ein Kurs, der auf dem gesamten Projekt basiert, im Grunde ein Anmelde- und Registrierungssystem zu erstellen . Also, jetzt haben Sie diese Basis, von der Sie arbeiten können. Aber es gibt so viel mehr. Du kannst es tun. Sie können die Verifizierung per E-Mail per E-Mail bestätigen. Wirklich? Gehen wir einfach in PHP. Könnte bedeuten, dass hier wieder angemeldet ist. Sie erstellen einfach eine weitere Spalte hier und rufen Bestätigungscode oder was auch immer Sie wollen. Geben Sie ihm eine zufällige Zeichenfolge. Es muss nicht verschlüsselt werden oder so. Du bist einfach wie ein zufälliger MD fünf oder S H ein Eins. Und dann mailen Sie diesen Code an jemanden, und wenn sie auf einen bestimmten Link klicken, geht es zurück zu Ihrer Seite, und es könnte wie bei PHP verifiziert sein. Code ist gleich eins, was auch immer der Code ist. Ah, das wirst du in deiner Datenbank nachsehen. Was auch immer der Spaltenname ist, du weißt schon, Bestätigungscode oder was auch immer. Ah, und wenn das gefunden wird, dann du weiter und entfernst das. Und wenn dieser Wert nicht oder leer ist , wurde dieser Benutzer verifiziert. Das ist alles, was es ist. Sie haben also eine Benutzerbestätigung. Sie können das per E-Mail tun. Sie können eine Zwei-Faktor-Authentifizierung durchführen. Wenn du wirklich cool werden wolltest, gibt es einen coolen kleinen Service namens Twilio. Äh, klicken Sie einfach hier. Ich hoffe, es bringt mich nicht zu einer groben Zielseite. Ich habe in PHP codiert, und ich möchte lernen, ein Boot SMS zu starten. Was TWILIO für Sie tun wird, ist es Ihnen zu erlauben, Textnachrichten grundsätzlich an jedermann auf der ganzen Welt für Schmutz billig zu senden . Wir reden, als ob ich es nicht weiß, vielleicht 0,1 Cent pro 10 oder 100 Texten. Oh, nein, es ist super, super billig, denke ich. letzte Mal, als ich mich für eine 22-Faktor-Authentifizierung eines meiner Projekte ausfüllte , habe ich 20 Mäuse für michgelegt Dasletzte Mal, als ich mich für eine 22-Faktor-Authentifizierung eines meiner Projekte ausfüllte, habe ich 20 Mäuse für michgelegt, sechs Monate, und wir reden wie, äh, 20 Mäuse für mich , sechs Monate, und wir reden wie, Hunderte und Hunderte. Vielleicht sind sogar Tausende von Texten nur für die einfache Zwei-Faktor-Authentifizierung ausgegangen. Es war ziemlich cool. So können Sie tun, dass twilio ist ein großartiger Service. Wenn Sie Ihre eigene Zwei-Faktor-Authentifizierung hinzufügen möchten, könnte das vielleicht ein weiterer Kurs für Sie erstellen. Wenn Sie daran interessiert sind, können Sie ein hinzufügen ich habe mein Passwort vergessen. Es hat die Passwortseite vergessen. Also statt Logging, wäre es vergessen Passwort oder das aktuelle Passwort, und es wird weitergehen, ein Passwort zurücksetzen oder jemandem einen geheimen Code geben, in dem sie klicken können und wieder auf unsere Website bringen . Es wäre wie Passwort-Reset Passwort dot PHP-Code gleich ist, oder was auch immer der Code ist. Überprüfen Sie diesen Code. Und wenn dieser Mantel ist, wissen Sie tatsächlich in unserer Datenbank existiert, dann können Sie gehen und lassen Sie den Benutzer sein eigenes Passwort zurücksetzen. Und es geht bereits durch ihre validierte E-Mail-Adresse, weil Sie E-Mail-Validierung hinzugefügt haben . E-Mail-Verifizierung. kannst du auch tun. Ah, Sie können den gesamten Dienst erweitern, indem Sie den Leuten erlauben, ihre E-Mails zu ändern, ihre Passwörter einmal oder länger zu ändern. Sie können sich mit dem Vornamen Nachnamen anmelden. Sie können sich gegenseitig freunden. Sie können hier eine andere Tabelle erstellen, die nur Freunde genannt wird, und alles, was es ist, ist Benutzer ein und Benutzer zu Das ist alles, was es ist, so könnte man Benutzer in dieser Spalte sein , die in dieser Spalte verwendet wird. Und im Grunde, wenn Benutzer eins Sie oder Benutzer ist Ihr Freund und Sie sind in der gleichen Reihe als Ihre Freunde, das ist wirklich alles, was die Freunde Tabelle ist. Ah, und dann können Sie diese Tabellen mit dem Benutzer I d verbinden und Sie können wie Namen und all das Zeug auch bekommen. Jean schaffen freundlos. Sie können einen News-Feed erstellen, eine andere Tabelle namens News erstellen. Ah, und dann können Sie Autoren erstellen. Blawg postet alles, was Sie für die Autoren tun müssen. Setzen Sie den Benutzer, den ich d da drin Jetzt kommt das von der Sitzung, dem Sitzungsbenutzer i d. Und das wird Ihr Autor sein, so dass, wenn Sie eine Blawg genannt haben lernen, wie Ihr eigenes PHP-Login-System von Grund auf neu erstellen oder etwas so. Ah, und der Autor ist Benutzer I d eins und sie ändern ihre E-Mail-Adresse. Nun, du musst das Blawg auch nicht ändern. Sie können einfach diesen einen kleinen Abschnitt hier ändern, und es wird alles andere im System für Sie ändern? Nun, eigentlich, technisch gesehen, ändert es sich nicht nur wirklich hier, sondern es scheint, als würde sich der Rest des Systems ändern. Basierend auf diesem einen Datenpunkt ist es ziemlich cool. Also hier sind ein paar Ideen. Nachrichten-Feed Freund Feed. Ah, ändern Sie die E-Mail-Änderung. Passwort zurücksetzen. Passwort. Vielleicht willst du einen Freund einladen. Richtig? Also in einem Einladungsmodul, wo sie in E-Mail setzen, Adresse automatisch geht und eine E-Mail an jemanden, können Sie diese E-Mail als auch speichern, so dass Sie sehen können, wer wer wer einlädt. Und wenn du es wolltest, könntest du eine andere Funktion umwickeln und, du weißt schon , drei oder vier Tage könntest du jemanden stecken und sie einfach ein wenig schicken, weißt du? Hey, weißt du, dein bester Freund hat dich zum Dienst eingeladen, aber du hast es noch nicht akzeptiert. Vielleicht sollten Sie auf diese große grüne außer Schaltfläche auf einen Vornamen beim Nachnamen klicken. E-Mail-Bestätigung bei SMS-Bestätigung hinzufügen. Der Twilio. Du könntest alle möglichen Dinge tun. Hier sind also ein paar Ideen, um diese Idee voranzubringen. Wenn du stecken bleibst. Erinnerst du dich an Facebook? Kommen Sie und fragen Sie. Einige Fragen waren froh, diesen Luftfragen zu helfen. Ich antworte gern, weil diese etwas komplexer wurden. Dies ist wirklich von Anfänger zu etwas mehr Mittelstufe zu irgendwo in der mehr Seniorenbereich. Lernen, wie eine größere Anwendung wirklich von etwas so Kleinem wie einem Login-System gebildet werden kann . Abgesehen davon, ich meine, wirklich, wirklich, geh einfach deine Hände schmutzig machen. Brechen Sie es. Ich meine, wenn du es kaputt machst, geh einfach zurück auf die Gitarre. Brembo, das ist aufstehen Punkt com Schrägstrich Caleb m italienischen Schrägstrich PHP Login System. Sie haben den ganzen Code da. Sie können auch den gesamten Code herunterladen, je nachdem, auf welchem Dienst Sie sich dies ansehen. Ah, aber wenn es wie Art Montes oder du für mich ist, kannst du auch den ganzen Code herunterladen. Aber wirklich, meiner Meinung nach, bringen Sie das einfach in Betrieb, holen Sie das ganze System, das wir gebaut haben, um es in Betrieb zu bringen. Wählen Sie eine davon aus und gehen Sie dran. Es wird schwer, weil du nicht genau weißt, wohin du hingehen sollst, und das ist okay. Das ist Teil der Lernkurve. Und ein Teil dieser Lernkurve ist, was Sie absolut großartig machen wird. Also geh weiter. Wählen Sie eine dieser beginnt. Und bitte, Wenn Sie fertig sind, kommen Sie teilen Sie es mit der Gruppe. Kommen Sie mit den fast 2000 Entwicklern teilen, dass ich meine Facebook-Gruppenarena habe. Wir freuen uns, Sie zu unterstützen. Ah, mit Ihren Fragen mit Ideen, die Sie haben könnten, wenn Sie stecken bleiben, lassen Sie uns wissen, dass wir bereits hier sind, um Ihnen zu helfen. Ich bin draußen. Vielen Dank, dass Sie sich mir in diesem Kurs angeschlossen haben. Das war eine Explosion und ich werde Sie hoffentlich in einem anderen Kurs sehen. Prost.