Aprenda PHP fazendo acontecer Pt.3: Váriaveis GET e POST.

Neste post falaremos de variáveis get e post.

Variáveis get são aquelas quem vem junto a url da pagina, assim:

http://pagina.php?variavel1=valor_da_variavel1

Variáveis post são enviadas comumente por formulários, elas não aparecem na url.
São mais usadas quando se busca mais segurança, quando não deseja que vejam esses dados ou quando a quantidade de dados enviados são grandes.

No php acessados essas variaves através de variáveis globais, $_GET para variaveis get e $_POST para variaveis vindas por post.

No exemplo abaixo iremos imprimir uma variavel pegada da url por get.

GET

<?php
// arquivo nomeget.php
$meu_nome = $_GET['nome'];
echo "Meu nome é ".$meu_nome.".";
?>

Daí se passarmos os parametros assim:

http://localhost/nomeget.php?nome=Jonathan

Ele deve exibir isso:

Meu nome é Jonathan

POST

Publicado em PHP de Verdade | Tags , , , , , | Deixar comentário

Smarty para mudar sua vida

Introdução

Olá Pessoal, como vão?

Nesse post iremos falar sobre um assunto muito interessante, geradores de templates, especificamente do Smarty, um projeto apoiado pelos criadores do PHP.

O que diabo é Smarty?

Bom, primeiro irei explicar o que é, e para que serve um gerador de templates. Um gerador de templates e responsável pela separação do código da interface de seu projeto, alguns ainda pensam num gerador de templates como um programa que gera layouts automaticamente mas não é esse o caso, por exemplo, você tem um form de envio de e-mail, quando você usa o Smarty você separa o form html da parte que cuida dos dados enviados nesse form.
O Smarty usa arquivos html com tags especiais para inserir os dados vindos do arquivo de controle php, e como se o template fosse uma fantasia de seus programa.

Para que serve mesmo?

Bem, eu poderia passar dias aqui escrevendo suas funcionalidade mas vou explicar dando exemplos práticos.

  • Você tem um projeto onde trabalha com equipes distintas para o layout e a programação, o Smarty resolve.
  • Você tem um site onde tem a opção do usuário escolher um layout personalizado, o Smarty resolve.
  • Você tem um projeto onde vai ter que estar sempre mudando de layout periodicamente, como estações do ano, festas e coisas assim, o Smarty resolve.
  • Seu projeto usa MVC(falaremos mais a frente) para maior eficiência nas atualizações, vai precisar do Smarty(ou outro gerador).
Vamos Começar

Vamos partir para a diversão em sí. Vamos instalar o Smarty, uma tarefa bem simples.
Primeiro vamos baixar a versão mais recente em http://smarty.php.net, nesse site também encontramos a documentação do projeto, e em português, que é muito boa por sinal.
Baixe o arquivo compactado em tar.gz, por isso vai precisar de um programa de compressão, existem milhares grátis por ai.
Descompacte o arquivo em uma pasta dentro de seu servidor web. Feito isso vai ver que na pasta do Smarty existem algumas pastas, mas você só ira precisar da pasta libs (mas não recomendo que apague os outros arquivos, são alguns exemplos e readmes) e pronto está instalado.

Hello World, nosso primeiro exemplo

Vamos fazer nosso primeiro exemplo, um script bem simples só para demostrar o funcionamento do Smarty.
O Smarty trabalha com uma estrutura de pastas bem intuitivas:

  • templates – é a pasta onde ficarão os arquivos de template.
  • templates_c – é a pasta onde será compilados os templates.
  • configs – é a pasta onde ficarão os arquivos de configuração, não falarei aqui, mas é um recurso bastante interessante, veja no manual do projeto.
  • cache – é a pasta de cache do smarty, que também é um recurso muito bom, mas não será citado nesse post.
Essas pastas se chamam assim por padrão, mas você pode configurar o Smarty para utilizar outros nomes, veremos a frente.
Crie uma pasta para nosso projeto na raiz do seu servidor, chame-a de HelloWorldSmarty, dentro dessa pasta, crie os 3 diretorios: templates, templates_c e configs.
Dentro do diretório de nosso projeto crie um arquivo index.php, e dentro dele vamos chamar o smarty, veja só:

<[? # @File: Index.php - Smarty Hello World

# Requendo a Classe do Smarty
# Considerando que a pasta do Smarty é "smarty"
require("../smarty/libs/Smarty.class.php");

# Criando objeto da classe $mySmarty = new Smarty; # Passando algumas configurações # Ativando a chegagem na compilação $mySmarty->compile_check = true;
# Ativando a depuração do codigo
$mySmarty->debugging = true;
# Se voce deseja definir os nomes das pastas do smarty use
# $mySmarty->template_dir = "DIRETORIO_DESEJADO";
# $mySmarty->compile_dir = "DIRETORIO_DESEJADO";
# $mySmarty->cache_dir = "DIRETORIO_DESEJADO";

# Vamos mandar algumas variaveis pro tempalte
# Sintaxe - $mySmarty->assign("NOME_DA_VARIAVEL","VALOR");
$mySmarty->assign("nome","Php de Verdade");

# Agora vamos mandar o smarty renderizar o arquivo final
# Informe o template que sera procurado no diretorio de templates
$mySmarty->display("index.tpl.html");

?]>

Pronto, o código está bem comentado então vamos passar para outro passo, o template. O template é um arquivo em HTML(“<>”) com marcações específicas do Smarty(“{}”), entao vá na pasta templates e crie o arquivo que estou chamando no nosso arquivo de controle, “index.tpl.html“, pode chama-lo como quiser, com qualquer extensão também, não importa, desde que chame corretamente no arquivo de controle. Ai vai o codigo dele:

* Atenção: Pessoal to usando as tags HTML(“<>”) assim (“<[]>”) porque o blog bloqueia tags html viu, mas na hora de escrever no arquivo escreve tags HTML mesmo.

<[html]>
<[body]>
<[p]>Hello World em Smarty, seja bem vindo {$nome}<[/p]>
<[body]>
<[/html]>

Pronto, salve o arquivo, é um template simples que so exibira a variavel “nome”, veja que as tags do Smarty ficam dentro dos “{}” mas isso pode ser configurado também.
Vá em seu navegador (de preferência Firefox, to brincando mas é o melhor) e digite o endereço para seu arquivo de controle no nosso case seria algo como “http://localhost/HelloWorldSmarty/index.php” e veja o resultado ele deve exibir a mensagem: “Hello World em Smarty, seja bem vindo Php de Verdade“.

Conclusão

Pronto pessoal esse foi nosso primeiro exemplo do Smarty, espero que tenham gostado e comentem e aí, nos próximos capítulos vamos trazer mais exemplos, demonstrando o poder dessa ferramenta, grande abraço.

Publicado em PHP de Verdade | Tags , , , , , , | Deixar comentário

Orientação a Objeto – A Teoria Divertida

Olá pessoal,

Como vão? Espero que estejam todos bem, hoje o assunto é Classes, vamos iniciar no mundo da POO – Programação Orientada a Objetos, mas vamos fazer isso de uma forma bem dinâmica e divertida, pois eu acho o assunto um pouco chato para quem começou apredendo a programar da forma “errada”, digo usando POG – Programação Orientada a Gambiarras, como eu.

A definição formal de Classe pode ser visto no link mostrados acima por isso vou falar de uma forma informal.

Uma classe é um modelo que deve ser seguido por um objeto, por exemplo, um médico pedriatra João segue a conduta da medicina pediátrica não é? Pois nesse caso, a classe é a medicina pediátrica e o médico é um objeto da medicina pediátrica, deu pra entender? Vamos a outro exemplo, meu cachorro Snoop faz o que geralmente um cachorro da raça dele, Pit-Bull faz, então Snoop é um objeto da classe Pit-Bull.

