Desenvolvimento seguro com PHP
|
|
|
- Talita Mendonça Laranjeira
- 10 Há anos
- Visualizações:
Transcrição
1 Desenvolvimento seguro com PHP É com enorme satisfação que escrevo esse meu primeiro artigo para o Linha de código, sobre um assunto tão importante nos ultimos tempos onde o que mais se vê nas midias é noticia de sites sendo invadidos. Muitos desses ataques são por erros bem comuns cometidos por programadores, no nosso caso, programadores PHP, nesse artigo pretendo falar sobre algumas precauções a se tomar durante o desenvolvimento de sua aplicação web para evitar grande parte dos ataques. Configurar o PHP.ini Primeiramente, devemos atentar para as configurações oferecidas pelo PHP para tornar nosso aplicativo mais seguro. Não vou falar sobre a diretiva safe_mode e nem das que derivam desta pois esta está obsoleta. disable_functions=string Com essa diretiva, você pode desabilita funções especificas do php que podem gerar problemas de segurança, como por exemplo o fopen(),popen() e file(). Dessa forma: disable_functions=fopen,popen,file; disable_errors=on Off Deixe essa função habilitada só se estiver em ambiente de desenvolvimento, já que é indispensável saber detalhes sobres os erros de sua aplicação, mas quando for passar sua aplicação para ambiente de produção deve desabilitar essa diretiva, e usar métodos alternativos para saber de erros gerados pela aplicação (salvar os erros em um arquivo de log);
2 doc_root=string Essa diretiva pode ser configurada com um caminho que especifica o diretório raiz a partir do qual os arquivos PHP serão servidos. Se a diretiva doc_root estiver configurada com nada (vazia), ela será ignorada, e os scripts PHP serão executados exatamente conforme especifica a URL; open_basedir=string A diretiva open_basedir do PHP pode estabelecer um diretório base ao qual todas as operações com arquivos estarão restritas. Suponha que seu site esteja localizado na pasta home/www, para impedir que pessoas má intencionadas manipulem arquivos, tais como /etc/passwd por meio de alguns comandos simples do proprio PHP, você deve configurar essa diretiva da seguinte forma: open_basedir = /home/www/. expose_php=on Off É conveniente desabilitar essa opção, pois ela exibe detalhes sobre o PHP na assinatura do servidor. Configurando o Apache ServerSignature Esta diretiva é responsavel por gerar a assinatura do servidor, mostrando a versão do servidor Apache, o nome do servidor, à porta e aos módulos compilados. É aconselhável mantê-la desabilitada. ServerToken Se a ServerSignature estiver habilitada, essa irá configurar o grau de detalhes sobre o servidor que será fornecido, estão disponiveis seis opções: Full, Major, Minimal, Minor, OS e Prod.
3 phpinfo() Frequentemente programadores inexperientes deixam que alguma arquivo php com referencia a essa função vá ao modo de produção do site, o que é muito perigoso, pois como sabemos o phpinfo()exibe detalhes de como seu php está configurado e isso é muito interessante para hackers. Portanto, sempre que for colocar a sua aplicação web em modo de produção certifique-se que não há nenhuma chamada esta função. Se você duvida do quanto esse erro é comum, coloque o seguinte texto na busca do google:inurl:phpinfo.php. Tenho certeza que haverão muitos resultados. Mude a extensão do documento Isso mesmo, pouca gente sabe, mas é possivel facilmente alterar a extensão de um arquivo PHP (.php), basta mudar a linha do httpd.conf (arquivo de configuração do apache) onde se lê: addtype application/x-httpd-php.php para por exemplo addtype application/x-httpd-php.asp Impedindo o acesso a determinadas extensões de arquivos Existem extensões de arquivos bastante procuradas por hackers,.inc é um exemplo dessas, é conveniente impedir que seja possivel o acesso a arquivos com esta extensões. Para isso o apache tem uma diretiva de configuração (httpd.conf) chamada Files, como mostra Listagem 1. Listagem 1: Modificando a diretiva Files do arquivo httpd.conf <files *.inc> Order allow,deny Deny from all </files>
4 Cross-Site Scripting (XSS) Cross-site scripting (XSS) é um tipo de vulnerabilidade do sistema de segurança de um computador, encontrado normalmente em aplicações web que activam ataques maliciosos ao injectarem client-side script dentro das páginas web vistas por outros usuários. Um script de exploração de vulnerabilidade crosssite pode ser usado pelos atacantes para escapar aos controlos de acesso que usam a mesma política de origem. [definição da Wikipedia]. Para evitar esse tipo de ataque no sistema web em PHP, você tratar os dados que usuario oferece como entrada com as seguintes funções: string htmlentities(string input [,int quote_style [, string charset ] ]) Esta função converte caracteres que possuem significado especial em HTML para strings um browser pode mostrar como sendo fornecidos, em vez de executá-las como HTML. string strip_tags(string str [, string allowed_tags]) Esta função permite escolhar que tags html serão permitidas na string. SQL Injection A Injeção de SQL, mais conhecida através do termo americano SQL Injection, é um tipo de ameaça de segurança que se aproveita de falhas em sistemas que interagem com bases de dados via SQL. A injeção de SQL ocorre quando o atacante consegue inserir uma série de instruções SQL dentro de uma consulta (query) através da manipulação das entrada de dados de uma aplicação. [Definição da Wikipedia] Precauções a se tomar para evitar ataques via SQL injection:
5 Nunca conecte ao banco de dados como um super-usuario (root), sempre utilize usuarios personalizados, sem que tenha acesso a tudo do banco. O PHP oferece diversas funções para evitar ataques por SQL injection:mysql_real_escape_string(), sqlite_escape_stri ng(), addslashes() e str_replace(). Conclusão Meu objetivo com esse artigo não foi dar um passo-a-passo de como fazer uma aplicação 100% segura, até mesmo porque isso não existe, mas sim abrir a mente dos desenvolvedores para esse lado da programação que muitos deixam de lado e acabam sofrendo as consequencias uma hora ou outra. Agradeço a quem leu este artigo até o fim, pois é o meu primeiro aqui no Linha de Código. Peço que comentem criticas e complementem o artigo nos seus comentários. Referência bibliográfica: Dominando PHP e Mysql do iniciante ao profissional, W. Jason Gilmore. Wikipédia e PHP.net (manual do PHP). Fonte: Linha de Código Hiago Hubert PHP é muito melhor do que você pensa Discursos sobre PHP estão por toda parte, e eles vêm até mesmo de caras inteligentes. Quando Jeff Atwood escreveu outro sobre o PHP, isso me fez pensar sobre as partes boas dessa linguagem.
6 O maior problema desses discursos é que eles vêm de pessoas presas no passado do PHP. Ou eles não se importam ou não querem admitir que o PHP realmente evoluiu em um ritmo muito rápido, tanto no nível da linguagem, como no nível da comunidade. Na verdade, ele evolui muito mais rápido do que qualquer outra linguagem ou plataforma web. Nem sempre tem sido o caso, mas os últimos 5 anos têm sido uma jornada incrível para o PHP. Antes de falar sobre as coisas incríveis que a comunidade PHP tem alcançado recentemente, vamos dar uma olhada em alguns números interessantes: o PHP é utilizado por 77,9% de todos os sites cuja linguagem de programação server-side é conhecida. O WordPress é usado por 16,6% de todos os sites do mundo. Se você der uma olhada nos três melhores CMS, para os sites que usam um sistema de gerenciamento de conteúdo monitorado: o WordPress é o primeiro com 54,3%, o Joomla é o segundo com 9,2%, e o Drupal é o terceiro com 6,8%. Três produtos escrito em PHP. PHP deve ter feito algo direito, não? Agora, deixa eu te contar um segredo sobre o PHP: apesar das mudanças ao longo dos anos, o PHP ainda é a linguagem mais fácil para pessoas não-técnicas aprenderem: permite a qualquer um criar sites dinâmicos mais rapidamente do que com quaisquer outras tecnologias, permite também hospedar sites de forma barata e sem aborrecimentos. O PHP provavelmente não é a melhor linguagem projetada no mundo, mas permite que você faça as coisas, e contra isso você não pode argumentar. PHP, a linguagem O PHP 5.0(lançado em 2004) nos trouxe um modelo de objeto muito sólido Espere um pouco, eu estou falando de algo lançado há quase oito anos. Vamos avançar um pouco no tempo. A versão mais recente do PHP, o PHP 5.4, vem com todos os recursos com os quais você poderia sonhar em uma linguagem web
7 moderna: sim, PHP suporta namespaces; sim, PHP suporta closures; e sim,php suporta traits. Levou algum tempo, mas o PHP5,4 também vem com uma agradável sintaxe que torna toda a experiência melhor do que nunca: sim, o PHP suporta [] para definir arrays; sim, o PHP suporta chamar um método em um objeto recém-criado ((new Foo()) -> bar ()); sim,o PHP suporta obter um item do array de qualquer expressão($ foo-> bar () [1]). O PHP até mesmo aprendeu com seus erros: register_globals e magic_quotes estão definitivamente fora. Por último, mas não menos importante, o PHP ainda vem comum servidor web embutido que facilita testes locais e ele começa em uma questão de micro-segundos. Próximos desafios: Como é que a gente faz upgrade de todos os tutoriais antigos que falam sobre PHP na web? Qual é a melhor maneira dar suporte para a tecnologia WebSocket em um aplicativo PHP? PHP, o ecossistema Ter uma boa linguagem é ótimo, mas ter um grande ecossistema é ainda melhor.e o ecossistema PHP evoluiu muito nos últimos anos. Git Não vou falar muito sobre ele. O Git está em toda parte, e o PHP o adotou rapidamente. Quase todas as grandes bibliotecas PHP, frameworks e quase todos os produtos agora estão usando Git, incluindo o próprio PHP.
8 Composer Dois anos atrás, eu queria me livrar do PEAR-hack horrível que fiz em symfony para suportar plugins. Eu queria substituí-lo por algo que fosse capaz de gerenciar dependências do projeto, não um instalador global como PEAR. Gerenciar dependências não é uma tarefa fácil, então tentei encontrar o melhor algoritmo para gerenciar as dependências de software; eu tinha um olhar para tudo: de Perl para Ruby,de Debian para Redhat. Nada foi satisfatório: apenas soluções caseiras que parecem funcionar empiricamente. Então, me deparei com ZYpp. E foi isso. ZYpp usa um gerenciador SATpara gerenciar dependências. Avançando um pouco no tempo Graças ao trabalho duro de Nils Adermann e Jordi Boggiano, o PHP possui agora um dos melhores gerenciadores de dependência, o Composer. Sim, o PHP possui um gerenciador de dependência melhor do que quaisquer outras línguas. E graças a Git, Composer e servidor web embutido do PHP, nunca foi tão fácil fazer o download/instalação/teste de um projeto PHP. Quer testar Symfony (usandophp5.4)? $ composer.phar create-project symfony/framework-standardedition $ cd framework-standard-edition $./app/console server:run Quer testar Silex? $ composer.phar create-project fabpot/silex-skeleton $ cd silex-skeleton $ php -S localhost:8888 -t web/ Não conhece o Composer ainda?você deveria aprender sobre ele. Pesquise sobre opackagist, o repositório principal do Composer: ele já possui mais de 1900 pacotes disponíveis, e eles foram instalados mais de um milhão de vezes em menos de três meses.
9 Próximo desafio: incluir o instalador do Composer na próxima versão do PHP? Colaboração A colaboração da comunidade é o ponto mais importante deste artigo, do qual estou bem orgulhoso. Começamos a ver uma colaboração melhor entre projetos PHP, até mesmo dos muito grandes, aqueles que você pensaria que são grandes o suficiente para não se preocuparem com os outros. phpbb, Drupal, ezpublish, Symfony e muitos outros (phpdocumentor, PHPUnit, Behat, Zikula, Propel, Doctrine, Midgard, ) estão compartilhando código. Sim, eles são concorrentes, mas todos entenderam que a adaptação de um ambiente para outro era uma coisa boa. E o Composer é um bom elemento. Próximo desafio: convencer ainda mais projetos a aderirem a essa tendência. Conclusão Me deixa falar de novo: o PHP provavelmente não é a melhor linguagem que existe por aí, e eu sou o primeiro a exaltar suas peculiaridades, mas o PHP é a melhor plataforma web de todos os tempos. *** Texto original disponível em han-what-you-think Fonte: imasters
10 Falha crítica de segurança é encontrada no PHP Uma falha recente encontrada no PHP e liberada para o público por engano pode deixar qualquer página no servidor aberta para inserção de código malicioso. A vulnerabilidade, que afeta apenas servidores rodando o PHP em modo CGI, foi descoberta por um time de hackers durante uma competição. A essência da falha é que hoje é possível chamar parâmetros do PHP direto pela URL. Por exemplo, ao acessar o endereço o servidor executaria o PHP com o parâmetro -s, que exibe o código-fonte do arquivo, e não o HTML gerado por ele. Só isso já seria problema suficiente (afinal, é comum inserir dados como senhas do banco de dados no código fonte), mas o time que descobriu a falha também percebeu que ela também permite inserir código malicioso no arquivo e executá-lo. Descobertas desse tipo normalmente são enviadas para os desenvolvedores que primeiro resolvem o problema e lançam uma atualização para só então os veículos anunciarem a falha e a correção, mas por uma falha humana o bug foi acidentalmente enviado como público no sistema de bugs do PHP. Embora o time de desenvolvedores já tenha liberado uma correção, há informações de que elas não resolvem totalmente o problema. O ideal é usar o PHP de outra forma que não em modo CGI (em modo FastCGI essa falha não acontece) ou incluir uma regra para que o Apache bloqueie URLs com - no arquivo.htaccess, evitando assim o uso de parâmetros do PHP. A regra é esta abaixo:
11 RewriteCond %{QUERY_STRING} ^(%2d -)[^=]+$ [NC] RewriteRule ^(.*) $1? [L] Uma nova atualização deve sair em breve, já com uma correção mais eficiente. Até lá, todo cuidado é pouco. Fonte: imasters Cadastros de dados no MySQL Depois do nosso entendimento sobre como funciona o envio de dados atravé s de um formulário para o PHP, como conectar com o MySQL, agora poderemos aprender a cadastrar os registros capturados no BD. Começaremos utilizando o nosso formulário e o arquivo que captura as informações que foram dados de exemplo anteriormente e daremos continuidade. O Banco de dados e a Tabela Paa quem não lembra como criar uma base de dados e uma tabela, pode conferir nos tópicos do nosso curso de PHP. Criaremos um BD para nossos estudos chamado aprendendo_php e tabela chamada agenda, seguindo o esquema abaixo: CREATE DATABASE `aprendendo_php` DEFAULT CHARACTER SET latin1 COLLATE latin1_bin; CREATE TABLE `aprendendo_php`.`agenda` ( `id` INT( 255 ) NOT NULL AUTO_INCREMENT PRIMARY KEY, `nome` TEXT NOT NULL, `telefone` TEXT NOT NULL ) ENGINE = MYISAM ;
12 Formulário de Cadastro (agenda_form.php) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " <html xmlns=" <head> <meta httpequiv="content-type" content="text/html; charset=iso " /> <title>agenda - Formulário de Cadastro</title> </head> <body> <form id="formulario" name="formulario" method="post" action="cadastrar_agenda.php"> <p>nome: <input type="text" name="nome" id="nome" /> </p> <p>telefone: <input type="text" name="telefone" id="telefone" /> </p> <p> <input type="submit" name="button" id="button" value="cadastrar" /> </p> </form> </body> </html> Conexão com o BD do MySQL (conexao.php) Como estou utilizando o EasyPHP, informei o usuario root e a senha vazia. <?php $servidor = "localhost"; $usuario = "root"; $senha = ""; $banco = "aprendendo_php"; $conexao = mysql_connect($servidor, $usuario, $senha); $bd = mysql_select_db($banco, $conexao); if(!$conexao){ echo "Não foi possível conectar com o BD!"; if(!$bd){ echo "Não foi possível selecionar o BD!"; } }?> Capturando dados e cadastrando no BD (agenda_cadastrar.php) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " <html xmlns=" <head> <meta httpequiv="content-type" content="text/html; charset=iso " /> <title>agenda - Cadastrando</title> </head> <body> <?php // Incluímos o arquivo de conexão para efetuar a conexão com o BD e selecionar o BD include_once('conexao.php'); // Faremos a captura de dados do formulário e criaremos as devidas
13 variáveis $nome = $_POST['nome']; $telefone = $_POST['telefone']; // Criamos o SQL a ser executado para cadastrar em nossa tabela $sqlcadastra = "INSERT INTO `agenda` (`id`, `nome`, `telefone`) VALUES (NULL, '".$nome."', '".$telefone."');"; // Executamos o comando SQL $cadastrar = mysql_query($sqlcadastra, $conexao); // Faz o teste se foi cadastrado e informa uma mensagem if($cadastrar){ // Aqui fica o código de exibição quando o cadastro for realizado com sucesso! echo "SUCESSO! Seu cadastro foi feito!<br />"; echo "<a href=\"agenda_form.php\">clique aqui para voltar</a>"; }else{ // Aqui fica o código de exibição quando o cadastro não for possível ser feito por causa de algum erro! die("erro - Seu cadastro não pode ser realizado: ".mysql_error()); }?> </body> </html> Perceba que ao acessar o formulário você irá preencher os dois campos, nome e telefone. Após o envio, os dados serão capturados no arquivo agenda_cadastrar.php e inseridos no BD. O código está todo comentado explicando o passo-a-passo. Após cadastrar, vá até o seu BD pelo PHPMyAdmin e entre na tabela criada para ver os registros. Nas próximas postagens irei demonstrar como fazer a listagem dos registros de uma tabela, assim como excluir e editá-los. Como exercício, você pode tentar implementar mais campos no seu BD, e consequentemente no seu formulário também para melhorar o código. Crie campos para , separe os números para telefone comercial, telefone residencial, celular, e o que mais você quiser. Espero que tenham aprendido e gostado. Fico no aguardo das dúvidas. Abraços!
14 Conectando o PHP ao MySQL Neste post eu faço a demonstração e explico como se faz para conectar o PHP ao MySQL, para que a gente possa começar os estudos do PHP interagindo com o banco de dados, consequentemente a utilização de consultas, armazenamento, exclusão e atualização de registros. Entenda que isto é o princípio de tudo que você for utilizar com o MySQL, pois pra você conseguir obter e armazenar estes dados, você precisar conectar um ao outro. Veja abaixo a sintaxe da função do PHP de conexão com o banco de dados MySQL: resource mysql_connect([string $server[,string $username[,string $password[,bool $new_link[,int $client_flags]]]]]) Vamos a explicação geral desta função por cada parte: mysql_connect() Esta é a função em si que estamos demonstrando. $server Espaço para a string que informa o servidor que iremos nos conectar. De forma geral, utilizamos localhost, pois o servidor MySQL fica no mesmo servidor da hospedagem. Mas isso varia de servidor pra servidor. Com certeza se você estiver trabalhando em ambiente de desenvolvimento com o EasyPHP, você terá que utilizar desta forma. $username Informamos a string com o usuario da conexão. $password Aqui será a string da senha utilizada. Quanto ao $new_link e o $client_flag, não iremos utilizar,
15 pois para um modo geral e utilização de estudos não vem ao caso. Mas quem quiser pode deixar uma pergunta ou comentário que irei responder dentro do que for possível e dos meus conhecimento. Agora vamos ao nosso código <?php $servidor = "localhost"; $usuario = "root"; $senha = ""; $banco = "aprendendo_php"; $conexao = mysql_connect($servidor, $usuario, $senha); $bd = mysql_select_db($banco, $conexao); if(!$conexao){ echo "Não foi possível conectar com o BD!"; if(!$bd){ echo "Não foi possível selecionar o BD!"; } }?> Explicação do código linha 2 até 5 Iremos definir os dados para configurar nossa conexão com o BD, como qual servidor iremos conectar, o usuário e senha da conexão, e também o banco a ser utilizado. linha 7 Aqui iremos executar a nossa função e armazenar o resultado na variavel $conexao, caso a conexão encontre algum problema, cairá no código do die() e exibirá a mensagem de erro pela função mysql_error(). linha 9 Testaremos o valor da $conexao para saber se conseguiu conectar. linha 11 Tenta executar a função mysql_select_db() que irá selecionar o banco de dados definido anteriormente, utilizando a conexão executada na linha 7. Com este código de forma bem simples, você pode salvar como um arquivo conexao.php e basta você incluir os arquivos dentro das páginas que for utilizar esta conexão com BD. Muito simples, não? Espero que tenham gostado e até a próxima!
16 Validação de dados no PHP Um dos princípios de segurança de um sistema Web é que você não deve acreditar 100% no que o usuário possa inserir nos campos de um formulário (dados enviados pelo POST) ou alteração da URL (dados enviados pelo GET). Nesta postagem, não vou focar segurança em si, mas vou mostrar como validar os dados dos usuários para que o seu site/sistema tenha um melhor controle dos dados manipulados. Este tipo de validação pode ser feito diretamente pelo navegador do usuário com o Javascript, mas como você não deve confiar nisto, acaba não sendo 100% seguro, então irei mostrar como fazer no servidor, diretamente no PHP, mas com isto o desempenho acaba sendo menor. Mas aí você me pergunta qual tipo de controle eu iria utilizar, Javascript ou PHP? Eu respondo que utilize o PHP, mas se utilizar os dois em conjunto, melhor ainda. Entenda o porque de utilizar os dois métodos. Quando você implementa o Javascript, ele irá atuar diretamente no navegador como eu disse anteriormente, evitando que os dados sejam enviados para o servidor, bloqueando ali mesmo qualquer tipo de padrão que você deseja. Mas mesmo que o usuário burle o Javascript, o PHP irá agir da mesma forma, bloqueando os dados inválidos/indesejáveis. Acho que já deu pra entender qual é o objetivo das validações né? Então vamos ao que importa, as técnicas. Tamanho mínimo de caracteres A função strlen() conta quanto caracteres foi passado na
17 string e utilizando em conjunto com o IF. <?php $nome = $_GET['nome']; if(strlen($nome)<=2){ echo "Preencha o nome com no mínimo 2 caracteres."; }else{ echo "Seu nome \"$nome\" tem ".strlen($nome)." caracteres."; }?> Aceitando somente números A função is_numeric() verifica se o valor passado é número, independente de ser do tipo float, integer, long, etc. <?php $idade = $_GET['idade']; if(!is_numeric($idade)){ echo "Preencha a idade somente com números."; }else{ echo "Sua idade é ".$idade." anos."; }?> Evitando espaços em branco Utilizaremos a função strstr() que irá pesquisar na string se ela possui um espaço vazio que está entre as aspas duplas. Caso ache um espao, ele entrará na primeira condição, informando o erro. <?php $palavra = "teste teste"; if(strstr($palavra, " ")){ echo "A palavra não pode ter espaços."; }else{ echo "Você escreveu ".$palavra; }?> Evitando campo vazio Neste caso, iremos utilizar a função empty(), que verifica se o campo esta vazio, mas caso você faça o teste de enviar apenas um espaço em branco, ele irá aceitar. <?php $palavra = "teste"; if(empty($palavra)){ echo "A palavra não pode estar vazia."; }else{ echo "Você escreveu ".$palavra; }?>
18 Validando s Método 1 (Expressão Regular) A validação de um através de expressão regular. <?php $ = "[email protected]"; if(!preg_match('/^[^0-9][a-za-z0-9_]+([.][a-za-z0-9_]+)*[@][aza-z0-9_]+([.][a-za-z0-9_]+)*[.][a-za-z]{2,4}$/', $ )){ echo " inválido."; }else{ echo "Seu é ".$ ; }?> Validando s Método 2 (PHP) A validação de um através do próprio filtro do PHP. <?php $ = "[email protected]"; if(!filter_var($ , FILTER_VALIDATE_ )){ echo " inválido."; }else{ echo "Seu é ".$ ; }?> Validando CEP Aceita os CEPs do tipo XXXXX ou XXXXX-XXX através de expressão regular. <?php $cep = " "; if(!preg_match('/^[0-9]{5,5}([- ]?[0-9]{3,3})?$/', $cep)) { echo "CEP inválido."; }?> Validando Data Aceita somente data no formado XX/XX/XXXX através de expressão regular. <?php $data = "04/04/2011"; if(!preg_match('/^\d{1,2}\/\d{1,2}\/\d{4}$/', $data)) { echo "Data inválida."; }?>
19 Validando Telefone Permite a utilização de string com telefone com DDD de 2 ou 3 dígitos (inclusão do zero na frente) no formato (XXX) XXXX- XXXX. <?php $telefone = "(82) "; if(!preg_match('^\(+[0-9]{2,3}\) [0-9]{4}-[0-9]{4}$^', $telefone)){ echo "Telefone inváildo."; }?> Validando CPF Não é a melhor forma de validar o CPF, mas em breve vou atualizar este exemplo pra uma forma mais completa. <?php $cpf = " "; if(!preg_match("^([0-9]){3}\.([0-9]){3}\.([0-9]){3}- ([0-9]){2}$", $cpf)) { echo "CPF inválido."; }?> Acho que estas validações irão ajudar no entendimento, mostrando o caminho para validar outros tipos de dados que venham a ser necessário para os seus sites e sistemas. Eu aceito sugestões de novas validações para que eu possa incluir nestes exemplos. Grande abraço e bons estudos! Enviado dados para o PHP através de formulário Bom galera, eu estive um tempo parado sem postar nada aqui no blog, mas prometo que vou tentar voltar a ativa. Mas vamos deixar de conversa e vamos ao que interessa mesmo.
20 Os iniciantes em PHP sempre tem a dúvida de como fazer o envio de umas informações de uma página para outra. Como vimos na postagem anterior as diferenças do GET e POST, agora vamos mostrar na prática como funciona o código. A princípio, devemos saber que basicamente o envio dos dados de um formulário, geralmente, são enviados pelo método POST devido a sua capacidade de enviar grandes dados e segurança. Só para recapitular um pouco sobre formulário em HTML, temos os seguintes tipos de campos de dados: Hidden Text e Textarea Radio Checkbox Select Montando o formulário HTML Todo formulário começa com a tag <form> e para uo funcionamento com o PHP, precisamo definir alguns parâmetros como action e method e seus devidos valores de acordo com a sua necessidade. Os campos do formulários precisam ter o parâmetro name com um valor definido, pois será o PHP que irá capturar através deste name o valor passado no formulário. Uma outra necessidade é colocar um botão de submit que é responsável pelo gatilho de envio dos dados que foram preenchidos no formulário e jogando para a página que irá recebê-los. Vamos começar com um exemplo simples de formulário com apenas 2 campos, nome e idade. Vamos chamar esse arquivo de formulário.php. Vejamos o código abaixo: <form id="formulario" name="formulario" method="post"
21 action="recebe_dados.php"> Nome: <input type="text" name="campo_nome" id="campo_nome" /><br /> Idade: <input type="text" name="campo_idade" id="campo_diade" /><br /> <input type="submit" name="button" id="button" value="enviar" /> </form> Perceba que eu defini o action para o arquivo recebe_dados.php e utilizando o método POST. Os nomes dos campos nome e idade estão definidos como campo_nome e campo_idade respectivamente. Recebendo os dados na outra página Para a captura de dados enviados para o PHP, nós utilizamos as seguintes variáveis: $_POST e $_GET; de acordo com o método definido no formulário. Como no nosso exemplo acima eu utilizei o método POST, vou mostrar agora como iremos capturar esses dados no arquivo recebe_dados.php : <?php echo "O nome enviado foi: ".$_POST['campo_nome']."<br />"; echo "A idade enviada foi: ".$_POST['campo_idade']."<br />";?> Perceba que dentro do $_POST eu defini em cada campo o nome do campo utilizado no formulário com o parâmetro name. Então não importa o valor do name que você definir lá no formulário, pois basta você definir o mesmo nome na hora de capturar pelo PHP no $_POST. Ou seja, se no campo eu definir o valor do name para banana no PHP eu tenho que utilizar $_POST[ banana ]. Deu pra entender a jogada? É muito simples mesmo esse envio de dados! Agora veja abaixo como seria em cada tipo de dados no formulário e como capturar no PHP. Campo Hidden Neste tipo de campo, precisamo definir um value, que será o valor enviado através do camop de forma já definida.
22 HTML: <input type="hidden" name="macaco" value="banana" /> PHP: <?php echo $_POST['macaco']; // Receberá o valor "banana"?> Campo Text e Textarea HTML: <input type="text" name=" " /> <textarea name="mensagem" id="textarea" cols="45" rows="5"></textarea> PHP: <?php echo $_POST[' ']; echo $_POST['mensagem'];?> Campo Checkbox HTML: <input type="checkbox" name="valor" value="10" /> PHP: <?php echo $_POST['valor'];?> Campo Select Mais uma diferença no tipo SELECT, pois nele definimos normalmente o name e os values são definidos em cada <option>. HTML: <select name="sexo" id="select"> <option value="m">masculino</option> <option value="f">feminino</option> </select> PHP: <?php echo $_POST['sexo'];?>
23 E chagemos ao fim do entendimento de como passar os dados de um formulário para uma página PHP receber os dados e você fazer o que quiser com eles, por exemplo, manipular os dados e cadastrar no banco de dados. Espero que tenham entendido e que façam um bom proveito do material. Grande abraço e fico no aguardo de dúvidas! Entendendo a diferença entre os Métodos GET e POST no PHP É de extrema importância saber bem a diferença desses dois métodos, para que se possa utilizá-los de forma correta e na hora certa. De certa forma, os dois fazem o envio de dados através do HTTP. GET Este método é utilizado quando queremos passar poucas/pequenas informações para realizar uma pesquisa ou simplesmente passar uma informação para outra página através da URL (barra de endereços). O que não pode acontecer é as suas requisições resultarem em mudanças no conteúdo da resposta. A função do método GET é pura e simplesmente recuperar um recurso existente no servidor. O resultado de uma requisição GET é cacheável pelo cliente, ou seja, fica no histórico do navegador.
24 Exemplo do GET Para que você possa entender melhor este exemplo, você só precisa olhar para as informações que vem logo após a interrogação?, pois é o símbolo que indica o início dos dados passados através da URL, ou seja, pelo método GET. Se você prestar atenção, notará que sempre vem um índice e um valor logo após o sinal de igualdade (Ex.: cat=3) e quando queremos incluir mais de uma informação, acrescentamos o símbolo & para concatenar o restante (Ex.: cat=3&pag=2&tipo=5). Este método é bem restrito quanto ao tamanho e quantidade das informações que são passadas pela URL. Você poderá enviar no máximo 1024 caracteres, o que limita bastante suas possibilidades com esse método. Caso você passe desse limite, você corre o risco de obter um erro da sua página, já que as informações foram passadas de forma incompleta. Como você já percebeu, as informações enviadas ficam visíveis ao visitante, o que é uma brecha na segurança, pois um visitante malicioso pode colocar algum código de SQL Injection e fazer um belo estrago com o seu site, ou até mesmo o servidor. Então, quando queremos passar parâmetros confidenciais, como exemplo as senhas, não devemos utilizar esse método. Para isso temos o POST. POST Este método é mais seguro e tem uma capacidade de dados melhor que o GET. Nesse método uma conexão paralela é aberta e os dados são passados por ela. Não há restrição referente ao tamanho e os dados não são visíveis ao usuário. Este método é feito através de formulários (Tag <form>), onde passamos informações para uma outra página que irá recebê-las
25 e fazer o que o desenvolvedor quiser, como tratamento dos dados, armazenamento no banco de dados, etc. Por passar dados invisíveis ao usuário, ela se torna mais segura e devemos utilizar este método quando criamos sistemas de acesso restrito com sessões (login/senha). Para enviarmos algumas informações de um formulário para uma outra página, devemos incluir no atributo method o valor POST e no atributo action o nome do arquivo que irá receber as informações. Exemplo do POST <form name="formcontato" method="post" action="enviar_ .php"> <p> Nome: <input type="text" name="nome" /><br /> <input type="text" name=" " /><br /> Mensagem:<br /> <textarea name="mensagem" id="mensagem" cols="45" rows="5"></textarea> </p> <p> <input type="submit" name="button" id="button" value="enviar Mensagem" /> </p> </form> Bom, agora que temos uma visão mais geral dos dois métodos, fica mais fácil para entendermos mais pra frente como trabalhar com o envio dos dados através dos formulários e também pelos links. Espero que tenham aprendido um pouco mais. Abraços e até mais!
Enviado dados para o PHP através de formulário
Enviado dados para o PHP através de formulário Bom galera, eu estive um tempo parado sem postar nada aqui no blog, mas prometo que vou tentar voltar a ativa. Mas vamos deixar de conversa e vamos ao que
Programação WEB II. Formulários Em PHP. Métodos GET e POST [email protected]. Thiago Miranda dos Santos Souza
Formulários Em PHP Métodos GET e POST [email protected] Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net Objetivos Entender o funcionamento
Sensor de temperatura Parte 5 Cleiton Bueno www.cleitonbueno.wordpress.com. Preparando o ambiente do Banco de dados Mysql
Criar database: Sensor de temperatura Parte 5 Cleiton Bueno www.cleitonbueno.wordpress.com Preparando o ambiente do Banco de dados Mysql CREATE DATABASE `tempuino` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin
Tecnologia WEB II. Prof. Erwin Alexander Uhlmann. Introdução ao PHP. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.
1 Tecnologia WEB II Prof. Erwin Alexander Uhlmann Introdução ao PHP UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012. 2 Agradecimentos Agradeço à minha esposa Kátia por entender
1) Ao ser executado o código abaixo, em PHP, qual será o resultado impresso em tela?
Exercícios sobre Linguagem PHP: 1) Ao ser executado o código abaixo, em PHP, qual será o resultado impresso em tela? 2) Considere a linguagem de programação PHP e seus operadores. A execução da sentença:
Linguagem de. Aula 06. Profa Cristiane Koehler [email protected]
Linguagem de Programação IV -PHP Aula 06 Profa Cristiane Koehler [email protected] Criação de Formulários o Um formulário consiste em uma série de campos que são preenchidos pelo usuário
Introdução ao HTML Utilizando frames Hospedando seu site na WEB
Introdução ao HTML Utilizando frames Hospedando seu site na WEB Por quê???? Por que com tantos editores gráficos de HTML, devemos saber como escrever um código fonte? Porque se você só viu páginas feitas
LINGUAGEM DE PROGRAMAÇÃO WEB
LINGUAGEM DE PROGRAMAÇÃO WEB GABRIELA TREVISAN Formulários e Aula 3 Relembrando HTML 5 Tag Form o Utilizada para marcar a região do formulário. o Os atributos mais importantes são o method e o action.
MANUAL DA SECRETARIA
MANUAL DA SECRETARIA Conteúdo Tela de acesso... 2 Liberação de acesso ao sistema... 3 Funcionários... 3 Secretaria... 5 Tutores... 7 Autores... 8 Configuração dos cursos da Instituição de Ensino... 9 Novo
Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?
Índice BlueControl... 3 1 - Efetuando o logon no Windows... 4 2 - Efetuando o login no BlueControl... 5 3 - A grade de horários... 9 3.1 - Trabalhando com o calendário... 9 3.2 - Cancelando uma atividade
LÓGICA DE PROGRAMAÇÃO. Professor Celso Masotti http://ead.celsomasotti.com.br
LÓGICA DE PROGRAMAÇÃO Professor Celso Masotti http://ead.celsomasotti.com.br Ano: 2015 1 HTML & PHP em Ambiente Web PARTE II Sumário I Decisão... 4 Operadores de Comparação... 6 II IF ELSEIF ELSE... 7
Carregando dados do Banco de Dados MySQL através de uma tag SELECT
Carregando dados do Banco de Dados MySQL através de uma tag SELECT Como já vimos todo o processo de criação do Objeto XMLHttpRequest e como efetuar a comunicação com o servidor através das funções de OPEN
5 Dicas Testadas para Você Produzir Mais na Era da Internet
5 Dicas Testadas para Você Produzir Mais na Era da Internet Uma das verdades absolutas sobre Produtividade que você precisa saber antes de seguir é entender que se ocupar não é produzir. Não sei se é o
Inserindo e Listando registros
Inserindo e Listando registros Dando prosseguimento à aula anterior, agora precisaremos construir uma rotina que faça a inserção no banco de dados Escola. A ação agora é inserir o aluno na tabela alunos
Manual do Instar Mail v2.0
Manual do Instar Mail v2.0 Sumário Conteúdo Menu Principal... 2 Menu Cliente... 3 Pagina Categorias do Instar-Mail... 4 Importação... 4 Campanhas... 8 Cadastramento de campanhas do Instar-Mail... 9 Ações
Mapa Mental de Data Warehouse - OLAP
Mapa Mental de Data Warehouse - OLAP Mapa Mental de Data Warehouse OLAP Mapa Mental de Data Warehouse - OLAP Introdução ao PHP PHP é provavelmente uma das linguagens de programação web mais popular. Com
Personal Home Page PHP. Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.com
Personal Home Page PHP 1 O que é PHP? PHP (Personal Home Page) é uma linguagem que permite criar sites WEB dinâmicos, possibilitando uma interação com o usuário através de formulários, parâmetros da URL
Programação WEB II. Conhecendo o PHP. Prof: Kelly E. Medeiros Bacharel em Sistema de Informação. Módulo III
Programação WEB II Conhecendo o PHP Módulo III Prof: Kelly E. Medeiros Bacharel em Sistema de Informação 1 Conhecendo o PHP Com o NotePad++ aberto com um arquivo em branco, devemos fazer uma pequena configuração
Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.
6.2.1.5 Páginas: Ao clicar em Páginas, são exibidas todas as páginas criadas para o Blog. No nosso exemplo já existirá uma página com o Título Página de Exemplo, criada quando o WorPress foi instalado.
Desenvolvendo Websites com PHP
Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.
WEBDESIGN. Professor: Paulo Marcos Trentin - [email protected] http://www.paulotrentin.com.br Escola CDI de Videira
WEBDESIGN Professor: Paulo Marcos Trentin - [email protected] http://www.paulotrentin.com.br Escola CDI de Videira Formulários e JavaScript Como visto anteriormente, JavaScript pode ser usada para
Para o envio de e-mails pelo PHP é necessário seguir a seguinte sintaxe:
28 Aula 3 Envio de e-mails Para o envio de e-mails pelo PHP é necessário seguir a seguinte sintaxe: Onde: bool mail ( string $to, string $subject, string $message [, string $additional_headers [, string
Incorporando JavaScript em HTML
Incorporando JavaScript em HTML Existem quatro maneiras de incorporar JavaScript em HTML. Vamos abordar as três primeiras, por ser mais comum: Entre as tags dentro do código HTML. A partir
HTML Página 1. Índice
PARTE - 1 HTML Página 1 Índice HTML A HISTÓRIA... 2 O COMEÇO E A INTEROPERABILIADE... 3 Primeira Página... 4 Entendendo seu código... 5 Abrindo o código fonte da sua página... 6 Comentários na página...
2 echo "PHP e outros.";
PHP (Hypertext Preprocessor) Antes de qualquer coisa, precisamos entender o que é o PHP: O PHP(Hypertext Preprocessor) é uma linguagem interpretada gratuita, usada originalmente apenas para o desenvolvimento
UNIVERSIDADE FEDERAL DO AMAPÁ PRÓ REITORIA DE ADMINISTRAÇÃO E PLANEJAMENTO DEPARTAMENTO DE INFORMÁTICA. Manual do Moodle- Sala virtual
UNIVERSIDADE FEDERAL DO AMAPÁ PRÓ REITORIA DE ADMINISTRAÇÃO E PLANEJAMENTO DEPARTAMENTO DE INFORMÁTICA Manual do Moodle- Sala virtual UNIFAP MACAPÁ-AP 2012 S U M Á R I O 1 Tela de Login...3 2 Tela Meus
* Técnicas Avançadas. Desenvolvimento de SOFTWARES. Sistemas de Gerenciamento de Conteúdo com Joomla e Magento
* Técnicas Avançadas Desenvolvimento de SOFTWARES Sistemas de Gerenciamento de Conteúdo com Joomla e Magento * Tópicos Sistema de Gerenciamento de Conteúdo CMS. Fron-end Back-end Instalando Site e Lojas
Programando em PHP. Conceitos Básicos
Programando em PHP www.guilhermepontes.eti.br [email protected] Conceitos Básicos Todo o escopo deste estudo estará voltado para a criação de sites com o uso dos diversos recursos de programação web
Criação Pagina PHP & MySQL
Criação Pagina PHP & MySQL PHP & Mysql Desde já informo que a seguir criaremos uma simples página em PHP, de modo estruturado, apenas como exemplo de : inserção, edição e exclusão de dados no banco mysql,
Portal do Projeto Tempo de Ser
Sumário Portal do Projeto Tempo de Ser O que é um Wiki?...2 Documentos...2 Localizando documentos...3 Links...3 Criando um Documento...4 Criando um link...4 Editando um Documento...5 Sintaxe Básica...5
Ajuda em php + xml + sql Posted by kabonga - 2008/07/15 23:56
Ajuda em php + xml + sql Posted by kabonga - 2008/07/15 23:56 Boas, Estou aqui com um problema com um php. Tenho de gerar um formulário, e ter a validação com mensagens do tipo: "dados inseridos com sucesso"
Aula de JavaScript 05/03/10
Objetos Sabe-se que variável são contêiners que podem armazenar um número, uma string de texto ou outro valor. O JavaScript também suporta objetos. Objetos são contêiners que podem armazenar dados e inclusive
O QUE É A CENTRAL DE JOGOS?
O QUE É A CENTRAL? A Central de Jogos consiste de duas partes: Um site na Internet e um programa de computador (Central) que deve ser instalado em sua máquina. No site www.centraldejogos.com.br, você pode
Aula 2: Listas e Links
Aula 2: Listas e Links Nesta segunda aula, você aprenderá a utilizar listas numeradas ou não, a entender o que são listas de definições e como fazer referências a outros documentos. Vamos entender a diferença
1. Explicando Roteamento um exemplo prático. Através da análise de uns exemplos simples será possível compreender como o roteamento funciona.
Aula 14 Redes de Computadores 24/10/07 Universidade do Contestado UnC/Mafra Sistemas de Informação Prof. Carlos Guerber ROTEAMENTO EM UMA REDE DE COMPUTADORES A máscara de sub-rede é utilizada para determinar
Vejamos um exemplo. Vamos supor que queiramos montar uma tabela 3X2, ou seja de 3 colunas por 2 linhas, o código HTML para isso é :
TABELAS As tabelas são muito importantes para o designer de uma home-page. Com elas podese fazer alinhamentos que dificilmente seriam possíveis com simples comandos. A funcionalidade de uma tabela faz
Este artigo abaixo foi produzido originalmente para a Network Core Wiki. Reproduzo-a aqui na íntegra. Publicado originalmente em 07/12/2007.
Vírus no Linux? Este artigo abaixo foi produzido originalmente para a Network Core Wiki. Reproduzo-a aqui na íntegra. Publicado originalmente em 07/12/2007. Interface de uma distribuição Linux Uma das
TECNOLOGIAS WEB. Unidade 2 Introdução a Construção de Páginas Estáticas. Luiz Leão [email protected] http://luizleao.com
Luiz Leão [email protected] http://luizleao.com CONTEÚDO PROGRAMÁTICO DESTA UNIDADE HTML TAG S HTML LINGUAGEM HTML Hypertext Markup Language Interpretada pelo navegador Não linearidade da informação Formatação
A Maquina de Vendas Online É Fraude, Reclame AQUI
A Maquina de Vendas Online É Fraude, Reclame AQUI Muitas pessoas me perguntam se a maquina de vendas online é fraude do Tiago bastos funciona de verdade ou se não é apenas mais uma fraude dessas que encontramos
7 Ações para afastar a crise Utilizando o marketing para melhorar suas vendas.
Criamos uma pequena lista de ações ligados ao marketing na internet que nem chega a ser um diferencial. Será o mínimo para que você com seu negócio consiga se manter no mercado e continuar a gerar lucros.
Introdução ao PHP. Prof. Késsia Marchi
Introdução ao PHP Prof. Késsia Marchi PHP Originalmente PHP era um assíncrono para Personal Home Page. De acordo com convenções para atribuições de nomes recursivas do GNU foi alterado para PHP Hypertext
Configurando o Controle dos Pais no Windows Vista
Autor: Bruno Leonardo MCP, MCDST, MCSA http://brunoleonardoleal.spaces.live.com 24/06/2007 Configurando o Controle dos Pais no Windows Vista Página 1 de 16 O Controle dos Pais está disponível nas versões
Projeto ECA na Escola - Plataforma de Educação à Distância
Página1 Apresentação Projeto ECA na Escola - Plataforma de Educação à Distância Olá Participante do Projeto ECA na Escola, Este tutorial pretende auxiliá-lo na navegação na Plataforma de Educação à Distância
UnionWeb Condominium
UnionWeb Condominium Esse manual contém explicações técnicas de configuração e manutenção administrativa. Não deve ser repassado para moradores, é para utilização da Administradora ou responsável para
O Sistema foi inteiramente desenvolvido em PHP+Javascript com banco de dados em MySQL.
Nome do Software: Gerenciador de Projetos Versão do Software: Gerenciador de Projetos 1.0.0 1. Visão Geral Este Manual de Utilização do Programa Gerenciador de Projetos via Web, tem por finalidade facilitar
DESENVOLVIMENTODE APLICAÇÕESPARAINTERNET:PHP. VitorFariasCoreia
DESENVOLVIMENTODE APLICAÇÕESPARAINTERNET:PHP VitorFariasCoreia INFORMAÇÃOECOMUNICAÇÃO Autor Vitor Farias Correia Graduado em Sistemas de Informação pela FACITEC e especialista em desenvolvimento de jogos
Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5.
Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5. Ele considera que você já tem o Joomla! instalado no seu computador. Caso você queira utilizá lo em um servidor na web,
AULA APLICAÇÕES PARA WEB SESSÕES E LOGIN E SENHA
Sumário Construção de sistema Administrativo... 1 Sistema de Login... 2 SQL INJECTION... 2 Técnicas para Evitar Ataques... 2 Formulário de Login e Senha fará parte do DEFAULT... 5 LOGAR... 5 boas... 6
Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011
Criando Banco de Dados, Tabelas e Campos através do HeidiSQL Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 2 Pedreiros da Informação Criando Banco de Dados, Tabelas e Campos através do HeidiSQL
Conceitos básicos da linguagem C
Conceitos básicos da linguagem C 2 Em 1969 Ken Thompson cria o Unix. O C nasceu logo depois, na década de 70. Dennis Ritchie, implementou-o pela primeira vez usando o sistema operacional UNIX criado por
Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011
Trabalhando com conexão ao banco de dados MySQL no Lazarus Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 4 O Componente Trabalhando com conexão ao banco de dados MySQL no Lazarus Ano: 03/2011
Imagens Mentais Por Alexandre Afonso
2 Imagens Mentais Por Alexandre Afonso 1ª Edição, 08/04/2016 As novas edições serão sempre disponibilizadas no link: http://alexandreafonso.com.br/e book imagens mentais 2016 alexandreafonso.com.br. Todos
Programação WEB. Prof. André Gustavo Duarte de Almeida [email protected] docente.ifrn.edu.br/andrealmeida. Aula III Introdução PHP
Programação WEB Prof. André Gustavo Duarte de Almeida [email protected] docente.ifrn.edu.br/andrealmeida Aula III Introdução PHP Introdução PHP PHP=Hypertext Pre-Processor Linguagem de script open
Administração de Usuários e Privilégios no Banco de Dados
Administração de Usuários e Privilégios no Banco de Dados Todo agrupamento de bancos de dados possui um conjunto de usuários de banco de dados. Estes usuários são distintos dos usuários gerenciados pelo
Mais sobre uso de formulários Site sem Ajax
Mais sobre uso de formulários Site sem Ajax Página com busca padrão 1 Página com o resultado da busca carregada no local da anterior (o formulário está vazio) Site com Ajax 2 Site usando Ajax para preencher
Instalando o WordPress em localhost
Instalando o WordPress em localhost WordPress sem Mistério LEE ARAUJO htto://wordpresssemmisterio.com.br Sumário Instalando o WordPress em Localhost... 2 O Servidor web... 3 Iniciando o servidor... 6 Criação
Manual de Instalação do e.sic - Sistema Municipal de Informações ao Cidadão
Manual de Instalação do e.sic - Sistema Municipal de Informações ao Cidadão Companhia de Processamento de Dados do Estado de São Paulo DDS Diretoria de Desenvolvimento de Sistemas SDS Superintendência
Configurando a emissão de boletos no sistema
Configurando a emissão de boletos no sistema Entre nossos sistemas, o GIM, o GECOB, o GEM, o TRA-FRETAMENTO e os 15 sistemas da linha 4U (GE-COMERCIO 4U, GEPAD 4U, GE-INFO 4U, etc ) possuem funções para
Tutorial Moodle ESDM - professores
Primeira entrada: Tutorial Moodle ESDM - professores USUÁRIO - MODIFICAR PERFIL No primeiro login/entrada no MOODLE aparecerá a tela do PERFIL para que o usuário complete seus dados. EDITANDO O PERFIL
Instalando servidor Apache com MySQL e as linguagens ColdFusion e PHP. XAMPP 1.6.7 (xampp-win32-1.6.7-installer.exe), veja aqui.
Instalando servidor Apache com MySQL e as linguagens ColdFusion e PHP. Escrito por Marcio Nakano (marcionakano.com.br) Data: 29/09/2008 Disponível em http:///blog/post/instalando-apache-mysql-coldfusionphp.pdf
Controle de acesso. http://www.larback.com.br. .com.br
http://www.larback Controle de acesso Construiremos um sistema simples para cadastro de links. O sistema terá uma página pública (onde serão exibidos os links) e uma área administrativa, onde os usuários
OFICINA BLOG DAS ESCOLAS
OFICINA BLOG DAS ESCOLAS Créditos: Márcio Corrente Gonçalves Mônica Norris Ribeiro Março 2010 1 ACESSANDO O BLOG Blog das Escolas MANUAL DO ADMINISTRADOR Para acessar o blog da sua escola, acesse o endereço
TUTORIAL PRÁTICO SOBRE Git. Versão 1.1
TUTORIAL PRÁTICO SOBRE Git por Djalma Oliveira Versão 1.1 "Git é um sistema de controle de revisão distribuida, rápido e escalável" (tradução rápida do manual). Basicamente é
Redação do Site Inovação Tecnológica - 28/08/2009. Humanos aprimorados versus humanos comuns
VOCÊ ESTÁ PREPARADO PARA CONVIVER COM OS HUMANOS APRIMORADOS? http://www.inovacaotecnologica.com.br/noticias/noticia.php?artigo=voce-esta-preparado-conviver-humanosaprimorados&id=010850090828 Redação do
PowerPoint 2010 para o Office 365 para empresas
PowerPoint 2010 para o Office 365 para empresas Faça a migração O Microsoft PowerPoint 2013 tem uma aparência diferente das versões anteriores. Assim, veja a seguir uma visão geral dos novos recursos e
SquidCacheAux para BrazilFW
SquidCacheAux para BrazilFW ÍNDICE Índice Pág. 1 O que é o SquidCacheAux Pág. 2 SquidCacheAux e a inicialização do sistema Pág. 2 SquidCacheAux e a finalização do sistema Pág. 2 Tela principal do SquidCacheaux
English Português. By erickalves 25 Julho, 2009-01:08. Devido à política (#) de segurança. Encontrar Blogs Crie o seu blog de graça Ganhe prêmios
Encontrar Blogs Crie o seu blog de graça Ganhe prêmios English Português Cel: +55 (21) 7417-9918 E-mail: [email protected] Inserindo dados no banco em PHP + Ajax + jquery + Mysql + Validação (/pt-br/blog/tutoriais
FACULDADE SENAC-RS PELOTAS RODRIGO ALMEIDA PEREIRA. Sistemas de Informação
FACULDADE SENAC-RS PELOTAS Analise e Desenvolvimento de Sistemas RODRIGO ALMEIDA PEREIRA Sistemas de Informação Pelotas/RS Maio de 2013 Sumário 1. Introdução 1 2. Um pouco de sua história 1 3. Requerimentos
Instalação do Sirius sem estações. O primeiro passo é instalar o Firebird 1.5, ele se encontra no CD de instalação do Sirius na pasta Firebird.
Instalação do Sirius sem estações 1. Instalando o Firebird...1 2. Instalando o Sirius...7 3. Configurações do Sirius:...11 Configuração dos arquivos do Sirius e Firebird...12 Firebird:...12 Sirius:...13
O Gerenciamento de Documentos Analógico/Digital
Tipos de GED: Document imaging Document management Document Imaging / Document Management O Gerenciamento de Documentos Analógico/Digital Mundo analógico Criação Revisão Processamento Arquivo Mundo digital
DWR DIRECTED WEB REMOTING
DWR DIRECTED WEB REMOTING Vamos ver nesse artigo um pouco sobre o Frameworks Ajax para Java, o DWR. Vamos ver seus conceitos, utilidades, vantagens, algumas práticas e fazer o passo a passo para baixar,
OBJETIVO VISÃO GERAL SUAS ANOTAÇÕES
OBJETIVO Assegurar a satisfação do cliente no pós-venda, desenvolvendo um relacionamento duradouro entre o vendedor e o cliente, além de conseguir indicações através de um sistema de follow-up (acompanhamento).
PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP
PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP O PHP através da versão 5, veio desenvolvido com suporte a programação orientada a objetos. O que significa isso? Que a partir da versão 5 é possível criar bibliotecas
JavaScript (ou JScript)
1. Introdução JavaScript (ou JScript) Uma linguagem como o JavaScript permite criar interfaces interativas na web (permite a interação do usuário). Para desenvolver web sites interativos precisamos de
MINISTÉRIO DA EDUCAÇÃO
MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SANTA CATARINA CAMPUS SÃO JOSÉ REDES DE COMPUTADORES Laboratório 2 Wireshark
CentreWare Web 5.8.107 e superior Agosto de 2013 702P01949. Xerox CentreWare Web Identificar e Aplicar o Firmware Patch para Escanear
CentreWare Web 5.8.107 e superior Agosto de 2013 702P01949 Identificar e Aplicar o Firmware Patch para Escanear 2013 Xerox Corporation. Todos os direitos reservados. Xerox, Xerox e Design, CentreWare,
O guia completo para uma presença. online IMBATÍVEL!
O guia completo para uma presença online IMBATÍVEL! Sumário Introdução 3 Capítulo 1 - Produção de Conteúdo: Por que e Como produzir 5 Capítulo 2 - Distribuição e Divulgação 8 Capítulo 3 - Monitoramento
PHP e MySQL Autenticação de Usuários
PHP e MySQL Autenticação de Usuários Programação de Servidores Marx Gomes Van der Linden http://marx.vanderlinden.com.br/ Controle de Acesso A maioria das aplicações web envolve em algum ponto um mecanismo
Manual de utilização do sistema de envio de sms marketing e corporativo da AGENCIA GLOBO. V 1.0. www.sms.agenciaglobo.net
Manual de utilização do sistema de envio de sms marketing e corporativo da AGENCIA GLOBO. V 1.0 www.sms.agenciaglobo.net 1 ACESSO O SISTEMA 1.1 - Para acessar o sistema de envio entre no site http://sms.agenciaglobo.net/
Pessoal, abaixo fiz um passo-a-passo de como configurar o DVR para acessar a internet, neste caso utilizei os seguintes itens:
Pessoal, abaixo fiz um passo-a-passo de como configurar o DVR para acessar a internet, neste caso utilizei os seguintes itens: - Modem T580 v2. - DVR Penttaxy 8 canais - 5 metros de cabo UTP pra ligar
Ao redigir este pequeno guia pretendi ser conciso, indo directamente ao essencial.
Introdução O referenciamento é hoje um componente indispensável para ter um site ou blog de sucesso na Internet. Porquê? Simplesmente porque se inicialmente as primeiras visitas do seu site ou blog são
UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET. Programação para Internet I
UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET Programação para Internet I Aula 10 PHP: Trabalhando com Banco de Dados [email protected] Acessando
1 ACESSO PARA SECRETÁRIA... 4 2 - CONFIGURAR HORÁRIOS DE ATENDIMENTO... 4 2.1 BLOQUEANDO E HABILITANDO HORÁRIOS... 5 3 PRÉ-DEFININDO PARÂMETROS DE
2 1 ACESSO PARA SECRETÁRIA... 4 2 - CONFIGURAR HORÁRIOS DE ATENDIMENTO... 4 2.1 BLOQUEANDO E HABILITANDO HORÁRIOS... 5 3 PRÉ-DEFININDO PARÂMETROS DE ATENDIMENTO... 6 4 - A TELA AGENDA... 7 4.1 - TIPOS
Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.
Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no
Q-Acadêmico. Módulo CIEE - Estágio. Revisão 01
Q-Acadêmico Módulo CIEE - Estágio Revisão 01 SUMÁRIO 1. VISÃO GERAL DO MÓDULO... 2 1.1 PRÉ-REQUISITOS... 2 2. ORDEM DE CADASTROS PARA UTILIZAÇÃO DO MÓDULO CIEE... 3 2.1 CADASTRANDO EMPRESAS... 3 2.1.1
Manual do Teclado de Satisfação Online WebOpinião
Manual do Teclado de Satisfação Online WebOpinião Versão 1.2.3 27 de novembro de 2015 Departamento de Engenharia de Produto (DENP) SEAT Sistemas Eletrônicos de Atendimento 1. Introdução O Teclado de Satisfação
Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.
3.5 Páginas: Ao clicar em Páginas, são exibidas todas as páginas criadas para o Blog. No nosso exemplo já existirá uma página com o Título Página de Exemplo, criada quando o WorPress foi instalado. Ao
Primeiros passos das Planilhas de Obra v2.6
Primeiros passos das Planilhas de Obra v2.6 Instalação, configuração e primeiros passos para uso das planilhas de obra Elaborado pela Equipe Planilhas de Obra.com Conteúdo 1. Preparar inicialização das
Usando o do-file editor Automatizando o Stata
Usando o do-file editor Automatizando o Stata 1 O QUE É O EDITOR DE DO-FILE O Stata vem com um editor de texto integrado, o do-file editor (editor de do-files, em português), que pode ser usado para executar
SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2
SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 1.1 Introdução... 2 1.2 Estrutura do IP... 3 1.3 Tipos de IP... 3 1.4 Classes de IP... 4 1.5 Máscara de Sub-Rede... 6 1.6 Atribuindo um IP ao computador... 7 2
Resolução de Problemas de Rede. Disciplina: Suporte Remoto Prof. Etelvira Leite
Resolução de Problemas de Rede Disciplina: Suporte Remoto Prof. Etelvira Leite Ferramentas para manter o desempenho do sistema Desfragmentador de disco: Consolida arquivos e pastas fragmentados Aumenta
LGTi Tecnologia. Manual - Outlook Web App. Soluções Inteligentes. Siner Engenharia
LGTi Tecnologia Soluções Inteligentes Manual - Outlook Web App Siner Engenharia Sumário Acessando o Outlook Web App (Webmail)... 3 Email no Outlook Web App... 5 Criar uma nova mensagem... 6 Trabalhando
Conhecendo o Decoder
Conhecendo o Decoder O Decoder da sua ion TV, ou receptor, também é chamado de STB, sigla em inglês para Set Top Box, que é o aparelho responsável por receber o sinal de TV, decodificá-lo e enviá-lo para
agility made possible
RESUMO DA SOLUÇÃO Utilitário ConfigXpress no CA IdentityMinder a minha solução de gerenciamento de identidades pode se adaptar rapidamente aos requisitos e processos de negócio em constante mudança? agility
Permitir a troca de mensagens de texto entre os dois alunos; Permitir que um aluno enviasse para o outro uma cópia de prova;
Software Básico 2008.2 Trabalho Prático 1: programação de E/S, uso de sinais Prática de programação voltada a eventos Trabalho individual ou em dupla Data de entrega: 01/10/2008 1 O Objetivo Utilizando
Manual do usuário Sistema de Ordem de Serviço HMV/OS 5.0
Manual do usuário Sistema de Ordem de Serviço HMV/OS 5.0 DESENVOLVEDOR JORGE ALDRUEI FUNARI ALVES 1 Sistema de ordem de serviço HMV Apresentação HMV/OS 4.0 O sistema HMV/OS foi desenvolvido por Comtrate
SIE - SISTEMA DE INFORMAÇÕES PARA O ENSINO CADASTRO DE FUNCIONÁRIOS
SIE - SISTEMA DE INFORMAÇÕES PARA O ENSINO CADASTRO DE FUNCIONÁRIOS SANTA MARIA FATECIENS 2008 Este manual tem por finalidade apresentar as especificações detalhadas da aplicação de Cadastro de Funcionários,
