Pesquisa

Pesquisa personalizada

domingo, 7 de maio de 2017

Funções IN e NOT IN no MySql

mysql in not in
IN: usamos quando precisamos retornar todos os registros que contenha um dos valores passados no IN.

NOT IN: usamos quando precisamos retornar todos os registros menos os que possuem os valores passados no NOT IN.

Exemplos:

SELECT est_nome
  FROM estados
WHERE est_sigla IN(‘PR’, ‘SP’, ‘MG’);


SELECT est_nome
  FROM estados
WHERE est_sigla NOT IN(‘PR’, ‘SP’, ‘MG’);


SELECT cur_nome, cur_email, cur_cel, cur_idade
  FROM curriculos
WHERE cur_idade IN (18, 19, 20);


SELECT cur_nome, cur_email, cur_cel, cur_idade
   FROM curriculos
 WHERE cur_idade NOT IN(15, 16, 17);

Exemplo de Procedure no Firebird

firebird
Neste exemplo vai retornar um registro com o campo RESULTADO contendo o valor do cálculo realizado pela procedure.

SET TERM !!;

CREATE PROCEDURE PRO_TESTE(QTD INTEGER)

RETURNS (RESULTADO INTEGER )

AS

DECLARE VARIABLE CONT INTEGER;

BEGIN

  CONT = 0;

  WHILE (CONT <= QTD) DO

  BEGIN

     CONT = CONT + 1;

  END

  RESULTADO = QTD * CONT;

  SUSPEND;

END !!


Para executar pode fazer uma query com:


SELECT * FROM PRO_TESTE (6);




Começando com arrays

array

Segue um exemplo para você que está estudando arrays, listando os meses do ano.

<?

$mes = array("Janeiro", "fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro");

$meses = count($mes);

for($i = 0; $i < $meses; $i++) {
     echo $mes[$i]."<br>";
}

?>

Convertendo datas vindas do MySql

mysql datas
<?php

$data = explode( '-',$_POST['data']); //separa a string por "-"

$data = implode('-',array_reverse($data)); // reverte a ordem da string quebrada na linha a cima e monta novamente no novo formato YYYY-MM-DD

?>

Ou você pode fazer de forma mais simples, o mesmo código acima.

<?php
$data = implode('-',array_reverse(explode( '-',$_POST['data'])));
?>

sexta-feira, 3 de março de 2017

Submete o formulário se pressionar a tecla ENTER

javascript

Usando uma função javascript, podemos submeter o formulário pressionando a tecla enter após digitar os dados em um campo.

function procuraEnter(evt) {
    evt = (evt) ? evt : event
    var c = (evt.which) ? evt.which : evt.keyCode
    if (c == 13) {
         documents.forms[0].submit()
        return false
   }
   return true
}


Para utilizar:


(...)
Valor<input type="text" size=5 name="valor" value=0 onKeyPress="procuraEnter()">
(...)

Busca dados mais próximos do que o usuário digitou com PHP e MySql

php, mysql

//Aqui você tem sua conexão com o Banco de Dados

$busca = $_POST[’busca’];

$sql = "SELECT nomeDoSeuCampo
               FROM nomeDaSuaTabela
            WHERE campoDaSuaTabela LIKE ‘%$busca%";

//sua execução da query $sql

//laço while para mostrar os resultados

Usando WHERE e LIKE dizemos: “Selecione tudo aonde o campoDaSuaTabela é PARECIDO COM”, assim mostrará tudo que for próximo ao que o usuário digitar no campo de busca.


PRESTE ATENÇÃO NO  ‘%’:

‘%$busca%’: se algum registro CONTÉM o que foi digitado isto é entre o começo e o fim da frase do registro.

$busca = “dor”;
O banco de dados vai fornecer TUDO que tiver “dor” no meio do registro, isto é entre o começo e o fim da palavra, por ex: amadores, adoração, etc…



‘%$busca’: se algum registro COMEÇA COM o que foi digitado

$busca = “Via”;
O banco de dados vai fornecer tudo que começa com essa palavra, como por ex: Viaduto, Viagem, Viação.


‘$busca%’: Se algum registro TERMINA COM o que foi digitado

$busca = “ada”;
O banco de dados vai fornecer tudo que terminar com essa palavra, como por ex: facada, animada, procurada, etc…

domingo, 19 de fevereiro de 2017

Aplicando máscaras nos campos com Jquery

maskedinput

Coloque os Plugins na sua página.

jQuery -->http://www.jquery.com

Masked Input--->http://digitalbush.com/projects/masked-input-plugin