As classes devem se agrupar por funcionalidades e caraterísticas em pacotes, por exemplo, você tem várias classes que lidam com imagens: classe gif, classe jpeg, classe bmp, como elas tem característas comuns então podem se agrupar no pacote imagem. Seguindo nosso exemplo temos: O médico pediátra João, é objeto da classe medicina pedriática que percente ao pacote medicina. o Pit-Bull Snoop é um objeto da classe Pit-Bull que pertence ao pacote de Cães, concorda? pois seguimos.

Em linguagems como Java, existem recursos nativos para tratar de pacotes, no PHP ainda não, mas é importante agrupar suas classe em pastas para mantar a organização e para que você lembre no futuro onde está aquela classe na hora do aperto.

Os objetos das classes são instancias da classe, quando você instancia uma classe voce cria um “ser” com as características da classe, mas com particularidades cada “ser” tem.

As classes são compostas basicamente de atributos e métodos, os atributos são as informações que a classe carrega, diríamos características. Já os métodos são ações que o objeto pode fazer, dar valor a seus atributos, exibir os atributos, realizar calculos, e assim por diante.

Para continuar vamos voltar a nossa classe PitBull. Vamos dar alguns atributos e métodos a ela. Então temos:

  • Atributos
    • Nome
    • Data de Nascimento
    • Cor Principal
    • Tamanho do Pelo
    • Nome do Dono
  • Métodos
    • setNome – Define o nome do cão.
    • setNascimento – Define a data de nascimento do cão.
    • setCor – Define a cor principal do cão.
    • setPelo – Define o tamanho do pelo.
    • setNomeDono – Define o nome do dono do cão.

Traduzindo para PHP

@Date: 04/06/2007
*/

class PitBull {

# Atributos da Classe #
$nome;
$data_nascimento;
$cor;
$tamanho_pelo;
$nome_dono;

# Método Construtor
function PitBull(){
}

# Método Construtor – PHP 5
function __construct(){
}

# Método Destrutor – PHP 5
function __desctruct(){
}

# setNome – Define o nome do Cao
function setNome($data){
$this->nome = $data;
}

# setNascimento – Define a data de nascimento do Cao
function setNascimento($data){
$this->data_nascimento = $data;
}

# setCor – Define a cor do Cao
function setCor($data){
$this->cor = $data;
}

# setPelo – Define o tamanho do pelo do Cao
function setPelo($data){
$this->pelo = $data;
}

# setDono – Define o nome do dono do Cao
function setDono($data){
$this->dono = $data;
}

} # End Class

]?>

O PHP, apartir de suas novas versão 4 traz o recurso de herança. Assim você pode costumizar uma classe ja existente sem estragar a original, estou bricando apesar de servir para isso também, mas a principal função é o reaproveitamento do código, evitar gastar tempo numa coisa que já existe. Digamos que você tem um cão também, mas o seu faz coisas mais apromoradas como falar, escrever blogs, mandar emails etc. Você pode criar a classe PitBullInteligente e herdar as carateristicas da classe PitBull e modifica-la a vontade.

Seguindo o exemplo mencionado acima temos

/*
@Date: 26/10/2007
*/

class PitBullInteligente extends PitBull {

/*
Essa classe herda características da Classe PitBull.
*/
# Atributos da Classe #
$sobrenome;
$idade;

# setSobrenome – Define o sobrenome do Cao
function setSobrenome($data){
$this->sobrenome = $data;
}

# getNomeCompleto – Retorna o Nome Completo do Cão
function setSobrenome($data){
return $this->nome.’ ‘.$this->sobrenome;
}

# setNascimento – Define a data de nascimento do Cao
function setNascimento($data){
$this->data_nascimento = $data;
}

# getNascimento – Retorna a Data de Nascimento
function setNascimento($data){
$this->data_nascimento = $data;
}

} # End Class

]?>

Continua…

Publicado em PHP de Verdade | Deixar comentário

Aprenda PHP fazendo acontecer Pt.2: Seu primeiro programa.

