>> DOUG LLOYD: Così nel nostro video su sintassi di PHP,
abbiamo parlato molto di come PHP può essere utilizzato nella linea di comando
per eseguire programmi in modo che siamo abbastanza familiarità con da C.
Ma, come Ho anche detto in quel video, PHP
è stato inizialmente sviluppato per attuare una programmazione web, siti web.
E così in questo video siamo andando a parlare di come noi
utilizzare PHP nel contesto di sviluppo web.
>> Sappiamo già, da il nostro video su HTML,
che i siti web sono costruiti da una serie di tag HTML
che definiscono semanticamente la struttura di una pagina web.
Ma i siti web che sono costruito con HTML puro
soffrono di una molto, limitazione molto grave.
>> E per illustrare questa limitazione, prendiamo in considerazione quanto segue.
Così ora voglio costruire una pagina web che, ogni volta che l'utente lo visita,
mi dà la corrente ora a Cambridge, Mass.,
visualizzarlo all'ultimo minuto.
Se stavo facendo questo proprio ora, Potrei dire qualcosa di simile.
Ora attuale in Cambridge-- così ho Tag HTML, tag head, tag title,
corpo tags-- la corrente tempo a Cambridge è 14:08,
tempo militare stampare.
>> Che cosa succede se ora è 02:09, 14:09?
Bene finora, con HTML, ho per andare in e modificarlo in 14:09.
E poi un minuto dopo, Devo cambiare di nuovo.
E come si può immaginare, questo è probabilmente il lavoro peggiore mai.
Tu sei il webmaster per una pagina web, e ogni minuto, 24 ore al giorno,
è necessario aggiornare l'ora corrente apertura manuale time.html e cambiando
solo che frammento di codice per non dire ora corrente in ore e minuti.
Che probabilmente non è molto buon uso delle nostre risorse,
sia umane che computazionale.
>> I siti web che sono tutti HTML sono completamente statici.
L'unico modo è possibile aggiornare contenuti, come abbiamo appena visto,
è quello di aprire manualmente quelli fonte file, modificarli e salvarli.
E poi, quando l'utente aggiorna la pagina
o visita la pagina per la prima tempo, che otterranno il contenuto più recente.
Ma solo perché abbiamo modificato manualmente.
>> Se cominciamo a mescolare PHP in là, il nostro codice può ottenere molto più flessibile.
E possiamo avere un modo per le nostre pagine di essere dinamico, o aggiornare se stessi,
senza richiedere il nostro povero webmaster nell'esempio precedente
per essere manualmente l'aggiornamento le cose.
Possono farlo automaticamente.
Noi non dobbiamo intervenire.
Siamo in grado di dormire un po '.
Che è probabilmente una buona cosa se si sta facendo un sacco di programmazione web.
>> Quindi, in CS50 IDE, corriamo un web server chiamato Apache.
E 'molto comunemente usato, aperto sistema web server di origine.
Questo sistema ha il capacità di interpretare
PHP, che sta per essere utile se si vuole fare alcuna programmazione PHP.
>> E in CS50 IDE, abbiamo un comando per rendere questo molto facile da fare,
apache50 iniziare.
E poi quel barra percorso, tagliare a, slash
dir, che è solo un modo davvero comune indicando ciò che hai specificato qui
è un percorso di un particolare directory che
vuole essere la radice sito, o la pagina principale,
o la cartella da cui il server web inizierà a esaminare i file e servire
li fino a clienti che ne facciano richiesta.
Quindi cerchiamo di pop verso CS50 IDE, solo per mostrare, molto veloce, come funziona.
>> Così qui in CS50 IDE, io sono in un directory chiamata Settimana Zero Nove.
E devo two-- ho eseguito un comando LS solo
sopra per dimostrare che non ho due directory in qui, PHP,
che è l'insieme di file che ho usato in la sintassi di video di PHP, e poi PHP-web,
che è l'insieme di file che vorrebbe usare in questo video.
>> E vorrei iniziare un'istanza del server web
con il contenuto della cartella PHP-web come i file vengono serviti.
Così che cosa sto andando a fare?
Ho intenzione di scrivere apache50 spazio avviare, spazio PHP, trattino web.
Questo è il percorso della directory da dove attualmente sono.
Poi mi ha colpito Invio.
Sta andando a fare un po 'di roba qui.
E poi sta per dire, Apache avviato correttamente.
Il tuo sito è ora disponibile e at-- poi c'è l'URL del sito.
Così che cosa sto andando a fare?
Ho intenzione di copiare rapidamente questo.
E io vado ad aprire e up-- Io zoom out un po 'qui--
Sto per aprire una nuova scheda in Chrome.
E ho intenzione di visitare questo URL.
>> Ho intenzione di premere Invio.
Sta andando a caricare.
E io lo zoom di nuovo.
E possiamo vedere qui è il contenuti della mia directory web PHP.
>> Così ora che cosa sta accadendo in fondo ecco, la mia istanza di CS50 IDE
sta scontando di questi file a chiunque ne faccia richiesta.
E nel corso di questo video, faremo di ordinare
dare un'occhiata a un po 'di questi diversi file in un contesto.
>> Per verificare che Apache server è funzionante,
che è generalmente in corso essere il caso in CS50 IDE,
ma se lo fai, più in generale, e di iniziare a costruire il proprio web
server, c'è un davvero specie comuni di analogico,
"ciao mondo", che di solito è utilizzato per lo sviluppo web PHP.
Che è quello di avere un file costituito da appena questo code--
un delimitatore PHP set con PHP info, parentesi, punto e virgola in mezzo.
Che è fondamentalmente un speciale Funzione PHP che ti dice
quale versione di PHP è in esecuzione.
>> Quindi, in CS50 IDE, ho quel file disponibile solo
per mostrarvi ciò che questa sarà simile.
Così sto guardando il mio indice dal mio esempio PHP.
Il mio esempio Apache è in esecuzione il contenuto di PHP-web.
E ho un file chiamato qui info.php.
>> Io vado a fare clic su di esso, zoom out.
Questo è ciò che si sta andando di vedere, più o meno.
Questo è solo mi dice che il mio server Apache è in funzione.
E questo è, a quanto pare, il versione di PHP che sto correndo.
Questa è la mia analogico a "ciao mondo".
>> Così So che le cose sono operativi.
Quindi siamo a posto.
Siamo in grado di procedere da qui.
>> Quindi cerchiamo di rivisitare che Esempio volta eravamo
parlando con il nostro povero webmaster che ha dovuto aggiornare la pagina costantemente.
Questo potrebbe essere una soluzione per quanto Vorrei realizzare cose
in modo che il webmaster non ha devono tenere aggiornata l'ora.
Sarebbe appena sorta di avverrà automaticamente.
>> Il basso, il codice HTML, è abbastanza simile, con una sola eccezione.
Ma qui ho un po 'di PHP in alto.
Ho, a quanto pare, chiamato questo Funzione date_default_timezone_set.
>> E non parliamo di tutto queste funzioni in CS50,
perché PHP ha probabilmente decine di migliaia.
Questo potrebbe essere un po 'di un esagerazione, ma non potrebbe essere.
Ha un sacco di funzioni incorporate in.
E quindi questa è una funzione apparentemente imposta il fuso orario come US / Eastern,
che è il fuso orario che io sono attualmente nel fare questo video.
>> Poi faccio una chiamata a funzione chiamata, data.
E, a quanto pare, sto memorizzare il HIS di qualcosa chiamato, tempo.
Allora, cosa sta succedendo qui?
>> Beh, in fondo ciò che è accadendo è, sto facendo una chiamata
ad un server che sta per dimmi che cosa il tempo è attualmente.
E sono la conversione in un formato di ore, minuti, secondi.
E la ragione è maiuscola è questo sta per darmi il tempo di 24 ore, non 12
tempo ora, che sarebbe minuscolo h.
E sto solo memorizzazione che in una variabile denominata, tempo.
In modo che la seconda linea di PHP lì, la chiamata alla funzione,
oggi, è solo ottenere qualche stringa, che è
andando a darmi la data, e il tempo, e un sacco di altre informazioni.
E il primo argomento lì che il suo, è solo estraendo la parte importante
che mi preoccupo per questo esempio, che è l'ora, i minuti ei secondi.
Ecco, questo è il tutto che sta succedendo.
Così ho negozio che in un $ tempo variabile.
E poi giù al fondo lì,
avere che una scorciatoia per l'ora corrente stampare.
Così sto solo andando a stampare che cosa l'ora corrente è.
>> Quindi, diamo uno sguardo a questo CS50 IDE e vedere come siamo ora
risparmio che webmaster un sacco di guai.
Va bene, quindi eccomi qui di nuovo indietro nella directory principale
della mia istanza di Apache.
E ho un file chiamato qui time.php.
Sto solo andando a cliccare su questo.
E farò scorrere in su, perché stiamo ingrandita abbastanza lontano.
L'ora corrente è 14:20:34.
Quindi lo sto facendo ora, minuti e secondi.
E posso aggiornare il pagina e ottenere nuova ora.
--41.
Ho intenzione di aggiornare la pagina e ottenere nuovo tempo, 44, 46, 47.
>> Quindi, io non sono chiaramente cambiare nulla me stesso.
Sto qui ad aggiornare la pagina.
Quindi non posso tornare lì modificarlo.
E vi prometto, non lo faccio avere confederati
che stanno modificando il file a mio nome sul lato.
>> Sto solo utilizzando tale funzione PHP, tempo, per generare il tempo per me
automaticamente.
In modo che anche se sto dormendo, e il mio server Web è in esecuzione,
l'utente che visita la pagina è ancora intenzione di ottenere esattamente l'ora corrente.
In modo che è abbastanza buono.
Ho fatto il mio sito più dinamico con non troppo codice PHP.
Era solo due righe di codice e poi un po 'di una dichiarazione di stampa.
E già ho un sito molto più dinamico
quello primo esempio abbiamo visto all'inizio del video.
>> Quindi, richiamare dal video su sintassi di PHP che quando l'interprete PHP eseguito
il nostro programma, ignora tutto che non è all'interno di delimitatori di PHP,
sputare fuori.
In questo esempio, ciò che la cosa che sputava fuori era HTML.
E questo significa che può ora intervallare HTML e PHP insieme.
Perché l'interprete sarà solo ignorare il codice HTML e letteralmente output.
Il che è buono, giusto?
>> Poiché presumibilmente, alla fine del giorno,
Vorrei che il mio sito per essere costruito di HTML.
In modo che qualsiasi browser web in grado di interpretare esso, o capire il codice HTML della pagina
e renderlo come qualcosa che noi può effettivamente capire come gli esseri umani.
E posso solo usare PHP per le parti del mio sito
la richiedono dinamismo, che mi richiedono di avere le cose che aggiornano costantemente.
Le informazioni statiche può rimanere lo stesso.
>> Ok, va bene.
Ma perché dovrei farlo?
Perché dovrei mescolare HTML e PHP?
Ho potuto solo stampare tutte le HTML, utilizzando la funzione di stampa di PHP.
Perché non farlo?
Pensateci per un secondo.
>> Perché, quando ho potuto solo stampare fuori-- I potrebbe avere linee di PHP che appena dicono,
tag HTML stampa, testina di stampa.
Perché non farlo?
Perché sto mescolando il PHP e HTML?
>> Beh, se si pensa su di esso per un secondo.
PHP, l'interprete ha di interpretare ciò che vede.
E così sta per avere eseguire una riga di codice.
Stampare HTML.
Stampare tag testa aperta.
Stampare tag title aperto.
Sta andando ad avere per eseguire e interpretare
che ogni singolo passo del cammino.
Perché non lasciare che il interprete appena sorvolare
cose che non capisce e farlo automaticamente?
Sta andando a me risparmiare un sacco di tempo per mescolare il mio HTML e il mio PHP insieme.
>> Ed è per questo che non lo facciamo appena hanno aperto delimitatore PHP
e poi basta stampare l'intero il contenuto della nostra pagina di PHP come uno gigante
chiamata alla funzione, di stampa, e quindi delimitatore di chiusura PHP e abbiamo finito.
Ecco perché noi li mescoliamo insieme.
>> Finora, non abbiamo visto troppo di una differenza di sintassi di PHP.
E 'stato piuttosto semplice.
Abbiamo già visto la punto interrogativo, uguali.
Abbiamo visto un paio di nuove chiamate di funzione, ma niente di veramente voglia di andare avanti.
Facciamo forse fare le cose un po 'di fantasia.
Che cosa succede se si vuole passare informazioni tra i diversi file PHP,
in modo che l'utente può forse inviare informazioni a me.
E poi ho potuto fare qualcosa con in un'altra pagina.
>> Così ha il supporto per PHP qualcosa chiamato Super globale
Le variabili, che suona abbastanza impressionante.
Sono davvero solo giganti array associativi
che contribuire all'attuazione questo funzionalità di passaggio
informazioni tra i file PHP che sono esistenti sul nostro web server.
>> Il primo di questi super- globali è chiamato $ _GET.
Ed è probabilmente la più semplici da capire.
Che cosa succede con $ _GET?
Ebbene, in sostanza, l'utente è andando a digitare le informazioni supplementari
alla fine del nostro URL.
E qualunque cosa che tipo, assumendo è formattato in modo particolare
chiamato una stringa di query, che è solo una serie di coppie di valori chiave separate
per ampersands.
Queste coppie di valori chiave saranno memorizzati in un array associativo $ _GET.
E dal nostro video Sintassi di PHP, sappiamo
come lavorare con array associativi già.
Così qui è un esempio di po 'di PHP, dove forse sono
estrarre tutte le coppie di valori chiave che l'utente fornito nell'URL.
Così ho il mio Aprire PHP delimitatore.
Ho un ciclo foreach.
Sto iterazione attraverso il Super Array globale chiamata $ _GET.
>> E io voglio essere in grado di fare riferimento sia la chiave e il valore.
E sto solo stamparli out, ognuna su apparentemente
il proprio punto tag.
Sto stampando alcuni HTML e interpolando i valori
di chiave e il valore in questa affermazione.
>> Quindi, diamo un'occhiata a come questo sarebbe effettivamente lavorare sul nostro IDE.
E forse questo aiuterà illustrare un po '
di ciò che sta effettivamente facendo GET.
Così sono tornato qui nel mio spazio web.
E io lo zoom in un po 'di mostrarvi
che ho un file chiamato, get1.php.
>> Quindi cerchiamo di fare clic su get1.php.
E non sto vedendo alcun contenuto.
Questo è strano, giusto?
Beh, non proprio in realtà.
Perché non ho fornisco nulla nell'URL.
Io vado a get1.php, ma io non ha fornito coppie di valori chiave
come parte della mia stringa di query.
Quindi aggiungiamo una stringa di query e vedere che cosa questo file può fare.
>> Per iniziare una stringa di query si basta digitare punto interrogativo.
Poi magari dirò name = & Doug anno = 2015.
E poi io premete Invio.
Ora notate cosa sta succedendo.
Sono ancora in get1.php.
Ma ora ho fornito coppie di valori chiave, e sono
stamparli in proprio nome paragraph--, anno Doug-- 2015.
Questo è esattamente il codice che abbiamo appena ha visto sul vetrino un momento fa.
>> E se voglio aggiungere forse un altro coppia di valori chiave, e class = CS50.
Ora ho un altro valore chiave coppia che viene stampato
quando ho rivisitare di nuovo l'URL.
Ora, forse questo non è formattato terribilmente bene.
Così ho un'altra versione di get.php.
E 'get2.php.
>> La differenza in questo uno è che ho file CSS,
e formatta le cose un poco più bene per me.
Non è forse il più bella CSS nel mondo.
Ma è solo un altro modo di farlo.
Così posso ancora ottenere l'accesso ai miei variabili tramite $ _GET.
E in questo caso, io sono solo un po ' rendendo il CSS un po 'più di fantasia.
E se abbiamo pop verso il mio IDE per un secondo,
Vi mostrerò nel mio PHP web elenco qui, get2.php.
Apriremo in su, un po 'di HTML qui.
A quanto pare sono collegati che File CSS stavo parlando.
Apro un tag table.
E poi ecco il mio ciclo foreach.
>> Ecco che, quello che ho mostrato sul vetrino prima.
L'unica differenza è che avere questa chiave e il valore CSS
stile che sto applicando ad esso.
Ma questo è tutto quello che sto facendo, si sono l'iterazione tra $ _GET per ottenere tutti
delle coppie di valori chiave.
>> E io li sto stampando come la tabella.
E, a quanto pare, sto formattare le chiavi in un modo, con la classe "chiave" <td =.
Quindi, apparentemente, che vale per alcuni selettore di classe nel mio file CSS GET.CSS.
E, a quanto pare, sto stampando i miei valori di un modo totalmente diverso.
Che è più o meno quello che abbiamo visto qui, dove
i nostri valori sono stati stampati con uno sfondo blu,
e le nostre chiavi sono state stampate con uno sfondo giallo.
Ecco come sto ottenendo questi stili diversi.
Perché sto utilizzando diverse classi CSS.
Ma che è praticamente per GET.
Come Sto solo l'estrazione di informazioni.
E in questo caso, io sono solo stampa allo schermo.
Io sto fuori dell'URL, e questo è quello che fa per noi GET.
>> Vedete un possibile problema qui però?
Perché dovremmo forse Non voglio utilizzare $ _GET?
Che cosa succede se, forse, stavo facendo questa ricerca?
get3.php --to, che ho non hanno il mio IDE.
E 'solo un file ipotetico.
Ma si noti qui che, apparentemente, passando la mia password.
E forse la mia password è imbarazzante.
O forse io non voglio che la gente sapere che cosa la mia password è, a destra.
>> Se sto passando though-- se sto utilizzando il metodo $ _GET, ciò che accade è,
che sta per essere l'URL.
Così alcuni utente malintenzionato potrebbe essere in grado di vedere quello che sto facendo.
Posso loro essere di passaggio informazione sensibile.
O forse non è nemmeno un utente malintenzionato.
Forse è solo il tuo amico che è in piedi sopra la spalla.
E ora conoscono la password al tuo account Facebook.
>> E forse non avrebbero fare qualsiasi cosa con esso.
Ma se la vostra password fosse presentate attraverso $ _GET a Facebook,
ora sanno la password di Facebook.
Perché è proprio lì nella URL quando hai fatto l'invio di informazioni.
>> E così forse non è la migliore modo per passare le informazioni sensibili.
E 'un buon modo per passare informazioni che noi non particolarmente
preoccupano di come troppo sensibile.
Perché GET è abbastanza veloce, rispetto agli altri globali eccellenti
stiamo andando a parlare.
Ma forse non il migliore strumento per le informazioni sensibili.
>> Per questo si potrebbe desiderare di utilizzare qualcosa chiamato $ _POST,
che è un altro variabile Super globale.
E 'un altro array associativo.
Così funziona più o meno esattamente come GET.
Tranne, invece di estrarre informazioni dall'URL,
lo fa qualcosa attraverso le intestazioni HTTP.
Quindi richiamare dal nostro video su HTTP, abbiamo parlato
su come browser, server, e client comunicano.
E le informazioni viene ripassato e indietro nelle intestazioni HTTP.
>> Con $ _POST, informazioni è tipicamente inviati attraverso queste intestazioni HTTP.
E faremo più comunemente vediamo $ _POST in il contesto di presentare moduli HTML.
È comunque possibile utilizzare moduli HTML di presentare le cose da ottenere.
Ma sono solitamente utilizzati nel contesto di POST.
>> Quindi, ecco un esempio di un modulo HTML.
Ora che abbiamo visto questi prima, ma abbiamo Non visto questo parte, action = "post.php".
Così, quando abbiamo parlato di forme nel contesto di HTML, ho avuto un pulsante Invia.
E se vi ricordate, mi piacerebbe fare clic su Invia e quindi la pagina appena aggiornata,
non ha fatto nulla.
>> In questo caso, sto presentando qualunque cosa io batto in questo modulo,
a un file PHP chiamato post.php.
E, a quanto pare, il modo in cui sto facendo che in questa forma sta utilizzando il metodo POST.
Così ogni pezzo di informazione che scriv in questa forma
sarà presentato attraverso le intestazioni HTTP.
>> Sarà accessibile in post.php, perché questo è l'azione della mia forma.
Sarà accessibile andando a $ _POST.
E a quanto pare, il modo in cui posso arrivare a ogni singolo elemento
con quel array associativo è con questo attributo,
l'attributo Name dei nostri tag di ingresso.
>> Quindi, apparentemente posso dire $ _POST piazza staffe nome per ottenere ciò che l'utente
digitato nel primo campo.
E $ _POST password di pw piuttosto, per arrivare a qualunque l'utente ha digitato
nel secondo campo.
>> Quindi, diamo uno sguardo a questo oltre a CS50 IDE.
Ed eccoci qui, e io zoom in per un secondo.
E abbiamo un file chiamato post.html.
Clicco su post.html.
Nella parte superiore qui ho una molto semplice modulo web.
E 'il modulo che abbiamo appena visto sul vetrino un secondo fa.
>> Posso scrivere, Doug, e posso digitare la password, che tutti
sapere è squadgoals.
E io colpirò Invia.
E a quanto pare, che sottopone a post.php.
E sto a quanto pare di stampare tale.
Così sto sbarazzarsi di tutta la sicurezza che POST mi dà semplicemente stampando
il nome utente e la password.
>> Il nome dell'utente è Doug.
La password dell'utente è squadgoals.
Come ho fatto questo?
Beh, andare su un IDE ancora per un secondo.
Faremo scorrere verso il basso per prendere uno sguardo al post.php, che era
l'azione che ho usato per presentare qui.
Quello era l'azione della mia forma HTML.
E questo è tutto quello che sto facendo.
Il nome utente è, e io sono la stampa il contenuto di $ _POST "nome".
E poi la password dell'utente è $ _POST "password".
Così mi è stato dato che le informazioni inviando il modulo HTML.
E ora posso estrarre utilizzando $ _POST perché il metodo che ho usato per trasmettere
dati con quella forma era il metodo POST.
>> Ora probabilmente non è così great-- Vado
di tornare per un secondo al nostro set qui--
probabilmente non è così grande, se io sono trasmissione delle informazioni con il POST,
che è apparentemente più sicuro.
Probabilmente non è così grande se sto facendo questo e poi
stampare la password dell'utente.
Si suppone che sia più sicuro.
>> OK, ma non è del tutto sicuro.
E così in questo piccolo Snippet qui voglio
per attirare la vostra attenzione solo per un po ' problemi di sicurezza dei dati, solo qualcosa
di pensare a come si sta lavoro o utilizzando internet.
Questo è solo una cosa da considerare.
>> Ti ho detto che l'informazione è presentata attraverso le intestazioni HTTP
quando si utilizza il metodo POST.
Il che significa che non sono del tutto sicuro.
Sono più difficili da trovare rispetto utilizzando il metodo GET, dove
è giusto nell'URL.
Ma c'è ancora un modo per trovarlo.
E voglio solo mostrare questo in modo che forse
iniziare a pensare a questo come si sta lavorando, o utilizzando
siti web e presentare password e magari utilizzando
la stessa password in un sacco di posti diversi.
Sappiate che è ancora in realtà piuttosto facile per scoprire la password di qualcuno.
>> Ed ecco, io vado per andare a post2.html.
E la differenza con post2.html e post2.php è piuttosto sottile.
La differenza è solo che non vengono stampati
la password quando presento il modulo.
>> Quindi ho intenzione di digitare, Doug.
E ho intenzione di scrivere in, squadgoals, anche
se sappiamo che è la password.
Prima di inviare il formo però, sto andando
aprire Strumenti di sviluppo, solo per mostrare ciò che sta per succedere qui.
Così in Chrome, sto solo andando a colpire F12.
E che sta per aprire il mio Strumenti di sviluppo sul lato destro.
Non ho ancora inviato il modulo.
Ora sto andando a colpire Submit sulla mia forma.
E a quanto pare, ho fatto un chiamo, o ho fatto una richiesta
a post2.php, che ha un senso.
Io vado a cliccare su quel.
>> Poi qui, ho intenzione a fare clic su intestazioni.
C'è un sacco di roba in corso qui.
Ma se ho scorrere verso il basso fino alla in basso, a destra avviso there-- mio calendario
ha bloccato per un giusto secondo-- lì in un angolo molto basso,
nome-- Doug, squadgoals pw--.
Così, anche se sto usando il POST metodo, che è più sicuro,
basta essere consapevoli che quando si fa così, si sta ancora trasmettendo informazioni
tramite HTTP.
E può essere ancora trovata da un avversario.
E 'solo qualcosa che stiamo andando di avere a che fare con davvero.
Forse c'è qualche modo per crittografare il nostro le password prima di inviarli finita,
che sarebbe meglio, che io non sto facendo qui.
>> Ma basta essere consapevoli che il POST metodo ha dei limiti troppo.
Si tratta di un miglioramento rispetto a GET termini di essere immediatamente visibile.
Ma non è una soluzione completa.
Quindi, ecco un esempio di un veloce a casa esercizio
che è possibile utilizzare per ottenere un po ' pratica lavorando con PHP.
Creare la seguente coppia di pagine web.
Il primo dovrebbe essere solo una semplice formare con un solo campo e un Submit
pulsante.
Quindi, molto simile a quello che abbiamo appena fatto con post.html.
>> E poi il secondo file che si dovrebbe creare
è un file, un file PHP, che si aspetta di ingresso, via posta,
e sulla base di ciò digitato dall'utente, che si può presumere sarà un numero intero.
Non dovete fare qualsiasi controllo di errore o simili.
Si può assumere l'utente si digita un valore intero,
o qualcosa come un interpretata da PHP come un intero, in quella forma.
Hai voglia di creare un n da tavolo n moltiplicazione.
>> Quindi, se l'utente invia 10, vogliamo avere un tavolo 10 del 10 moltiplicazione.
Se l'utente invia un 12, che vogliamo una tabella 12 del 12 moltiplicazione.
Solo così è possibile vedere ciò che noi stiamo guidando a qui,
daremo uno sguardo a questo file nel mio IDE.
>> Così qui in IDE, ho mult_form.html.
Farò clic esso.
Tutto quello che voglio fare è inviare un valore.
Digitare 10, ha colpito Submit.
E a quanto pare, mult_table.php, che possiamo vedere in cima c'è nella URL,
Sto creando un 10 da 10 tavola pitagorica.
>> Se digito 15 e ha colpito Submit, ora avere un tavolo 15 per 15 moltiplicazione.
Sono, ovviamente, non andando a mostrare i contenuti di mult_table.php,
perché che avrebbe preso il divertimento da questo a casa esercizio.
Ma è un ottimo modo per ottenere qualche praticare lavorare con loop PHP
e POST, molto semplice, si spera lo stress esempio gratuito, basta
per fare un po 'di pratica.
E ho un po 'di CSS in corso qui per fare il mio tavolo singolo
cellule solo tipo di pop fuori una po 'e guardare un po' di più
come una tavola pitagorica, al contrario di testo appena appena
tipo di seduta lì.
L'ultima super-globale parleremo in questo video è una cosa chiamata
$ _SESSION.
E forse questo è in realtà il miglior esempio di qualcosa
potremmo considerare globale.
Si tratta di un altro array.
E 'un altro array associativo.
Ma è accessibile attraverso ogni File PHP che esiste sul nostro sistema.
>> Non abbiamo di presentare informazioni di una pagina per volta
come facciamo con GET e POST con.
E 'sempre lì.
E così questo è ottimo per una pagina dove si è connessi, ad esempio,
e si desidera che le informazioni di accesso a persistere da pagina a pagina all'altra.
>> Si può solo avviare una sessione e poi utilizzare $ _SESSION per salvare le cose come
il nome dell'utente, o l'utente del Informazioni ID, e così via.
E che le informazioni rimarranno in $ _SESSION Fino a quando si distrugge la sessione
un po 'più tardi.
>> Scrittura di siti web dinamici con PHP li rende molto meglio.
I siti diventano molto dinamica, e non fare
hanno a che fare anche molto di più di quello che altrimenti avresti fatto solo
farlo con HTML.
Ma richiede pratica, un sacco di pratica.
>> Sapete già come lavorare con C, e così il salto di PHP non è troppo difficile.
Che cosa è forse un po ' po 'complicato sta lavorando
con questa nuova idea di GET e POST, e magari mescolando il codice HTML e PHP
insieme.
Ma anche essere consapevoli del fatto che Internet è un vasto archivio di informazioni.
E la documentazione di PHP è disponibile in molti luoghi, ma forse più
canonicamente a php.net.
E si possono trovare lì, un sacco di funzioni diverse,
Utilizzando casi ed esempi upon esempi, su esempi.
Dove se si vuole cercare di figura il modo di fare qualcosa, le probabilità sono,
qualcuno sta probabilmente fatto prima di voi.
E si possono usare come ispirazione per realizzare qualunque
è si sta cercando di attuare anche.
>> Sono Doug Lloyd.
Questo è CS50.