Inserindo Script na Página

<script src="meucaminho/jquery.js" type="text/javascript"></script>
<script src="meucaminho/jquery.maskedinput.js" type="text/javascript"></script>


Usando a função:

 <script>
jQuery(function($){

   $("#txtCpf").mask("999.999.999-99");
});
</script>


O Formulário

CPF:
<input name="txtCpf" type="text" id="txtCpf" size="12">


Trigger:Data menor que a de hoje

EXCEPTION
Trigger para validar a data de retirada, ela não pode ser menor do que data do sistema.

CREATE EXCEPTION  data ‘Data menor que a de hoje ! Digite outra data’

SET TERM !! ;
CREATE TRIGGER datasistem
FOR emprestimo
BEFORE INSERT
AS
DECLARE VARIABLE dt CHAR(1);
BEGIN
   IF (new.dataRet is not null) THEN
   BEGIN
      EXECUTE PROCEDURE data(new.dataRet)
      RETURNING_VALUES :dt;
      IF (:dt = 'data invalida') THEN
            EXCEPTION data;
   END
END !!
SET TERM ; !!

quinta-feira, 26 de janeiro de 2017

Protegendo e-mails de spams com str_replace

str_replace

Veja uma das formas de tratar o e-mail do usuário antes de salvar no banco de dados.

$email = $_POST[’email’]; //ex: ola.mundo@gmail.com

$email = str_replace(’.', ‘PONTO’, $email); //substitui os ” . ” do email(agora vai ficar: olaPONTOmundo@gmailPONTOcom)

$email = str_replace(’@', ‘ARROBA’, $email); //Substitui o “@” por “ARROBA”(agora finalmente vai ficar: olaPONTOmundoARROBAgmailPONTOcom)


Na hora de buscar o e-mail do usuário para mostrar no seu site, basta fazer o contrario:

$emailDoDB = str_replace(’PONTO’, ‘.’, $emailDoDB); //Substitui PONTO por ‘.’

$emailDoDB = str_replace(’ARROBA’, ‘@’, $emailDoDB); //Substitui ARROBA por ‘@’

echo $emailDoDB; //Mostra ola.mundo@gmail.com, como é em sua forma legível.

Análise de Ferramentas para gráficos em PHP

gráficos em PHP


JPGRAPH

Necessita biblioteca GD do PHP para funcionar

VANTAGENS

  • Possui documentação
  • 337 tipos de gráficos
  • Fácil adaptação de código


DESVANTAGENS

  • Para cada tipo de gráfico deve-se importar uma biblioteca 
  • A versão 1.x só funciona no PHP4 
  • A versão 2.x só funciona no PHP5
  • Utiliza algumas fontes especificas do Windows para funcionar , do tipo TTF ex: FF_ARIAL, não tendo mostra somente uma mensagem de erro
  • No gráfico de barras por exemplo para se alterar o ângulo (posição dos labels do eixo x) necessita-se desta fonte ,caso contrário não funciona 
  • Paga para uso comercial
  • Algumas cores também ocasionam erro 

Acesse Aqui

OPEN FLASH CHART

VANTAGENS

  • Melhor visualização
  • Fácil adaptação ao código
  • Uma biblioteca para todos
  • Tipos diversos


DESVANTAGENS

  • o código que monta os dados do gráfico deve estar em um arquivo e ser chamado em outro


Acesse Aqui


PHPLOT

Necessita biblioteca GD do PHP para funcionar

VANTAGENS

  • Possui documentação
  • Tipos diversos
  • Uma biblioteca para todos


DESVANTAGENS

  • Difícil adaptação ao código principalmente com dados dinâmicos
  • Alguns fóruns encontra-se a informação de que o projeto da ferramenta está parado

Função PHP-validar e-mail pelo domínio

validar e-mail


Função em PHP para validar se o e-mail informado no formulário é válido:

function verificaEmail ( $email )
{
     global $mxrecords;

     if ( $email == ” ) return ”;

     list ( $username , $domaintld ) = split ( “@” , $email , 2 ) ;

     $domaintld = strtolower ( $domaintld ) ;

     if ( $domainltd == ‘dodgeit.com’ ) return false;

     if ( !getmxrr ( $domaintld , $mxrecords ) || !preg_match ( “(^[-\w\.]+$)” , $username ) ) return   false;

     return true;
}


Na hora de tratar o email:

$email = ‘hello@yahoo.com.br’;

if(!verificaEmail ($email))
{
    echo ‘O E-mail informado é inválido’;
}
else
{
   echo ‘E-mail válido!’;
}