Tecnologia WEB III. Prof. Erwin Alexander Uhlmann. PHP e MySQL. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.

Tamanho: px
Começar a partir da página:

Download "Tecnologia WEB III. Prof. Erwin Alexander Uhlmann. PHP e MySQL. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012."

Transcrição

1 Tecnologia WEB III Prof. Erwin Alexander Uhlmann PHP e MySQL UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.

2 Agradecimentos Agradeço à minha esposa Kátia por entender minha ausência, meus pais Mirtes e Günter por terem criado meu caminho, aos meus alunos que viabilizaram este trabalho e a todos os autores de livros e bibliotecas que consultei para que pudesse devidamente embasar este.

3 Sumário Introdução... 1 Aula Pré-requisitos... 2 Fontes de referência... 2 Software... 2 PHP... 7 Exercício Aula Conexão, Busca e Impressão conecta.php index.php Exercício Aula Conteúdos das páginas Exercício Aula Página Modelo Menu de navegação Exercício Imagens Exercício Aula Inserção de Dados Exercício Upload de arquivos... 24

4 Exercício Aula Edição de dados adm_pag_editar.php Exercício Aula Exclusão de dados Método de status Exercício Aula Login valida_sessao.php logout.php Páginas protegidas Aula PDF pdf.php Aula XML...35 Leitura do XML...35 Geração de arquivo XML...35 Inserir dados do XML no MySQL Aula Sistema de busca Método de buscar tudo em todas as tabelas Respostas... 40

5 Resposta do Exercício da Aula Resposta do Exercício da Aula Resposta do Exercício da Aula Resposta do Exercício da Aula Resposta do exercício 1 da aula Resposta do exercício 2 da aula Resposta do exercício da aula Resposta do exercício da aula Bibliografia Índice de Figuras Figura 1 - PHPEditor... 3 Figura 2 - Dreamweaver... 4 Figura 3 - Expression Web... 5 Figura 4 - Propriedades do Windows para o Vertrigo... 6 Figura 5 - PHPMyAmin... 7 Figura 6 - PHPMyAdmin... 8 Figura 7 - Nomeação do BD... 8 Figura 8 - Nomeação de tabela... 8 Figura 9 - Nomeação dos campos, tipos e tamanhos... 9 Figura 10 - Modelo de Entidade Relacional... 9 Figura 11 - A página deverá ter esta aparência Figura 12 - Leitura estática e leitura dinâmica Figura 13 - Tabela de todos os campos e registros Figura 14 - Tabela de Páginas Figura 15 - Tabela de Conteúdos Figura 16 - Tabela de Imagens Figura 17 - Menu de navegação... 20

6 Figura 18 - Usando a função GET para envio de dados pela URL Índice de scripts Script 1 - Conexão com o BD Script 2 - Inclusão da conexão na página index.php e estrutura html Script 3 - Query PHP MySQL Script 4 - Leitura do campo e do registro Script 5 - Impressão dos dados Script 6 - Para buscar, ler e imprimir Script 7 - Busca dos conteúdos Script 8 - Leitura e impressão dos conteúdos Script 9 - Menu de navegação Script 10 - Formulário para inserção de dados Script 11 - Gravção de dados Script 12 - script de upload e gravação Script 13 - Formulário de edição de dados Script 14 - Edição de dados Script 15 - Exclusão de dados Script 16 - Formulário de login Script 17 - Página de login: recepção dos dados, criação da sessão e busca no BD Script 18 - logout Script 19 - Proteger as páginas Script 20 - Leitura do XML...35 Script 21 - Geração de arquivo XML Script 22 - Inserir dados do XML no MySQL Script 23 - Script de busca Script 24 - Leitura de todas tabelas Script 25 - Campos e Registros Script 26 - Script completo do sistema de busca... 39

7 1 Introdução O objetivo deste trabalho é introduzir as técnicas básicas de programação do PHP com o MySQL para a construção de um site gerenciável pelo cliente sem a necessidade de conhecimento de HTML e PHP.

8 2 Aula 1 Pré-requisitos Fontes de referência Livros Software PHPEditor Este é um dos principais editores de PHP. Simples, rápido, prático e com um amplo suporte à linguagem. $ : Grátis. Avaliação: phpeditor_setup_en.exe

9 3 Figura 1 - PHPEditor Dreamweaver Este é o melhor! O problema é que é pago, e bem pago. Este editor da Adobe tem longa história de desenvolvimento. Atende diversas ferramentas que permitem até um usuário com pouco conhecimento criar uma página, além de suporte a diversas linguagens de programação e Banco de Dados. $: US$ 229,00 (13/12/2011) Avaliação:

10 4 Figura 2 - Dreamweaver Expression Web A Microsoft definitivamente entrou para a briga dos editores web. Para encarar o Dreamweaver ela lançou o Expression Web 4, que pode ser avaliado como uma versão antiga, de uma ou duas gerações passadas, do software da Adobe. Pago mas com diversos recursos, segue a linha do principal concorrente. $: US$149,00 Avaliação:

11 5 Figura 3 - Expression Web Existem diversos editores PHP, ao longo deste trabalho, iremos utilizar o PHPEditor, pois além de gratuito é a referência. O PHP necessita do compilador PHP. Como em breve iremos trabalhar em conjunto com MySQL, aproveite para baixa-lo. Além deles é fundamental um servidor, neste caso o Apache. Mas, você pode optar por baixar um suíte que já reúne todos os softwares. Existem vários, ao longo do curso iremos utilizar o Vertrigo. No caso da opção pelo Vertrigo, observe a instalação: Para instalar é fácil e basta seguir os passos recomendados pelo programa. Inicie sempre o Vertrigo, antes de começar a trabalhar com o PHP. Caso ele não consiga iniciar e informe problemas com a porta 80, no Painel de Controle do

12 6 Windows, em Ferramentas Administrativas, e em seguida em Serviços, interrompa os programas que utilizem esta porta. Na maioria dos casos são os softwares de comunicação como o Messenger, Skype, entre outros e também o servidor ISS, caso o tenha.este modelo de relatório está completo com estilos para um sumário e um índice. Também é importante lembrar que nos sistemas operacionais Windows Vista e Windows 7 (Seven), ao instalar é necessário aplicar as permissões de segurança à pasta, em Propriedades, na guia Segurança. Figura 4 - Propriedades do Windows para o Vertrigo

