Projeto Integrador - 2010.2 - Equipe Celtics

De MediaWiki do Campus São José
Revisão de 21h33min de 11 de março de 2011 por Cleidiane (discussão | contribs) (RADIUS)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para: navegação, pesquisa

Celtics

Projeto Integrador - Celtics

Dia: 23/11/2010

  • Apresentação do projeto pelo professor Ederson Torresini.
  • Verificado alguns dos serviços finais que a solução deve prover a usuário.
    • ADSL para usuários.
    • DSLAM 8 portas por equipe.(DHCP,DNS.)
    • Vigilância IP (ferramenta de streaming, sistema de controle de autenticação.)
    • Segurança nos dados:(BACKUP, Filtro de Conteúdo/pacotes.)
    • Redes separadas(VLAN).Um por administrador e um por cada cliente.)
  • Escolhido o nome da equipe Celtics.

Dia: 24/11/2010

Cabeamento

  • Passado os cabos do Patch Panel do Armário Principal para o Armário Celtics.
  • Feitos os pontos (um no chão, na parede e aéreo) de acesso (Tomadas).
  • Padrão 568B.

Equipamentos:

  • Placa wifi ATHEROS comunication AR500IXplus
  • MODEM D-LINK 500B
  • DSLAN - DAS3324

Gerência de Rede

  • Instalação do Sistema Operacional Ubuntu Server.

80GB de HD. 01GB de Memória RAM.</syntaxhighlight>

  • Configurações de particionamento de Disco

40GB para partição / (raiz) 20GB para partição /var 15GB para partição /home 01GB para swap. </syntaxhighlight>

Dia: 25/11/2010

  • Recebemos o equipamento DSLAM que ficou disponível para estudo.
  • Realizado a certificação dos cabos.
  • Teste de continuidade.
  • Instalado SSH: Acesso remoto.

root@techspot:~# aptitude install ssh-server.

</syntaxhighlight>

Dia: 26/11/2010

  • Não teve aula...


Dia: 29/11/2010

Cabeamento

  • Realizado os testes de continuidade no cabeamento estruturado, feitas as terminações nos pontos exigidos (aéreo, piso e parede) e no Patch panel, efetuado também terminações no rack principal.
  • Finalizado cabeamento estruturado.

Gerência de rede

  • Não realizamos nenhuma atividade, pois o laboratório apresentou problemas, não foi possível configurar o servidor estávamos sem rede.

Dia: 30/11/2010

Gerência de rede

  • Rede Celtics:

Rede externa: IP: 200.135.37.102 Mascara: 255.255.255.192 Broadcast: 200.135.37.127 Rede: 1°IP valido: Ultimo IP valido: Gateway: 200.135.37.126 </syntaxhighlight>

  • configuração de rede:

Arquivo /etc/network/interfaces: Configuração das interfaces de rede.

  1. This file describes the network interfaces available on your system
  2. and how to activate them. For more information, see interfaces(5).
  1. The loopback network interface
  1. Rede externa:

auto lo iface lo inet loopback auto eth0 iface eth0 inet static

       address 200.135.37.102
       netmask 255.255.255.192
       gateway 200.135.37.126

</syntaxhighlight>

DNS

  • DNS (Domain Name System - Sistema de Nomes de Domínios) é um sistema de gerenciamento de nomes hierárquico e distribuído que permite a "tradução" de nomes de "maquinas" em endereços IP.

Portas utilizadas: 53 UDP/TCP

Instalação e configuração de servidor DNS(BIND9[1])

  • Instalar
  1. aptitude update; aptitude install bind9

</syntaxhighlight>

Arquivo /etc/bind/named.conf.options:

options {

       auth-nxdomain no;    # conform to RFC1035
       listen-on-v6 { any; };
       listen-on { any; };
       allow-recursion {127.0.0.0/8; 192.168.1.19; };
       allow-query { any; };

}; </syntaxhighlight>

Arquivo /etc/bind/named.conf.local:

// // Do any local configuration here //

// Consider adding the 1918 zones here, if they are not used in your // organization //include "/etc/bind/zones.rfc1918";

zone "celtics.sj.ifsc.edu.br" {

       type master;
       file "/etc/bind/celtics.sj.ifsc.edu.br";

}; zone "/etc/bind/200.in-addr.arpa" {

       type master;
       file "/etc/bind/200/etc/bind/200.in-addr.arpa";

};

</syntaxhighlight>

Arquivo/etc/bind/celtics.sj.ifsc.edu.br: Configurações do domínio.

