Dubbio generico riguardo l'uso di php

tommy_2222
Ho iniziato da poco a studiare html5, php e javascript. Spontaneamente mi è venuto questo dubbio: in teoria si tutto quello che può fare php lo si può fare anche in javascript? Se sì, e non è invece viceversa, perché usare php e non fare direttamente tutto in javascript?

Risposte
Summerwind78
Ciao

leggendo la tua domanda ho modo di capire che non ti è chiara la differenza tra php e javascript.

Ovviamente non sto parlando di sintassi.

il javascript è un linguaggio che si integra nelle pagine html e viene eseguito dal browser dell'utente che sta visitando una pagina.
Mi spiego meglio...
Quando tu navighi in internet e visiti una pagina che contiene codice javascript www.pagina.html, il server a cui ti colleghi ti invia il codice html che tu visualizzerai nel tuo browser (per esempio firefox) e anche tutto il codice javascript che la pagina contiene. In pratica ti effettui un piccolo download di codice.
Questo codice viene quindi eseguito dal tuo browser sul tuo pc.
infatti il codice javascript che è contenuto in una pagina tu lo puoi vedere benissimo visualizzando il sorgente della pagina, anche se questa pagina non è stata fatta da te.
Possiamo quindi dire che il javascript è codice "lato client", ovvero viene eseguito dal computer che riceve la pagina.
Il server non sa che cosa il codice javascript di una pagina stia facendo quando la pagina è arrivata a destinazione dal client.

Il php invece è codice che viene eseguito dal server PRIMA che la pagina ti venga mandata.
Il codice php non arriva mai al client. Viene utilizzato per eseguire operazioni sulla pagina e poi inviarla il client.
Un buon esempio di utilizzo del php è quello di interfacciarsi con dei database presenti sul server.
Sarebbe assurdo che ogni utente debba scaricarsi l'intero database (che magari è enorme) sul suo pc per poi leggere i dati con javascript.
Capisci da solo che non solo questo comporterebbe un uso esagerato della connessione perchè dovresti scaricare sul tuo pc tantissimi dati, ma questo darebbe modo a te di avere sul tuo computer un database che non ti appartiene.

Per esempio quando tu ti sei registrato su questo forum hai scelto username e password, questi dati sono stati mandati al server che li ha memorizzati in un database per mezzo di pagine php che hanno eseguito questo lavoro. Ogni volta che tu entri nel forum e fai il login, il tuo browser prende il nome utente che gli dai e la password, tramite il javascript invia questi dati al server che per mezzo del php, controlla se questi dati sono presenti nel database e di conseguenza ti manda le pagine contenenti i tuoi ultimi messaggi etc.
Quindi per concludere il php è un linguaggio "lato server".

Spero di averti dato una mano, se hai ancora dubbi chiedi pure

Ciao

claudio862
"tommy_2222":
Ho iniziato da poco a studiare html5, php e javascript. Spontaneamente mi è venuto questo dubbio: in teoria si tutto quello che può fare php lo si può fare anche in javascript? Se sì, e non è invece viceversa, perché usare php e non fare direttamente tutto in javascript?

In teoria sì. Si può usare node.js per scrivere applicazioni web (lato server) in javascript. O in Java, Ruby, Haskell, Python, la piattaforma .NET... Tempo fa si usavano anche C e Perl. In pratica dipende.
In generale, esistono molti linguaggi che si possono usare in un determinato campo, ognuno ha pro e contro. PHP è nato parecchio tempo fa come alternativa per siti non professionali (infatti l'acronimo significa Personal Home Page). Le critiche principali sono che il suo sviluppo è stato molto caotico, senza un obiettivo chiaro, che risulta in un gran numero di inconsistenze nel linguaggio, e che permette di scrivere facilmente codice molto molto sporco (in fondo non era destinato a professionisti). Linguaggi più moderni e meglio progettati permettono infatti di scrivere codice molto più robusto e mantenibile. Tra i pro invece ci sono la sua semplicità, e il fatto che nei suoi quasi vent'anni di esistenza sono usciti una valanga di framework (Wordpress, Joomla...) robusti e personalizzabili.

In teoria potresti pure usare PHP come linguaggio di scripting lato client. In pratica nessun browser supporta (né probabilmente supporterà mai) un interprete PHP.

tommy_2222
Grazie! Decisamente un'ottima spiegazione, non potevo ricevere di meglio

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.