[Powered by Google Translate] [PHP Desenvolvimento Web] [Tommy MacWilliam] [Isto é CS50.] [CS50.TV] Neste vídeo, vamos aprender sobre o uso de PHP para desenvolvimento web. PHP é uma linguagem de script que pode ser usado para implementar sites em um servidor web. Um servidor web é essencialmente uma máquina dedicada ao fornecimento de conteúdo que pode ser acessado através da internet. Quando você navegar para uma página da web como Facebook.com / home.php o código no arquivo chamado home.php que vive em um servidor web Facebook em algum lugar será executado no servidor. Este código provavelmente vai gerar alguma saída que por sua vez irá ser enviado a partir do servidor para o seu navegador. Nós estaremos usando o aparelho CS50 como um servidor web. A sua máquina provavelmente não será tão poderosa quanto as máquinas Facebook em um centro de dados, mas você não terá nenhum problema de usá-lo para o desenvolvimento web. Quando navegar para uma URL como http://localhost/ola.php vamos configurar o aparelho através de um aplicativo chamado o servidor Apache HTTP para procurar um arquivo chamado ola.php dentro de casa / jharvard / vhosts / LocalHosts / html por padrão. Se esse arquivo existe, então o Apache vai usar o interpretador PHP para executar o código PHP em ola.php. Se esse arquivo não existir, em seguida, o Apache irá lançar um erro não encontrado ou um erro 404, o que você provavelmente já viu enquanto navega na web. Vamos dar uma olhada em ola.php. Podemos ver aqui que ola.php gera uma linha de sinal de saída. Quando corremos ola.php na linha de comando via php ola.php que a saída foi impresso no terminal. Agora, quando acessar esse arquivo por meio de uma URL no navegador da web sua saída será enviada para o navegador da web, assim indo para a URL, http://localhost/ola.php, podemos ver a saída em nosso navegador. Vamos tentar adicionar outro printf para o nosso programa Olá mundo. Ok, vamos voltar para o navegador da web e ver o que nós temos. Interessante. Em vez de imprimir uma outra linha em sua própria linha, como você teria visto no terminal, parece que ele foi esmagado na mesma linha como o outro printf, então talvez novas linhas não funcionam no PHP. Não é bem assim. Lembre-se que HTML é normalmente usado para criar páginas web que podem ser exibidos por navegadores da web. Não só é a string Olá do php HTML não é válida, mas lembro que não podemos usar o caractere \ n em HTML para criar uma quebra de linha. Em vez de simplesmente a saída de saída HTML válido de um let string. Ao utilizar tags de parágrafo de cada um dos nossos apelos printf será exibido em sua própria linha, Agora, quando nós visitamos o URL que aponta para valid.php http://localhost/valid.php vemos a saída que estamos procurando. Agora, se olharmos para o código desta página podemos ver que nós estamos agora olhando para HTML válido, que criamos a partir de PHP. Colocar todo o nosso HTML dentro chamadas printf é, naturalmente, vai ficar muito chato. Felizmente, pode facilmente misturar HTML e PHP no mesmo arquivo php.. Lembre-se, todo o nosso código PHP devem ser colocados dentro de . Qualquer coisa que não é fechado dentro destes delimitadores será simplesmente enviado como saída para o navegador em vez de ser executada. Isso significa que podemos fazer algo assim. Podemos simplesmente escrever HTML dentro do nosso arquivo php. e, em seguida, inserir blocos PHP onde gostaríamos algum código php para ser executado. Aqui vamos definir algumas variáveis ​​no topo do arquivo, e depois, imprimi-los dentro do nosso HTML. Agora, se visitar esta URL, http://localhost/mixed.php podemos ver o nosso PHP avaliadas dentro do nosso HTML. Agora vamos dar uma olhada em como podemos passar dados entre as nossas várias páginas PHP. Ao invés de dizer podemos simplesmente dizer . Vamos agora dar uma olhada em como podemos passar dados entre as nossas várias páginas PHP. Uma maneira de fazer isso é para codificar a informação para o URL de uma página. Ao navegar na Web, você deve ter notado que alguns URLs conter uma? seguido por uma seqüência contendo ampersands e sinais iguais. Esta parte da URL é conhecida como a seqüência de consulta, e isso permite que você passe efetivamente argumentos para seu script PHP. A cadeia de consulta consiste em pares de valores-chave, assim como uma tabela hash. Um sinal de igual separa uma chave e seu valor correspondente enquanto ampersands separar pares. A URL que se parece com http://localhost/get.php?foo=bar&baz=qux tem 2 pares de valores-chave na seqüência de consulta. O foo chave mapeia para o bar de valor, eo baz chave mapeia para o valor qux. Nós podemos facilmente acessar esses pares de valores-chave usando uma variável especial em PHP, $ _GET. $ _GET É um array associativo que é automaticamente preenchido com os dados de seqüência de consulta. Isso significa que, dada esta URL $ _GET ["foo"] será igual à barra de cadeia. Vamos dar uma olhada para ver get.php $ _GET em ação. Aqui nós estamos usando uma função chamada var_dump, que, quando dado uma matriz ou outra variável vai imprimi-lo para nós. Agora, se nós simplesmente acessar http://localhost/get.php então vamos ver um array vazio, porque não têm proporcionado uma string de consulta. Se nós fornecemos uma string de consulta via http://localhost/get.php?foo=bar&baz=qux então podemos ver que a variável $ _GET conterá pares de valores-chave da cadeia de consulta. Mas e se nós não queremos colocar nossos dados dentro da URL de uma página? Para grandes quantidades de dados, o que pode resultar em algumas URLs muito feias que vão fazer a nossa brilhante coxo website olhar. Nós, ao contrário pode colocar a string de consulta para o corpo das solicitações HTTP em vez de URL do pedido. Então, podemos usar a variável do PHP $ _POST para acessar os pares de valores-chave. Uma maneira de fazer isso é através de um formulário HTML. Aqui temos um formulário HTML simples. Observe aqui que o atributo de método desta forma é post. Isso diz ao navegador para colocar pares de valores-chave do formulário para dentro do corpo do pedido, em vez de o URL. Se fôssemos usar o valor ganho por este atributo em seguida, pares de valores-chave do formulário que em vez de ir para a string de consulta, para que pudéssemos acessá-los via $ _GET novamente. O atributo action do formulário diz ao navegador para onde enviar os dados. Aqui os nossos dois elementos de entrada têm atributos de nome. O valor dos atributos de nome servirá como chaves em nossos dados, e os valores das entradas de texto será valores dessas chaves. Agora vamos dar uma olhada em post.php, o arquivo que esta forma é submeter-se. Assim como fizemos antes, nós estamos simplesmente exibir o conteúdo da variável $ _POST. Vamos navegar para o formulário com http://localhost/form.php. Agora, quando enviar o formulário, podemos ver que os dados do form.php é passado para post.php sem acrescentar uma string de consulta para o URL. Agora que já vimos duas maneiras diferentes de passar dados entre páginas PHP, GET e POST. Em nossos exemplos, foram utilizados dois tipos diferentes de solicitações HTTP. Como você poderia esperar, um pedido get foi usado quando nós povoada $ _GET Do URL, e uma solicitação post foi utilizada quando povoada $ _POST. Na concepção de suas aplicações web é uma boa regra de ouro para usar requisições GET quando o seu aplicativo só irá ler dados, e os pedidos pós quando o seu aplicativo irá gravar dados. Por exemplo, uma consulta de pesquisa irá ler dados de seu aplicativo, assim um pedido get faz sentido. Por outro lado, o seu aplicativo irá gravar dados via algo como um formulário de inscrição, assim que uma solicitação post faria mais sentido, e isso é uma visão geral de algumas das técnicas estaremos usando em CS50 para criar sites usando PHP. Meu nome é Tommy, e essa é CS50. [CS50.TV]