$TTL 86400

@ IN SOA dns.celtics.sj.ifsc.edu.br. rafael.celtics.sj.ifsc.edu.br. (

       2010113000      ; serial
       1d              ; refresh
       1h              ; retry
       1w              ; expire
       1d              ; negative cache ttl

)

@ IN NS dns @ IN A 200.135.37.102 dns IN A 200.135.37.102 ns1 IN A 200.135.37.102 mail IN A 200.135.37.102 www IN A 200.135.37.102 smtp IN CNAME mail.celtics.sj.ifsc.edu.br. pop IN CNAME mail.celtics.sj.ifsc.edu.br. imap IN CNAME mail.celtics.sj.ifsc.edu.br. ss1 IN CNAME www.celtics.sj.ifsc.edu.br.

</syntaxhighlight>

Arquivo/etc/bind/db100.64-127.37.135.200.in-addr.arpa: Configurações do DNS.

$TTL 86400

@ IN SOA dns.celtics.sj.ifsc.edu.br. rafael.celtics.sj.ifsc.edu.br. (

       2010113000      ; serial
       1d              ; refresh
       1h              ; retry
       1w              ; expire
       1d              ; negative cache ttl

)

@ IN NS dns.celtics.sj.ifsc.edu.br. 102 IN PTR dns.celtics.sj.ifsc.edu.br.

</syntaxhighlight>

NTP

  • NTP(Protocolo de Tempo para Redes). Protocolo que permite a sincronização dos relógios dos dispositivos de uma rede como servidores, estações de trabalho, roteadores e outros equipamentos à partir de referências de tempo confiável. Portas 123UDP/TCP.
  • Instalando:

  1. aptitude update; aptitude install ntp

</syntaxhighlight> Arquivo /etc/ntp.conf: Arquivo de configuração: Adicionada a linha abaixo para que o ntp sincronize o horário com os servidor: server ntp.cais.rnp.br </syntaxhighlight>

Dia: 01/12/2010

  • Configurado DHCP:

DHCP é um protocolo para configuração dinâmica de parâmetros de rede como endereço IP, DNS, Gateway etc. Porta 67/UDP.

Instalando:

  1. aptitude update; aptitude install dhcp3-server

</syntaxhighlight>


Arquivo:/etc/dhcp3/dhcpd.conf configurações do servidor dhcp.

    1. 2010120102 Termino da configuração
    2. Realizado por: Gabriel , Lucas , Cleidiane
  1. Aceitar atualização dinâmica vinda dos clientes?? Não.

ddns-update-style none;

    1. Criar subnet

subnet 192.168.20.0 netmask 255.255.255.0 {

       #IP
       range   192.168.1.1     192.168.1.100;
       #Máscara
       #option subnet-mask     255.255.255.0;
       #Broadcast
       #option broadcast-address 192.168.1.255;
       #Rota padrão
       option routers  192.168.1.19;
       #Servidor DNS
       option domain-name-servers      200.135.37.102;
       option domain-name      "celtics.sj.ifsc.edu.br";
       #Tempo de empréstimo
       default-lease-time      3600;
       masc-lease-time 14400;

}


</syntaxhighlight>

  • SNMP - É um protocolo de gerência típica de redes UDP, da camada de aplicação, que facilita o intercâmbio de informação entre os dispositivos de rede, como placas e comutadores. O SNMP possibilita aos administradores de rede gerenciar o desempenho da rede, encontrar e resolver seus eventuais problemas, e fornecer informações para o planejamento de sua expansão, dentre outras.

Instalando:

  1. aptitude update; aptitude install snmpd

</syntaxhighlight>

• O arquivo/etc/snmp/snmpd.conf foi zerado e reconfigurado de acordo com a comunidade de gerência. rocommunity celtics syslocation celtics-TI syscontact root@celtics.sj.ifsc.edu.br sysservices 72# example here. </syntaxhighlight>

Dia: 02/12/2010

Logo cacti.png

Cacti é uma ferramenta que recolhe e exibe informações sobre o estado de uma rede de computadores através de gráficos. Foi desenvolvido para ser flexível de modo a se adaptar facilmente a diversas necessidades, bem como ser robusto e fácil de usar. Monitora o estado de elementos de rede e programas bem como largura de banda utilizada e uso de CPU. Pode-se utilizar também o protocolo SNMP para consultar informações em elementos de redes e/ou programas que suportam tal protocolo.

  • Instalação do Cacti
apt-get install cacti