Para criarmos nosso primeiro exemplo siga até a pasta do WWW do Wamp, geralmente (“c:\wamp\www”), aqui e que serão colocados pastas e arquivos que será manipulados pelo servidor. Crie um arquivo chamado hello.php, você pode usar o notepad para isso ou usar o notepad++ que é um editor de código bem completo e leve, com suporte a puglins que amplificam seus recursos, equivalente ao gedit ou Kate do Linux, eu recomendo para plataforma Windows.

Veremos aqui um trecho de código, bastante usado no primeiro contato com linguagens de programação o Hello World, que nada mais é que fazer a linguagem imprimir a mensagem “Hello World” na tela.

Código 1.0:

  1. <?php
  2. echo “Hello World”;
  3. ?>

OBS: a tag real nao tem o “*” mas coloquei para que o blog nao interprete como código entao a tag verdadeira e < + ? + php

Vamos entender o código:

Na linha 1, nós abrimos as tags que contém o códigos em php, ela informa ao servidor o que deve ser interpretado como php. Na linha 2, usamos a função echo que serve justamente para imprimir algum conteúdo na pagina como HTML, então ele imprime “Hello World”. Na linha 3, é o fechamento da tag php.

Vamos incrementar esse código.

Código 1.1:

  1. <?php
  2. $mensagem = “Hello World”;
  3. echo $mensagem;
  4. ?>

Alteramos as linhas 2 e 3. Na linha 2 criamos uma variável chamada mensagem, uma variável é como uma caixa onde você coloca algo, ela guarda uma informação enquanto o programa está em execução, as variáveis no php sempre iniciam com o caractere $ no início. Na linha 3 informamos a função echo para imprimir o conteúdo da variável $mensagem.

Nota:
As variáveis se chama assim porque seu conteúdo, advinha é… variável existem essas caixinhas de conteúdo que tem um conteúdo estático ou seja e definido uma vez somente e não pode ser alterado, se chamam constantes, veremos mais em frente.

Vamos incrementar mais ainda.

Código 1.2:

  1. <?php
  2. $mensagem = “Hello World ”;
  3. $seunome = “Jonathan”;
  4. echo $mensagem.$seu nome;
  5. ?>

Agora acrescentamos uma linha 3, que atribui meu nome a variável $meunome. Na linha 4 alteramos concatenando(juntando) a variável $mensagem com a variável $seunome;

Por hoje é só pessoal, dúvidas? :)

Publicado em PHP de Verdade | Deixar comentário

Aprenda PHP fazendo acontecer Pt.1

image_menu_wampOlá pessoal, iniciamos uma série de artigos que trarão vocês para o maravilhoso mundo da programação para internet através do PHP. Tentarei usar a linguagem mais simples possível para que vocês não tenha a impressão que programar é difícil, chato é iniciar o aprendizado, programar é uma tarefa prazerosa e gratificante.

Para criarmos nosso ambiente de trabalho usarei a ferramenta WAMP, que significa, Windows – Apache – MySQL – PHP, na verdade é um pacote que instala e configura todo o ambiente facilmente. Não entraremos aqui no mérito de se essa é a melhor opção na questão se segurança e desempenho, optei por essa configuração por ser a mais simples.

Primeiro baixe a instalação em: (“http://www.wampserver.com/en/download.php”). Depois é so rodar a instalação, ele fará alguns questionamentos simples, você pode obter ajuda através do site, mas creio que não será preciso, ele perguntara onde você criará a pasta para ele e bom ser um lugar que você lembre pois precisara entrar nela para colocar seus arquivos php.

Após a rode o programa, WampServer, ele abrira um ícone na bandeja do Windows, aguarde quando o ícone estiver totalmente branco a inicialização foi concluída. Para vê-lo rodar abra o Firefox(J é minha preferência como navegador) e cole o endereço(“http://localhost”) ou (“http://127.0.0.1″) se aparecer uma tela com as pastas e atalhos do Wamp está pronto, nosso ambiente de desenvolvimento estará completo.

Publicado em PHP de Verdade, Sem Categoria | Tags , , , , , | Deixar comentário
Register Login