13 7 PHP O PHP é uma linguagem de programação simples e prática. Vamos trabalhar com ele em conjunto com o MySQL. Caso você não esteja muito familiarizado com esta linguagem, aproveite para baixar a apostila de PHP I. 0-%20Ci%EAncia%20da%20Computa%E7%E3o%20-%20Tecnologia%20Web%20II Então vamos começar. Abra o PHPMyAdmin do Vertrigo ( conforme figura 5. O usuário é root e a senha é vertrigo. Vamos criar um Banco de Dados para começarmos trabalhar. Figura 5 - PHPMyAmin Esta apostila foi produzida com o Vertrigo versão 2.25, que inclui o PHPMyAdmin versão conforme figura 6.

14 8 Figura 6 - PHPMyAdmin Atribua um nome ao BD. Nesta apostila iremos adotar volatil. Figura 7 - Nomeação do BD Agora vamos criar as tabelas no BD. Figura 8 - Nomeação de tabela

15 9 Figura 9 - Nomeação dos campos, tipos e tamanhos O BD ficará conforme o modelo da figura 10: Figura 10 - Modelo de Entidade Relacional Após esta fase de criação do BD vamos começar a programar o PHP.

16 10 Exercício Crie um novo BD e exporte como SQL, ANSI.

17 11 Aula 2 Conexão, Busca e Impressão Sempre precisaremos conectar um programa a um Banco de Dados(BD). Então vamos conectá-lo! Inicie o Vertrigo, abra seu editor PHP, e vamos salvar uma página com o nome conecta.php conecta.php $conecta = mysql_pconnect("localhost", "root", "vertrigo"); $banco = "volatil"; mysql_select_db("$banco"); Script 1 - Conexão com o BD A variável $conecta contém os dados da função mysql_pconnect. Existem duas formas a mysql_connect e a mysql_pconnect, esta segunda torna a conexão persistente, ou seja, você não precisará solicitar a conexão para cada novo script até que você peça para encerrar com a função mysql_close($conecta), que deve ser inserida na última linha de todas páginas. A função mysql_pconnect contém 3 parâmetros, onde está o BD, qual o usuário e a senha ("localhost", "root", "vertrigo"). Neste script vamos selecionar um BD com a função mysql_select_db e o nome do BD. Agora que a conexão está estabelecida, utilize a função include para incluir este script em todas as páginas ( include("conecta.php"); ). Vamos criar a página index.php index.php Vamos partir da seguinte estrutura html. include("conecta.php"); <!--inclua a página--> <!DOCTYPE html> <html lang="pt-br"> <head>

18 12 <meta content="text/html; charset=windows-1252" http-equiv="content- Type"> <title>site Volátil</title> </head> <body> <table width="100%"> <tr bgcolor="#99bbff"> <td> <h1>site Volátil</h1> <td align="right"> <a href="index.php" border="0"><img src="img/penguins.jpg" width="20%" alt="site Volátil"></a> <td colspan="2"> <a href='index.php?pag_id=1'>home </a><a href='index.php?pag_id=2'>segunda </a><a href='index.php?pag_id=3'>terceira </a> <hr width="75%"> <td colspan="2"> <table width="75%" align="center" bgcolor="#dedede"> <td> Conteúdo <hr> Conteúdo <hr> <td> <table width='100%' bgcolor='#cccccc'> <td align='left'> <img src='img/logo.jpg' width='20%' align='right' alt='logo.jpg'> </table> <table width='100%' bgcolor='#cccccc'> <td align='left'> <img src='img/adler2.jpg' width='20%' align='right' alt='adler2.jpg'> </table> <table width='100%' bgcolor='#cccccc'> <td align='left'>

19 13 <img src='img/i_adler_p-neg.jpg' width='20%' align='right' alt='i_adler_p-neg.jpg'> </table> </table> <td colspan="2" bgcolor="#999999" height="80" align="center"> <p>nome da Empresa<br /> Endereço<br /> CEP<br /> Telefone<br /> </p> <p><a href="login.php">login</a></p> </table> </body> </html> mysql_close($conecta); <!--feche a variável --> Script 2 - Inclusão da conexão na página index.php e estrutura html. Figura 11 - A página deverá ter esta aparência Ok, agora vamos começar a inserir a programação. Vamos começar pelo nome da empresa. Vamos inseri-lo no alto à esquerda. include ("conecta.php");

20 14 //dados da empresa $bd_empresa = mysql_query("select * FROM empresa ORDER BY emp_id DESC"); <!DOCTYPE html> <html lang="pt-br"> Script 3 - Query PHP MySQL Para fazer a busca no BD vamos colocar os dados na variável $bd_empresa com uso da função mysql_query seguida da instrução SQL entre aspas e parênteses. O PHP realizou a seleção dos dados, agora precisamos fazer com que ele leia o campo e o registro desejado. include ("conecta.php"); //dados da empresa $bd_empresa = mysql_query("select * FROM empresa ORDER BY emp_id DESC"); $nom_empresa = mysql_result($bd_empresa, 0, "emp_nome"); <!DOCTYPE html> <html lang="pt-br">... Script 4 - Leitura do campo e do registro <!DOCTYPE html> <html lang="pt-br"> <head> <meta content="text/html; charset=windows-1252" http-equiv="content- Type"> <title> echo $nom_empresa;</title> </head> <body> <table width="100%"> <tr bgcolor="#99bbff"> <td> <h1> echo "$nom_empresa";</h1> <td align="right">... Script 5 - Impressão dos dados Bem, então a regra é simples: mysql_query para realizar a busca, mysql_result para a leitura e imprima (echo) a variável deste último. 1. $bd_empresa = mysql_query("select * FROM empresa ORDER BY emp_id DESC"); 2. $nom_empresa = mysql_result($bd_empresa, 0, "emp_nome"); 3. echo "$nom_empresa"; Script 6 - Para buscar, ler e imprimir

21 15 Exercício Na mesma página que estamos trabalhando, imprima o nome da empresa, conforme aprendemos, o logo e os dados, conforme apresentado na figura 11. Lembre-se, você pode copiar a estrutura disposta no script 2. DICA! Você pode inserir alguns dados apenas para teste usando a função inserir do PHPMyAdmin.

22 16 Aula 3 Conteúdos das páginas Vamos agora partir para outra parte, a leitura dos conteúdos. Assim como feito na aula anterior, os conteúdos seguem a mesma regra da trinca de ouro, busca, leitura e impressão do script 6. Vamos fazê-lo! //conteúdo $bd_conteudo = mysql_query("select * FROM conteudos WHERE pag_id = '$pag_id'"); $con_qte = mysql_num_rows($bd_conteudo); //imagens $bd_imagens = mysql_query("select * FROM imagens INNER JOIN conteudos WHERE conteudos.con_id = imagens.con_id AND conteudos.pag_id = $pag_id"); $img_qte = mysql_num_rows($bd_imagens); Script 7 - Busca dos conteúdos Neste script 7 realizamos a busca e a contagem dos conteúdos textuais e de imagens, por quê a contagem? 1. A página pode ter mais de um conteúdo? 2. Cada conteúdo pode ter mais de uma imagem? Isto é respondido e resolvido com a função mysql_num_rows. Ela conta quantos registros foram encontrados na instrução SQL anteriormente escrita, como em $bd_conteudo e $bd_imagens, isto é, se lá tiver um filtro para encontrar todos registros (* FROM) a função vai contar todos, mas se tiver um filtro (WHERE pag_id=x) ele vai contar apenas 1, ou parcialmente também, como (WHERE pag_nome=%xpto% - [tudo que contiver xpto]), vamos ver mais um pouco sobre isto na próxima aula em Página Modelo. Mas, já fizemos a busca, e a leitura e impressão? Por uma questão de simplicidade vamos escrever no corpo da página. <!DOCTYPE html> <html lang="pt-br"> <head> <meta content="text/html; charset=windows-1252" http-equiv="content- Type">

23 17 <title> echo $nom_empresa;</title> </head> <body> <table width="100%"> <tr bgcolor="#99bbff"> <td> <h1> echo "$nom_empresa";</h1> <td align="right"> <a href="index.php" border="0"><img src="img/ echo $log_empresa;" width="20%" alt=" echo "$nom_empresa";"></a> <td colspan="2"> $pag_ini = 0; do{ $nom_paginas = mysql_result($bd_paginas, $pag_ini, "pag_nome"); $id_paginas = mysql_result($bd_paginas, $pag_ini, "pag_id"); echo "<a href='index.php?pag_id=$id_paginas'>$nom_paginas </a>"; $pag_ini++; while($pag_ini<$pag_qte); <hr width="75%"> Script 8 - Leitura e impressão dos conteúdos Com uso do método do...while, vamos programar para ler quantos registros foram encontrados, buscados, no Script 7 - Busca dos conteúdos. Diferentemente do Script 4 - Leitura do campo e do registro, não iremos determinar qual o número do registro, vamos colocar uma variável em seu lugar, veja o comparativo. $pag_ini = 0; do{ $nom_paginas = mysql_result($bd_paginas, $pag_ini, "pag_nome"); $pag_ini++; while($pag_ini<$pag_qte); Figura 12 - Leitura estática e leitura dinâmica Opa! A variável $pag_ini também tem o valor 0! Que difereça faz? A diferença está no contador $pag_ini++ que acrescentará 1 a cada laço de repetição que se repetirá tantas vezes quantas foram indicadas na variável

24 18 $con_qte e $img_qte da função mysql_num_rows que está no script 7! Não disse que iríamos usar? Caramba, mas tenho que pensar em tudo antes?! Sim!!! Então lá vai um exercício para você entender melhor: Exercício Faça a busca, leitura e impressão com uso de um laço de repetição (while, forreach, for...) para todas as imagens. DICA! Imprimir um nome é simples, para imprimir como imagem basta colocar dentro de uma TAG HTML <img src= echo $variavel; />. Se tiver em uma pasta coloque o caminho antes do PHP e se você deseja que toda imagem sempre saia com o mesmo tamanho, indiferente do tamanho inserido, atribua um valor à propriedade width, como width= 20%. <img src='img/$img_nome' width='20%' align='right' alt='$img_nome'> Hoje foi simples, não? Ok, agora resolva este exercício! Crie uma tabela em que serão exibidos todos os registros de todos os campos da tabela, veja figura 13. Figura 13 - Tabela de todos os campos e registros

25 19 Aula 4 Página Modelo Programar é interessante, mas reduzir a programação, otimizar códigos é fundamental, seja para ganhar tempo de criação, quanto para facilitar a manutenção e descomplicar uma possível alteração. Tendo isto em mente vamos pensar. Ok, já sei buscar e ler todos os dados do BD, eu poderia então montar um site inteiro! Mas aí surge uma pergunta: Como criar páginas distintas, com conteúdos distintos e permitir que qualquer empresa possa criar seu próprio site? Vamos aprender! A página index.php já foi criada e mostra os dados conforme a figura 2. Mas e se eu quiser criar mais páginas e vincular seus conteúdos à cada página? Primeiro vamos dar uma olhada no MER (Modelo de Entidade Relacional), ou seja, no BD, nas tabelas de Conteúdos, Páginas e Imagens. Figura 14 - Tabela de Páginas Figura 15 - Tabela de Conteúdos Figura 16 - Tabela de Imagens Ao observar os dados das tabelas, podemos notar que a página Home tem o ID 1, que é referenciado na tabela de Conteúdos. Os conteúdos de ID 1 e 2 estão ligados À página de ID 1 a Home, observe os campos pag_id das duas tabelas. O mesmo ocorre com a tabela de Imagens que os registros 1 e 2 estão vinculados ao conteúdo 1, veja os campos con_id das duas tabelas. Neste raciocínio a imagem 2 será exibida no conteúdo 2 da página 1.

26 20 Já que os dados estão no BD, precisamos fazer o PHP relacioná-los. Como o site funciona com a escolha do usuário vamos fazer um link e adicionar a ele seu nº de registro. <a href="index.php?pag_id=1">$nom_paginas </a> Como o 1 é fixo, vamos transforma-lo em variável <a href="index.php?pag_id=$id_paginas">$nom_paginas </a> E de onde vem esta variável? $id_paginas = mysql_result($bd_paginas, $pag_ini, "pag_id"); Mas um link tem nome, então... $nom_paginas = mysql_result($bd_paginas, $pag_ini, "pag_nome"); Opa! E essa variável $pag_ini??? De onde surgiu? Antes de responder vamos mostrar o que iremos criar. Menu de navegação Figura 17 - Menu de navegação O menu de navegação lê a quantidade de páginas existentes na tabela Paginas e as repete com um laço de repetição, vamos ver. $pag_ini = 0; do{ $nom_paginas = mysql_result($bd_paginas, $pag_ini, "pag_nome"); $id_paginas = mysql_result($bd_paginas, $pag_ini, "pag_id"); echo "<a href='index.php?pag_id=$id_paginas'>$nom_paginas </a>"; $pag_ini++; while($pag_ini<$pag_qte); Script 9 - Menu de navegação Depois de criar o laço de repetição, vamos ver ele funcionando.

27 21 Como é possível observar na URL dos 3 quadros, o link é index.php?pag_id=x Assim teremos a página, um separador (?), um marcador textual qualquer (pag_id) e o nº do ID que vem da programação. Figura 18 - Usando a função GET para envio de dados pela URL Com o menu construído a URL vira uma memória e os dados lá dispostos é que faremos o filtro por conteúdo, com uso da função $_GET. $pag_id = $_GET['pag_id']; Em seguida vamos fazer o filtro. $bd_conteudo = mysql_query("select * FROM conteudos WHERE pag_id = '$pag_id'"); $con_qte = mysql_num_rows($bd_conteudo); Exercício Construa um menu de navegação e realize os filtros pela função $_GET. OPS! E as imagens??? Imagens Para trazer as imagens é preciso vincular o conteúdo à página e a imagem ao conteúdo, isto é feito pelo SQL. $bd_imagens = mysql_query("select * FROM imagens INNER JOIN conteudos WHERE conteudos.con_id = imagens.con_id AND conteudos.pag_id = $pag_id"); $img_qte = mysql_num_rows($bd_imagens);

28 22 Traduzindo... SELECIONE TUDO da tabela imagens JUNTO com a tabela conteudos ONDE os dados do campo con_id da tabela conteudos sejam os mesmos no campo con_id da tabela imagens E o id da página na tabela conteudos seja o mesmo recebido pela função $_GET. Exercício Construa a página index.php com todo conteúdo. Empresa, logo, dados, menu de navegação, conteúdos e imagens.

29 23 Aula 5 Inserção de Dados Inserir pelo PHPMyAdmin não é adequado, então, vamos criar um formulário para isso. Vamos usar os seguintes comandos: INSERT no SQL. Construa uma página com um campo para inserir o nome da página, veja a estrutura do script 10. include("conecta.php"); //dados da empresa $bd_empresa = mysql_query("select * FROM empresa ORDER BY emp_id DESC"); $nom_empresa = mysql_result($bd_empresa, 0, "emp_nome"); $log_empresa = mysql_result($bd_empresa, 0, "emp_logo"); $dad_empresa = mysql_result($bd_empresa, 0, "emp_dados"); <!DOCTYPE html> <html lang="pt-br"> <head> <meta content="text/html; charset=windows-1252" http-equiv="content- Type"> <title> echo $nom_empresa;</title> </head> <body> <table width="100%"> <tr bgcolor="#99bbff"> <td> <h1>administração da echo "$nom_empresa";</h1> <td align="right"> <img src="img/ echo $log_empresa;" width="20%"> <td colspan="2"> <hr width="75%"> <td colspan="2"> <table width="75%" align="center" bgcolor="#dedede"> <td> include("menu.html"); <h3>crie suas páginas</h3> <form method="post" action="adm_paginas.php" name="form_paginas"> <input type="text" value="" name="pagina" size="25" placeholder="atribua um nome à sua página" />

30 24 <br /> <input type="submit" name="gravar" /> </form> <form method="post" action=""> <input type="submit" id="logout" name="logout" value="logout" /> </form> <td> </table> <td colspan="2" bgcolor="#999999" height="80" align="center"> <p> echo nl2br($dad_empresa);</p> <p><a href="login.php">login</a></p> </table> </body> </html> mysql_close($conecta); Script 10 - Formulário para inserção de dados Para que se faça a gravação dos dados vamos criar o seguinte script. if(isset($_post['gravar'])){ $nom_pag = $_POST['pagina']; mysql_query("insert INTO paginas (pag_nome) VALUES ('$nom_pag')"); Script 11 - Gravção de dados Adicione este script antes do início da estrutura html. Exercício Crie uma página para adição de dados de usuário, conteúdos e dados da empresa. Muito bem, já aprendemos a gravar, agora precisamos aprender a gravar a imagem e fazer seu upload. Upload de arquivos Para fazer o upload são precisas poucas alterações, vamos passo a passo. Na página de adição de dados da empresa, chamada de adm_empresa.php, encontre a linha do formulário. <form method="post" action="adm_empresa.php" name="form_empresa">

31 25 Adicione o tipo de encaminhamento de dados do HTML: <form method="post" action="adm_empresa.php" name="form_empresa" enctype="multipart/form-data"> No campo da imagem, vamos fazer da seguinte forma: <input type="file" name="logo" /> E antes do HTML vamos criar o seguinte código PHP e MySQL. if(isset($_post['gravar'])){ 1. $dir = "img"; 2. $arq = $_FILES['logo']['name']; 3. $arq_temp = $_FILES['logo']['tmp_name']; 4. move_uploaded_file($arq_temp,"$dir/$arq"); 5. mysql_query("insert INTO empresa (emp_logo) VALUES ('$arq')"); Script 12 - script de upload e gravação Explicando: 1. Crie uma variável para informar o nome da pasta que receberá o arquivo; 2. A função $_FILES receberá o conteúdo do campo com o botão Selecionar Arquivo. Este campo tem o nome ['logo'] e o PHP quer saber somente o nome do arquivo ['name']; 3. Não trabalhe com o arquivo do usuário, crie um temporário; 4. Mova (move_uploaded_file)o arquivo temporário para a pasta indicada; 5. Insira o nome ($arq) no BD; Exercício Como o usuário pode querer inserir mais de uma imagem com o mesmo nome, crie um script em que cada imagem terá um nome único e impossível de ser duplicado.

32 26 Aula 6 Edição de dados Para inserir dados basta criar um formulário e a programação, para editar é preciso filtrar o registro a ser editado, criar o formulário, visualizar os dados dentro dos campos do formulário e alterar seus dados. Serão utilizados os seguintes comandos: mysql_query, mysql_result, SELECT e UPDATE. Vamos começar. Crie uma página com um campo nome num formulário. adm_pag_editar.php include("conecta.php"); //dados da empresa $bd_empresa = mysql_query("select * FROM empresa ORDER BY emp_id DESC"); $nom_empresa = mysql_result($bd_empresa, 0, "emp_nome"); $log_empresa = mysql_result($bd_empresa, 0, "emp_logo"); $dad_empresa = mysql_result($bd_empresa, 0, "emp_dados"); <!DOCTYPE html> <html lang="pt-br"> <head> <meta content="text/html; charset=windows-1252" http-equiv="content- Type"> <title> echo $nom_empresa;</title> </head> <body> <table width="100%"> <tr bgcolor="#99bbff"> <td> <h1>administração da echo "$nom_empresa";</h1> <td align="right"> <img src="img/ echo $log_empresa;" width="20%"> <td colspan="2"> <hr width="75%"> <td colspan="2"> <table width="75%" align="center" bgcolor="#dedede"> <td> include("menu.html"); <h3>edite suas páginas</h3> <form method="post" action="adm_pag_editar.php" name="form_paginas">

33 27 <input type="text" value="" name="pagina" size="25" placeholder="" /> <br /> <input type="submit" name="gravar" /> </form> <form method="post" action=""> <input type="submit" id="logout" name="logout" value="logout" /> </form> <td> </table> <td colspan="2" bgcolor="#999999" height="80" align="center"> <p> echo nl2br($dad_empresa);</p> <p><a href="login.php">login</a></p> </table> </body> </html> mysql_close($conecta); Script 13 - Formulário de edição de dados Para editar os dados recebidos, vamos inserir o seguinte script php. $registro = $_GET['usu_id']; If(isset($_POST['Gravar'])){ $Eusu_nome = $_POST['usu_nome']; mysql_query("update usuarios SET usu_nome='$eusu_nome' WHERE usu_id=$registro"); Script 14 - Edição de dados Exercício Edite todos os dados dos usuários, da empresa e dos conteúdos. Para editar as imagens, basta fazer um novo upload e inserir um novo nome no registro filtrado com as mesmas funções criadas.

34 28 Aula 7 Exclusão de dados Para excluir um dado ou registro vamos proceder da seguinte maneira: Crie a página em que você possa escolher o registro (exibir todos); No nome do registro, crie um link para a página adm_excluir.php e envie pela URL o id do registro (Aula 4) e vamos ao seguinte script: if(isset($_post['sim'])) { mysql_query("delete FROM usuarios WHERE usu_id = '$registro'"); Script 15 - Exclusão de dados Note que a opção de exclusão de dados está condicionada ao um botão chamado sim. Crie um formulário com este botão para que funcione. <form name="form" id="form" method="post" action=""> <input type="submit" name="submit" value="sim"> </form> Seria bem interessante informar ao usuário qual registro você irá excluir, para que ele tenha certeza! Método de status Muitas vezes não é interessante excluir os dados. Vamos imaginar que um assinante de jornal queira suspender seu recebimento, ou que um usuário de um site por ventura deixe de pagar a assinatura. Ele não receberá mais os jornais ou poderá ter acesso ao site, mas ao solicitar sua readesão todos seus dados deverão ser reestabelecidos sem que ele tenha que preencher tudo de novo ou mesmo que você tenha um banco de dados repleto de registros atrelados a este usuário de forma inútil. Então vamos chamar de excluir, mas na verdade vamos criar uma página de edição. Nesta página o que vamos fazer é trocar o status do usuário de 1 (ativo) para 0 (inativo), mesmo assim ele continuará existindo no BD, só que existirá um filtro que

35 29 terá a condição WHERE usu_status=1 ou WHERE usu_id = '$registro' AND usu_status=1. Então vamos criar este campo no BD! Agora é só criar a página da falsa exclusão. Exercício Crie um sistema com usuários e permita que eles sejam excluídos e recuperados.

36 30 Aula 8 Login Nesta aula vamos criar um sistema de login por sessão. Vamos lembrar como se cria uma sessão? Crie uma página com um formulário com um campo para o e outro para a senha, assim: <form name="form1" method="post" action=""> <p> <br /> <input type="text" name=" " /></p> <!-- a frase de erro gerada pelo PHP --> if(isset($_get['usu_inex'])){ <font color="red"> inexistente. Tente outro .</font> <!-- somente aparecerá se digitar algo errado --> <p>senha<br /> <input type="password" name="senha" /></p> if(isset($_get['senha_errada'])){ <font color="red">senha errada. Tente novamente.</font> <br /> <input type="submit" name="entrar" value="entrar" /> </form> Script 16 - Formulário de login E vamos receber os dados, criar a sessão e procura-los no BD. //login //dispara somente depois de clicar em "entrar" if(isset($_post['entrar'])){ //recebe os dados do form $ = $_POST[' ']; $senha = $_POST['senha']; //realiza a pesquisa do $usuario = mysql_query("select * FROM usuarios WHERE usu_ ='$ '"); //retorna o nº de linhas $registros = mysql_num_rows($usuario); //se for 0, nenhum registro, retorne à página de login if ($registros == 0){ //retorno à página login com o disparo de erro "?usu_inex=true" header("location: login.php?usu_inex=true"); else{ //senão, se existir o usuário, compara a senha e retorna o erro if($senha!= mysql_result($usuario, 0, "usu_senha")){

37 31 header("location: login.php?senha_errada=true"); else{ //se tudo estiver certo, cria a sessão, os cookies session_start(); $_SESSION['usu_ '] = $ ; $_SESSION['usu_senha'] = $senha; header("location: adm.php"); Script 17 - Página de login: recepção dos dados, criação da sessão e busca no BD valida_sessao.php //inicia a sessão session_start(); //recebe os dados criados na página login if(isset($_session['usu_ '])) $usu_ = $_SESSION['usu_ ']; if(isset($_session['usu_senha'])) $usu_senha = $_SESSION['usu_senha']; //se não forem vazios(empty) realiza a busca no BD if(!(empty($usu_ ) empty($usu_senha))) { $busca = mysql_query("select * FROM usuarios WHERE usu_ ='$usu_ '"); //se encontrar 1 registro... if(mysql_num_rows($busca)==1) { //...e se esse registro tiver a senha diferente do BD... if($usu_senha!= mysql_result($busca, 0, "usu_senha")) { //...desfaz a sessão unset($_session['usu_ ']); unset($_session['usu_senha']); header("location: login.php"); exit; else { unset($_session['usu_ ']); unset($_session['usu_senha']); header("location: login.php"); exit; else { header("location: login.php"); exit; logout.php //logout. Depende do disparo do botão "logout" no form

38 32 if(isset($_post['logout'])) { session_start(); $_SESSION = array(); session_destroy(); header("location: index.php"); Script 18 - logout Páginas protegidas Adicione o script 19 em todas as páginas que deverão ser protegidas. include ("conecta.php"); include("valida_sessao.php"); include("logout.php");... Script 19 - Proteger as páginas

39 33 Aula 9 PDF O PHP pode gerar diversos arquivos, como.txt,.jpg,.xml e o.pdf. O interessante de se gerar um pdf é a geração de relatórios dos sistemas. Vamos ver. pdf.php Crie um formulário com um título e uma caixa de texto. <form id="form1" method="post" action=""> <p> Título<br /> <input type="text" name="titulo" /> </p> <p>texto<br /> <textarea name="texto" cols="75" rows="10"></textarea> </p> <p> <input type="submit" name="criar" value="criar" /> </p> </form> 1. Baixe o software DOMPDF do site oficial: 2. Instale (descompacte) na pasta do seu site, na raiz. 3. Adicione o script20. if(isset($_post['criar'])){ $criar = $_POST['criar']; $titulo = $_POST['titulo']; $texto = nl2br($_post['texto']); $data = date('h:i:s d/m/y'); $html = "<h1>$titulo</h1><hr>".nl2br("<p>$texto</p>")."<p>gerado em: $data</p>"; //chame o DOMPDF require_once("dompdf/dompdf_config.inc.php"); $dompdf = new DOMPDF(); //imprima o conteúdo da variável $html $dompdf->load_html($html); //defina o tamanho e posição do papel $dompdf->set_paper('a4', 'portrait'); $dompdf->render(); $dompdf->stream($titulo.pdf"); Explicando:

40 34 1. A variável $rand e $data servem para atribuir nome ao arquivo e adicionar a data de criação como texto no PDF. 2. Receba os dados do formulário; 3. A variável $html é onde você irá criar o conteúdo a ser impresso.

41 35 Aula 10 XML Leitura do XML //Lê o arquivo XML e recebe um objeto com as informações $xml = simplexml_load_file('usuarios.xml'); //Percorre o objeto e imprime na tela as informações de cada contato foreach ($xml as $contato){ $a = "Id: ". $contato->id. "<br />"; $a.= "Nome: ". $contato->nome. "<br />"; $a.= " ". $contato-> . "<br />"; $a.= "Senha: ". $contato->senha. "<br />"; $a.= "Foto: ". $contato->foto. "<br />"; echo "$a <hr />"; Script 20 - Leitura do XML Geração de arquivo XML //método do while... $dados = mysql_query('select * FROM usuarios ORDER BY usu_id ASC'); $registros = mysql_num_rows($dados); $registro = 0; //escrever o xml $arquivo = "usuarios.xml"; $cria = fopen($arquivo, "w"); /* Observe que o script php foi interrompido e reaberto, interrompido novamente e reaberto. Isto é feito por que na codificação do cabeçalho do xml, ele é encerrado com, idêntico ao do php, o que leva o compilador se confundir e não interpreta o restante do código, por isso é feito em separado para que o erro fique apenas neste trecho. */ $xml = "<?xml version='1.0' encoding='iso '"; fwrite($cria, $xml); fwrite($cria, "<registro> "); do{ $usu_id = mysql_result($dados, 0, "usu_id"); $usu_nome = mysql_result($dados, 0, "usu_nome"); $usu_ = mysql_result($dados, 0, "usu_ "); $usu_senha = mysql_result($dados, 0, "usu_senha"); $usu_foto = mysql_result($dados, 0, "usu_foto"); $tag = "<usuario> "; $tag.= "<id>$usu_id</id> "; $tag.= "<nome>$usu_nome</nome> "; $tag.= "< >$usu_ </ > ";

42 36 $tag.= "<senha>$usu_ </senha> "; $tag.= "<foto>$usu_ </foto> "; $tag.= "</usuario> "; fwrite($cria, $tag); $registro++; while ($registro < $registros); fwrite($cria, "</registro>"); fclose($cria); Script 21 - Geração de arquivo XML Inserir dados do XML no MySQL if(isset($_post['submit'])){ //upload do arquivo $arq = $_FILES['arquivo']['name']; $arq_temp = $_FILES['arquivo']['tmp_name']; move_uploaded_file($arq_temp,"docs/usuarios.xml"); //Lê o arquivo XML e recebe um objeto com as informações $xml = simplexml_load_file('docs/usuarios.xml'); //Percorre o objeto e salva as informações no banco de dados $x = 0; foreach ($xml as $regs){ mysql_query("insert INTO usuarios (usu_id, usu_nome, usu_ , usu_senha, usu_foto) VALUES ('$regs->id', '$regs->nome', '$regs-> ', '$regs- >senha', '$regs->foto')"); if(mysql_affected_rows()!= -1){ $x++; echo "$x contatos importados com sucesso!"; else{ echo "<form method='post' enctype='multipart/form-data'> <input type='file' name='arquivo' size='20'> <input type='submit' name='submit' value='upload'> </form>"; Script 22 - Inserir dados do XML no MySQL

43 37 Aula 11 Sistema de busca Vamos começar criando um sistema de busca na tabela de usuários. Crie um formulário de busca. <form name="busca" method="post"> <input type="text" name="busca" value="" /> <input type="submit" value="buscar" name="buscar" /> </form> Agora vamos criar o script para realizar a busca. if(isset($_post['buscar'])){ $busca = $_POST['busca']; $dados = mysql_query("select * FROM usuarios WHERE usu_nome LIKE '%$busca%' OR usu_ LIKE '%$busca%'"); $num_reg = mysql_num_rows($dados); for($i=0;$i<$num_reg;$i++){ $usu_nome = mysql_result($dados, $i, 'usu_nome'); $usu_ = mysql_result($dados, $i, 'usu_ '); echo "Foram encontrados $num_reg registros <br>"; echo "Nome: $usu_nome<br> $usu_ <hr>"; Script 23 - Script de busca Então, depois de clicar em buscar, o valor do campo é armazenado na variável $busca que servirá de filtro. O problema é que o usuário poderá não escrever exatamente o que há no BD, por isso utiliza-se o % como caractere coringa, antes e depois da variável. Coloque tudo dentro de um laço de repetição para que ele mostre tudo o que encontrou. Método de buscar tudo em todas as tabelas Da mesma forma que procedemos com a busca simples, vamos aproveitar o formulário criado. Para buscar em tudo, dentro do BD, precisamos ler todas as tabelas. //busca tudo if(isset($_post['busca'])){ //mostra todas as tabelas do BD

44 38 $tabelas = mysql_query("show TABLES FROM $db"); //registra o nº de tabelas $tab_num = mysql_num_rows($tabelas); //Que tal imprimir para controlar? echo $tab_num; Script 24 - Leitura de todas tabelas Se queremos que busque em todas as tabelas, precisamos realizar a busca uma a uma, por isso precisamos do total de tabelas, para criar um laço de repetição. if(isset($_post['busca'])){ $tabelas = mysql_query("show TABLES FROM $db"); $tab_num = mysql_num_rows($tabelas); $tn=0; do{ $tab_nom = mysql_table_name($tabelas, $tn); echo "<h3>$tab_nom <br /></h3>"; $tn++; while($tn<$tab_num); Agora que temos as tabelas marcadas, vamos ler a quantidade e o nome dos campos na tabela. if(isset($_post['busca'])){ $tabelas = mysql_query("show TABLES FROM $db"); $tab_num = mysql_num_rows($tabelas); $tn=0; do{ $tab_nom = mysql_table_name($tabelas, $tn); echo "<h3>$tab_nom <br /></h3>"; //laço de repetição para tabelas do{ $tab_var = mysql_query("select * FROM $tab_nom"); $cam_num = mysql_num_fields($tab_var); $cam_nome = mysql_field_name($tab_var, $cn); //adicione mais 1 $cn++; while($cn<$cam_num); echo "<br />"; //adicione mais 1 $tn++; while($tn<$tab_num); Script 25 - Campos e Registros

45 39 Script completo. //busca tudo if(isset($_post['busca'])){ $cn=0; //mostra todas as tabelas do BD $tabelas = mysql_query("show TABLES FROM $db"); //registra o nº de tabelas $tab_num = mysql_num_rows($tabelas); //$tn é o nº de tabelas da variável de interação da função DO $tn=0; do{ $tab_nom = mysql_table_name($tabelas, $tn); echo "<h3>$tab_nom <br /></h3>"; //laço de repetição para tabelas do{ $tab_var = mysql_query("select * FROM $tab_nom"); $cam_num = mysql_num_fields($tab_var); $cam_nome = mysql_field_name($tab_var, $cn); //nova busca com o filtro aplicado dependendo do nome do campo $tab_var_busca = mysql_query("select * FROM $tab_nom WHERE $cam_nome LIKE '%$busca%'"); $num_reg = mysql_num_rows($tab_var_busca); //laço de repetição para busca dependendo da tabela e do campo for($i=0;$i<$num_reg;$i++){ $campo_nome = mysql_result($tab_var_busca, $i, $cam_nome); //esta busca serve somente para buscar o id e criar o link $usu_id = mysql_result($tab_var_busca, $i, 0); echo "<b>campo:</b>$cam_nome: <a href='usuario.php?usu_id=$usu_id'>$campo_nome</a><br />"; //adicione mais 1 $cn++; while($cn<$cam_num); echo "<br />"; //adicione mais 1 $tn++; //zere a variável de interação para cada ciclo de tabelas $cn=0; while($tn<$tab_num); Script 26 - Script completo do sistema de busca

46 40 Respostas Resposta do Exercício da Aula 1 Criar o BD. Resposta do Exercício da Aula 2 Busca e leitura //dados da empresa $bd_empresa = mysql_query("select * FROM empresa ORDER BY emp_id DESC"); $nom_empresa = mysql_result($bd_empresa, 0, "emp_nome"); $log_empresa = mysql_result($bd_empresa, 0, "emp_logo"); $dad_empresa = mysql_result($bd_empresa, 0, "emp_dados"); Impressão do topo <table width="100%"> <tr bgcolor="#99bbff"> <td> <h1> echo "$nom_empresa";</h1> <td align="right"> <a href="index.php" border="0"><img src="img/ echo $log_empresa;" width="20%" alt=" echo "$nom_empresa";"></a> Impressão do rodapé </table> <td colspan="2" bgcolor="#999999" height="80" align="center"> <p> echo nl2br($dad_empresa);</p> <p><a href="login.php">login</a></p> </table> </body> </html> mysql_close($conecta); Resposta do Exercício da Aula 3 Impressão dos conteúdos <td colspan="2"> <table width="75%" align="center" bgcolor="#dedede">

47 41 <td> if($con_qte!=0){ $con_ini=0; do{ $con_texto = mysql_result($bd_conteudo, $con_ini, "con_texto"); echo "$con_texto <hr>"; $con_ini++; while($con_ini<$con_qte); else{ echo "Página em construção!<br /> Por favor, retorne mais tarde."; Impressão das imagens <td> if($img_qte!=0){ $img_ini = 0; do{ $img_nome = mysql_result($bd_imagens, $img_ini, "img_nome"); echo " <table width='100%' bgcolor='#cccccc'> <td align='left'> <img src='img/$img_nome' width='20%' align='right' alt='$img_nome'> </table>"; $img_ini++; while($img_ini<$img_qte); </table> Impressão de todos os dados de todos os campos $dados = mysql_query('select * FROM usuarios ORDER BY usu_id ASC'); $linhas = mysql_num_rows($dados); $colunas = mysql_num_fields($dados); echo "<table border='1' cellpadding='1' wicht='50%'>"; echo "<th>identificação</th>"; echo "<th>nome</th>"; echo "<th> </th>"; echo "<th>senha</th>"; echo "<th>foto</th>"; for($registro=0; $registro < $linhas; $registro++){ echo ""; for ($campo=0; $campo < $colunas; $campo++){ $usuario=mysql_result($dados,$registro,$campo);

48 42 echo "<td width=20%> $usuario "; echo ""; echo "</table>"; Resposta do Exercício da Aula 4 include ("conecta.php"); //dados da empresa $bd_empresa = mysql_query("select * FROM empresa ORDER BY emp_id DESC"); $nom_empresa = mysql_result($bd_empresa, 0, "emp_nome"); $log_empresa = mysql_result($bd_empresa, 0, "emp_logo"); $dad_empresa = mysql_result($bd_empresa, 0, "emp_dados"); $bd_paginas = mysql_query("select * FROM paginas"); $pag_qte = mysql_num_rows($bd_paginas); //ao visitar (index.php) e ao clicar numa página (index.php?pag_id=x) if(isset($_get['pag_id'])){ $pag_id = $_GET['pag_id']; //conteúdo $bd_conteudo = mysql_query("select * FROM conteudos WHERE pag_id = '$pag_id'"); $con_qte = mysql_num_rows($bd_conteudo); //imagens $bd_imagens = mysql_query("select * FROM imagens INNER JOIN conteudos WHERE conteudos.con_id = imagens.con_id AND conteudos.pag_id = $pag_id"); $img_qte = mysql_num_rows($bd_imagens); else{ //para definir a página como id=1 $pag_id = 1; //conteúdo $bd_conteudo = mysql_query("select * FROM conteudos WHERE pag_id = '$pag_id'"); $con_qte = mysql_num_rows($bd_conteudo); //imagens $bd_imagens = mysql_query("select * FROM imagens INNER JOIN conteudos WHERE conteudos.con_id = imagens.con_id AND conteudos.pag_id = $pag_id"); $img_qte = mysql_num_rows($bd_imagens); <!DOCTYPE html> <html lang="pt-br"> <head> <meta content="text/html; charset=windows-1252" http-equiv="content- Type"> <title> echo $nom_empresa;</title> </head> <body> <table width="100%"> <tr bgcolor="#99bbff"> <td> <h1> echo "$nom_empresa";</h1>

49 43 <td align="right"> <a href="index.php" border="0"><img src="img/ echo $log_empresa;" width="20%" alt=" echo "$nom_empresa";"></a> <td colspan="2"> $pag_ini = 0; do{ $nom_paginas = mysql_result($bd_paginas, $pag_ini, "pag_nome"); $id_paginas = mysql_result($bd_paginas, $pag_ini, "pag_id"); echo "<a href='index.php?pag_id=$id_paginas'>$nom_paginas </a>"; $pag_ini++; while($pag_ini<$pag_qte); <hr width="75%"> <td colspan="2"> <table width="75%" align="center" bgcolor="#dedede"> <td> if($con_qte!=0){ $con_ini=0; do{ $con_texto = mysql_result($bd_conteudo, $con_ini, "con_texto"); echo "$con_texto <hr>"; $con_ini++; while($con_ini<$con_qte); else{ echo "Página em construção!<br /> Por favor, retorne mais tarde."; <td> if($img_qte!=0){ $img_ini = 0; do{ $img_nome = mysql_result($bd_imagens, $img_ini, "img_nome"); echo " <table width='100%' bgcolor='#cccccc'> <td align='left'> <img src='img/$img_nome' width='20%' align='right' alt='$img_nome'> </table>"; $img_ini++; while($img_ini<$img_qte);

50 44 </table> <td colspan="2" bgcolor="#999999" height="80" align="center"> <p> echo nl2br($dad_empresa);</p> <p><a href="login.php">login</a></p> </table> </body> </html> mysql_close($conecta); Resposta do exercício 1 da aula 5. include("conecta.php"); //dados da empresa $bd_empresa = mysql_query("select * FROM empresa ORDER BY emp_id DESC"); //Já que tivemos que repetir a construção... $nom_empresa = mysql_result($bd_empresa, 0, "emp_nome"); $log_empresa = mysql_result($bd_empresa, 0, "emp_logo"); $dad_empresa = mysql_result($bd_empresa, 0, "emp_dados"); //vamos criar uma opção inteligente! /* $tb_qte = mysql_num_fields($bd_empresa); for($i=0; $tb_qte<$i; $i++){ $var_empresa = mysql_result($bd_empresa, 0, $i); */ $bd_paginas = mysql_query("select * FROM paginas"); $qte_paginas = mysql_num_rows($bd_paginas); if(isset($_post['gravar'])){ $con_pag = $_POST['conteudo']; $id_pag = $_POST['pagina']; mysql_query("insert INTO conteudos (con_texto, pag_id) VALUES ('$con_pag', '$id_pag')"); <!DOCTYPE html> <html lang="pt-br"> <head> <meta content="text/html; charset=windows-1252" http-equiv="content- Type"> <title> echo $nom_empresa;</title> </head> <body>

51 45 <table width="100%"> <tr bgcolor="#99bbff"> <td> <h1>administração da echo "$nom_empresa";</h1> <td align="right"> <img src="img/ echo $log_empresa;" width="20%"> <td colspan="2"> <hr width="75%"> <td colspan="2"> <table width="75%" align="center" bgcolor="#dedede"> <td> include("menu.html"); <h3>insira conteúdos nas páginas</h3> <form method="post" action="adm_conteudos.php" name="form_conteudos"> <select size="1" name="pagina"> echo "<option value='0'>página</option>"; for($i=0; $i<$qte_paginas; $i++){ $id_paginas = mysql_result($bd_paginas, $i, 0); $nom_paginas = mysql_result($bd_paginas, $i, 1); echo "<option value='$id_paginas'>$nom_paginas</option>"; </select><br /> <textarea name="conteudo" value="" rows="5" cols="30" placeholder="insira o conteúdo da página aqui."></textarea><br /> <input type="submit" name="gravar" /> </form> <br> <form method="post" action=""> <input type="submit" id="logout" name="logout" value="logout" /> </form> <td> </table> <td colspan="2" bgcolor="#999999" height="80" align="center"> <p> echo nl2br($dad_empresa);</p> <p><a href="login.php">login</a></p> </table> </body> </html> mysql_close($conecta);

52 46 Resposta do exercício 2 da aula 5. if(isset($_post['gravar'])){ $tempo = time(); $dir = "img"; $arq = $_FILES['logo']['name']; $arq_temp = $_FILES['logo']['tmp_name']; move_uploaded_file($arq_temp,"$dir/$arq"); mysql_query("insert INTO empresa (emp_logo) VALUES ('$arq.$tempo ')"); Resposta do exercício da aula 6. $registro = $_GET['usu_id']; if(isset($_post['gravar'])){ $Eusu_nome = $_POST['usu_nome']; $Eusu_ = $_POST['usu_ ']; $Eusu_senha = $_POST['usu_senha']; $Eusu_foto = $_POST['usu_foto']; mysql_query("update usuarios SET usu_nome='$eusu_nome', usu_ ='$eusu_ ', usu_senha='$eusu_senha', usu_foto='$eusu_foto' WHERE usu_id=$registro"); Resposta do exercício da aula 7 include("menu.php"); //note que o id do usuário vem pela URL, logo, não use $_POST e sim $_GET if(isset($_get['usu_id'])){ $registro = $_GET['usu_id']; $dados = mysql_query("select * FROM usuarios WHERE usu_id=$registro"); $id = mysql_result($dados, 0, "usu_id"); $nome = mysql_result($dados, 0, "usu_nome"); $ = mysql_result($dados, 0, "usu_ "); $foto = mysql_result($dados, 0, "usu_foto"); else{ header('location:excluir.php'); <form name="form" id="form" method="post" action=""> echo "<img src='img/$foto'><br>você deseja excluir o usuário $nome, id $id, $ ?"; <input type="submit" name="apagar" value="apagar"> <hr>

53 47 echo "No entanto, se você deseja excluí-lo em definitivo da base de dados para não haver mais recuperação, clique em \"destruir\".<br> <font color='red'><strong>obs.: Esta ação não poderá ser revertida!</strong></font>"; echo "<img src='img/$foto'><br>você deseja <font color='red'><strong>destruir</strong></font> o usuário $nome, id $id, $ da base de dados?"; //$excluir = "DELETE FROM usuarios WHERE usu_id = '$registro'"; <br /> <input type="submit" name="destruir" value="destruir"> </form> if(isset($_post['destruir'])) { mysql_query("delete FROM usuarios WHERE usu_id = '$registro'"); header('location:excluir.php'); if(isset($_post['apagar'])){ mysql_query("update usuarios SET usu_status=0 WHERE usu_id='$registro'"); header('location:excluir.php');

54 48 Bibliografia HOGAN, Brian P. Web Design para Desenvolvedores. Rio de Janeiro. Editora Ciência Moderna, 2011.Pressman, Roger S. Engenharia Web. Rio de Janeiro. LTC, PRESSMAN, Roger S. Engenharia Web. Rio de Janeiro. LTC, CYBIS, Walter. Ergonomia e Usabilidade: conhecimentos, métodos e aplicações. São Paulo. Novatec, SILVA, Maurício Samy. Construindo sites com CSS e (X)HTML: sites controlados por folhas de estilo em cascata. São Paulo. Novatec, POWERS, Shelley. Aprendendo Javascript. São Paulo. Novatec, SILVA, Maurício Samy. Criando sites com HTML: sites de alta qualidade com HMTL e CSS. São Paulo. Novatec, 2008.

Tecnologia WEB II. Prof. Erwin Alexander Uhlmann. Introdução ao PHP. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.

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

Leia mais

Tecnologia WEB III. Prof. Erwin Alexander Uhlmann. PHP e MySQL. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012.

Tecnologia WEB III. Prof. Erwin Alexander Uhlmann. PHP e MySQL. UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012. Tecnologia WEB III Prof. Erwin Alexander Uhlmann PHP e MySQL UHLMANN, Erwin Alexander. Introdução ao PHP. Instituto Siegen. Guarulhos, 2012. Agradecimentos Agradeço à minha esposa Kátia por entender minha

Leia mais

Inserindo e Listando registros

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

Leia mais

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. 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

Leia mais

Prova de pré-requisito

Prova de pré-requisito Prova de pré-requisito PHP & MySQL: Técnicas para Web 2.0 1 - Qual das opções constrói a tabela abaixo: DIA MÊS ANO 28 04 1988 22 02 2002 a) b) c) dia mês ano

Leia mais

TECNOLOGIAS WEB. Unidade 2 Introdução a Construção de Páginas Estáticas. Luiz Leão luizleao@gmail.com http://luizleao.com

TECNOLOGIAS WEB. Unidade 2 Introdução a Construção de Páginas Estáticas. Luiz Leão luizleao@gmail.com http://luizleao.com Luiz Leão luizleao@gmail.com 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

Leia mais

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 é :

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

Leia mais

Introdução ao HTML Utilizando frames Hospedando seu site na WEB

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

Leia mais

APOSTILA DE LINGUAGEM DE PROGRAMAÇÃO IV

APOSTILA DE LINGUAGEM DE PROGRAMAÇÃO IV APOSTILA DE LINGUAGEM DE PROGRAMAÇÃO IV CIÊNCIA DA COMPUTAÇÃO PROF. ERWIN ALEXANDER UHLMANN Universidade Guarulhos Página 1 Agradecimentos Agradeço a todos os alunos que com suas dúvidas me ajudaram a

Leia mais

Criação Pagina PHP & MySQL

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,

Leia mais

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 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

Leia mais

Programação WEB II. Formulários Em PHP. Métodos GET e POST progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Programação WEB II. Formulários Em PHP. Métodos GET e POST progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza Formulários Em PHP Métodos GET e POST progweb2@thiagomiranda.net Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net Objetivos Entender o funcionamento

Leia mais

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML O Desenvolvimento Web O desenvolvimento web é o termo utilizado para descrever atividade relacionada

Leia mais

Personal Home Page PHP. Prof. Luiz Claudio F. de Souza www.luizclaudiofs.blogspot.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

Leia mais

Web Design Aula 11: XHTML

Web Design Aula 11: XHTML Web Design Aula 11: XHTML Professora: Priscilla Suene priscilla.silverio@ifrn.edu.br Motivação HTML 1.0-2.0: Havia hipertextos, não havia preocupação com a apresentação HTML 3: Guerra dos Browser (Microsoft

Leia mais

Incorporando JavaScript em HTML

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

Leia mais

Enviado dados para o PHP através de formulário

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

Leia mais

Manual do Teclado de Satisfação Online WebOpinião

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

Leia mais

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?

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

Leia mais

UnionWeb Condominium

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

Leia mais

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

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

Leia mais

Max Fatura Sistema de Gestão

Max Fatura Sistema de Gestão Sumário 1 Tela Inicial... 2 2 Tela de Pesquisa... 3 3 Tela de Vendas... 4 5 Aproveitamento de Icms... 5 6 Salvar... 5 9 Para emissão da nota fiscal... 7 10 Impressão de relatórios... 10 11 Contas a Pagar

Leia mais

Manual MQS. Logo após colocar essas informações abrirá a página inicial do sistema:

Manual MQS. Logo após colocar essas informações abrirá a página inicial do sistema: Manual MQS Para acessar o sistema MQS na versão em PHP, basta clicar no link: www.mqs.net.br/plus. Colocar login e senha que foram fornecidos por email. Logo após colocar essas informações abrirá a página

Leia mais

MANUAL WEBDRIVE. webdrive.whirlpool.com.br

MANUAL WEBDRIVE. webdrive.whirlpool.com.br MANUAL WEBDRIVE webdrive.whirlpool.com.br 1 Sumário 1. O Webdrive p. 04 2. Acessando o sistema p. 04 2.1 Esqueci minha senha 2.2 Página principal 2.3 Efetuar logoff 2.4 Criar e alterar Usuários 2.5 Criar

Leia mais

Guia do Usuário. idocs Content Server v.2.0-1 -

Guia do Usuário. idocs Content Server v.2.0-1 - Guia do Usuário idocs Content Server v.2.0-1 - 2013 BBPaper_Ds - 2 - Sumário Introdução... 4 Inicializando a aplicação... 6 Ambiente... 7 Alterando o ambiente... 8 Senhas... 10 Alterando senhas... 10 Elementos

Leia mais

Para o envio de e-mails pelo PHP é necessário seguir a seguinte sintaxe:

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

Leia mais

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

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.

Leia mais

Projeto ECA na Escola - Plataforma de Educação à Distância

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

Leia mais

MANUAL MOODLE - PROFESSORES

MANUAL MOODLE - PROFESSORES MANUAL MOODLE - PROFESSORES VERSÃO 2.5 Faculdades Projeção FACULDADE PROJEÇÃO Prof. Oswaldo Luiz Saenger Presidente Prof.ª Catarina Fontoura Costa Diretora Geral das Unidades Educacionais Prof. José Sérgio

Leia mais

Manual de Utilização do PDV Klavix

Manual de Utilização do PDV Klavix Manual de Utilização do PDV Klavix Página 1/20 Instalando a partir do CD Se você recebeu um CD de instalação, rode o programa Instalador que se encontra no raiz do seu CD. Ele vai criar a pasta c:\loureiro

Leia mais

MANUAL DA SECRETARIA

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

Leia mais

Treinamento - Union Web

Treinamento - Union Web Inserindo formulário de acesso ao sistema no seu site: Para que seus condôminos tenham acesso ao sistema será necessária a inserção do formulário de entrada no seu site, veja com o programador do seu site

Leia mais

LGTi Tecnologia. Manual - Outlook Web App. Soluções Inteligentes. Siner Engenharia

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

Leia mais

Manual do Usuário CMS WordPress Versão atual: 3.0

Manual do Usuário CMS WordPress Versão atual: 3.0 Manual do Usuário CMS WordPress Versão atual: 3.0 1 - Introdução O Centro de Gestão do Conhecimento Organizacional, CGCO, criou, em março de 2008, uma equipe para atender à demanda de criação de novos

Leia mais

1) Ao ser executado o código abaixo, em PHP, qual será o resultado impresso em tela?

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:

Leia mais

Manual Fácil 1 DOWNLOAD E INSTALAÇÃO. 1. Como faço o download do Jimbo Mobile?

Manual Fácil 1 DOWNLOAD E INSTALAÇÃO. 1. Como faço o download do Jimbo Mobile? Seja bem-vindo(a) ao Manual Fácil Jimbo. O jeito mais simples de você aprender a usar o nosso software gratuito. Com esse passo a passo você fica sabendo como acrescentar despesas, alterar lançamentos,

Leia mais

Aula 2: Listas e Links

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

Leia mais

Instituto Siegen Manual do Professor

Instituto Siegen Manual do Professor Manual do Professor - www.institutosiegen.com.br - 1 Instituto Siegen Manual do Professor Manual do Professor - www.institutosiegen.com.br - 2 Sumário Instituto Siegen...1 Manual do Professor...1 Funcionamento

Leia mais

Para o OpenOffice Impress, assim como para vários softwares de apresentação, uma apresentação é um conjunto de slides.

Para o OpenOffice Impress, assim como para vários softwares de apresentação, uma apresentação é um conjunto de slides. OPENOFFICE IMPRESS 1. O QUE É UMA APRESENTAÇÃO Para o OpenOffice Impress, assim como para vários softwares de apresentação, uma apresentação é um conjunto de slides. Em cada slide podemos ter vários elementos

Leia mais

BLOG ESCOLAS. Após acessar o seu respectivo blog, você será direcionado a tela a seguir. Vamos conhecê-la um pouco melhor.

BLOG ESCOLAS. Após acessar o seu respectivo blog, você será direcionado a tela a seguir. Vamos conhecê-la um pouco melhor. 1 CONHECENDO A PÁGINA PRINCIPAL Após acessar o seu respectivo blog, você será direcionado a tela a seguir. Vamos conhecê-la um pouco melhor. PAGINAS- Mostras as paginas do blog LOCALIZADOR área de busca

Leia mais

O QUE É A CENTRAL DE JOGOS?

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

Leia mais

INTRODUÇÃO AO DESENVOLVIMENTO WEB. PROFª. M.Sc. JULIANA H Q BENACCHIO

INTRODUÇÃO AO DESENVOLVIMENTO WEB. PROFª. M.Sc. JULIANA H Q BENACCHIO INTRODUÇÃO AO DESENVOLVIMENTO WEB PROFª. M.Sc. JULIANA H Q BENACCHIO Estrutura básica do HTML Um documento HTML deve estar delimitado pela tag e . Dentro deste documento, podemos ainda distinguir

Leia mais

Manual de Utilizador. Caderno. Recursos da Unidade Curricular. Gabinete de Ensino à Distância do IPP. http://eweb.ipportalegre.pt. ged@ipportalegre.

Manual de Utilizador. Caderno. Recursos da Unidade Curricular. Gabinete de Ensino à Distância do IPP. http://eweb.ipportalegre.pt. ged@ipportalegre. Manual de Utilizador Caderno Recursos da Unidade Curricular Gabinete de Ensino à Distância do IPP http://eweb.ipportalegre.pt ged@ipportalegre.pt Índice RECURSOS... 1 ADICIONAR E CONFIGURAR RECURSOS...

Leia mais

Sensor de temperatura Parte 5 Cleiton Bueno www.cleitonbueno.wordpress.com. Preparando o ambiente do Banco de dados Mysql

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

Leia mais

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. 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,

Leia mais

Universidade Federal do Espírito Santo

Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Núcleo de Tecnologia da Informação Gerenciamento do Conteúdo de Sítios Institucionais Versão 1.4 Atualizado em: 8/10/2015 Sumário Sumário................................................

Leia mais

Manual do Instar Mail v2.0

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

Leia mais

Desenvolvimento em Ambiente Web. HTML - Introdução

Desenvolvimento em Ambiente Web. HTML - Introdução Desenvolvimento em Ambiente Web HTML - Introdução O que é HTML? HTML é uma linguagem para descrever a estrutura de uma página WEB. Ela permite: Publicar documentos online com cabeçalhos, texto, tabelas,

Leia mais

SISTEMA MEDLINK E-TISS PASSO-A-PASSO (USE JUNTO COM A VÍDEO AULA)

SISTEMA MEDLINK E-TISS PASSO-A-PASSO (USE JUNTO COM A VÍDEO AULA) 1 / 16 SISTEMA MEDLINK E-TISS PASSO-A-PASSO (USE JUNTO COM A VÍDEO AULA) Este guia passo-a-passo tem o objetivo de facilitar o entendimento: - da ordem de execução dos processos. - dos conceitos do sistema.

Leia mais

Primeiros passos das Planilhas de Obra v2.6

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

Leia mais

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 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"

Leia mais

MOODLE NA PRÁTICA PEDAGÓGICA

MOODLE NA PRÁTICA PEDAGÓGICA Carmen Mathias Agosto - 2009 I. CADASTRO 1. Acessar o site de treinamento (teste): http://moodle_course.unifra.br/ 2. Faça o login, clicando em acesso no lado direito superior da tela: 3. Coloque seu nome

Leia mais

LINGUAGEM DE PROGRAMAÇÃO WEB

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.

Leia mais

Tutorial Gerenciador de Conteúdo Site FCASA

Tutorial Gerenciador de Conteúdo Site FCASA Tutorial Gerenciador de Conteúdo Site FCASA Versão 1.0* Bolt Brasil Comunicação Digital Tel: 31 3335 7100 www.bolt.com.br Rua Santa Catarina, 1627 15 andar Lourdes Belo Horizonte / MG CEP: 30170-081 *

Leia mais

LAB. 2 Segurança. 3 Mensagem. 3 Fórum. 4 Chat. 5 2- Alterar perfil. 6 3- Alterar senha. 11 4- Conhecendo seu curso. 12 5- Recuperar Senha

LAB. 2 Segurança. 3 Mensagem. 3 Fórum. 4 Chat. 5 2- Alterar perfil. 6 3- Alterar senha. 11 4- Conhecendo seu curso. 12 5- Recuperar Senha Índice Guia de boas práticas 2 Netqueta 2 Segurança 3 Mensagem 3 Fórum 4 Chat 4 5 1- Primeiro acesso 5 2- Alterar perfil 6 3- Alterar senha 11 4- Conhecendo seu curso 12 5- Recuperar Senha 14 6- Mensagem

Leia mais

Prefeitura Municipal de Sete Lagoas Secretaria de Planejamento Orçamento e Tecnologia Subsecretaria de Tecnologia da Informação

Prefeitura Municipal de Sete Lagoas Secretaria de Planejamento Orçamento e Tecnologia Subsecretaria de Tecnologia da Informação Tutorial para abertura de chamado Este sistema foi personalizado, instalado e configurado pela equipe da. O objetivo desta implantação é informatizar os registros de atendimento de suporte técnico para

Leia mais

Manual de utilização do EAD SINPEEM. EaD Sinpeem

Manual de utilização do EAD SINPEEM. EaD Sinpeem 2015 Manual de utilização do EAD SINPEEM EaD Sinpeem 2 SUMÁRIO 1 INTRODUÇÃO... 3 2. COMO ACESSAR UM CURSO... 3 3. COMO ALTERAR MINHA SENHA... 5 4. COMO EDITAR MEU PERFIL... 5 5. COMO ACESSAR O CURSO...

Leia mais

SIE - SISTEMA DE INFORMAÇÕES PARA O ENSINO CADASTRO DE FUNCIONÁRIOS

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,

Leia mais

Portal do Projeto Tempo de Ser

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

Leia mais

Tutorial Report Express. Como iniciar o uso dos serviços fazer a diferença.

Tutorial Report Express. Como iniciar o uso dos serviços fazer a diferença. Tutorial Report Express Como iniciar o uso dos serviços fazer a diferença. Índice Apresentação Pág. 3 Passo 1 Pág. 4 Instalação do MasterDirect Integrações Passo 2 Pág. 8 Exportar clientes Linha Contábil

Leia mais

Início Rápido: Registar para o Centro de Negócios da Microsoft

Início Rápido: Registar para o Centro de Negócios da Microsoft Guia do Cliente O Centro de Negócios da Microsoft permite que as pessoas em sua organização exibam com segurança contratos de compras, exibam pedidos de licenciamento por volume, efetuem o download do

Leia mais

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 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

Leia mais

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word 2010. Sumário

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word 2010. Sumário CADERNO DE INFORMÁTICA FACITA Faculdade de Itápolis Aplicativos Editores de Texto WORD 2007/2010 Sumário Editor de texto... 3 Iniciando Microsoft Word... 4 Fichários:... 4 Atalhos... 5 Área de Trabalho:

Leia mais

MANUAL DO USUÁRIO PORTAL DO PROFESSOR

MANUAL DO USUÁRIO PORTAL DO PROFESSOR MANUAL DO USUÁRIO PORTAL DO PROFESSOR ACESSANDO O PORTAL DO PROFESSOR Para acessar o portal do professor, acesse o endereço que você recebeu através da instituição de ensino ou acesse diretamente o endereço:

Leia mais

O Sistema foi inteiramente desenvolvido em PHP+Javascript com banco de dados em MySQL.

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

Leia mais

UNIPAMPA Universidade Federal do Pampa. Núcleo de Tecnologia da Informação (NTI)

UNIPAMPA Universidade Federal do Pampa. Núcleo de Tecnologia da Informação (NTI) UNIPAMPA Universidade Federal do Pampa Núcleo de Tecnologia da Informação (NTI) Instruções para gerenciamento dos sites em Joomla (versão 1.5.3) Níveis: Editor e Administrador Junho/2008 Í N D I C E Usuários

Leia mais

Curso Online A Escola no Combate ao Trabalho Infantil Plataforma de Educação à Distância

Curso Online A Escola no Combate ao Trabalho Infantil Plataforma de Educação à Distância Página1 Apresentação Curso Online A Escola no Combate ao Trabalho Infantil Plataforma de Educação à Distância Olá Participante do Curso A Escola no Combate ao Trabalho Infantil (ECTI), Este tutorial pretende

Leia mais

Iniciando PHP. Agenda

Iniciando PHP. Agenda Agenda Módulo 2 Iniciando PHP Professor: Eduardo Mendes Visão Geral Arquitetura Cliente-Servidor Programas Básicos Sintaxe do PHP HTML Básico Formulários Manipulação de Strings Controle de Fluxo Visão

Leia mais

MANUAL DE UTILIZAÇÃO DO AMBIENTE EAD (Educação a Distância) ÍNDICE

MANUAL DE UTILIZAÇÃO DO AMBIENTE EAD (Educação a Distância) ÍNDICE MANUAL DE UTILIZAÇÃO DO AMBIENTE EAD (Educação a Distância) ÍNDICE FORMAS DE ACESSO AO AMBIENTE EAD... 2 O AMBIENTE EAD... 2 TERMO DE COMPROMISSO... 3 CONHECENDO A HOME PAGE DO TREINAMENTO EAD... 3 ETAPAS

Leia mais

Wordpress - Designtec. Manual básico de gerenciamento Práticas de Geografia

Wordpress - Designtec. Manual básico de gerenciamento Práticas de Geografia Wordpress - Designtec Manual básico de gerenciamento Práticas de Geografia 1 Índice Acessando o painel administrativo... 3 Gerenciamento de edições... 3 Gerenciamento de artigos... 3 Publicando mídias...

Leia mais

PHP e MySQL Autenticação de Usuários

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

Leia mais

PORTAL WISSEN OPERADORA 2011 GUIA PRÁTICO OPERACIONAL. Portal Wissen

PORTAL WISSEN OPERADORA 2011 GUIA PRÁTICO OPERACIONAL. Portal Wissen PORTAL WISSEN OPERADORA 2011 GUIA PRÁTICO OPERACIONAL Portal Wissen Onde encontro? INTRODUÇÃO...3 Acessando o Sistema...4 Pagina Inicial do sistema...5 FUNCIONAMENTO DO SISTEMA...6 Iniciando um File (Compra

Leia mais

PHP INTEGRAÇÃO COM MYSQL PARTE 2

PHP INTEGRAÇÃO COM MYSQL PARTE 2 ABRIR CONEXÃO PHP INTEGRAÇÃO COM MYSQL PARTE 2 Professor: Leonardo Pereira Email: leongamerti@gmail.com Facebook: leongamerti Material de Estudo: http://www.leonti.vv.si Antes de podermos acessar informações

Leia mais

Programação de Servidores CST Redes de Computadores

Programação de Servidores CST Redes de Computadores Programação de Servidores CST Redes de Computadores Marx Gomes Van der Linden http://marx.vanderlinden.com.br ( Material baseado no original de Marcelo José Siqueira Coutinho de Almeida ) HMTL Arquivo-texto

Leia mais

Criar formulários preenchidos pelos usuários no Word

Criar formulários preenchidos pelos usuários no Word Página 1 de 5 Word > Criando documentos específicos > Formas Criar formulários preenchidos pelos usuários no Word Usando um modelo, você pode adicionar controles de conteúdo e texto com instrução no Microsoft

Leia mais

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 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

Leia mais

Linguagem de. Aula 06. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagem de. Aula 06. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagem de Programação IV -PHP Aula 06 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Criação de Formulários o Um formulário consiste em uma série de campos que são preenchidos pelo usuário

Leia mais

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 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 leticia@cafw.ufsm.br Acessando

Leia mais

Para o PowerPoint, assim como para vários softwares de apresentação, uma apresentação é um conjunto de slides.

Para o PowerPoint, assim como para vários softwares de apresentação, uma apresentação é um conjunto de slides. POWERPOINT 1. O QUE É UMA APRESENTAÇÃO Para o PowerPoint, assim como para vários softwares de apresentação, uma apresentação é um conjunto de slides. Em cada slide podemos ter vários elementos ou objetos

Leia mais

* 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é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

Leia mais

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira WEBDESIGN Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br http://www.paulotrentin.com.br Escola CDI de Videira Novo projeto com NetBeans A partir de hoje, vamos trabalhar com projetos no NetBeans

Leia mais

PROCEDIMENTO DO CLIENTE

PROCEDIMENTO DO CLIENTE PROCEDIMENTO DO CLIENTE Título: Plug-in Balcão de Empregos Objetivo: Aprender a utilizar a ferramenta. Onde: Empresa Quem: Cliente Quando: Início A ferramenta Balcão de Empregos permite a publicação de

Leia mais

Quem sou eu? Ana Paula Alves de Lima. Formação: E-mail: paulapeniel@gmail.com

Quem sou eu? Ana Paula Alves de Lima. Formação: E-mail: paulapeniel@gmail.com Introdução a Linguagem HTML: Conceitos Básicos e Estrutura ANA PAULAALVES DE LIMA INFORMÁTICA E METODOLOGIA - SUBSEQUENTE 1 Quem sou eu? Ana Paula Alves de Lima Formação: Bacharel em Sistemas de Informação;

Leia mais

Intel Teach Program Essentials Course. Tutorial para wik.is

Intel Teach Program Essentials Course. Tutorial para wik.is Tutorial para wik.is Esse documento inclui os passos e sugestões para estabelecer um wiki site para o Curso Essencial do Programa Intel Educar ou para sua própria turma. Essas instruções se aplicam para

Leia mais

Manual da Administração do site Abrasel 2.0

Manual da Administração do site Abrasel 2.0 Manual da Administração do site Abrasel 2.0 Caro usuário, Você está recebendo o manual que lhe dará acesso ao administrador do site 2.0 onde será possível fazer as seguintes alterações: Inserir notícias

Leia mais

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

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

Leia mais

Do Word 2007 para o Office 365 para empresas

Do Word 2007 para o Office 365 para empresas Do Word 2007 para o Office 365 para empresas Faça a migração O Microsoft Word 2013 para área de trabalho está diferente das versões anteriores. Assim, veja a seguir uma visão geral dos novos recursos e

Leia mais

Neo Solutions Manual do usuário Net Contábil. Índice

Neo Solutions Manual do usuário Net Contábil. Índice Manual Neo Fatura 2 Índice 1. Introdução... 3 2. Configurando o software para importar dados de clientes... 3 3. Importando o cadastro de clientes... 4 4. Cadastro de Bancos... 5 5. Cadastro de Conta Correntes...

Leia mais

SAP Guia de signatário da DocuSign

SAP Guia de signatário da DocuSign SAP Guia de signatário da DocuSign Índice 1. SAP Guia de signatário da DocuSign... 2 2. Recebimento de uma notificação por e-mail... 2 3. Assinatura do documento... 3 4. Outras opções... 4 4.1 Concluir

Leia mais

TOP SAÚDE SEPACO AUTOGESTÃO

TOP SAÚDE SEPACO AUTOGESTÃO TOP SAÚDE SEPACO AUTOGESTÃO Dezembro / 2014 Sumário 1. Apresentação e acesso ao sistema...3 2. Tela inicial do sistema...5 3. Autorização de Procedimento Via Prestador...6 3.1. Impressão Guia TISS...6

Leia mais

Lync Acessando o Lync Web App

Lync Acessando o Lync Web App Lync Acessando o Lync Web App Saiba como ingressar em uma reunião, quais são os recursos disponíveis, as configurações e conheça o layout do Lync Web App. Sumário Lync Web App... 1 Ingressar em uma Reunião

Leia mais

Como criar um blog. Será aberta uma janela onde você deverá especificar o título do blog, o endereço do blog, e o modelo.

Como criar um blog. Será aberta uma janela onde você deverá especificar o título do blog, o endereço do blog, e o modelo. Como criar um blog Criando o blog Vá em www.blogger.com. Entre com sua conta google (a mesma que você usa para acessar o gmail). Escolha um perfil. Na página seguinte, clique no botão novo blog. Será aberta

Leia mais

Usando o NVU Parte 2: Inserindo imagens

Usando o NVU Parte 2: Inserindo imagens Usando o NVU Parte 2: Inserindo imagens Simão Pedro P. Marinho Para uso exclusivo por alunos da PUC Minas Inserindo uma imagem que está no seu computador Inserindo uma imagem que já está na Internet Inserindo

Leia mais

MANUAL DE UTILIZAÇÃO DO TREINAMENTO EAD (Educação a Distância) ÍNDICE

MANUAL DE UTILIZAÇÃO DO TREINAMENTO EAD (Educação a Distância) ÍNDICE MANUAL DE UTILIZAÇÃO DO TREINAMENTO EAD (Educação a Distância) ÍNDICE FORMAS DE ACESSO AO AMBIENTE EAD... 2 O AMBIENTE EAD... 3 TERMO DE COMPROMISSO... 4 CONHECENDO A HOME PAGE DO TREINAMENTO EAD... 4

Leia mais

Usando o Conference Manager do Microsoft Outlook

Usando o Conference Manager do Microsoft Outlook Usando o Conference Manager do Microsoft Outlook Maio de 2012 Conteúdo Capítulo 1: Usando o Conference Manager do Microsoft Outlook... 5 Introdução ao Conference Manager do Microsoft Outlook... 5 Instalando

Leia mais

HTML Básico Formulários. Matheus Meira

HTML Básico Formulários. Matheus Meira HTML Básico Formulários Matheus Meira 1 Objetivos Neste apresentação conheceremos os fundamentos básicos de HTML para a manipulação com servlets e jsp. Serão vistos Formulários Links Elementos de disparo

Leia mais

Configurando o Controle dos Pais no Windows Vista

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

Leia mais

Curso destinado à preparação para Concursos Públicos e Aprimoramento Profissional via INTERNET www.concursosecursos.com.br INFORMÁTICA AULA 11

Curso destinado à preparação para Concursos Públicos e Aprimoramento Profissional via INTERNET www.concursosecursos.com.br INFORMÁTICA AULA 11 INFORMÁTICA AULA 11 INTERNET (CONTINUAÇÃO) Outlook EXPRESS A janela principal do Outlook Express pode ser divida basicamente em: Área de Comando (superior) - Contém a barra de botões e a barra de menus.

Leia mais

Professor Paulo Lorini Najar

Professor Paulo Lorini Najar Microsoft PowerPoint O Microsoft PowerPoint é uma ferramenta ou gerador de apresentações, palestras, workshops, campanhas publicitárias, utilizados por vários profissionais, entre eles executivos, publicitários,

Leia mais