• Após instalar a configuração foi feita através da interface web no endereço http://www.celtics.sj.ifsc.edu.br/cacti/

• Para confirmar que existe comunicação entre agente e gerente, pode se testar a partir do seguinte comando:

snmpwalk -v2c -cplugincafe 200.135.37.102
  • MySQL - O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured Query Language) como interface.

Instalação dos serviços PHP, PHPmyadmin, Mysql

apt-get install php5 mysql-server phpmyadmin

Comandos básicos do mysql:

  • Logar no banco de dados

mysql -u root -p </syntaxhighlight>

  • Criar base de dados

create database; </syntaxhighlight>

  • Usar a base de dados

mysql> use (nome da base); </syntaxhighlight>

  • Listando as bases criadas

mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | cacti | | celtics | | celtics_users | | mysql | | radius | | zm | +--------------------+ 7 rows in set (0,00 sec) </syntaxhighlight>

  • Sair do Banco de Dados

mysql> quit </syntaxhighlight>

  • NAT - NAT também conhecido como masquerading é um protocolo que, como o próprio nome diz, faz a tradução dos endereços Ip e portas TCP da rede local para a Internet. Ou seja, o pacote enviado ou a ser recebido de sua estação de trabalho na sua rede local, vai até o servidor onde é trocado pelo ip do mesmo substituindo o ip da rede local validando assim o envio do pacote na internet, no retorno do pacote a mesma coisa, o pacote chega e o ip do servidor é trocado pelo Ip da estação que fez a requisição do pacote.
  • Cofiguração do NAT: Criar um arquivo com o nome "nat" na pasta "init.d"

• Arquivo/etc/init.d/nat:

  1. !/bin/bash
  2. Interfaces

IFACE_INTERNA="eth0" IFACE_EXTERNA="eth1"

  1. NAT

iptables -t nat -A POSTROUTING -o ${IFACE_EXTERNA} -j MASQUERADE

  1. Redirecionamento para o Analisador de Conteúdo
  2. iptables -t nat -A PREROUTING -i ${IFACE_INTERNA} -p tcp --dport 80 \
  3. -j REDIRECT --to-port 8080
  1. Bloqueio para acesso direto ao Proxy
  2. iptables -A INPUT -m tcp -p tcp ! -s 127.0.0.1 --dport 3128 -j DROP

exit 0

</syntaxhighlight>

• Mudança das permissões do arquivo "nat": chmod 700 /etc/init.d/nat </syntaxhighlight>

  • Ativando o roteamento para o NAT:

• Abrir o arquivo/etc/sysctl.conf: Ir até as linhas entre 25 e 30 do arquivo "sysctl.conf" e descomentar (apagar a #) na linha que tem o comando "#net.ipv4.ip_forward=1"

net.ipv4.ip_forward=1

Dia: 03/12/2010

  • Feito o cabo de ligação do patch panel com o dslan. (cabo manga).

Dia: 06/12/2010

  • Colocado o Cacti no ar.
    • Gráficos sobre o servidor funcionando.

Graph image.png Graph image.php1.png Graph image.php2.png Graph image.5.png Graph image.3.png Graph image.6.png Graph image.1.png Graph image.2.png Graph image.4.png

Dia: 07/12/2010

Firewall

O firewall é usado na filtragem de pacotes, por meio de um conjunto de regras estabelecidas. Essas regras determina que endereços IPs e dados podem estabelecer comunicação e/ou transmitir/receber dados. Para utilizarmos o firewall, temos que instala-lo através do comando: aptitude install iptables</syntaxhighlight>

  • Ativando o roteamento através do comando:

sed -i 's/.*net.ipv4.ip_forward.*/net.ipv4.ip_forward=1/g' /etc/sysctl.conf</syntaxhighlight>

  • Em seguida fizemos algumas alterações no script do arquivo NAT para redirecionamento das requisições HTTP. Seguindo o caminho /etc/init.d/nat.

  1. !/bin/bash
  2. Interfaces

IFACE_INTERNA="eth0" IFACE_EXTERNA="eth1"

  1. NAT

iptables -t nat -A POSTROUTING -o ${IFACE_EXTERNA} -j MASQUERADE

  1. Redirecionamento para o Analisador de Conteúdo

iptables -t nat -A PREROUTING -i ${IFACE_INTERNA} -p tcp --dport 80 \ -j REDIRECT --to-port 8080

  1. Bloqueio para acesso direto ao Proxy

iptables -A INPUT -m tcp -p tcp ! -s 127.0.0.1 --dport 3128 -j DROP

exit 0

</syntaxhighlight>

  • Por último temos que fazer com que o script inicie em primeiro lugar(01) nos niveis de execução de 2 a 5 (2 3 4 5). Assim o script irá iniciar junto com o sistema. Segue o comando abaixo:

update-rc.d nat start 01 2 3 4 5 .</syntaxhighlight>

Dia: 08/12/2010

RADIUS

  • Instalando o radius:
  • Pesquisado o Zoneminder Software de gerenciamento de câmeras via rede, deverá ser implantado no projeto.

Dia: 09/12/2010

Aplicação

  • Página de entrada do site, onde será feita autenticação do usuário (index.html):

<?

       session_start();

?> <html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

       background: url('fundo2.jpg') fixed no-repeat center;
       background-color: #000000;

} </style>

<font face="courier new"Autenticação de Usuários


<FORM name="autenticacao" method="POST" action="autentica_bd.php">



Nome de usuário:
<INPUT type="text" name="usuario">
Senha:
<INPUT type="password" name="senha">
<INPUT type="submit" name="botao" value="Enviar"> </form>

</html> </syntaxhighlight>

  • Página de autenticação do admin, verifica o login (autentica_bd.php):

<html> <meta http-equiv="content-type" content="text/html; charset=utf-8" />

         <?
               session_start();
               $nome = $_POST['usuario'];
               $password = $_POST ['senha'];
               $conexao = mysql_connect ("localhost", "root", "celta");
               $base_ok = mysql_select_db("celtics_users",$conexao);
               $consultar = "select id from admin where login = '$nome' && senha = '$password'";
               $resultado = mysql_query ($consultar,$conexao);
               $linhas = mysql_num_rows($resultado);
               mysql_close($conexao);
       If ($linhas == 1)

{

                       $_SESSION['usuario']=$nome;
                       echo "<script>window.location='principal.php';</script>";
               }else{
                       echo "<script>window.location='erro.php';</script>";
               }
       ?>

</html> </syntaxhighlight>

  • Pagina principal do site (principal.php):

<?

       session_start();
       if (isset($_SESSION['usuario'])){

?>

<html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

       background: url('fundo.jpg') fixed no-repeat center;
       background-color: #000000;

} </style>

<font face="courier new"Centro Comercial Celtics




<a href="http://www.celtics.sj.ifsc.edu.br/listar.php">Listar usuários cadastrados</a>

<a href="http://www.celtics.sj.ifsc.edu.br/cadastro.php">Cadastrar novos usuários</a>

<a href="http://celtics.sj.ifsc.edu.br:8080/?action=stream">Monitoramento</a>

<a href="http://www.celtics.sj.ifsc.edu.br/sair.php"><button>Sair</button></a>


</html>

<?

       }else{
                header("Location:index.php");

} ?> </syntaxhighlight>

  • Pagina de cadastro de usuários do site, onde o admin fará o cadastro (cadastro.php):

<?

       session_start();
       if(isset($_SESSION['usuario'])){

?>

<html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

       background: url('fundo.jpg') fixed no-repeat center;
       background-color: #000000;

}


</style>

Centro Comercial Celtics


Cadastro de usuários:

<form name="formTeste" action="add.php" method="post">

Nome:
<input type:"text" name="Xnome">

Login:
<input type:"text" name="Xlogin">

Senha:
<input type="password" name="Xsenha">

<input type="submit" name="b_enviar" value="Gravar">



<a href="http://www.celtics.sj.ifsc.edu.br/principal.php">Voltar</a> </body> </html>

<?

       }else{
               header("Location: index.php");

} ?> </syntaxhighlight>

  • Depois de informados os dados do usuário o admin é redirecionado para outra pagina onde será feita a conexão com o banco de dados mysql para inserir os dados nas tabelas. Segue o código (add.php):

