Jump to content


Photo

Me Ajudem Aqui Com Uma Lógica Em Segurança Em Php


  • Faça o login para participar
8 replies to this topic

#1 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 14/01/2009, 14:31

Bom, fiz um sistema com login por COOKIES. Até ae blz.

Posso listar, cadastrar, editar e etc.

Ok?

Bom, na hora que listo, e vejo as informações de cada cliente.

Ex: cliente.php?id=40


Blz, para listar, para editar e etc, a pessoa terá q ter acesso ao sistema, ou seja ter o login e senha.

Mais agora é para exclir?

se ele souber o arquivo correto

Ex: excluir.php?id=41

e digitar lá o link correto? Apaga do banco.

Claro que é possivel, passar n valores via GET.

porem e se for um sistema simples. passando apenas 1 variavel via get?

Qual seria a logica dessa parada?

Alguem ajuda?

Nesse Ex?

Excluir.php


[codebox]<?php
@ini_set('display_errors', '1');
error_reporting(E_ALL);


$id = $_GET["id"];
settype($id, "integer");

$user = "";
$senha = "";
$servidor = "";
mysql_connect($servidor,$user,$senha);
mysql_select_db("digitaltreinam");

include("restrito.php");

mysql_query("delete from tabela where id_tabela = $id");
header("Location: listar.php");
mysql_close();
?>
[/codebox]
www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#2 Humberto Rodrigues

Humberto Rodrigues

    Turista

  • Usuários
  • 59 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro

Posted 14/01/2009, 14:35

Na página em que você autentica o usuário e a senha, coloca uma session assim:

$_SESSION['bloq'] = "n";

E em cada página que só pode ter acesso quem estiver logado, vc colocar:

// Isso aqui antes de qualquer coisa na página, pois header tem alguns detalhes para funcionar.
session_start();
if ($_SESSION['bloq'] != "n")
{
header("location:bloqueado.php");
}

#3 b1nhuu

b1nhuu

    Normal

  • Usuários
  • 99 posts
  • Sexo:Não informado
  • Localidade:Rio de Janeiro
  • Interesses:Programação

Posted 14/01/2009, 14:47

Considerando que vc vai usar um formulário para tratar os dados, passe ele por POST.

Outra dica seria não usar nomes tão obvio por get.... Tipo id...

:assobio:
Aprender, aprender e aprender...

PHP orientado a objeto - Ok
Formação Java - Iniciando

#4 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 14/01/2009, 16:26

mais no caso n usei sessions e sim cookies :D

ou sessions ou cookie, kero saber pq do problema se o cookie apos sair do sistema passa a ser 0 :/

Voce não sacou oq falei! :D

o problema n é o usuario logar o nao.. isso é o d - o problema é a conexao com o mysql que n fecha para o cara ter acesso a isso.

tem alguma falha de segurança..

nao entendo pq fechei o banco com o mysql_close();

e o header n tem detalhe para funcionar.. apenas basta por antes de tags HTML :D
www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#5 Maykel Esser

Maykel Esser

    Super Veterano

  • Usuários
  • 1536 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR

Posted 14/01/2009, 16:30

pq vc não cria simplismente uma página de confirmação nesse excluir?

com 2 links. um pra SIM e outro pra NAO. Caso não, só volta. Caso sim, aí sim exclui.

Se este post lhe ajudou, ajude o fórum também. Use a reputação de mensagens! add.png


#6 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 14/01/2009, 16:31

o problema é q nao estando logado, o cara deleta do banco so colocando o link

sacou?

keria saber como se eu fecho a conexao com o banco

pq disso?
www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#7 Humberto Rodrigues

Humberto Rodrigues

    Turista

  • Usuários
  • 59 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro

Posted 14/01/2009, 17:49

Da forma que eu expliquei, basta você destruir a sessão. É o famoso botão "sair". Ou então alterar o tempo de vida da sessão.

#8 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 15/01/2009, 08:16

Fiz diferente..

usei os COOKIES porem no excluir..

depois que ele excluir do banco

ele da um session_destroy();

hehe vlws ae.. eu via pouco sistemas de COOKIES nao sabia q poderia usar sessions destroy..

agora pensando.. sessions e cokkies sao 2 coisas diferentes... porem com a mesma lógica e no caso meu, ele finaliza o cokkie criado.


abraços ae! []s
www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#9 Humberto Rodrigues

Humberto Rodrigues

    Turista

  • Usuários
  • 59 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro

Posted 15/01/2009, 08:34

;)

Legal que chegou a uma solução.
A diferença entre cookies e Sessions é que cookies ficam armazenados no navegador do usuário e session no servidor.

Corrijam-me se eu estiver errado.

Abraços




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq