[Powered by Google Translate] [PHP Desenvolvemento Web] [Tommy MacWilliam] [Isto é CS50.] [CS50.TV] Neste vídeo, imos aprender sobre o uso de PHP para desenvolvemento web. PHP é unha linguaxe de script que se pode usar para aplicar sitios nun servidor web. Un servidor web é esencialmente unha máquina dedicada á subministración de contidos que se pode acceder a través de Internet. Cando navegar a unha páxina web como Facebook.com / home.php o código no ficheiro chamado home.php que vive nun servidor web Facebook nalgún lugar será executado no servidor. Este código probablemente vai xerar algunha saída que á súa vez pode ser enviado desde o servidor ao seu navegador. Estaremos a usar o aparello CS50 como un servidor web. A súa máquina probablemente non será tan poderosa como as máquinas Facebook en un centro de datos, pero non terá ningún problema de usalo para o desenvolvemento web. Cando navegar a unha URL como http://localhost/ola.php imos configurar o dispositivo a través dunha aplicación chamado o servidor Apache HTTP para buscar un arquivo chamado ola.php dentro de casa / jharvard / vhosts / LocalHosts / html por defecto. Se este ficheiro existe, entón Apache vai utilizar o intérprete de PHP para realizar o código PHP en ola.php. Se este ficheiro non existe, logo Apache promoverá un erro Non se atopou ou un erro 404, o que probablemente xa viu mentres navega na web. Imos dar un ollo a ola.php. Podemos ver aquí que ola.php xera unha liña de sinal de saída. Cando corremos ola.php na liña de comandos a través de php ola.php que a saída foi impreso no terminal. Agora, cando acceder a este ficheiro a través dunha URL no navegador web súa saída será enviada ao navegador web, así indo a URL, http://localhost/ola.php, vemos a saída en noso navegador. Imos tentar engadir outro printf para o noso programa Ola Mundo. Ok, imos volver ao navegador web e ver o que temos. Interesante. No canto de imprimir outra liña na súa propia liña, como vería no terminal, parece que foi esmagado na mesma liña como o outro printf, entón quizais novas liñas non funcionan no PHP. Non é ben así. Lembre que HTML é normalmente usado para crear páxinas web que poden aparecer por navegadores web. Non só é a cadea Ola PHP HTML non é válida, pero lembra que non podemos utilizar o carácter \ n HTML para crear unha quebra de liña. En vez de simplemente a saída de saída HTML válido dun let cadea. Ao usar as etiquetas de parágrafo de cada un dos nosos chamamentos printf aparecerá na súa propia liña, Agora, cando visitamos a URL que apunta a valid.php http://localhost/valid.php vemos a saída que estamos a buscar. Agora, se miramos para o código da páxina vemos que estamos agora mirando para HTML válido, que creamos a partir de PHP. Poñer todo o noso HTML dentro chamadas printf é, por suposto, vai ser moi aburrido. Afortunadamente, pode facilmente mesturar HTML e PHP o mesmo ficheiro php .. Lembre, todo o noso código PHP deben ser colocados dentro . O que non é pechado dentro destes delimitadores será simplemente enviado como saída para o navegador en vez de ser executada. Isto significa que podemos facer algo así. Podemos simplemente escribir HTML dentro do noso arquivo php. e logo, introducir bloques PHP onde queremos algún código php para ser executado. Aquí imos definir algunhas variables na parte superior do ficheiro, e despois, imprimir-los dentro do noso HTML. Agora, se visitar esta URL, http://localhost/mixed.php podemos ver o noso PHP avaliadas dentro do noso HTML. Agora imos dar un ollo a como podemos pasar datos entre as nosas varias páxinas PHP. En vez de dicir podemos simplemente dicir . Imos agora dar un ollo a como podemos pasar datos entre as nosas varias páxinas PHP. Unha forma de facelo é para codificar a información para a URL dunha páxina. Mentres navegue pola web, ten que notar que algúns URLs conter unha? seguido por unha secuencia que conteña ampersands e signos iguais. Esta parte da URL é coñecida como a secuencia de consulta, e iso permite que pase efectivamente argumentos para o seu script PHP. A cadea de consulta consiste en pares de valores clave, así como unha táboa hash. Un signo igual separa unha chave e o seu valor correspondente mentres ampersands separar parellas. O URL que se parece http://localhost/get.php?foo=bar&baz=qux ten 2 pares de valores clave na secuencia de consulta. O foo clave mapea ao bar de valor, eo Baz clave mapea ao valor qux. Podemos facilmente acceder a estes pares de valores clave usando unha variable especial en PHP, $ _GET. $ _GET É un array asociativo que é automaticamente cuberto cos datos de secuencia de consulta. Isto significa que, dada esta URL $ _GET ["foo"] será igual á barra de cadea. Imos dar un ollo a ver get.php $ _GET en acción. Aquí estamos a usar unha función chamada var_dump, que, cando deu unha matriz ou outra variable vai imprimir lo para nós. Agora, se nós simplemente acceder http://localhost/get.php entón imos ver un array baleiro, porque non teñen proporcionado unha cadea de consulta. Se nós fornecen unha cadea de consulta vía http://localhost/get.php?foo=bar&baz=qux entón podemos ver que a variable $ _GET conterá pares de valores clave da cadea de consulta. Pero e se nós non queremos poñer os nosos datos dentro do URL dunha páxina? Para grandes cantidades de datos, o que pode producir algunhas URLs moi feas que van facer o noso brillante coxo web ollar. Nós, pola contra pode pór a cadea de consulta para o corpo das solicitudes HTTP en vez de URL da solicitude. Entón, podemos utilizar a variable de PHP $ _POST para acceder aos pares de valores clave. Unha forma de facelo é a través dun formulario HTML. Aquí temos un formulario HTML sinxelo. Teña en conta aquí que o atributo de método deste xeito é post. Isto di ao navegador para poñer pares de valores clave do formulario para dentro do corpo da solicitude, en vez de o URL. Se fósemos utilizar o valor gañado por este atributo logo pares de valores clave do formulario que en vez de ir á cadea de consulta, para que puidésemos acceder a eles vía $ _GET novo. O atributo action do formulario di ao navegador para onde enviar os datos. Aquí os nosos dous elementos de entrada teñen atributos de nome. O valor de atributo de nome servirá como chaves en nosos datos, e os valores das entradas de texto será valores destas claves. Agora imos dar un ollo a post.php, o ficheiro que esta forma é someter-se. Así como fixemos antes, estamos simplemente mostrar o contido da variable $ _POST. Imos ir ao formulario con http://localhost/form.php. Agora, cando enviar o formulario, podemos ver que os datos do form.php é pasado para post.php sen engadir unha cadea de consulta ao URL. Agora que xa vimos dous xeitos diferentes de pasar datos entre páxinas PHP, GET e POST. Nos nosos exemplos, utilizáronse dous tipos de solicitudes HTTP. Como podería esperar, unha proposta get foi usado cando poboada $ _GET Do URL, e unha solicitude post foi utilizada cando poboada $ _POST. No deseño das súas aplicacións web é unha boa regra de ouro para usar peticións GET cando a súa aplicación só pode ler os datos, e as solicitudes post cando a súa aplicación pode gravar datos. Por exemplo, unha consulta de busca pode ler os datos da súa aplicación, así unha solicitude get ten sentido. Por outra banda, a súa aplicación pode gravar datos vía algo así como un formulario de inscrición, así que unha solicitude post faría máis sentido, e iso é unha visión xeral dalgunhas das técnicas estaremos a usar en CS50 para crear sitios usando PHP. O meu nome é Tommy, e esa é CS50. [CS50.TV]