<?

       session_start();
       if(isset($_SESSION['usuario'])){

?>

<html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

       background: url('fundo.jpg') fixed no-repeat center;
       background-color: #000000;
       color:#FFFFFF;

} a:link { color:#FFFFFF; text-decoration:none; } a:visited { color:#FFFFFF; text-decoration:none; } a:hover { color:#FFFFFF; text-decoration:underline; } a:active { color:#FFFFFF; text-decoration:underline; background-color:#000000; } </style>

<font face="courier new"Centro Comercial Celtics



<?

 $ID=$_POST['Xid'] ;
 $NOME=$_POST['Xnome'] ;
 $LOGIN=$_POST['Xlogin'] ;
 $SENHA=$_POST['Xsenha'] ;
 if (!empty ($NOME) && !empty ($LOGIN) && !empty ($SENHA))
 {
       $conexao = mysql_connect("localhost","root","celta") ;
       $base_ok = mysql_select_db("celtics_users",$conexao) or die ("erro 1");
       $inserir = "INSERT INTO user (NOME, LOGIN, SENHA) VALUES ('$NOME', '$LOGIN', '$SENHA')";
       $cadastrar = mysql_query($inserir,$conexao) or die("erro 2");
       mysql_close($conexao) or die("Erro fechar conexao");
       if($cadastrar==true)
       {

echo "

Usuário cadastrado com sucesso

";

               echo "<a href='http://www.celtics.sj.ifsc.edu.br/listar>Lista de usuários</a>";
       }else
       {
               echo "Erro ao cadastrar usuário";
               echo "<a href='http://www.celtics.sj.ifsc.edu.br/listar.php>Lista de usuários</a>";
       }
 }else
 {

echo "

Erro, favor preencher todos os campos.

";

         echo "<a href='http://www.celtics.sj.ifsc.edu.br/cadastro.php'>Cadastrar novo usuário</a>";
 }

?> </body> </html>

<?

       }else
       {
               header("Location: index.php");
               }

?> </syntaxhighlight>

Dia: 10/12/2010

Listagem de usuários cadastrados

  • Na página listar.php é feita a conexão com o banco de dados e também a consulta nas tabelas, para fazer a listagem dos usuários já cadastrados, e através dessa página pode-se selecionar um usuário o qual deseja editar ou excluir. Segue o código (listar.php):

<?

       session_start();
       if (isset($_SESSION['usuario'])){

?> <html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

       background: url('fundo.jpg') fixed no-repeat center;
       background-color: #000000;
       color: #FFFFFF;

} a:link { color:#FFFFFF; text-decoration:none; } a:visited { color:#FFFFFF; text-decoration:none; } a:hover { color:#FFFFFF; text-decoration:underline; } a:active { color:#FFFFFF; text-decoration:underline; background-color:#000000; }


</style> <body>

<font face="courier new"Centro Comercial Celtics


Lista de usuários:




<? $conexao = mysql_connect("localhost","root","celta") or die ("ERRO"); if($conexao) {

       mysql_select_db("celtics_users") or die ("erro 1");
       $query = "SELECT * FROM user" or die ("erro 2");
       $dados = mysql_query($query,$conexao) or die ("erro 3");
echo ""; echo ""; echo "";
       while($linha=mysql_fetch_array($dados,MYSQL_ASSOC))
       {
               $id = $linha["ID"];
echo "" ; echo "" ; //echo "" ; echo ""; } echo "
IDLogin
" . $linha["ID"] . "" . $linha["NOME"] . "" . $linha["SENHA"] . "<a href='certeza.php?id=$id'><button>Excluir</button></a> "; echo "<a href='editar.php?id=$id'><button>Editar</button></a>
";
       mysql_close($conexao) or die ("erro 5");

} ?>


<a href='http://www.celtics.sj.ifsc.edu.br/cadastro.php'>Incluir novo usuário</a>


<a href="http://www.celtics.sj.ifsc.edu.br/principal.php">Voltar</a>

</font: </body> </html>

<?

       }else{
               header("Location: index.php");
       }

?> </syntaxhighlight>

Editando e atualizando usuários

  • Depois de selecionado um usuário na página de listagem o admin é direcionado para a página de edição de usuários. E então são mostrados os dados que já estão cadastrados do usuário selecionado, podendo alterar a senha do mesmo e depois apertando no botão gravar que é direcionado para a página onde será feita a atualização do banco de dados. Segue o código da página de edição de usuários (editar.php):

<?

       session_start();
       if(isset($_SESSION['usuario'])){

?> <html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

       background: url('fundo.jpg') fixed no-repeat center;
       background-color: #000000;
       color: #FFFFFF;

} </style>

Centro Comercial Celtics


Editando usuários:



<?

       $id = $_GET['id'];
       $conexao = mysql_connect("localhost","root","celta") ;
       mysql_select_db("celtics_users") or die ("erro 1");
       $query = ("select * from user where ID=$id");
       $dados = mysql_query($query,$conexao);
       $linha=mysql_fetch_array($dados,MYSQL_ASSOC);
       mysql_query($linha);

?>

 <form name="formTeste" action="add2.php?id=<? echo $id ?>" method="post">

ID:
<input type:"readonly" name="id" value="<? echo $linha['ID']  ?>">

Senha:
<input type="password" name="senha" value="<? echo $linha['SENHA']  ?>"> <input type="submit" name="b_enviar" value="Gravar">




<a href="http://www.celtics.sj.ifsc.edu.br/listar.php">Voltar</a>

</body> </html>

<?

       }else{
               header("Location: index.php");
       }

