Baixe o app para aproveitar ainda mais
Prévia do material em texto
Introdução PHP lhe dá a liberdade para adicionar recursos avançados para o seu site. O objetivo deste tutorial é dar-lhe uma introdução fácil, mas completa e precisa do PHP. Tudo começa a partir do zero, mas exige que você já tem um bom conhecimento de HTML. Se você é novo no HTML, você deve começar com nosso tutorial HTML . PHP pode ser usado em muitos contextos - fóruns de discussão, enquetes, lojas, gateways SMS, listas de discussão, etc A única limitação com o que você escolhe fazer com PHP é a sua imaginação. PHP não é difícil de aprender, mas esteja ciente de que o PHP é mais sofisticado e exigente de aprender do que HTML. Portanto, a paciência no processo é uma virtude. Este tutorial não pode mostrar-lhe tudo. Portanto, é necessário algum empenho e uma vontade de experimentar. Se precisar de ajuda ao longo do caminho, recomendamos que você use os fóruns para esse apoio. Este é o lugar onde você se encontra com os verdadeiros especialistas que estão dispostos e prontos para oferecer dicas, sugestões e conselhos. O que é necessário? Supõe-se que você já tem um editor de texto e saber como ele é usado. Em seguida, você precisa de acesso a um computador ou um servidor que pode ser executado PHP. Em contraste com HTML e CSS, PHP é não afetada pela qual navegador o uso visitantes, mas o tipo de servidor que hospeda as páginas. Isso ocorre porque o PHP é um do lado do servidor tecnologia. Nas próximas aulas, você vai aprender tudo sobre como funciona o PHP, e como configurar seu computador para executar PHP. Depois disso, você vai aprender sobre as funções e métodos específicos. Quando você terminar este tutorial, você será capaz de código PHP e, assim, ter acesso a possibilidades ilimitadas para adicionar interatividade a suas páginas. Divirta-se! Lição 1: O que é PHP Sempre que alguém está aprendendo PHP, as perguntas mais comuns que surgem em primeiro lugar são: O que é PHP? E como isso funciona? É justamente essas questões, vamos olhar nesta lição. É uma grande ajuda para entender esses conceitos básicos relacionados ao PHP antes de começar a desenvolver você possui páginas PHP. Tal compreensão básica irá aumentar a velocidade de aprendizagem significativamente. Então, vamos começar! O que é PHP? PHP foi originalmente um acrônimo para P ersonal H ome P idades, mas agora é um acrônimo recursivo para P HP: H ypertext P reprocessor. PHP foi originalmente desenvolvido pelo dinamarquês Greenlander Rasmus Lerdorf, e posteriormente foi desenvolvido como open source. PHP não é um padrão web adequada -, mas uma tecnologia open-source. PHP não é linguagem de programação de verdade - mas PHP permite que você use os chamados scripts em seus documentos. Para descrever o que uma página PHP é, você poderia dizer que é um arquivo com a extensão . php que contém uma combinação de tags HTML e scripts que são executados em um servidor web. Como o PHP funciona? A melhor maneira de explicar como funciona o PHP é, comparando-o com o padrão HTML. Imagine que você digite o endereço de um documento HTML (por exemplohttp://www.mysite.com/page.htm ) na linha de endereço do navegador. Desta forma, você solicitar uma página HTML. Poderia ser ilustrada da seguinte forma: Como você pode ver, o servidor simplesmente envia um arquivo HTML para o cliente. Mas se você digitar em vez http://www.mysite.com/page.php - e, assim, solicitar uma página PHP - o servidor é colocado para trabalhar: O primeiro servidor lê o arquivo PHP com cuidado para ver se há todas as tarefas que precisam ser executadas. Só quando o servidor fez o que deveria fazer, o resultado é enviado para o cliente. É importante entender que o cliente só vê o resultado do trabalho do servidor, e não as instruções reais. Isso significa que se você clicar em "ver fonte" em uma página PHP, você não vê os códigos PHP - apenas etiquetas HTML básico. Portanto, você não pode ver como uma página PHP é feita usando "view source". Você tem que aprender PHP de outras maneiras, por exemplo, lendo este tutorial. O que você aprenderá neste tutorial é escrever comandos para um servidor! Então, a primeira coisa que você precisa para conseguir falar com é ... um servidor! Mas não se preocupe - você não precisa comprar um computador novo. Você só precisa instalar um software no seu computador que faz funcionar como um servidor. Outra opção é ter um site hospedado em um servidor que suporte PHP. Então você só precisa estar online ao mesmo tempo de codificação. A próxima aula é sobre como obter o seu computador funcione como um servidor. Lição 2: Servidores PHP é server-side tecnologia. Portanto, você precisa ter um servidor para executar PHP. Mas não precisa custar nada para fazer esta atualização e há várias opções para fazê-lo. Desde que você, finalmente, só precisa escolher uma opção, esta lição é dividida em três partes. Primeiro vem uma pequena introdução sobre as diferentes opções (basta escolher o que melhor lhe convier). Quando o servidor está instalado e funcionando, vamos pegar com Lição 3 para fazer a sua primeira página PHP. Opção 1: Web site em um servidor hospedado Você pode optar por ter um site em um host que suporte PHP. Teste se o seu host suporta PHP Se você ainda não tem um site hospedado no servidor, você pode criar uma conta gratuita no 000webhost.com que suporta PHP. Opção 2: Instalar o PHP no seu computador Não é nenhum passeio no parque para instalar o PHP em seu computador. Esta opção só é recomendada para usuários experientes, mas, obviamente, pode ser feito. Aqui estão os links para downloads e guias installtion: Guia de instalação do Windows Guia de instalação do Mac Guia de instalação Linux Opção 3: XAMPP XAMPP é um programa que torna mais fácil e possível para nós, pessoas comuns para executar o PHP diretamente no nosso computador sem ter que instalar o PHP em nosso próprio país. Saiba como instalar o XAMPP Lição 3: Sua primeira página PHP De lição 1 e 2, você já sabe um pouco sobre o que é PHP, e que você tenha instalado (ou ter acesso a) um servidor. Agora estamos prontos para começar a fazer a nossa primeira página PHP. Nós mantê-lo simples e fácil, mas depois de ter passado por essa lição, você vai entender muito mais sobre o que é PHP eo que você pode fazer com ele. Basicamente, um arquivo PHP é um arquivo de texto com a extensão php. que consiste em: Texto Tags HTML Scripts PHP Você já sabe o texto e HTML tags são. Então, vamos olhar um pouco mais em scripts PHP. Scripts PHP PHP Documentation Grupo emitiu detalhada documentação para PHP . Ao longo do tutorial, haverá muitos links para a documentação. O objetivo é que você se acostumar a olhar para cima e encontrar respostas para suas perguntas. PHP é tão extenso que você não pode aprender todas as facetas deste tutorial. Mas o PHP não é difícil! Pelo contrário, o PHP é, frequentemente, muito semelhante a planície Inglês. Vamos começar com a primeira página PHP. Exemplo: Olá mundo! Comece por fazer um documento HTML normal, mas o nome do arquivo page.php e salve- o na raiz do site: Se você usar o XAMPP (ver lição 2 ), o caminho para a raiz é "c: \ xampp \ htdocs \ page.php" no seu computador (que agora é um servidor). Leia mais abot salvar arquivos PHP no XAMPP . Se você tem um site em um host que suporte PHP, você simplesmente fazer o upload / FTP o arquivo para o seu host. O código HTML deve ser semelhante a este: <html> <head> <title> Minha primeira página PHP </ title> </ Head> <body></ Body> </ Html> Como você provavelmente se lembra da lição 1, o PHP é tudo sobre a escrita de comandos para um servidor. Então vamos escrever um comando para o servidor. Em primeiro lugar, é preciso dizer ao servidor quando o PHP vai começar e terminar. No PHP você usar as tags <? php e > para marcar o início eo fim dos códigos PHP que o servidor deve executar (na maioria dos servidores será suficient usar apenas <? como marca de início, mas <? php é o mais correto a ser utilizado pela primeira vez PHP é usado.) Agora tente adicionar o seguinte trecho de código simples para o seu código HTML: <html> <head> <title> Minha primeira página PHP </ title> </ Head> <body> <? Php echo "<h1> Olá Mundo </ h1>"; > </ Body> </ Html> Quando olhamos para o documento PHP em um navegador, ele deve ser parecido com isto: Mas torna-se interessante quando você olhar o código HTML no navegador (selecionando "view source"): Os códigos PHP sumiram! Como você pode se lembrar de uma lição, é apenas o servidor que pode ver os códigos PHP - o cliente (o navegador) só vê o resultado! Vamos olhar para o que aconteceu. Pedimos o servidor para escrever <h1> Olá Mundo! </ H1>. Em uma linguagem mais técnica, pode-se dizer que foi utilizada a função string echo para escrever uma string especificado para o cliente onde o ponto e vírgula termina o comando. Mas não se preocupe! Neste tutorial, vamos tentar manter a linguagem técnica, no mínimo. Nosso primeiro exemplo obviamente não é particularmente emocionante. Mas espere! A partir de agora, só vai ser mais e mais interessante. Vejamos um outro exemplo. Exemplo: Now! Vamos fazer o servidor escrever outra coisa. Poderíamos, por exemplo, pedir-lhe para escrever a data e hora atual: <html> <head> <title> Minha primeira página PHP </ title> </ Head> <body> <? Php data de eco ("R"); > </ Body> </ Html> Isso vai ficar assim no navegador: E o código HTML correspondente: Agora as coisas estão ficando interessantes, certo? Nós fazemos o servidor de escrever a data e hora em que a página PHP é exibida. Note que se você atualizar a página no browser, um novo tempo está escrito. O servidor grava a data e hora atual cada vez que a página é enviada para um cliente. É também importante notar que o código HTML contém apenas a data - não os códigos PHP. Portanto, o exemplo não é afectada pela qual navegador é usado. Na verdade, todas as funcionalidades que são feitos com server-side tecnologias sempre funcionam em todos os navegadores! E mais uma vez, observe o ponto e vírgula após a linha de código. É um separador e muito importante incluir - caso contrário, o script não vai funcionar. No exemplo, usamos data , que é uma função que devolve a data e hora atual no servidor. Vamos tentar estender o exemplo, por escrito, tanto uma corda e uma função - "separados por . " (Um período) - é feito assim: <html> <head> <title> Meu primeiro documento PHP </ title> </ Head> <body> <? Php echo "<p> data e hora atual:". date ("r"). "</ P>"; > </ Body> </ Html> Ele será parecido com este no navegador: E o código HTML correspondente: Na próxima lição, vamos dar uma olhada na data de função e os diferentes formatos de data e hora. Lição 4: Trabalhando com datas e horas Nesta lição, vamos tentar olhar para as muitas opções diferentes para trabalhar com datas e horas em PHP. Passamos por alguns exemplos muito simples na lição anterior principalmente para mostrar-lhe o que é PHP. Nesta lição, vamos dar uma olhada na data de função. Funções de data e hora PHP fornece uma ampla gama de funtions em relação à data e hora . Nesta lição, veremos a mais importante dessas funções: data . Com diferentes parâmetros, a data de função pode retornar a data / hora atual em vários formatos diferentes. Alguns dos parâmetros mais úteis são os seguintes: date ("y") Retorna o ano atual a partir de uma data - com a data de hoje, ele retorna: 13 date ("m") Retorna o mês atual a partir de uma data - com a data de hoje, ele retorna: 08 date ("n") Retorna o mês atual a partir de uma data sem zeros à esquerda (por exemplo, "1" em vez de "01") - com data de hoje, ele retorna: 8 date ("F") Retorna o nome do mês atual a partir de uma data - com a data de hoje, ele retorna: agosto date ("d") Retorna o dia atual do mês de uma data - com a data de hoje, ele retorna: 24 date ("l") Retorna o nome do dia da semana atual a partir de uma data - com a data de hoje, ele retorna: sábado date ("w") Retorna o dia atual da semana de uma data - com a data de hoje, ele retorna: 6 date ("H") Retorna a hora atual de uma vez - com o tempo atual, ele retorna: 19 date ("i") Retorna o minuto atual de uma vez - com o tempo atual, ele retorna: 48 date ("s") Retorna a segunda corrente a partir de uma vez - com o tempo atual, ele retorna: 26 Este exemplo ilustra o uso da data função: <html> <head> <title> data e hora </ title> </ Head> <body> <? Php echo "<p> Hoje é". date ("l"). "</ P>"; > </ Body> </ Html> Mostrar exemplo O tempo é 1377366506 E agora segurar ... porque agora torna-se um pouco nerd! A função time () retorna o tempo atual como o número de segundos desde 1 de janeiro de 1970 12:00, GMT. <html> <head> <title> data e hora </ title> </ Head> <body> <? Php echo "<p> Foi exatamente". tempo (). "Segundos desde 1 de janeiro de 1970 12:00, GMT </ p>"; > </ Body> </ Html> Mostrar exemplo Tempo, expresso em número de segundos desde 1 de janeiro de 1970, 12:00 GMT é um chamado "timestamp" (UNIX timestamp) e é bastante útil quando você trabalha com datas / horários no futuro ou no passado. Por padrão, a data função usa o timestamp atual (ou seja, o valor atual do time () ). Mas com um parâmetro extra que você pode especificar uma data e hora diferente e, portanto, trabalhar com o futuro ou o passado. No exemplo abaixo, vamos definir a data e hora para 0 segundos de 01 de janeiro de 1970 12:00, GMT. Assim, podemos verificar que dia da semana 1 de janeiro de 1970 era. <html> <head> <title> data e hora </ title> </ Head> <body> <? Php echo "<p> 1 de janeiro de 1970 foi a". date ("l", 0). "</ P>"; > </ Body> </ Html> Mostrar exemplo A menos que você é um gênio da matemática, ele rapidamente se torna complicado para contar o número de segundos desde 1 de janeiro de 1970 a um momento específico no futuro ou passado. Mas aqui você pode obter ajuda de uma outra função bacana: mktime , que faz os cálculos para você. A sintaxe para mktime é (hora, minuto, segundo, dia, mês, ano). O exemplo a seguir converte o tempo de o primeiro passo na Lua (21 de julho de 1969, 02:56): <html> <head> <title> data e hora </ title> </ Head> <body> <? Php eco mktime (2,56,0,7,21,1969); > </ Body> </ Html> Mostrar exemplo Observe que ele está retornando um número negativo como a data é anterior a 1 de janeiro de 1970. Podemos agora colocar isso juntocom a data de função e descobrir qual dia da semana neste dia histórico ocorreu. <html> <head> <title> data e hora </ title> </ Head> <body> <? Php echo date ("l", mktime (2,56,0,7,21,1969)); > </ Body> </ Html> Mostrar exemplo O que você pode usá-lo? Tudo isso pode parecer um pouco teórico nesta fase. Afinal de contas, o que na terra você pode usar uma função como time () para? Mais importante, quando você vai aprender algo que você pode realmente usar em suas páginas? A resposta é que o que você aprende aqui são blocos de construção - as únicas limitações para o que você pode construir são a sua criatividade e imaginação! Atrevo-me a dizer que você já aprendeu mais do que você pensa. Por exemplo, você acha que pode fazer um site com diferentes imagens de fundo a cada dia da semana e que funciona em todos os navegadores? Claro que você pode! Veja este exemplo: <html> <head> <title> data e hora </ title> </ Head> <Fundo body = "background_ <php echo date? ("w");> . png "> </ Body> </ Html> Mostrar exemplo O exemplo acima, uma imagem de fundo dinâmico, com, simplesmente requer que você faça sete imagens e nomeá-los background_1.png, background_2.png, background_3.png, etc Se um usuário entra no seu site em uma terça-feira, o site terá background_2.png como pano de fundo, e no dia seguinte, background_3.png. Fácil e simples! Na próxima lição, você será apresentado a novos blocos de construção que podem ser usados para fazer loops e repetições em seus códigos. PHP é divertido, você não acha? Lição 5: Loops No PHP, é possível gerenciar a execução de scripts com diferentes estruturas de controle. Nesta lição, vamos olhar para loops. Loops podem ser usados para repetir partes de um script de um determinado número de vezes ou até que uma determinada condição seja atendida. Laços ", enquanto" A sintaxe para um enquanto ciclo é: enquanto (condição) { Afirmação } A sintaxe quase pode ser traduzida diretamente em Inglês: fazer algo enquanto uma condição for atendida . Vejamos um exemplo simples: <html> <head> <title> Loops </ title> </ Head> <body> <? Php $ X = 1; while ($ x <= 50) { echo "<p> Este texto é repetido 50 vezes </ p>"; $ x = $ x + 1; } > </ Body> </ Html> Mostrar exemplo No exemplo, uma variável denominada "$ x" é utilizado. Como você pode ver, as variáveis em PHP sempre começam com um caractere "$". É fácil esquecer isso no início, mas é absolutamente necessário lembrar ou então o script não funciona. Além disso, o exemplo é quase auto-explicativo. Primeiro, a variável $ x é ajustado para ser igual a 1. Em seguida, o loop pergunta ao servidor de repetir o texto enquanto $ x é menor ou igual a 50. Em cada loop, a variável $ x será aumentado em 1. "Para" loops Outra maneira de fazer um loop é com para a forma: for ( inicialização ; Estado ; Etapa ) { Afirmação } A afirmação é repetida enquanto 'Inicialização' + 'Step' encontra o 'Estado'. Se isso não faz sentido, olhar para este exemplo: <html> <head> <title> Loops </ title> </ Head> <body> <? Php for ($ x = 0; $ x <= 50; $ x = $ x 5) { echo '<p> variável $ x é agora ='. $ X. '</ P>'; } > </ Body> </ Html> Mostrar exemplo No exemplo acima, $ x está em crescimento, com o valor 5 em cada ciclo. O circuito continuará enquanto $ x é inferior ou igual a 50. Além disso, observe como o valor de $ x é usado como parte da sentença. Aqui está outro exemplo: <html> <head> <title> Loops </ title> </ Head> <body> <? Php for ($ x = 1; $ x <= 6; $ x = $ x +1) { echo "<h". $ X. "> Direcção nível". $ X. "</ H". $ X. ">"; } > </ Body> </ Html> Mostrar exemplo Você entendeu? Primeiro vamos definir o valor de US $ x 1. Então, em cada loop, nós escrevemos um título a nível $ x (H1, H2, H3, etc) até $ x é igual a seis. Loops dentro de laços Em princípio, não há limitações quanto alças podem ser usados. Por exemplo, você pode facilmente colocar laços dentro de loops e, assim, criar muitas repetições. Mas tenha cuidado! PHP se torna mais lento o mais complicado e extenso os scripts. Por exemplo, olhe para o exemplo a seguir, onde, com três loops, podemos escrever mais de 16 milhões de cores! De modo a não tornar a página lento, que reduziram drasticamente o número colocando o passo a 30 e, assim, limita o número de cores a 512. <html> <head> <title> Loops </ title> </ Head> <body> <? Php for ($ intRed = 0; $ intRed <= 255; $ intRed = $ intRed 30) { for ($ intGreen = 0; $ intGreen <= 255; $ intGreen = $ intGreen 30) { for ($ intBlue = 0; $ intBlue <= 255; $ intBlue = $ intBlue 30) { StrColor $ = "RGB (" $ intRed "," $ intGreen "," $ intBlue...... ")"; echo "<span style =" color: ". $ StrColor. "'>". $ StrColor. "</ Span>"; } } } > </ Body> </ Html> Mostrar exemplo Neste exemplo, cada uma das três cores primárias (vermelho, verde e azul), pode ter um valor entre 0 e 255. Qualquer combinação das três cores cria uma cor na forma rgb (255,255,255).O código de cor é utilizado como corante numa <span>. Loops torna-se mais útil quando você já aprendeu um pouco mais. Quando você entender o princípio em um loop, você pode prosseguir para a próxima lição, onde olhamos para as condições. Lição 6: Condições As condições são usadas para executar parte de um script apenas se forem cumpridas algumas exigências pré-definidas (condições). Por exemplo, uma condição que pode ser uma data deve ser 1 de janeiro de 2012, ou uma variável que é maior do que 7. Se ... O primeiro tipo de condição, vamos olhar é se , que tem a seguinte sintaxe: if ( condição ) { afirmação } Mais uma vez, a sintaxe é muito próxima Inglês comum: Se a condição for atendida, então executar algo . Vejamos um exemplo simples: <html> <head> <title> Loops </ title> </ Head> <body> <? Php $ X = 2; if ($ x> 1) { echo "<p> variável $ x é maior do que 1 </ p>"; } > </ Body> </ Html> se ... else ... O próximo tipo de condição vai querer olhar é outro , que pode ser apresentada da seguinte forma: se (condição) { afirmação } else { afirmação } Mais uma vez, a sintaxe é muito próxima Inglês comum: se a condição for atendida executar alguma coisa ou outra executar outra coisa. Na lição 4 , você aprendeu como encontrar o número de um mês. No exemplo a seguir, vamos usar o número do mês em um caso mais condição para descobrir que estação é: <html> <head> <title> Condições </ title> </ Head> <body> <? Php if (date ("m") == 3) { echo "<p> Agora é primavera </ p>"; } else { echo "! <p> eu não sei que estação é </ p>" ; } > </ Body> </ Html> Mostrar exemplo Como você pode ver, esta condição não é umacondição particularmente inteligente - ele só funciona quando é março! No entanto, existem muitas maneiras de melhorar a condição e torná-la mais precisa. Abaixo estão listadas operadores de comparação que podem ser utilizados na condição de: == Igual < Menor que > Maior que <= Menor ou igual a > = Maior ou igual ! = Não é igual a Além disso, existem alguns operadores lógicos: && E | | Ou ! Não Os operadores podem ser usados para desenvolver condições mais precisas, por isso agora podemos expandir o exemplo acima para incluir todos os meses da primavera: <html> <head> <title> Condições </ title> </ Head> <body> <? Php if (date ("m")> data = 3 && ("m") <= 5) { echo "<p> Agora é primavera </ p>"; } else { echo "<p> Agora ela quer inverno , verão ou outono </ p> ";! } > </ Body> </ Html> Vamos dar uma olhada na condição estendida: date ("m") data> = 3 && ("m") <= 5 A condição pode ser traduzido em: Se o mês é maior ou igual a 3, e para o mês é inferior ou igual a 5 Inteligente, não? Operadores desempenham um papel significativo em muitas partes diferentes do PHP. Mas ainda só funciona com março, abril e maio. Todos os outros meses ainda não são cobertos pela doença. Então, vamos tentar desenvolver a condição um pouco mais. se ... elseif ... else ... Usando elseif , podemos expandir a condição e fazê-lo funcionar para todos os meses: <html> <head> <title> Condições </ title> </ Head> <body> <? Php if (date ("m")> data = 3 && ("m") <= 5) { echo "<p> Agora é primavera </ p>"; } elseif (date ("m")> = 6 && data ("m") <= 8) { echo "<p> Agora é verão </ p>"; } elseif (date ("m")> = 9 && data ("m") <= 11) { echo "<p> Agora é outono </ p>"; } else { echo "<p> Agora é inverno </ p>"; } > </ Body> </ Html> Mostrar exemplo Para escrever condições é tudo pensar logicamente e de ser metódica. O exemplo acima é bastante simples, mas as condições podem ser muito complexo. mudar ... caso Outra maneira de escrever condições é utilizar o interruptor de método: interruptor (expressão) { case 1: afirmação quebrar; case 2: afirmação quebrar; default: afirmação quebrar; } Este método baseia-se numa expressão e, em seguida, enumera diferentes "respostas" ou "valores" relacionados com instruções . A maneira mais fácil de explicar o método consiste em mostrar um exemplo. Como você pode lembrar da lição 4, a função date ("w") retorna o dia da semana atual. Isto pode ser utilizado em um exemplo onde escrever o nome do dia (em vez de um número): <html> <head> <title> Condições </ title> </ Head> <body> <? Php switch (date ("w")) { case 1: echo "Agora é segunda-feira"; break; case 2: echo "Agora é terça-feira"; break; case 3: echo "Agora é quarta-feira"; break; case 4: echo "Agora é quinta-feira"; break; caso 5 : echo "Agora é sexta-feira"; break; case 6: echo "Agora é sábado"; break; default: echo "Agora é domingo"; break; } > </ Body> </ Html> Mostrar exemplo Muitas vezes interruptor pode ser uma boa alternativa para se else condições. O que você deve usar em uma determinada situação depende de qual método que você achar mais fácil e lógico. Fazendo seus scripts lógica e clara pode ser um grande desafio. Na próxima lição, veremos como você pode adicionar comentários aos seus scripts para explicar como eles funcionam. Bons comentários pode ser crucial se você ou alguém tem que fazer mudanças em seus códigos, numa fase posterior. Lição 7: Comente seus scripts Como você deve ter notado, scripts PHP pode facilmente olhar confuso. Nesta lição, nós cobrimos por comentários são importantes e como inseri-los em seus scripts. Por que é importante a comentar seus scripts? Quando você está codificando, você está escrevendo comandos para um servidor / computador e precisa usar uma linguagem altamente formal, que podem não refletir claramente os seus pensamentos ao fazer o script. Portanto, pode ser difícil para outros (ou você mesmo) para entender como o script está estruturado e, portanto, difíceis de identificar e corrigir erros no script. Os comentários podem ser usadas para escrever um texto explicativo curto no script. O servidor ignora completamente os comentários, e os comentários não afetam a funcionalidade real do script. No mundo dos negócios, muitas vezes é a exigência de que os scripts e programação são comentados, caso contrário, seria arriscado demais para a empresa para assumir um sistema em que seria muito difícil de encontrar e corrigir erros. Como você inserir comentários? É bastante fácil para inserir um comentário. Basta iniciar o comentário com uma barra dupla: "/ /". Dê uma olhada neste exemplo da lição 5, agora com os comentários: <html> <head> <title> Loops </ title> </ Head> <body> <? Php / / Aqui nós escrevemos códigos de cores com três voltas / / Red pode ser entre 0 e 255 for ($ intRed = 0; $ intRed <= 255; $ intRed = $ intRed 30) { / / Verde pode ser entre 0 e 255 for ($ intGreen = 0; $ intGreen <= 255; $ intGreen = $ intGreen 30) { / / Azul pode ser entre 0 e 255 for ($ intBlue = 0; $ intBlue <= 255; $ intBlue = $ intBlue 30) { / / O código de cores é feita na forma RGB (vermelho, verde, azul) $ strColor = "rgb (". $ intRed. ",". $ intGreen. ",". $ intBlue ")." / / Agora vamos escrever o código de cores para o cliente echo "<span style =" color: ". $ StrColor. "'>". $ StrColor. "</ Span>"; / / Fecha a laços } } } > Por causa do exemplo, nós incluímos muitos comentários extras, por isso deve ficar claro que você é muito melhor depuração de um script com comentários do que sem. Portanto, lembre-se de comentar seus scripts! Lição 8: Matrizes Nesta lição, vamos olhar para o que uma matriz é, como ele é usado, eo que ele pode fazer. Compreendendo as matrizes podem ser um pouco difícil no início. Mas experimentá-lo de qualquer maneira ... nós tentamos torná-lo tão fácil quanto possível. O que é um array? Uma matriz é um conjunto de elementos indexados, onde cada um tem o seu próprio número de identificação único. Parece confuso? Na verdade não é tão complicado. Imagine uma lista de palavras separadas por vírgulas. Ele é chamado de lista separada por vírgulas, e poderia, por exemplo, parecido com este: maçãs, peras, bananas, laranjas, limões Então tente imaginar dividindo a lista em cada vírgula. Em seguida, dar a cada seção de um número de identificação único, como este: O que você vê é uma matriz. Podemos, por exemplo, o nome do array "frutos". A idéia é que podemos acessar a matriz com um número e obter um valor de volta, como esta: frutas (0) = maçãs frutos (1) = peras frutas (2) = bananas frutas (3) = laranjas frutos (4) = limõesEsta é a idéia por trás arrays. Vamos tentar usá-lo em prática. Como você usa uma matriz? Vamos continuar com o exemplo de frutas. Passo a passo, vamos fazê-lo funcionar como uma matriz real. Primeiro, vamos definir uma variável igual à lista de frutas: <? Php $ Fruitlist = "maçãs, peras, bananas, laranjas, limões"; > Em seguida, usamos a função explode para dividir a lista em cada vírgula: <? Php $ Fruitlist = "maçãs, peras, bananas, laranjas, limões"; $ ArrFruits = explode ("", $ fruitlist); > Voila! "$ ArrFruits" é agora uma matriz! Observe que chamou a função explodir com dois argumentos: 1. a lista que deve ser dividido 2. eo delimitador - ou seja, o personagem usado para dividir (neste caso, uma vírgula) - entre aspas: ",". Aqui usamos uma vírgula como delimitador, mas você pode usar qualquer caractere ou palavra como um delimitador. Vamos tentar comentar o script e colocá-lo em uma página PHP: <html> <head> <title> Matriz </ title> </ Head> <body> <? Php / / Lista separada por vírgulas $ fruitlist = "maçãs, peras, bananas, laranjas, limões"; / / Cria uma matriz, dividindo a lista (com vírgula como delimitador) $ arrFruits = explode ("", $ fruitlist); / / Escreve os valores da nossa gama echo "<p> A lista de frutas: </ p>"; echo "<ul>"; echo "<li>". ArrFruits $ [0]. "</ Li>"; echo "<li>". $ ArrFruits [1]. "</ Li>"; echo "<li>". $ ArrFruits [2]. "</ Li>"; echo "<li>". ArrFruits $ [3]. "</ Li>"; echo "<li>". ArrFruits $ [4]. "</ Li>"; echo "</ ul>"; > </ Body> </ Html> Mostrar exemplo Este exemplo é muito simples, e pode ser um pouco difícil ver a vantagem do uso de uma matriz para esta tarefa particular. Mas é só esperar ... matrizes podem ser usadas para muitas coisas muito úteis. Loop através de uma matriz De volta a lição 5 você aprendeu sobre loops. Agora vamos ver como você pode fazer um loop através de um array. Quando você sabe quantos elementos de uma matriz contém, não é um problema de definição do loop. Basta começar com 0 e deixar o loop continuar com o número de itens disponíveis.No exemplo com as frutas, você faria percorrer a matriz da seguinte forma: <html> <head> <title> Matriz </ title> </ Head> <body> <? Php / / Lista separada por vírgulas $ fruitlist = "maçãs, peras, bananas, laranjas, limões"; / / Cria uma matriz, dividindo a lista (com uma vírgula como delimitador) $ arrFruits = explode ("", $ fruitlist); echo "<p> A lista de frutas: </ p>"; echo "<ul>"; / / Loop através da matriz $ arrFruits for ($ x = 0; $ x <= 4; $ x + +) { echo "<li>". $ ArrFruits [$ x]. "</ Li>"; } echo "</ ul>"; > </ Body> </ Html> Mostrar exemplo Como você pode ver, a variável $ x foi usado (o que aumenta de 0 a 4 no circuito) para chamar a matriz. Como encontrar o tamanho de uma matriz Mas o que se adicionar uma outra fruta para a lista? Então, a nossa matriz conterá mais um elemento - que terá o número de identificação 5 . Você vê o problema? Em seguida, é preciso mudar o circuito, de modo que é executado de 0 a 5, ou então nem todos os elementos serão incluídos. Não seria bom se nós automaticamente poderia descobrir quantos elementos de uma matriz contém? Isso é exatamente o que podemos fazer com a função foreach . Agora podemos fazer um loop que funciona independentemente do número de elementos: <? Php foreach ($ arrFruits como $ x) { echo $ x; } > Este ciclo vai funcionar, independentemente de como muitos ou poucos elementos da matriz contém. Outro exemplo Abaixo está um exemplo de como você pode usar uma matriz para escrever o nome do mês: <html> <head> <title> Matriz </ title> </ Head> <body> <? Php / / Cria array com cada mês. / / Cria array com os meses. Note-se a vírgula antes de Janeiro - porque não há nenhum mês com o número 0 $ arrMonths = / / Chama a matriz com o número do mês - escrever para o cliente echo $ arrMonths [date ("n")]; >? </ Body> </ Html> Mostrar exemplo Observe que usamos a função gama em vez da função explode para criar uma matriz. Ok. Suficiente sobre matrizes! Na próxima lição, você vai aprender a escrever suas próprias funções. Lição 9: Funções Nas lições anteriores, você aprendeu a usar funções como date () e array () . Nesta lição, você vai aprender a criar suas próprias funções usando função . O que é uma função? A função do processo insumos e retorna uma saída. Ele pode ser útil se, por exemplo, você tem uma ampla gama de dados que foram processados ou se você tiver cálculos e rotinas que devem ser executadas várias vezes. A função tem a seguinte sintaxe: Nome da função (lista de parâmetros) { Afirmação } Desta forma, podemos fazer uma função muito simples que pode adicionar o valor 1 a um número. Poderia ficar assim: função AddOne ($ x) { $ x = $ x + 1; echo $ x; } Nossa função é chamada de AddOne e deve ser chamado com um número - por exemplo, 34 .... AddOne eco (34); ... que (surpresa!) retornará 35. O exemplo acima processa um número, mas as funções podem trabalhar com texto, datas ou qualquer outra coisa. Você também pode criar funções que são chamadas por muitos parâmetros diferentes. Nesta lição, você vai ver diferentes exemplos de funções. Exemplo 1: Função com mais parâmetros Como mencionado acima, você pode facilmente criar uma função que pode ser chamado com mais parâmetros. No próximo exemplo, vamos criar uma função que é chamada com três números e, em seguida, retorna o valor dos três números somados: <html> <head> <title> Funções </ title> </ Head> <body> <? Php função AddAll ($ número1, número2 $, $ number3) { $ mais = $ numero1 + $ numero2 + $ number3; return $ plus; } echo "123 + 654 + 9 iguais". AddAll (123,654,9); > </ Body> </ Html> Mostrar exemplo Ok. Agora que foi quase demasiado simples! Mas a questão era apenas para mostrar que a função pode ser chamada com mais parâmetros. Exemplo 2: data e hora Inglês Vamos tentar fazer uma função um pouco mais complexa. Uma função que é chamado com uma data e hora retorna no formato: quarta-feira, 15 de fevereiro, 2012, 10:00:00 <html> <head> <title> Funções </ title> </ Head> <body> <? Php função EnglishDateTime ($ data) { / / Array com os nomes em inglês dos dias da semana $ arrDay = array ("Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado", "Sunday"); / / Array com os nomes em inglês dos meses = $ arrMonth / / A data é construído $ EnglishDateTime = $ arrDay [(date ("w", $ data))]. ",". date ("d", $ data); $ EnglishDateTime = $ EnglishDateTime. "". $ ArrMonth [date ("n", $ data)]. "". date ("Y", $ data); $ EnglishDateTime = $ EnglishDateTime. ",". date ("H", $ data). ":". date ("i", $ data); return $ EnglishDateTime; } / / Teste função echo EnglishDateTime (time ());> </ Body> </ Html> Mostrar exemplo Por favor, note como '$ arrMonth' e '$ EnglishDateTime' são construídos ao longo de várias linhas. Isso é feito para que os usuários com uma resolução de tela baixo pode ver melhor o exemplo. O método não tem nenhum efeito sobre o próprio código. A função acima funciona em todos os servidores web, independentemente da linguagem. Isso significa que você pode usar essa função se o seu site, por exemplo, está hospedado em um servidor francês, mas deseja que as datas em inglês. Nesta fase, não vamos entrar em mais profundidade com funções, mas agora você sabe um pouco sobre como funciona o trabalho. Lição 10: variáveis passando uma URL Quando você trabalha com PHP, muitas vezes você precisa passar variáveis de uma página para outra. Esta lição é sobre a passagem de variáveis em uma URL. Como isso funciona? Talvez você já se perguntou por que alguns URLs algo parecido com isto: http://html.net/page.php?id=1254 Porque é que existe um ponto de interrogação após o nome da página? A resposta é que os caracteres após o ponto de interrogação é um string de consulta HTTP . Uma string de consulta HTTP pode conter ambas as variáveis e seus valores. No exemplo acima, a string de consulta HTTP contém uma variável chamada "id", com o valor "1254". Aqui está outro exemplo: http://html.net/page.php?name=Joe Novamente, você tem uma variável ("nome"), com um valor ("Joe"). Como obter a variável com PHP? Vamos dizer que você tem uma página PHP chamado people.php . Agora você pode chamar isso de página usando o seguinte URL: people.php? name = Joe Com o PHP, você será capaz de obter o valor da variável 'nome' como esta: $ _GET ["Name"] Então, você pode usar $ _GET para encontrar o valor de uma variável chamada. Vamos tentar, em um exemplo: <html> <head> <title> string query </ title> </ Head> <body> <? Php / / O valor do nome da variável é encontrado echo "<h1> Olá". $ _GET ["Name"]. "</ H1>"; > </ Body> </ Html> Mostrar exemplo (manter um olho sobre o URL) Quando você olha para o exemplo acima, tente substituir o nome "Joe" com seu próprio nome na URL e, em seguida, chamar o documento novamente! Muito bom, hein? Diversas variáveis na mesma URL Não se limitam a passar apenas uma variável num URL. Ao separar as variáveis com & , múltiplas variáveis podem ser passadas: people.php? name = Joe & idade = 24 Este URL contém duas variáveis: nome e idade. Da mesma forma como descrito acima, você pode obter as variáveis como este: $ _GET ["Name"] $ _GET ["Idade"] Vamos adicionar a variável extra para o exemplo: <html> <head> <title> string query </ title> </ Head> <body> <? Php / / O valor do nome da variável é encontrado echo "<h1> Olá". $ _GET ["Name"]. "</ H1>"; / / O valor da variável idade é encontrado echo "Você está <h1>". $ _GET ["Idade"]. "Anos </ h1>"; > </ Body> </ Html> Mostrar exemplo (manter um olho sobre o URL) Agora que você aprendeu uma maneira de passar valores entre páginas usando a URL. Na próxima lição, veremos um outro método: formas. Lição 11: Passando variáveis com formas Sites interativos exigem entrada de usuários. Uma das maneiras mais comuns para obter a entrada é com formulários. Nesta lição, veremos como construir formas e insumos de processo no servidor. <form> Quando você codificar um formulário, existem dois particulares atributos importantes: ação e método . ação É usada para inserir a URL onde o formulário é enviado. Seria o arquivo PHP que você deseja manipular a entrada. método Pode ter o valor "post" ou "ficar", que são dois métodos diferentes para transmitir dados. Neste ponto, você não precisa saber muito sobre a diferença, mas com o "ficar", os dados são enviados através da URL, e com o "post", os dados são enviados como um bloco de dados através de serviço de entrada padrão ( STDIN). Na última aula, vimos como os dados são recuperados através da URL usando $ _GET . Nesta lição, veremos como os dados enviados através de um formulário usando o método "post" é recuperado. Uma página HTML com um formulário A página que contém a forma não necessita de ser um arquivo PHP (mas pode ser). Ele não precisa sequer estar no mesmo local que o arquivo que irá receber os dados. Em nosso primeiro exemplo, vamos olhar para uma forma muito simples, com um campo de texto: <html> <head> <title> Formulário </ title> </ Head> <body> <h1> Digite seu nome </ h1> <form method="post" action="handler.php"> <input type="text" name="username"> <input type="submit"> </ Form> </ Body> </ Html> O resultado em que o navegador é uma forma: Agora vamos para a parte divertida: receber e tratar os dados com PHP. Solicitando dados de formulário com PHP Quando você precisa solicitar dados apresentados através de um formulário (método post), você pode usar $ _POST : $ _POST ["Nome do campo"]; Que devolve o valor de um campo no formulário. Vamos tentar usá-lo em um exemplo. Primeiro, crie uma página com um formulário como acima. Em seguida, faça uma página PHP chamada "handler.php" (notar que este é o nome da página que escreveu no atributo action em nosso <form>). O arquivo "handler.php" terá o seguinte conteúdo: <html> <head> <title> Formulário </ title> </ Head> <body> <? Php echo "<h1> Olá". $ _POST ["Username"]. "</ H1>"; > </ Body> </ Html> Mostrar exemplo De entrada e as condições do utilizador No próximo exemplo, vamos tentar usar a entrada do usuário para criar condições. Em primeiro lugar, precisamos de uma forma: <html> <head> <title> Formulário </ title> </ Head> <body> <form method="post" action="handler.php"> <p> Qual é o seu nome: </ p> <input type="text" name="username"> </ p> <p> Qual é a sua cor favorita: <input type="radio" name="favoritecolor" value="r" /> Red <input type="radio" name="favoritecolor" value="g" /> Verde <input type="radio" name="favoritecolor" value="b" /> azul </ p> <input type="submit" value="Submit" /> </ Form> </ Body> </ Html> Que será parecido com este no navegador: Agora vamos usar essas entradas para criar uma página que muda automaticamente a cor de fundo de acordo com o que a cor favorita do usuário. Podemos fazer isso através da criação de uma condição (ver lição 6 ), que utiliza os dados que o usuário tenha preenchido o formulário. <? Php $ StrHeading = "<h1> Olá". $ _POST ["Username"]. "</ H1>"; switch ($ _POST ["FavoriteColor"]) { case "r": $ strBackgroundColor = "rgb (255,0,0)"; break; caso "g"; $ strBackgroundColor = "rgb (0,255,0)"; pausa ; caso "b": $ strBackgroundColor = "rgb (0,0,255)"; break; default: $ strBackgroundColor = "rgb (255,255,255)"; break; } > <html> <head> <title> Formulário </ title> </ Head> <Estilo de corpo= "background: ? <php echo $ strBackgroundColor;>, "> <? echo $ strHeading;> </ Body> </ Html> A cor de fundo será branca, se o usuário não tiver escolhido qualquer cor favorita no formulário. Isto é feito usando padrão para especificar o que deve acontecer se nenhuma das condições acima sejam atendidas. Mas e se o usuário não preencher o seu nome? Em seguida, ele apenas diz "Olá" no título. Usaremos uma condição extra para mudar isso. <? Php $ StrUserName = $ _POST ["username"]; if ($ strUserName! = "") { $ strHeading = "<h1> Olá". $ _POST ["Username"]. "</ H1>"; } else { $ strHeading = "<h1> Olá estranho </ h1>"; } switch ($ _POST ["FavoriteColor"]) { case "r": $ strBackgroundColor = "rgb (255,0,0)"; break; caso "g"; $ strBackgroundColor = "rgb (0,255,0)"; pausa ; caso "b": $ strBackgroundColor = "rgb (0,0,255)"; break; default: $ strBackgroundColor = "rgb (255,255,255)"; break; } > <html> <head> <title> Formulário </ title> </ Head> <Estilo de corpo = "background: ? <php echo $ strBackgroundColor;>, "> <? echo $ strHeading;> </ Body> </ Html> Mostrar exemplo. No exemplo acima, usamos uma condição para validar a informação do utilizador. Neste caso, pode não ser tão importante se o usuário não escreva o seu nome. Mas, como você código mais e mais avançado coisas, é vital que você levar em conta que o usuário nem sempre pode preencher formulários do jeito que você imaginava. Formulário de contato: exemplo Com seus novos conhecimentos de PHP e formulários, você é capaz de criar um formulário de contato usando a função de correio , que tem a seguinte sintaxe: correio (para, assunto, mensagem); Em primeiro lugar, precisamos de um formulário HTML simples: <html> <head> <title> formulário de contato </ title> </ Head> <body> <h1> formulário de contato </ h1> <form method="post" action="handler.php"> <p> Assunto: <br /> <input type="text" name="subject" /> </ p> <p> Mensagem: <br /> <textarea name="message"> </ textarea> </ p> <input type="submit"> </ Form> </ Body> </ Html> Em seguida, precisamos de um script PHP para enviar a entrada de usuários: <html> <head> <title> Funções </ title> </ Head> <body> <? Php / / Destinatário (mudar para seu endereço de e-mail) $ strEmail = "name@mydomain.com"; / / Obter entradas do usuário $ strSubject = $ _POST ["assunto"]; $ strMessage = $ _POST ["mensagem"]; mail ($ strEmail, strSubject $, $ strMessage); echo "E-mails enviados."; > </ Body> </ Html> Por favor, note que o exemplo só irá funcionar se você tiver acesso a um servidor de correio. Por padrão, esse não é o caso em hospedeiros XAMPP e mais livre. Além disso, alguns hospedeiros podem exigir que você incluir um de cabeçalho, que é feito com um parâmetro extra: correio ("you@yourdomain.com", "Test", "Esta é uma mensagem de teste", "From: me@mydomain.com"); Lição 12: Sessões Quando você visita um site, você fazer uma série de coisas diferentes. Você clica de uma página para outra. Talvez você também preencher um formulário ou comprar um produto. Como um desenvolvedor web, essas informações são de grande importância para o desenvolvimento de soluções web de sucesso. Suponha, por exemplo, que você quer fazer um site onde algumas páginas são protegidos com login e senha. Para fazer essa proteção efetiva, as páginas protegidas por senha deve ter acesso à informação sobre se o usuário logado em um momento anterior. É necessário, por outras palavras, ser capaz de "lembrar" o que o utilizador fez anteriormente. Este é exatamente o que esta lição é sobre - como você pode usar sessões em PHP para armazenar e recuperar informações durante a visita de um usuário para o seu site. Sessão PHP sessão permite que você gerencie informações sobre a sessão de um usuário. Você pode escrever aplicativos inteligentes que podem identificar e coletar informações sobre os usuários. Uma sessão pode começar em maneiras diferentes. Não vamos entrar em detalhes técnicos aqui, mas se concentrar no caso em que a sessão começa por um valor que está sendo armazenado. A sessão termina / morre se o usuário não tenha solicitado quaisquer páginas dentro de um determinado período de tempo (pelo padrão de 20 minutos). Claro, você também pode sempre acabar / matar uma sessão no seu script. Digamos que 50 pessoas estão clicando em torno no mesmo local, por exemplo, uma loja virtual, ao mesmo tempo. Informações sobre o que cada um deles tem em seu carrinho de compras seria melhor armazenados em uma sessão. A fim de identificar os usuários individuais, o servidor utiliza um ID de usuário único, que é armazenado em um cookie. Um cookie é um pequeno arquivo de texto armazenado no computador do usuário (mais sobre cookies em lição 13 ). Por isso, as sessões muitas vezes exigem o apoio de cookies no navegador do usuário. Um exemplo do uso de sessões Quando solicitado esta página, eu armazenada a hora atual em uma sessão. Eu fiz isso para que agora eu posso mostrar-lhe um exemplo de como funciona uma sessão. Eu nomeei o item "Hora de início" e armazenado-lo adicionando a seguinte linha no meu script PHP: <? Php session_start (); $ _SESSION ["Hora de início"] = date ("r"); > Assim, uma sessão foi iniciada. Como descrito acima, cada sessão é dada uma identificação pelo servidor. Sua sessão tem a seguinte identificação: f36qcl3bgdefoslv66i3cbfb71 A qualquer momento, eu posso chamar de "Hora de início" da sessão, por escrito: <? Php session_start (); echo $ _SESSION ["Hora de início"]; > Que revelam que a página foi solicitada a sáb, 24 ago 2013 19:53:06 +0200 (de acordo com o relógio no servidor web). Mas o que é interessante é que a informação permanece na sessão, mesmo depois de ter deixado esta página. As informações irão segui-lo até a sua sessão termina. Por padrão, uma sessão dura até o usuário fechar o browser, em seguida, ele morre automaticamente. Mas se você quiser parar uma sessão, ele sempre pode ser morto desta maneira: <? Php session_destroy (); > Vamos tentar olhar um outro exemplo, onde são usados sessões: uma solução de senha. Sistema de login com sessões No exemplo a seguir, vamos fazer um sistema de login muito simples. Vamos usar muitas das coisas que aprendemos nas aulas anteriores. A primeira coisa que precisamos é de uma forma onde as pessoas podem inserir seu nome de usuário e senha. Poderia ficar assim: <html> <head> <title> Entrar </ title> </ Head> <body> <form method="post" action="login.php"> <p> Usuário: <input type="text" name="username" /> </ p> <p> Senha: <input type="text" name="password" /> </ p> <p> <input type="submit" value="Let me in" /> </ p> </ Form> </ Body> </ Html> Então vamos criar o arquivo: login.php. Neste arquivo, vamos verificar se é o nome de usuário e senha corretos que foi digitado. Se for esse o caso, vamos definir uma sessão que diz que este usuário está conectado com o nome de usuário e senha corretamente. <html> <head> <title> Entrar </ title> </ Head> <body><? Php / / Verifique se o nome de usuário e senha estão corretos if ($ _POST ["username"] == "php" && $ _POST ["senha"] == "php") { / / Se correto, montamos a sessão para YES session_start (); $ _SESSION ["login"] = "SIM"; echo "<h1> Você agora está registrado corretamente no </ h1>"; echo "<p> < a href = 'document.php'> Link para arquivo protegido </ a> <p/> "; } else { / / Se não estiver correto, vamos definir a sessão NÃO session_start (); $ _SESSION ["login"] = "NO"; echo "<h1> você não estiver logado corretamente </ h1>"; echo "<p> <a href='document.php'> Link para arquivo protegido </ a> </ p> "; } > </ Body> </ Html> Nos arquivos protegidos, queremos verificar se o usuário está conectado corretamente. Se este não for o caso, o usuário é enviado de volta para o formulário de login. É assim que a proteção é feita: <? Php / / Inicie o seu Session PHP session_start (); / / Se o usuário não estiver logado no mandá-lo / a para o formulário de login if ($ _SESSION ["login"] = "YES!") { header ("Location: form.php"); } > <html> <head> <title> Entrar </ title> </ Head> <body> <h1> Este documento está protegido </ h1> <p> Você só pode vê-lo se você se identificou </ p> </ Body> </ Html> Clique aqui para testar o sistema de login Agora você foi introduzido ao objeto Session. Na próxima lição, ainda estamos trabalhando na mesma área, mas vou dar uma olhada mais de perto em cookies. Lição 13: Bolinhos Como e que tipo de sites de informação a recolher de seus usuários e, especialmente, como usá-lo, é um tema quente. Os cookies são frequentemente citado como um exemplo de como a informação é recolhida e representam uma ameaça para a sua privacidade. Mas há motivos para estar preocupado? Julgue por si mesmo. Depois de ter passado por essa lição, você vai saber o que pode ser feito com cookies. O que é um cookie? Um cookie é um pequeno arquivo de texto em que um site pode armazenar informações diferentes. Os cookies são guardados no disco rígido do usuário e não no servidor. A maioria dos biscoitos expirar (excluir si) depois de um período de tempo predeterminado, que pode variar desde um minuto até vários anos. Mas o usuário também pode identificar e excluir os cookies em sua / seu computador. A maioria dos navegadores, como o Microsoft Internet Explorer, Mozilla Firefox e Google Chrome, pode ser configurado para permitir que o usuário escolha se quer ou não que ele / ela vai aceitar um cookie. Mas então, por que não dizer não a todos os cookies? É possível. Mas muitos sites não iria funcionar como previsto, sem cookies, desde biscoitos em muitos contextos são usados para melhorar a usabilidade e funcionalidade do website. Como é a informação armazenada em um cookie? É fácil de definir ou modificar um cookie em PHP com setcookie . No primeiro exemplo, vamos criar um cookie e definir o valor. Primeiro, você precisa de um nome para o cookie. Neste exemplo vamos usar o nome "HTMLTest". Em seguida, você define o valor do cookie como esta: <? Php / / Definindo o cookie setcookie ("HTMLTest", "Este é um cookie de teste"); > Por padrão, um cookie é mantido untill o navegador é fechado, mas pode ser facilmente modificado pela adição de um outro parâmetro definindo o tempo de expiração: <? Php / / Definindo o cookie setcookie ("Nome", "C. Asa, time () +3600); setcookie ("Interesses", "plane manchas", time () +3600); > "Time () 3600" especificou que o cookie deve expirar em 3600 segundos (60 minutos) a partir de agora. No exemplo acima, temos armazenadas informações sobre o nome e os interesses do usuário. Esta informação pode, por exemplo, ser útil para alvejar o sítio específico para o visitante individual. Como você recuperar o valor de um cookie? Para obter o valor do cookie, $ _COOKIE é usado. Por exemplo, se precisar de informações a partir do exemplo acima, podemos fazê-lo assim: <? Php / / Recuperar valores do bolinho $ strName = $ _COOKIE ["nome"]; $ strInterest = $ _COOKIE ["interesse"]; / / Escreve para o cliente echo "<p>". strName. "</ P>" echo "<p> Seu interesse é". strInterest. "</ P>" > Quem pode ler o cookie? Por padrão, um cookie pode ser lido no mesmo domínio de segundo nível (por exemplo, html.net) como ele foi criado. Mas usando os parâmetros de domínio e caminho , você pode colocar mais restrições sobre o cookie usando a seguinte sintaxe: setcookie (nome, valor, data de vencimento, o caminho do domínio); Vejamos um exemplo: <? Php / / Definir o cookie: nome, valor, data de vencimento, o caminho, domínio setcookie ("Nome", "C. Wing", time () +60 * 60 * 24 * 365, "/ tutoriais / php /", "www . html.net "); > No exemplo acima, criamos um cookie chamado "Name" com o valor "C. Wing." A cookie expira após um ano (60 segundos * 60 minutos * 24 horas * 365 dias) e podem ser lidos apenas por sítios localizados no diretório "/ tutoriais / php /" no (sub) domínio "www.html.net ". Exemplo de um cookie Podemos tentar salvar um cookie de exemplo no seu computador e, em seguida, ver como ele se parece. O código a seguir define o cookie: <? Php / / Definindo o cookie setcookie ("HTMLTest", "Este texto é um biscoito!", time () +60 * 60 * 24 "/ tutoriais / php /", "www.html.net"); / / Escreve a informação para o cliente echo $ _COOKIE ["HTMLTest"]; > Mostrar exemplo O cookie está sendo colocado no seu disco rígido. Dependendo de qual sistema operacional que você usa, os cookies podem ser guardados em lugares diferentes. Uma vez que você encontrá-los, eles provavelmente será parecido com este: Como você pode ver, um cookie é um arquivo de texto normal, que pode ser aberto com o bloco de notas, por exemplo. O conteúdo do cookie de que acabamos de criar, provavelmente será algo parecido com isto: HTMLTest TEXT = Este + texto + se + em + um + cookie de 21% www.html.net / tutoriais / php 0 80973619229399148 4216577264 29399141 * Não vamos entrar em detalhes com os diferentes códigos, mas simplesmente observar que o usuário tem total controle sobre os cookies em sua / seu computador. Nesta lição, vimos que os cookies podem fazer, mas não o que eles podem ser usados para. É uma preocupação comum que alguns sites usam cookies para atividades inadequadas. Mas na maioria dos casos, os cookies são usados para fazer sites com mais user-friendly ou relevantes para os usuários individuais. Se você optar por usar cookies em seu site, pode ser uma boa idéia para contar a seus usuários que o site usa cookies. Isso pode, por exemplo, ser comunicada por uma política de privacidade ou processo de registro. Lição 14: Sistema de Arquivos Com o PHP, você pode acessar o sistema de arquivos do servidor. Isso permite que você manipule as pastas e arquivos de texto em scripts PHP. Por exemplo, você pode usar o PHP para ler ou escrever um arquivo de texto. Ou você pode listar todos os arquivos em uma pasta especificada. Há muitas possibilidades e PHP pode poupar muito trabalho tedioso. Aqui, vamos dar uma olhada em como você pode usar o PHP para trabalhar com pastas e arquivos. O objetivo é dar uma visãogeral. Nas próximas aulas, vamos olhar mais de perto as diferentes possibilidades. Não vamos passar por todas as diferentes possibilidades. Novamente, consulte a documentação para uma lista completa. filemtime Retorna o tempo em que o conteúdo de um arquivo foi editada por último (como UNIX timestamp - veja lição 4)). fileatime Retorna o tempo em que um arquivo foi acessado / aberto (como um timestamp UNIX - veja lição 4) por último). filesize Retorna o tamanho de um arquivo em bytes. Vamos tentar encontrar os três propriedades do arquivo que você está olhando agora: "/ tutorials/php/lesson14.php" <html> <head> <title> Filesystem </ title> </ Head> <body> <? Php / / Encontrar e escrever propriedades echo "arquivo <h1>: lesson14.php </ h1>"; echo "<p> foi editada por último:". date ("r", filemtime ("lesson14.php")); echo "<p> foi o último aberto:". date ("r", fileatime ("lesson14.php")); echo "<p> Tamanho:". filesize ("lesson14.php"). "Bytes"; > </ Body> </ Html> Mostrar exemplo Folders PHP também permite que você trabalhe com pastas no servidor. Não vamos passar por todas as diferentes possibilidades - apenas mostrar um exemplo. Novamente, veja a documentação para obter mais informações. opendir Abre uma pasta especificada. readdir Retorna o nome do próximo arquivo na pasta aberta (cf. opendir ) closedir Fecha a pasta especificada. O exemplo abaixo mostra o conteúdo da pasta "tutoriais / php /". <html> <head> <title> FileSystemObject </ title> </ Head> <body> <? Php / / Abre a pasta $ pasta = opendir ("/ / tutoriais / PHP /...."); / / Loop através de todos os arquivos na pasta while (($ entrada = pasta readdir ($))! = "") { echo $ entrada. "<br />"; } / / Fechar pasta pasta $ = closedir ($ pasta); > </ Body> </ Html> Mostrar exemplo No exemplo, o diretório ". /... / Tutoriais / php /" é aberto pela primeira vez. Em seguida, um loop é usado para escrever o nome do próximo arquivo na pasta, enquanto houver mais arquivos. No final, a pasta é fechada. Nas próximas lições, veremos como ler e escrever em um arquivo texto. Lição 15: Leitura de um arquivo de texto Na lição anterior, aprendemos como utilizar o PHP para acessar o sistema de arquivos do servidor. Nesta lição, vamos usar essa informação para ler a partir de um arquivo de texto comum. Os arquivos de texto pode ser extremamente útil para armazenar vários tipos de dados. Eles não são tão flexíveis quanto os bancos de dados reais, mas os arquivos de texto normalmente não exigem tanta memória. Além disso, os arquivos de texto são um formato claro e simples que funciona na maioria dos sistemas. Abra o arquivo de texto Usamos o fopen função para abrir um arquivo de texto. A sintaxe é como se segue: fopen ( arquivo, modo ) nome do arquivo Nome do arquivo a ser aberto. modo Modo pode ser definido como "r" (leitura), "w" (escrita) ou "a" (acrescentar). Nesta lição, vamos apenas ler um arquivo e, portanto, usar o "r". Na próxima lição, vamos aprender a escrever e anexar texto em um arquivo. Os exemplos nesta lição usar o arquivo de texto unitednations.txt . Esta é uma lista simples dos programas e fundos das Nações Unidas e de seus domínios. Você pode baixar o arquivo, ou você pode criar seu próprio arquivo e testar os exemplos com ele. Primeiro, vamos tentar abrir unitednations.txt: <? Php / / Abrir o arquivo de texto $ f = fopen ("unitednations.txt", "r"); / / Fecha o arquivo de texto fclose ($ f); > Exemplo 1: ler uma linha do arquivo de texto Com a função fgets , podemos ler uma linha do arquivo de texto. Este método lê até a primeira quebra de linha (mas não incluindo a quebra de linha). <html> <head> <title> leitura de arquivos de texto </ title> </ Head> <body> <? Php $ F = fopen ("unitednations.txt", "r"); / / Lê linha do arquivo de texto e escrever o conteúdo para o cliente echo fgets ($ f); fclose ($ f); > </ Body> </ Html> Mostrar exemplo Exemplo 2: Leia todas as linhas do arquivo de texto <html> <head> <title> leitura de arquivos de texto </ title> </ Head> <body> <? Php $ F = fopen ("unitednations.txt", "r"); / / Ler linha por linha até o final do arquivo while (! feof ($ f)) { echo fgets ($ f). "<br />"; } fclose ($ f); > </ Body> </ Html> Mostrar exemplo No exemplo, podemos percorrer todas as linhas e usar a função feof (para o fim-de- arquivo) para verificar se você está no final do arquivo. Se este não for o caso ("!" - Ver lição 6), a linha é escrito. Em vez de loop através de todas as linhas, poderíamos ter alcançado o mesmo resultado com a função fread . Se você trabalha com arquivos de texto muito grande, com milhares de linhas, estar ciente de que o fread função usa mais recursos do que o fgets função. Para arquivos menores, isso faz uma diferença muito pequena. Exemplo 3: Um diretório da ligação simples Conforme mencionado no início desta lição, os ficheiros de texto podem ser excelente para armazenamento de dados. Isto é ilustrado no exemplo a seguir, onde podemos criar um diretório simples ligação a partir do conteúdo do arquivo de texto unitednations.txt . O ficheiro é sistematicamente escrito com o nome do programa, então uma vírgula e, em seguida no domínio. Como você provavelmente pode imaginar, mais informações podem ser facilmente armazenados neste arquivo de dados separados por vírgula. Para obter as informações em cada linha, usamos um array. Ver Lição 8 para mais informações sobre arrays. <html> <head> <title> leitura de arquivos de texto </ title> </ Head> <body> <Php? $ f = fopen ("unitednations.txt", "r"); / / Ler linha por linha até o final do arquivo while (! feof ($ f)) { / / Faz uma matriz usando vírgula como delimitador $ ARRM = explode (",", fgets ($ f)); / / Escreve links (se os dados no array) echo "<li> <a href =" http:// ". $ ARRM [1]. "'>". ARRM $ [0]. "</ A> </ li>"; } fclose ($ f); > </ Body> </ Html> Mostrar exemplo Bastante útil, certo? Em princípio, agora você pode apenas estender o arquivo de texto com centenas de links ou talvez expandir o seu diretório para incluir também informações de endereço. Na próxima lição, veremos como escrever em um arquivo texto. Lição 16: Escrevendo em um arquivo de texto Na lição anterior, aprendemos a ler a partir de um arquivo de texto. Nesta lição, vamos aprender a gravar em um arquivo de texto. Os dois métodos são muito semelhantes, mas há uma diferença muito importante: Você deve ter permissões de gravação para o arquivo. Isto significa que o arquivo terá que ser localizado em uma pasta onde você tem as permissões necessárias. Se você trabalha localmente no seu próprio computador, você pode definir as permissões de si mesmo: o botão direito do mouse sobre a pasta e escolha "Propriedades". Com a maioria dos provedores de hospedagem, normalmente você vai ter uma pasta com permissões de gravação. É muitas vezes chamado algocomo "cgi-bin", "log", "bancos de dados" ou algo similar.Se o seu host permitir, você também pode ser capaz de definir as permissões de si mesmo. Normalmente, você pode simplesmente botão direito do mouse em uma pasta no seu cliente FTP e escolha "Propriedades" ou "permissões" ou algo similar. Os screendumps abaixo mostra como é feito em FileZilla. Leia mais nas páginas de suporte do seu host. Note que é o arquivo de texto que deve estar na pasta com permissões de gravação - não o arquivo PHP. Abra o arquivo de texto para escrever Da mesma forma como durante a leitura de um arquivo de texto, o fopen função é utilizada para escrever, mas desta vez vamos definir o modo para "w" (escrita) ou "a" (acrescentar). A diferença entre a escrita e anexando é onde o "cursor" é localizado -, quer no início ou no fim do ficheiro de texto. Os exemplos nesta lição usar um arquivo de texto vazio chamado textfile.txt. Mas você também pode criar seu próprio arquivo de texto, se quiser. Primeiro, vamos tentar abrir o arquivo de texto para escrever: <? Php / / Abrir o arquivo de texto $ f = fopen ("textfile.txt", "w"); / / Fecha o arquivo de texto fclose ($ f); > Exemplo 1: Escreva uma linha para o arquivo de texto Para escrever uma linha, devemos utilizar a função fwrite , como este: <html> <head> <title> Escrevendo em um arquivo de texto </ title> </ Head> <body> <? Php / / Abrir o arquivo de texto $ f = fopen ("textfile.txt", "w"); / / Escreve texto linha fwrite ($ f, "PHP é divertido!"); / / Fecha o arquivo de texto fclose ($ f); / / Abrir arquivo para leitura, e ler a linha $ f = fopen ("textfile.txt", "r"); echo fgets ($ f); fclose ($ f); > </ Body> </ Html> Mostrar exemplo Desde que abriu o arquivo para a escrita , a linha é adicionado no topo, e, portanto, substitui a linha existente. Se em vez abrir o arquivo anexando , a linha é adicionada na parte inferior do arquivo de texto, que, em seguida, irá aumentar em uma linha de cada vez que for escrito. Exemplo 2: Adicionando um bloco de texto para um arquivo de texto Claro, também é possível adicionar um bloco de texto inteiro, em vez de apenas uma única linha, como este: <html> <head> <title> Gravar em um arquivo de texto </ title> </ Head> <body> <h1> Adicionando um bloco de texto para um arquivo de texto: </ h1> <form action="myfile.php" method='post'> <textarea name='textblock'> </ textarea> <input type='submit' value='Add text'> </ Form> <? Php / / Abrir o arquivo de texto $ f = fopen ("textfile.txt", "w"); / / Escreve texto fwrite ($ f, $ _POST ["textblock"]); / / Fecha o arquivo de texto fclose ($ f); / / Abrir arquivo para leitura, e ler a linha $ f = fopen ("textfile.txt", "r"); / / Ler o texto fgets echo ($ f); fclose ($ f); > </ Body> </ Html> Mostrar exemplo Nas próximas aulas, vamos olhar para uma outra forma de armazenamento de dados: bancos de dados. Lição 17: Bases de dados Um banco de dados é uma coleção de informações / dados que são organizados de modo que ele pode ser facilmente recuperada, administrado e atualizado. Bases de dados, assim, permitir a oportunidade de criar sites dinâmicos com grandes quantidades de informação. Por exemplo, todos os dados sobre os membros da HTML.net e todas as mensagens nos fóruns são armazenados em bancos de dados. Um banco de dados geralmente consiste de uma ou mais tabelas. Se você está acostumado a trabalhar com planilhas, ou talvez ter usado bancos de dados antes, tabelas será familiar para você com colunas e linhas: Há muitos diferentes bancos de dados: MySQL, MS Access, MS SQL Server, Oracle SQL Server e muitos outros. Neste tutorial, vamos usar o banco de dados MySQL. MySQL é o lugar natural para começar quando você quiser usar os bancos de dados em PHP. Você precisa ter acesso ao MySQL, a fim de passar por esta lição e as próximas aulas: Se você tem um site hospedado com PHP, MySQL provavelmente já está instalado no servidor. Leia mais nas páginas de suporte do seu host. Se você instalou o PHP em seu computador você mesmo e ter a coragem de instalar o MySQL, assim, ele pode ser baixado em uma versão livre (MySQL Community Edition) no site do MySQL . Se você usar o XAMPP (ver lição 2 ), MySQL já está instalado e pronto para uso em seu computador. Apenas certifique-se o MySQL está funcionando no Painel de Controle: No restante desta lição, vamos olhar mais de perto como você se conectar ao servidor de banco de dados, antes de aprender a criar bancos de dados e recuperar e atualizar dados nas sessões seguintes. Conexão com o servidor de banco de dados Primeiro, você precisa ter acesso ao servidor onde o banco de dados MySQL está localizada. Isto é feito com a função mysql_connect com a seguinte sintaxe: mysql_connect (servidor, username, password) Bastante simples: Primeiro, você escreve a localização do banco de dados (servidor) e, em seguida, digitar o nome de usuário e senha . Se você tiver seu próprio site, você deve ler sobre a localização do seu servidor MySQL nas páginas de suporte do seu host. Nome de usuário e senha, muitas vezes, ser a mesma que você usa para o acesso FTP. Caso contrário, contacte o seu fornecedor. Exemplo de uma conexão MySQL em um site hospedado: mysql_connect ("mysql.myhost.com", "user001", "gergelim") or die (mysql_error ()); Exemplo de uma conexão MySQL com XAMPP (configuração padrão): mysql_connect ("localhost", "root", "") or die (mysql_error ()); São adicionados os exemplos or die (mysql_error ()) , que, em breve, interrompe o script e escreve o erro se a conexão falhar. Agora fizemos uma conexão com um servidor MySQL, e agora pode começar a criar bancos de dados e recuperar e inserir dados. Este é exatamente o que vamos olhar nas próximas lições. By the way, tenha em mente que é uma boa prática para fechar a conexão com o banco de novo quando terminar a recuperação ou atualização de dados. Isto é feito com a função mysql_close . Lição 18: Criar bases de dados e tabelas Na lição anterior vimos como criar uma conexão com um servidor de banco de dados. O próximo passo é a criação de bases de dados e tabelas. Veremos duas maneiras de criar bancos de dados e tabelas. Em primeiro lugar, como é feito em PHP, e depois como é feito com o PhpMyAdmin ferramenta mais user-friendly, que é padrão na maioria dos provedores de hospedagem e em XAMPP. Se você tem um site hospedado com PHP e MySQL, um banco de dados provavelmente foi criado para você e você já pode simplesmente pular esta parte da lição e começar a criar as tabelas. Novamente, você deve consultar as páginas de suporte do seu host para obter mais informações. Criar um banco de dados e tabelas com PHP A função mysql_query são usados para enviar uma consulta a um banco de dados MySQL. As consultas são escritos na linguagem S tructured Q uery L anguage (SQL).SQL é a linguagem mais utilizada para consultas de banco de dados - não só para bancos de dados MySQL - e é muito lógico e fácil de aprender. Nesta lição e na próxima, você vai aprender as consultas SQL mais importantes. Ao criar um banco de dados, a consulta SQL CREATE DATABASE é utilizado com a seguinte sintaxe: CREATE
Compartilhar