Contribua

Doação

sábado, 16 de dezembro de 2017

Validação de tipos com Java e Regex fazendo normalização para rertirar acentos.

Validação de campos  de Textfields é sempre complicado para quem esta começando,
esta dica cobre  a maioria de tipos de campos pra validação, neste exemplo utilizamos duas classes uma que ira pegar  o conteúdo do text field e passar para outra Matches, que fara a comparação.

E muito interessante manter esse esquema principalmente se você irá utilizar varias classes para serem analisadas, assim se economiza muitas linhas de código;


Esta Classe  recebe as String passadas pela  Classe de Validação e retorna um boleano.

import java.text.Normalizer;

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author  Edson Pessotti
 */
public class Matches {
                 public boolean matchesOnlyNumber(String text) {
    return text.matches("[0123456789]+");
}
          public boolean matchesOnlyText(String text) {
            
        CharSequence cs = new StringBuilder(text);
        text= Normalizer.normalize(cs, Normalizer.Form.NFKD).replaceAll("\\p{InCombiningDiacriticalMarks}+", "");
   
    return text.matches("[Ww a-zA-Z]+"); /
}
          public boolean matchesOnlyAlfa(String text) {
        CharSequence cs = new StringBuilder(text);
        text= Normalizer.normalize(cs, Normalizer.Form.NFKD).replaceAll("\\p{InCombiningDiacriticalMarks}+", "");
                                                          
    return text.matches("[wdWD a-zA-Z0-9/_-]+");
}
         public boolean matchesOnlyValor(String text) {
    return text.matches("[\"^[-+]?\\d{1,3}(\\.\\d{3})*,\\d{2}$\"]+");
 
}
       public boolean matchesOnlyCPF(String text) {
    return text.matches("[/(^\\d{3}\\.\\d{3}\\.\\d{3}\\-\\d{2}$)|(^\\d{2}\\.\\d{3}\\.\\d{3}\\/\\d{4}\\-\\d{2}$)/ ]+"); //Passa para o método matches a regex

}
    
   
}/////////
//////////
Esta parte do código deve estar  na classe de validação, cada qual chama o metodo matches
corrrespondente ao seu tipo. recebendo um boleno caso não bata com o formato exibe mensagem
de  erro. suporta os principais  tipos para validação, caso você tenha uma sugestão melhor  e só deixar nos comentários.


                      if(!cli.matchesOnlyAlfa(tcep.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir Letras no CEP.");
}
 
 if(!cli.matchesOnlyAlfa(tnome.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir números no nome.");
}
        if(!cli.matchesOnlyAlfa(tinsc.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir Letras na Iscrição Estadual.");
}
               if(!cli.matchesOnlyAlfa(tcnpj.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir Letras no CNPJ/CPF.");
}
                      if(!cli.matchesOnlyAlfa(tfone.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir Letras no Telefone.");
}
 if(!cli.matchesOnlyText(tramo.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir números no ramo.");
}
 if(!cli.matchesOnlyText(tcidade.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir números no Cidade.");
}
 if(!cli.matchesOnlyText(testado.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir números no Estado.");
}
 if(tendereco.getText().isEmpty()) {
    JOptionPane.showMessageDialog(null, "Ops!! Vamos Preencher o Endereço  Gente.");
}
 if(!cli.matchesOnlyAlfa(tbairro.getText())) {
    JOptionPane.showMessageDialog(null, "Você não pode inserir números no Bairro.");
}

Até A próxima.
Edson pessotti

segunda-feira, 9 de outubro de 2017

PHP Arrays

 Arrays

Nesta lição veremos o que array, como usá-los e o que podemos fazer com eles.
Entender arrays pode ser um pouco difícil no início. Mas, não desanime, vamos tentar... nós iremos tornar o processo de aprendizado o mais fácil possível.

O que é array?

Array é uma coleção (ou conjunto) de elementos indexados na qual cada um dos elementos tem um número identificador único.
Parece confuso? Creia, não é tão complicado.
Imagine uma lista de palavras separadas por vírgula como a mostrada a seguir:
 maçãs, peras, bananas, laranjas, limões
 
 
Agora imagine dividir a lista tomando como separador cada vírgula. Em seguite atribua a cada divisão um número identificador único:
maçãs (0), peras (1), bananas (2), laranjas (3), limões (4)
O que você acabou de ver é um array. Podemos dar um nome para o array como, por exemplo, "frutas". A idéa é que possamos acessar o array usando um número identificador e com ele consultar o valor correspondente usando uma sintaxe como mostrada a seguir:
frutas(0) = maças
frutas(1) = peras
frutas(2) = bananas
frutas(3) = laranjas
frutas(4) = limões
esta é a idéia por trás de arrays. Vamos ver um exemplo prático.

Como usar um array?

Continuaremos com o array de frutas. Passo a passo mostraremos como fazer para a lista funcionar como um array. Primeiro vamos criar uma variável para conter a lista como mostrado a seguir:
 <?php

 $listadefrutas = "maçãs, peras, bananas, laranjas, limões";
 
 ?>
 
 
A seguir vamos usar a função documentaçãoexplode para dividir a lista pelas vírgulas:
 <?php
  
 $listadefrutas = "maçãs, peras, bananas, laranjas, limões";
  
 $arrFrutas = explode(",", $listadefrutas);

 ?>
 
 
Viva! "$arrFrutas" agora é um array!
Observe que chamamos a função documentaçãoexplode com dois argumentos:
  1. a lista a ser dividida
  2. e o delimitador - isto é, o caractere usado para separar os itens da lista (no caso do exemplo a vírgula) colocado entre aspas ",".
Usamos a vírgula como delimitador, mas podemos usar qualquer caractere e até mesmo uma palavra.
Vamos comentar o script e colocá-lo em uma página PHP:
 <html>
 <head>
 <title>Array</title>
 </head>
 <body>

 <?php
 
 // Lista separada por vírgula
 $listadefrutas = "maçãs, peras, bananas, laranjas, limões";
  
 // Cria um array seprando os itens da lista (tendo a vírgula como delimitador)
 $arrFrutas = explode(",", $listadefrutas);
  
    // Escreve os valores do array
    echo "<p>Lista de frutas:</p>";
  
    echo "<ul>";
    echo "<li>" . $arrFrutas[0] . "</li>";
    echo "<li>" . $arrFrutas[1] . "</li>";
    echo "<li>" . $arrFrutas[2] . "</li>";
    echo "<li>" . $arrFrutas[3] . "</li>";
    echo "<li>" . $arrFrutas[4] . "</li>";
    echo "</ul>";

 ?>

 </body>
 </html>
 
este exemplo é muito simples e na verdade não há vantagem alguma em usar um array para realizar este tipo de tarefa. Mas, um momento... arrays podem ser usadas de maneira muito mais vantajosa.

Loop por um array

Na lição 5 estudamos loops. A seguir veremos como realizar um loop por um array.
Quando você conhece o número de itens de um array não encontra problemas para definir um loop por ele. Você começa em 0 e desenvolve o loop até atingir o número de itens do array. No exemplo das frutas um loop pelo array seria como mostrado a seguir:
 <html>
 <head>
 <title>Array</title>

 </head>
 <body>

 <?php
 
 // Lista separada por vírgula
 $listadefrutas = "maçãs, peras, bananas, laranjas, limões";
  
 // Cria um array seprando os itens da lista (tendo a vírgula como delimitador)
 $arrFrutas = explode (",", $listadefrutas);
  
    echo "<p>Lista de frutas:</p>";
    echo "<ul>";
  
    // Loop pelo array $arrFrutas
    for ($x=0; $x<=4; $x++) {
       echo "<li>" . $arrFrutas[$x] . "</li>";
    }
  
    echo "</ul>";

 ?>
  
 </body>
 </html>
 
 

Como encontrar o tamanho de um array

Mas, o que acontecerá se uma outra fruta for adicionada à lista? Nosso array passará a ter mais um item cujo número identificador será 5. Já deu para ver o problema? Precisamos alterar o loop para que ele funcione de 0 a 5, caso contrário não serão incluídos todos os elementos do array.
Não seria maravilhoso se pudéssemos saber automaticamente quantos itens um array tem?
É isso exatamente o que faremos a seguir com uso da função documentaçãoforeach. Agora podemos criar um loop que funciona em todo array independentemente do número de itens nele contido:
 <?php
    foreach ($arrFrutas as $x) {
       echo $x;
    }
 ?>
 
 
este loop funciona independentemente do número de itens contido no array.

Outro exemplo

A seguir mostramos um exemplo, usando array, para escrever os nomes dos meses:
 <html>
 <head>
 <title>Array</title>

 </head>
 <body>

 <?php
 // Cria um array dos meses.
 // Cria um array com os meses. Notar a vírgula antes do mês de janeiro. Isto é necessário //porque não existe mês representado pelo número 
 $arrMes = array("","Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro");
  
 // Chama o array com o número do mês - escreve no navegador do usuário
 echo $arrMes[date("n")];
 ?>

 </body>
 </html>
 
 
Notar que usamos a função documentaçãoarray e não documentaçãoexplode para criar o array.

PHP comentários.

Programas Documentados

Programação pode ser uma grande aventura se não tomarmos certos cuidados, um  programa pode se tornar bastante confuso de entender. Nesta lição falaremos sobre comentários, sua importância e a maneira correta de inseri-los  em seus scripts.

Por que é importante documentar seus programas?

Quando codificamos, estamos escrevendo  programas usamos uma linguagem estritamente técnica as vezes subjetivas,  que  com o passar do tempo podem perder seu significado interpretativo, e pode não refletir claramente o que você estava pensando quando criou o script.
Ora, isso pode criar dificuldades para terceiros (ou mesmo para você) quando se tratar de entender como o script foi estruturado e como consequência tornar extremamente árdua a tarefa de identificação e correção de erros.
Isso não quer dizer que você como um  bom programador  deva deixar todo seu  árduo trabalho totalmente aberto e com entendimento facilitado de fálcil entendimento a qualquer um, Isso é  claro e desejável nas empresas, mas não quando falamos de seus próprios projetos.
Comentários são usados para se escrever pequenos textos explanatórios no script. O servidor ignora qualquer comentário no script e eles não afetam ou interferem com a funcionalidade do script.
No mundo dos negócios é comum as Companhias exigirem que os scripts e programas sejam comentados, pois é considerado um alto risco aceitar um sistema no qual a identificação e correção de erros se torna uma tarefa difícil pela falta de comentários.
também e muito possível criarmos um index com arquivos explicativos, assim se você  deseja uma segurança maior esse e o caminho, empresas  nem sempre preferem programas comentados, principalmente se você esta fazendo um programa  WEB de acesso a contas restritas, esse tipo de código e muito facilmente  acessado, tenho visto muitos códigos de grandes empresa como Oracle Microsoft etc. que parecem verdadeiros ninhos de ratos, com muitos links externos códigos  emaranhados quase impossível de ser decifrado ou muito trabalhoso, assim  fica a merce dos ventos
o tipo e codificação e documentação...

Como inserir comentários?

É fácil inserir um comentário. Você simplesmente começa um texto de comentário escrevendo duas barras: "//".
Observe um exemplo mostrado na lição 5 no qual inserimos comentários:
 <html>
 <head>
 <title>Loops</title>
 </head>
 <body>

 <?php

 // Escreve código de cores usando três loops

 // Vermelho pode estar entre 0 e 255 
 for ($intRed=0; $intRed<=255; $intRed=$intRed+30) {

    // Verde pode estar entre 0 e 255
    for ($intGreen=0; $ intGreen<=255; $intGreen=$intGreen+30) {

       // Azul pode estar entre 0 e 255
       for ($ intBlue=0; $intBlue<=255; $intBlue=$intBlue+30) {

       // O código de cores tem o formato rgb(vermelho,verde,azul)
    $strColor = "rgb(" . $intRed . "," . $intGreen . "," . $intBlue . ")"

       // Aqui escrevemos o código da cor
    echo "<span style='color:" . $strColor . "'> " . $strColor . " </span>";

       // Fecha os loops
       }
    }
 }

 ?>
 

Condicionais PHP

Condicionais

Condicionais são usadas para executar um bloco de script sempre que determinada condição seja satisfeita. Por exemplo: uma condição pode estabelecer que uma data seja posterior a 1 de janeiro de 2012 ou que uma variável seja maior do que 7.

If...

A primeira condicional que estudaremos é o documentaçãoif cuja sintaxe é mostrada a seguir:
 if (condition) {
    Comandos PHP
 }
 
 
Mais uma vez a sintaxe se parece com a linguagem corrente: If (Se) se a condição é satisfeita, execute alguma coisa. Vejamos um exemplo simples:
 <html>

 <head>
 <title>Loops </title>
 </head>
 <body>

 <?php

 $x = 2;

 if ($x > 1) {
    echo "<p>A variável $x é maior que 1 </p>";
 }
  
 ?>

 </body>
 </html>
 
 

if ... else ...

Vejamos agora a condicional documentaçãoelse cuja sintaxe é mostrada a seguir:
 
 if (condição) {
    comandos PHP
 }
 else {
    Comandos PHP
 }

 
Mais uma vez a sintaxe se parece com a linguagem corrente: if (se) a condição é satisfeita, execute alguma coisa else (se não) execute outra coisa.
Na Lição 4 mostramos como encontrar o número representativo do mês. No exemplo a seguir usaremos este número em uma condicional documentaçãoif documentaçãoelse para encontrar em qual das estações do ano estamos:
 <html>
 <head>
 <title>Condicionais</title>
 </head>
 <body>

 <?php

 if (date ("m") == 3) {
    echo "<p>Estamos no outono!</p> ";
 }
 else {
    echo "<p>Eu não sei em que estação estamos!</p> "; 
 }

 ?>

 </body>
 </html>
 
Notar que se trata de uma condicional não muito inteligente - ela só funciona para o Mês de Março!
Contudo, existem várias maneiras de aperfeiçoar a condicional tornando-a mais precisa. Observe a seguir alguns operadores de comparação que podemos usar na condicional mostrada:
== Igual
< Menor que
> Maior que
<= Menor ou igual a
>= Maior ou igual a
!= Diferente
Existem também operadores lógicos:
&& e
|| ou
! não
Operadores se destinam a criar condicionais mais precisas e com seu uso podemos melhorar o exemplo mostrado anteriormente fazendo com que o retorno do script seja a estação primavera em todos os meses que ela ocorre e não somente em março:
 <html>
 <head>
 <title>Condicionais</title>

 </head>
 <body>

 <?php
 
 if (date("m") >= 3 && date("m") <= 5) {
    echo "<p> Estamos no outono!</p> ";
 }
 else {
    echo "<p> A estação atual é primavera, verão ou inverno!</p> ";
 }
  
 ?>

 </body>
 </html>

 
 
Vamos examinar estas novas condicionais:
 date("m") >= 3 && date("m") <= 5 
 
Pode ser traduzida como:
 Se o número que representa o mês for maior ou igual a 3  e menor ou igual a 5
 
 
Legal não é? Operadores são largamente usados em diferentes blocos de script do PHP.
Contudo nosso exemplo só funciona para os meses de março, abril e maio, Os demais meses não são contemplados pela condicional. Assim, vamos aperfeiçoá-lo mais:

if ... elseIf ... else...


Usando documentaçãoelseif podemos expandir a condicional e fazer com que nosso script funcione para todos os meses do ano:
 <html>
 <head>
 <title>Condicionais</title>

 </head>
 <body>

 <?php
 
 if (date("m") >= 3 && date("m") <= 5) {
    echo "<p>Estamos no outono!</p>";
 }

 elseif (date("m") >= 6 && date("m") <= 8) {
    echo "<p>Estamos no inverno!</p>";
 }

 elseif (date("m") >= 9 && date("m") <= 11) {
    echo "<p>Estamos na primavera!</p>";
 }

 else {
    echo "<p>Estamos no verão!</p>";
 }
  
 ?>

 </body>
 </html>

 
 

switch ... case

Outra maneira de se escrever condicionais é com uso do método documentaçãoswitch:
 switch (expressão) {
 
 case 1: 
    comandos PHP
    break; 
 case 2: 
    comandos PHP
    break; 
 default:
    comandos PHP
    break;
 }
 
 
Este método toma por base uma expressão e a seguir relaciona uma série de "respostas" ou "valores" e respectivos comandos PHP. A maneira mais fácil de entender esta condicional é observando um exemplo.
Na lição 4 nós vimos que a função documentaçãodate("w") retorna um número representando dia da semana. Vamos mostrar um exemplo para escrever o nome do dia da semana em lugar do número que o representa:
 <html>
 <head>
 <title>Condicionais</title>
 </head>
 <body>

 <?php
 
 switch(date("w")) {
  
 case 1:
    echo "Hoje é segunda-feira";
    break;
 case 2:
    echo "Hoje é terça-feira";
    break;
 case 3:
    echo "Hoje é quarta-feira";
    break;
 case 4:
    echo "Hoje é quinta-feira";
    break;
 case 5:
    echo "Hoje é sexta-feira";
    break;
 case 6:
    echo "Hoje é sábado";
    break;
 default:
    echo "Hoje é domingo";
    break;
  
 }
  
 ?>

 </body>
 </html>
 
 

PHP loops

 Loops

Na linguagem PHP existem diferentes estruturas de controle destinadas a gerenciar a execução de scripts. Nesta lição nós estudaremos os loops. Loops são usados para executar repetidamente uma parte de um script em um determinado número de vezes ou até que seja encontrada uma determinada condição.

Loop "while"

A sintaxe para um loop documentação while é conforme mostrada a seguir:
 while (condição) {
  Comandos PHP de execução
 } 
 
 
Esta sintaxe pode ser traduzida para linguagem corrente como: execute comandos PHP enquanto (while) a condição for satisfeita.
Vejamos um exemplo bem simples:
 <html>
 <head>
 <title>Loops</title>

 </head>
 <body>

 <?php

 $x = 1;
  
 while ($x <= 50) {
    echo "<p>Este texto se repete 50 vezes</p>";
    $x = $x + 1;
 }
 ?>

 </body>

 </html>
 
 
No exemplo mostrado usamos uma variável denominada "$x". Como você pode notar, nomes de variáveis em PHP sempre começam com o caractere "$". No início é fácil esquecer esta sintaxe, contudo é absolutamente necessário o símbolo "$" para iniciar o nome de variáveis, pois do contrário o script não funciona.
Além disto o restante do script é auto-explicável. No começo a variável $x recebe o valor 1. A seguir o loop pede para o servidor executar o comando de escrever um texto enquanto a variável for menor do que 50. A cada execução a variável é incrementada de 1 unidade.

Loop "for"

Outra maneira de executar um loop é com uso de documentaçãofor conforme mostrado a seguir:
 
 for (Inicialização; Condição; passo) {
   Comandos PHP de execução
 }
 
 
Os comandos PHP de execução se repetem com a 'Inicialização' + 'passo' enquanto a 'Condição é satisfeita'. Se isso não faz sentido para você o exemplo a seguir esclarece melhor:
 <html>
 <head>

 <title>Loops</title>
 </head>
 <body>

 <?php

 for ($x=0; $x<=50; $x=$x+5) {
    echo '<p>A variável $x agora tem o valor igual a ' . $x . '</p>';
 }
 ?>

 </body>
 </html>
 
No exemplo mostrado $x é incrementado de 5 unidades em cada loop. O loop continua sua execução enquanto $x for menor ou igual a 50. Notar que o valor de $x é usado como parte do texto a ser escrito pelo script.
Observe outro exemplo:
 <html>
 <head>

 <title>Loops</title>
 </head>
 <body>

 <?php

 for ($x=1; $x<=6; $x=$x+1) {
    echo "<h" . $x . "> Cabeçalho nível</h" . $x . ">";
 }
 ?>

 </body>
 </html>
 
 
Você entendeu? começamos definindo o valor de $x igual a 1. A seguir em cada loop escrevemos um cabeçalho nível $x (h1, h2, h3, etc.) até $x alcançar o valor seis.

Loops dentro de loops

A princípio não existe limite para a quantidade de loops a usar. Você pode facilmente aninhar loops e criar muitas repetições.
Mas, cuidado! A execução de PHP torna-se lenta quando desenvolvemos scripts extensos e complicados. Por exemplo: observe a seguir o script com três loops capaz de escrever 16 milhões de cores!
Com a finalidade de não tornar a página de carregamento muito lento nós reduzimos drasticamente o número de repetições para passos de 30 limitando o número de cores escritas para 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>
 
 

segunda-feira, 25 de setembro de 2017

Trocar a imagem com JavaScript

Existem muitas formas de  se fazer isso, abaixo segue um exemplo que uso bastante em meus sites;


No código HTML:

<img class="poe2" id="jojo" src="jojo.jpg" alt="Smiley face" height="160" width="220"onmouseover="altfoto(this)"/>

NO código javaScript:

function altfoto(img) {
   // debugger
var src = img.src.substr(img.src.lastIndexOf('/') + 1, img.src.length);


if (src == 'jojo.jpg') {
img.src = 'jojo2.png';
} else {
img.src = 'jojo.jpg';
}
}

INte!!

segunda-feira, 7 de agosto de 2017

PHP datas e horas

 Trabalhando com datas e horas

Nesta lição  abordaremos maneiras diferentes  de trabalhar com datas e horas usando o PHP. Começaremos mostrando exemplos bem simples com a finalidade de mostrar o que PHP é capaz de fazer. Nesta lição estudaremos com detalhes a função documentaçãodate do PHP.

Funções para data e hora

PHP nos fornece uma série de funções relacionadas a data e hora. Nesta lição veremos a mais importante destas funções; a função documentaçãodate.
Usando-se os diferentes parâmetros previstos para a função documentaçãodate ela retornará o grupo data/hora em diferentes formatos. Os parâmetros mais usuais são:
date("y")
Retorna o ano atual - para o dia de hoje o valor retornado é: 17
date("m")
Retorna o mês atual - para o dia de hoje o valor retornado é: 08
date("F")
Retorna o nome do mês atual - para o dia de hoje o valor retornado é: August
date("d")
Retorna o dia do mês atual - para o dia de hoje o valor retornado é: 07
date("l")
Retorna o nome do dia da semana atual - para o dia de hoje o valor retornado é: Monday
date("w")
Retorna o número correspondente ao dia da semana atual - para o dia de hoje o valor retornado é: 1
date("H")
Retorna a hora atual - para o dia de hoje o valor retornado é: 19
date("i")
Retorna o minuto atual - para o dia de hoje o valor retornado é: 09
date("s")
Retorna o segundo atual - para o dia de hoje o valor retornado é: 41
O exemplo a seguir ilustra o uso da função documentaçãodate
 <html>
 <head>
 <title>Grupo data/hora</title>

 </head>
 <body>

 <?php 
 
 echo "<p>Hoje é " . date("l") . "</p>";

 ?>
 
 </body>
 </html>
 
 

A hora é: 1502132981

Ops... aqui parece coisa para nerds. A função documentaçãotime() retorna a hora atual em número de segundos contados desde 1 de janeiro de 1970 às 12:00 PM, GMT.
 <html>
 <head>
 <title>Grupo data/hora</title>
 </head>
 <body>

 <?php   

 echo "<p>São decorridos exatamente " . time() . " segundos desde 1 de janeiro de 1970, 12:00 PM, GMT </ p> ";

 ?>

 </body>
 </html>
 
 
A representação da hora em segundos, contados desde 1 de janeiro de 1970 às 12:00 PM, GMT é chamada "timestamp" (UNIX timestamp) que é uma representação muito útil quando se trabalha com datas/horas passadas e futuras.
Por padrão, a função documentaçãodate usa o timestamp atual (isto é, o valor corrente de documentaçãotime()). Mas, usando um parâmetro você pode especificar o retorno da função em um diferente time stamp e assim trabalhar com datas passadas e futuras. No exemplo a seguir nós definimos o timestamp para 0 segundos a partir de 1 de janeiro de 1970 às 12:00 PM, GMT. Fazendo assim podemos verificar qual foi o dia da semana de 1 de janeiro de 1970.
 <html>
 <head>
 <title>Grupo data/hora</title>
 </head>
 <body>

 <?php 
 
 echo "<p>O dia da semana em 1 de janeiro de 1970 foi  " . date("l",0) . "</p>";

 ?>

 </body>
 </html>
 
 
A menos que você seja um gênio da matemática é muito complicado calcular o número de segundos passados desde de 1 de janeiro de 1970 para uma determinada data. Felizmente existe uma função chamada documentaçãomktime que realiza o cálculo.
A sintaxe para a função documentaçãomktime é (hora, minuto, segundo, mês, dia, ano). O exemplo a seguir faz a conversão para a data da chegada do homem à lua (21 de julho de 1969 às 02:56):
 <html>
 <head>
 <title>Grupo data/hora</title>
 </head>
 <body>

 <?php  
 
 echo mktime (2,56,0,7,21,1969);

 ?>

 </body>
 </html>
 
 
Notar que o retorno foi um número negativo. Isto indica que a data é anterior a 1 de janeiro de 1970.
Agora já podemos no valer do que até aqui aprendemos e usar a função documentaçãodate para saber qual foi o dia da semana em que ocorreu o evento histórico da chegada do homem à lua.
 <html>
 <head>
 <title>Grupo data/hora</title>
 </head>
 <body>

 <?php
 
 echo date("l", mktime(2,56,0,7,21,1969));
 
 ?>
 
 </body>
 </html>
 
 

Mas afinal qual a utilidade prática?

Até agora tudo parece muito teórico. Afinal de que maneira posso usar uma do tipo documentaçãotime() de uma forma prática? Ao aprender algo novo é importante saber se você poderá usar o que aprendeu em uma página web.
Considere que o que você aprende neste tutorial é a construção de blocos de códigos - o que você pode fazer com eles depende somente da sua criatividade e está limitado apenas pela sua imaginação! Eu ousaria afirmar que você já aprendeu muito mais do que está pensando. Por exemplo: você acha que é capaz de criar um background para uma página que mude a cada dia da semana e funcione em todos os navegadores?
Claro que você é capaz! Observe o exemplo a seguir:
 <html>
 <head>
 <title>Grupo data/hora</title>
 </head>

 <body background="background_<?php echo date("w"); ?>.png">

 </body>
 </html>
 
 
O exemplo mostrado, que usa uma imagem de fundo dinâmica, requer que você construa apenas sete imagens e as nomeie como background_1.png, background_2.png, background_3.png, etc.
Se o usuário entra no seu site na terça feira a imagem de fundo será background_2.png e no dia seguinte será background_3.png. Fácil e simples!
Na próxima lição estudaremos os blocos de código destinados a construção de loops e aqueles destinados a repetição de código.
PHP é legal. Você não acha?

quinta-feira, 22 de junho de 2017

Escopo e Contesto Variaveis Global e Local.



Variáveis:

Uma palha sobre o tipo boleano(comun em outras linguagens), no PHP não existe tipo boleano que é utilizado para retornar os valores falso e verdadeiro, mas como se tem por convenção que 0 = falso e 1 = Verdadeiro, para alanizarmos o retorno usamos o tipo inteiro integer, testando seu conteúdo se zero e falso qualquer coisa diferente e verdadeiro.
Podemos também verificar se uma variável esta definida ou não, o PHP oferece a função isset(nome-variável), em si e uma função boleana que retorna 0 ou 1 e podemos testar a condição com o comando IF.
EX:
<?php
if(isset($variteste)){
echo “A variável $variteste está definida”;}
// a função isset testou a existência da variável e se o resultado for 1 imprime a menssagem.
?>


Escopo de variáveis

Agora vamos ao tópico da aula escopo e contgexto :
O escopo de uma variável pode ser local ou global, isso vai depender do contexto onde ela definida.
Uma variável local só tem ação dentro dos limites do contesto onde foi definida, se declararmos uma variável dentro de uma função(veremos mais tarde), ela só será efita dentro da função que foi declarada.
<?php
$dep=1O; // variável global

functionTeste()
{
echo$conta=9;/*referencia uma variável de escopo local*/

$conta=$dep + $conta // resultado será 9;
}
?>
Explic.:
Na maioria das linguagens uma variável global pode ser acessada e modificada em todos contextos do script.
Em PHP e diferente no exemplo acima vimos que o valor da conta não se alterou porque a variável dep apesar de ser globalnão fica acessível dentro de cotestos “fechados “ como o de uma função.
E as variáveis declardas dentro da função também não são acessíveis fora dela.
Pode-se perceber então que esta é uma pequena diferença em relação a linguagem C, Java, etc onde variáveis globais estão automaticamente disponíveis para funções sem sobrescrever uma definição local.
Isto pode causar problemas quando inadvertidamente modificar-se uma variável global.
No PHP, as variáveis globais precisam ser declaradas como globais dentro de uma função, se for utilizada em uma.
A palavra-chave global

Exemplo #1 Usando global

<?php
$a=3;
$b=4;

functionExemplo()
{
global $a,$b; //declaração que disponibilisa as variáveis.

$b=$a+$b;
}

Soma();
echo$b; // o resultado deste ECHO será 7;
?>


Uma outra forma de acessar uma variável global é utiliazando o array especial $GLOBALS:
O exemplo anterior poderia ser reescrito como:



Exemplo #2 Usando $GLOBALS no lugar de global

<?php
$a=1;
$b=2;

functionSoma()
{
$GLOBALS['b']=$GLOBALS['a']+$GLOBALS['b']; //O Resultado seria 3.
}


O array $GLOBALS é um array associativo, sendo o nome da variável global a chave do array e o seu conteúdo da variável como o valor do elemento do array. Veja que $GLOBALS existe em qualquer escopo, isto porque $GLOBALS é uma superglobal.



Referência → http://php.net/manual/pt_BR/language.variables.scope.php

teste de PHP

// Times
  • Teste seu Conhecimento de PHP:
    1ª - O que é PHP ??:
    -
    Uma Linguagem de Marcação desenvolvida pela AT&T:
    Uma linguagen concorrente da ASP para Programas Compilados:
    Uma linugaguem interpretada pra desenvolmento WEB:
    Uma linguagem Orientada a Objetos semelante ao JAVA:
    -
    2ª - Assinale as alternativa CORRETA:
    -
    PHP não aceita Ponto Fluante:
    O Codigo PHP e convertido em HTML:
    PHP não permite estilazar com CSS:
    Com PHP é impossível formatar os caracteres para UTF8:
    -
    3ª - ' A ' = PHP roda do lado Servidor ' B ' = Seu código pode ser examinada verificando a pagina source no browser:
    -
    Só a B esta certa:
    A e B estão corretas
    A e B estão erradas
    Só A esta correta
    -
    4ª - " A " - O código php só será reconhecido se for salvo com a extensão .php : " B " - O código php só pode ser executado dentro do browser :
    -
    B esta correta:
    A esta errada:
    A e B estao corretas:
    Somente a alternativa A esta Correta:
    -
    5 ª - A - PHP e uma linguagen séria não aceita comentários: 5 ª - B - PHP tem como mascote uma Vaca Holandesa:
    Só a A esta correta:
    B e A estão erradas:
    B e A estão corretas:
    Só B esta errada:
    -
    6ª - Em PHP a definição de uma variável e opcional, porque o PHP utiliza checagem dinâmica :
    Não é opcional mais e dinâmica:
    É obrigatória mais é Dinâmica:
    Não é Obrigatória nem é Dinâmica:
    É opcional é Dinâmica:
    -
    7ª - Acinale a alternativa correta:
    Uma variável e constante:
    Não podemos fazer calculos com variáveis:
    Só podemos fazer calculos com variáveis se todas forem inteiras:
    Sim é possível fazer calculos com variáveis:
    -
    8 ª As variáveis no PHP são representadas por um cifrão ($) seguido pelo nome da variável. Os nomes de variável são case-sensitive.
    Não são case sensitives:
    A afirmação esta toda certa:
    A variavéis em PHP não são representáveis:
    São case sensitivo mas não tem $
    -
    9ª As Strings podem ser definidas basicamente de duas formas:
    -
    Case sensitive e não sensitive:
    Com $ e sem $:
    Com aspas simples e Com $:
    Com aspas simples ou Aspas duplas:
    -
    10 ª Para que o haja o salto de linha o caracter n tem que:
    Estar contido numa string entre aspas duplas precedido de \:
    Estar contido numa string entre aspas simples precedido de /:
    Apenas estar dentro de uma string com aspas simples e entre parenteses
    Estar contido numa string entre aspas simples precedido de \:

    quarta-feira, 21 de junho de 2017

    Variáveis PHP ARRAY



    Variáveis → Arrays.

    Quando temos um registro que pode ter vários valores relacionados, para podermos armazenar este dados então precisaremos de um tipo diferente de variável, uma variável que seja capaz de armazenar varias variáveis, permitindo o acesso individual, para isso a maioria das linguagens de programação nos oferece o recurso de arrays..


    arrays são listas indexadas onde podemos acessar seus elenemtos pelo nome e índice,

    Definição de Arrays:

    $a[0]=12;
    $a[1]=34;
    $a[4]=76;

    ou assim:

    $a=array( 12 , 34 , 76);

    com strings ficaria assim:

    $a[0] =”edson”;
    $a[1]=”alfredo”;
    $a[2]=”Admir”;

    ou

    $a =array(“edson” , “alfredo”, “ ademir”);

    $a[1] = Alfredo;

    Arrays são muito úteis em programação servem para agrupar diversos conjuntos de dados e realizar acesso direto ou sequencial à seus registros assim podemos gerênciar listas e filas de prioridade, uma string pode ser considerada uma array linear; alem da array linear temos as arrays multidimensional que veremos adiante.

    Ou seja depois de criar um arrays podemos alterar , inserir imprimir seus valores etc;

    [exemplo]
    <?php
    //
    $nomes=array(“Pedro”, “fernando”,”Ademar”,”Tico”); //c cria a array nomes e atribuie valores.
    //
    echo ($nomes[2]. '<br>'); // Imprime Ademar.
    //
    echo ($nomes[0]. '<br>'); // Imprime Pedro.
    //
    ​?>

    Outra coisa muito importante sobre as variáveis são o Contexto e Escopo. Mas o que seria isto ??
    Contexto
    O contexto é o conjunto de variáveis e seus respectivos valores num determinado ponto do programa. Na chamada de uma função, ao iniciar a execução do bloco que contém a implementação da mesma é criado um novo contexto, contendo as variáveis declaradas dentro do bloco, ou seja, todas as variáveis utilizadas dentro daquele bloco serão eliminadas ao término da execução da função.

    Escopo

    O escopo de uma variável em PHP define a porção do programa onde ela pode ser utilizada. Na maioria dos casos todas as variáveis têm escopo global. Entretanto, em funções definidas pelo usuário um escopo local é criado. Uma variável de escopo global não pode ser utilizada no interior de uma função sem que haja uma declaração.

    Vamos aprofundar mais neste assunto na próxima     Teste de PHPaula.
                                                                                                  Teste de PHP

    terça-feira, 20 de junho de 2017

    ALA - 6 Definiçõesde Variáveis PHP



    Variáveis PHP.

    O tratamento de variáveis em PHP e muito extenso e detalhado cabendo um estudo mais detalho, à parte.

    Atribuindo nomes corretamente:
    As variáveis no PHP são representadas por um cifrão ($) seguido pelo nome da variável. Os nomes de variável são case-sensitive.
    Nomes de variável seguem as mesmas regras como outros rótulos no PHP. Um nome de variável válido inicia-se com uma letra ou sublinhado, seguido de qualquer número de letras, números ou sublinhados. Em uma expressão regular, poderia ser representado assim: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
     
    Nomes válidos:
    ed98
    _ed98
    ed_98
    ed98_

    Nomes inválidos:
    9edson
    -edsn
    ^edon
    Nota: $this é uma variável especial que não pode ser atribuída.


    Vimos os tipos possíveis de variáveis veremos como defini-las, ' atribuir um valor inicial'.

    As Strings merecem uma atenção elas podem ser definidas basicamente de duas formas:

    a) Ente aspas simples ( ' ) - O testo será interpretedato tal qual digitado com exceção de \\ e \' - dessa forma se vamos dar um salto de linha com o caractere n devereos colacar uma bvarra invertida à sua frente para que ele seja interpretado como um comando de salto)
    b) Já com as aspas duplas ( " ) - todo o texto será interpretado coo digitado inclusive as barras invertidas.
    Exemplo:

    <?

    $meutime = "Palmeras";
    $php = '* $meutime *\n';
    echo "$php";

    ?>
    A saída imprimirá"* $meutime *\n".

    <?

    $meutime= "Palmeiras";
    $php = "* $meutime *\n";
    echo "$php";

    ?>

    A saída imprimirá "* Palmeiras *" (com salto de linha ao final).

    Variáveis Inteiras de Ponto Flutuante (double ou float) podem ter um valor em ponto flutuante com atribuições que sigam as seguintes sintaxes:


    1. $php = 7.774;
    2. $php = 77e4; # equivale a 770.000

    Por padrão atribuímos valores através de expressão,,
    $meu_nome = “Edson”;
    $valor=10.00;
    Podemos também atribuir o valor de um variável a outra variável,a alteração de uma destas variáveis não afetará a outra.
    $saque=$valor*2;

    O PHP também oferece um outro meio de atribuir valores a variáveis: 
    . Isto significa que a nova variável simplesmente referencia (em outras palavras, "torna-se um apelido para" ou "aponta para") a variável original. Alterações na nova variável afetam a original, e vice versa.
    Para atribuir por referência, simplesmente adicione um e-comercial (&) na frente do nome da variável que estiver sendo atribuída (variável de origem) Por exemplo, o trecho de código abaixo imprime 'My name is Bob' duas vezes:
    <?php
    $foo=Bob'//Atribui o valor 'Bob' a variável $foo
    $bar=&$foo;// Referecia $foo através de $bar.
    $bar = "My name is $bar"; // Altera $bar...
    echo $bar;
    echo $foo; // $foo é alterada também.
    ?>
    Uma observação importante a se fazer, é que somente variáveis nomeadas podem ser atribuídas por referência.
    <?php
    $foo = 25;
    $bar = &$foo; // Esta atribuição é válida.
    $bar = &(24 * 7); // Inválido; referencia uma expressão sem nome.

    Function test()
    {
    return 25;
    }

    $bar = &test(); // Inválido.
    ?>


    $bar = &test(); // Inválido.
    ?>

    Não é necessário inicializar variáveis no PHP, contudo é uma ótima prática. Variáveis não inicializadas tem um valor padrão de tipo dependendo do contexto no qual são usadas - padrão de booleanos é FALSE, de inteiros e ponto-flutuantes é zero, strings (por exemplo, se utilizados em echo), são definidas como vazia e arrays tornam-se um array vazio.

    Exemplo #1 Valores padrões de variáveis não inicializadas
    <?php
    // Limpa e remove referência (sem uso de contexto) a variável; imprime NULL
    var_dump($unset_var);

    // Uso de booleano; imprime 'false' (Veja sobre operadores ternário para saber mais sobre a sintaxe)
    echo ($unset_bool ? "true" : "false"); // false

    // Uso de string; imprime 'string(3) "abc"'
    $unset_str .= 'abc';
    var_dump($unset_str);

    // Uso de inteiro; imprime 'int(25)'
    $unset_int += 25; // 0 + 25 => 25
    var_dump($unset_int);

    // Uso de float/double; imprime 'float(1.25)'
    $unset_float += 1.25;
    var_dump($unset_float);

    // Uso de array; imprime array(1) { [3]=> string(3) "def" }
    $unset_arr[3] = "def"; // array() + array(3 => "def") => array(3 => "def")
    var_dump($unset_arr);

    // Uso de objeto; cria novo objeto stdClass (veja http://www.php.net/manual/en/reserved.classes.php)
    // Imprime: object(stdClass)#1 (1) { ["foo"]=> string(3) "bar" }
    $unset_obj->foo = 'bar';
    var_dump($unset_obj);
    ?>

    Funções para Manipulação de variáveis :

    • debug_zval_dump — Exibe a representação de um interno zend value
    • boolval — Obtém o valor booleano de uma variável
    • doubleval — Sinônimo de floatval
    • empty — Determina se a variável é vazia
    • floatval — Obtém o valor em ponto flutuante da variável
    • get_defined_vars — Retorna um array com todas variáveis definidas
    • get_resource_type — Retorna o tipo de resource
    • gettype — Obtém o tipo da variável
    • import_request_variables — Importa variáveis GET/POST/Cookie para o escopo global
    • intval — Retorna o valor inteiro da variável
    • is_array — Verifica se a variável é um array
    • is_bool — Verifica se a variável é um boleano
    • is_callable — Verifica se o conteúdo da variável pode ser chamado como função
    • is_double — Sinônimo de is_float
    • is_float — Informa se a variável é do tipo float
    • is_int — Informa se a variável é do tipo inteiro
    • is_integer — Sinônimo de is_int
    • is_iterable — Verify that the contents of a variable is an iterable value
    • is_long — Sinônimo de is_int
    • is_null — Informa se a variável é NULL
    • is_numeric — Informa se a variável é um número ou uma string numérica
    • is_object — Informa se a variável é um objeto
    • is_real — Sinônimo de is_float
    • is_resource — Informa se a variável é um resource
    • is_scalar — Informa se é uma váriavel escalar
    • is_string — Informa se a variável é do tipo string
    • isset — Informa se a variável foi iniciada
    • print_r — Imprime informação sobre uma variável de forma legível
    • serialize — Generates a storable representation of a value
    • settype — Atribui um tipo para a variável
    • strval — Retorna o valor string de uma variável
    • unserialize — Creates a PHP value from a stored representation
    • unset — Destrói a variável especificada
    • var_dump — Mostra informações sobre a variável
    • var_export — Mostra ou retorna uma representação estruturada de uma variável
    Variáveis de ARRAYS próxima aula:
    Ref: https://secure.php.net/manual/pt_BR/language.variables.basics.php



    Programa exempo para consulta em bd Mysql com programa C

    #include<stdio.h> #include<mysql/mysql.h> # ...