?> </syntaxhighlight>

  • Código onde é realizado a atualização do banco de dados (add2.php):

<?

       session_start();
       if (isset($_SESSION['usuario'])){

?> <html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

       background: url('fundo.jpg') fixed no-repeat center;
       background-color: #000000;
       color: #FFFFFF;

} a:link { color:#FFFFFF; text-decoration:none; } a:visited { color:#FFFFFF; text-decoration:none; } a:hover { color:#FFFFFF; text-decoration:underline; } a:active { color:#FFFFFF; text-decoration:underline; background-color:#000000; }


</style>

<font face="courier new"Centro Comercial Celtics



<body> <?

       $conexao = mysql_connect("localhost","root","celta") ;
       $base_ok = mysql_select_db("celtics_users",$conexao);
       $id = $_GET['id'];
       $senha=$_POST['senha'];
       if (!empty ($id) && !empty ($senha))
       {
               $update=mysql_query("UPDATE user SET SENHA='$senha' WHERE ID=$id",$conexao);
               if($update==true)
               {

echo "

Dados atualizados com sucesso

";

                       echo "<a href='http://www.celtics.sj.ifsc.edu.br/listar.php>Lista de usuários</a>";
               }else
               {
                        echo "Erro ao Atualizar";
                       "<a href='http://www.celtics.sj.ifsc.edu.br/listar.php>Lista de an&uacutencios</a>";
               }
       }else
       {

echo "

Erro, campos vazios

";

               echo "<a href='http://www.celtics.sj.ifsc.edu.br/listar.php'>Voltar</a>";
       }

?> </body> </html>

<?

       }else
       {
               header("Location: index.php");
               }

?>

</syntaxhighlight>

Excluindo usuários

Segue o código da página para exclusão de usuários (excluir.php): <?

       session_start();
       if(isset($_SESSION['usuario'])){

?>

<html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

 background: url('fundo.jpg') fixed no-repeat center;
       background-color: #000000;
       color:#FFFFFF;

} a:link { color:#FFFFFF; text-decoration:none; } a:visited { color:#FFFFFF; text-decoration:none; } a:hover { color:#FFFFFF; text-decoration:underline; } a:active { color:#FFFFFF; text-decoration:underline; background-color:#000000; } </style>

<font face="courier new"Centro Comercial Celtics



<? $conexao = mysql_connect("localhost","root","celta") ; $base_ok = mysql_select_db("celtics_users",$conexao) or die ("erro 1"); $id=$_GET["id"]; $query = mysql_query("delete from user where ID='$id'"); mysql_query($query);

if ($query==true) {

echo "

Usuário excluído com sucesso!

";

       echo "<a href='http://www.celtics.sj.ifsc.edu.br/listar.php>Voltar</a>";

}else{

       echo "Erro ao excluir usuário!";
       echo "<a href='http://www.celtics.sj.ifsc.edu.br/listar.php>Voltar</a>";

} ?> </body> </html>

<?

       }else{
               header("Location: index.php");
       }

?> </syntaxhighlight>

Botão sair

  • Na página de cadastro foi colocado links para o usuário sair da seção(sair.php):

<?

       session_start(); //iniciamos a sessão que foi aberta
       session_destroy(); //destruimos a sessão
       session_unset(); //limpamos as variaveis globais das sessões
       header("Location: index.php");

?> </syntaxhighlight>

Erro

  • Na pagina que verifica o login foi criado uma seção de erro, para casos onde o usuário colocar login incorreto, com link para voltar a pagina de autenticação(erro.php):

<?

       session_start();
       if (!isset($_SESSION['usuario'])){

?>

?> <html> <meta http-equiv="Content-Type" content="text/html charset=utf-8"> <style type="text/css"> body {

       background: url('fundo.jpg') fixed no-repeat center;
       background-color: #000000;

}


</style>

<font face="courier new" Login inválido!


<a href="index.php"> Voltar </a> </html>

<?

       }else{
                header("Location:index.php");

} ?> </syntaxhighlight>

Dia: 13/12/2010

Dia: 14/12/2010

Dia: 15/12/2010

Dia: 16/12/2010