Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

> [HELP] Login usando MYSQL, DÚVIDA


guimartino
 Compartilhar

Posts Recomendados

Olá pessoal...

eu e meu amigo estamos montando programinha.. e queriamos colocar um sistema de login... que terá acesso com Mysql

Eu tenho um host linux... q tem banco de dados Mysql... eu queria um sistema que... somente eu cadastrasse os usuarios via MYSQL

Por exemplo... eu mesmo crio outro form... q somente eu teria acesso.. para cadastrar os usuarios... aguardo respostas *-*

ansciosamente

Obrigado desde Já

 

 

DESCULPE-ME PELO 2º TPC... eh q eu pensei q o primeiro nao tinha ido... sinto muito :/

 

OBS: VISUAL BASIC

 

:lol::segredo::sarcastico::inveja:

Link para o comentário
Compartilhar em outros sites

Se tratando de .net ( dot net ), procure e estude sobre a utilização dos componentes DATASET e DATAGRIDVIEW, há video aulas no youtube que ensinam a usar os mesmos com C#, mas em .net é tudo parecido.

 

Só não sei como fazer com conexão entre servidores online, mas, se tratando de pequenos banco de dados, um download com verificação de atualização fica facil ( um metodo alternativo =] )...

 

flw, abraços

Link para o comentário
Compartilhar em outros sites

DragonBoss

 

Eu nao entendi o q vc quis dizer... o q eu quero eh q eu possa adc um usuario normalmente...

eu ja fiz vaaaaaaaaaarios sistemas de login... mas nenhum me alegrou.. pois... eu n podia deletar ou adicionar um novo usuario (sem q o usuario precisasse baixar dnv para adicionar) :/

Link para o comentário
Compartilhar em outros sites

Por exemplo... eu quero criar uma conexao com Mysql... q somente eu os cadastrasse... e um sistema de login.. q checasse se esses usuarios existissem e o login seria acc... se n existisse... aparecia a mensagem.. tendeu?

Link para o comentário
Compartilhar em outros sites

eh visual Basic 2008

eu e meu amigo estamos criando um programinha akie... e eu n sei como coocar o sistema de login... q apenas eu poça adc os membros...

PS: eu tenho Host... com conexao Mysql... posso criar banco de dados.. e etc

mas.... eu n sei mexer direito... iniciante

:/

penso em coisas grandes

sahuauhsa

:D

obrigado :D

Link para o comentário
Compartilhar em outros sites

Uma vez eu fiz um sistema de autenticação extremamente simples.

Você pode encryptar os dados de login e fazer um script php no seu webhost que faz a autenticação com os dados que o programa envia ao host.

Não recomendo fazer conexão com mysql usando o cliente(programa) caso tenha que passar a senha do host para conectar ao mysql. Dá pra decompilar esses programas fácil ou usar wireshark para interceptar os dados caso eles não estejam encryptados.

Link para o comentário
Compartilhar em outros sites

Vllw mano... mas como funciona? por ex.. uma pessoa baixa o prog completo.. ai..

eu adc o login e senha depois q ele baixou.. ele tera q baixa denovo?

poderia me falar como vc fez? Obrigado :D

 

ngm responde:/

Link para o comentário
Compartilhar em outros sites

eu quero respostas :(

 

mas eu nao manjo... nao sei como cryptografar... nao sei como chamar o arquivo php pro form..

 

Respondido novamente via MP, já disse que não vou passar códigos.

Raciocine, aprenda, leia e depois tente novamente.

Assim você não vai estar só aprendendo a fazer um sistema de login, mas sim aprendendo a programar.

Link para o comentário
Compartilhar em outros sites

Você fala criar um sistema de login com PHP e MySQL

se for isso aqui estar

 

É recomendável que você já tenha um conhecimento prévio de HTML e, se possível, PHP e MySQL para tornar as coisas mais fáceis.

 

Nosso sistema será bem simples: um arquivo chamado seguranca.php, que deverá ser incluído no topo do seu site (em todas as páginas) e que faz a conexão com o banco de dados e que possui algumas funções usadas para redirecionar o visitante para o formulário de login (login.php) caso ele não esteja logado.

 

Vamos ao trabalho:

 

O que iremos definir primeiro é a tabela usada para armazenar os usuários do sistema:

 

1

DROP TABLE IF EXISTS `usuarios`;

2

CREATE TABLE IF NOT EXISTS `usuarios` (

3

`id` int(10) unsigned NOT NULL AUTO_INCREMENT,

4

`nome` varchar(100) NOT NULL,

5

`usuario` varchar(50) NOT NULL,

6

`senha` varchar(50) NOT NULL,

7

PRIMARY KEY (`id`),

8

UNIQUE KEY `usuario` (`usuario`)

9

) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

 

Execute esse bloco SQL no seu banco de dados para criar a tabela usada pelo sistema.

 

Depois disso, vamos ao formulário de login que você colocará dentro de um arquivo chamado login.php:

 

1

<form method="post" action="valida.php">

2

<label>Usuário</label>

3

<input type="text" name="usuario" maxlength="50" />

4

 

5

<label>Senha</label>

6

<input type="password" name="senha" maxlength="50" />

7

 

8

<input type="submit" value="Entrar" />

9

</form>

 

Esse formulário, com apenas dois campos, manda pra página valida.php, que é um pequeno PHP que receberá os dados enviados pelo formulário, fará a validação deles e mandará o visitante ou pra página interna (index.php) ou de volta pra página de login (login.php).

 

Esse é o codigo fonte do arquivo valida.php:

 

01

// Inclui o arquivo com o sistema de segurança

02

include("seguranca.php");

03

 

04

// Verifica se um formulário foi enviado

05

if ($_SERVER['REQUEST_METHOD'] == 'POST') {

06

// Salva duas variáveis com o que foi digitado no formulário

07

// Detalhe: faz uma verificação com isset() pra saber se o campo foi preenchido

08

$usuario = (isset($_POST['usuario'])) ? $_POST['usuario'] : '';

09

$senha = (isset($_POST['senha'])) ? $_POST['senha'] : '';

10

 

11

// Utiliza uma função criada no seguranca.php pra validar os dados digitados

12

if (validaUsuario($usuario, $senha) == true) {

13

// O usuário e a senha digitados foram validados, manda pra página interna

14

header("Location: index.php");

15

} else {

16

// O usuário e/ou a senha são inválidos, manda de volta pro form de login

17

// Para alterar o endereço da página de login, verifique o arquivo seguranca.php

18

expulsaVisitante();

19

}

20

}

 

A estrutura do seu site, até esse ponto, deve estar dessa forma:

 

../pasta_do_seu_site/index.php » Página intera a ser protegida

../pasta_do_seu_site/login.php » Página com o formulário de login

../pasta_do_seu_site/valida.php » Página que faz a validação dos dados do formulário

 

Agora vamos criar o arquivo seguranca.php na mesma pasta dos demais arquivos:

001

/**

002

* Sistema de segurança com acesso restrito

003

*

004

* Usado para restringir o acesso de certas páginas do seu site

005

*

006

* @author Thiago Belem <[email protected]>

007

* @link

É necessário se cadastrar para acessar o conteúdo.

008

*

009

* @version 1.0

010

* @package SistemaSeguranca

011

*/

012

 

013

// Configurações do Script

014

// ==============================

015

$_SG['conectaServidor'] = true; // Abre uma conexão com o servidor MySQL?

016

$_SG['abreSessao'] = true; // Inicia a sessão com um session_start()?

017

 

018

$_SG['caseSensitive'] = false; // Usar case-sensitive? Onde 'thiago' é diferente de 'THIAGO'

019

 

020

$_SG['validaSempre'] = true; // Deseja validar o usuário e a senha a cada carregamento de página?

021

// Evita que, ao mudar os dados do usuário no banco de dado o mesmo contiue logado.

022

 

023

$_SG['servidor'] = 'localhost'; // Servidor MySQL

024

$_SG['usuario'] = 'root'; // Usuário MySQL

025

$_SG['senha'] = ''; // Senha MySQL

026

$_SG['banco'] = 'test'; // Banco de dados MySQL

027

 

028

$_SG['paginaLogin'] = 'login.php'; // Página de login

029

 

030

$_SG['tabela'] = 'usuarios'; // Nome da tabela onde os usuários são salvos

031

// ==============================

032

 

033

// ======================================

034

// ~ Não edite a partir deste ponto ~

035

// ======================================

036

 

037

// Verifica se precisa fazer a conexão com o MySQL

038

if ($_SG['conectaServidor'] == true) {

039

$_SG['link'] = mysql_connect($_SG['servidor'], $_SG['usuario'], $_SG['senha']) or die("MySQL: Não foi possível conectar-se ao servidor [".$_SG['servidor']."].");

040

mysql_select_db($_SG['banco'], $_SG['link']) or die("MySQL: Não foi possível conectar-se ao banco de dados [".$_SG['banco']."].");

041

}

042

 

043

// Verifica se precisa iniciar a sessão

044

if ($_SG['abreSessao'] == true) {

045

session_start();

046

}

047

 

048

/**

049

* Função que valida um usuário e senha

050

*

051

* @param string $usuario - O usuário a ser validado

052

* @param string $senha - A senha a ser validada

053

*

054

* @return bool - Se o usuário foi validado ou não (true/false)

055

*/

056

function validaUsuario($usuario, $senha) {

057

global $_SG;

058

 

059

$cS = ($_SG['caseSensitive']) ? 'BINARY' : '';

060

 

061

// Usa a função addslashes para escapar as aspas

062

$nusuario = addslashes($usuario);

063

$nsenha = addslashes($senha);

064

 

065

// Monta uma consulta SQL (query) para procurar um usuário

066

$sql = "SELECT `id`, `nome` FROM `".$_SG['tabela']."` WHERE ".$cS." `usuario` = '".$nusuario."' AND ".$cS." `senha` = '".$nsenha."' LIMIT 1";

067

$query = mysql_query($sql);

068

$resultado = mysql_fetch_assoc($query);

069

 

070

// Verifica se encontrou algum registro

071

if (empty($resultado)) {

072

// Nenhum registro foi encontrado => o usuário é inválido

073

return false;

074

 

075

} else {

076

// O registro foi encontrado => o usuário é valido

077

 

078

// Definimos dois valores na sessão com os dados do usuário

079

$_SESSION['usuarioID'] = $resultado['id']; // Pega o valor da coluna 'id do registro encontrado no MySQL

080

$_SESSION['usuarioNome'] = $resultado['nome']; // Pega o valor da coluna 'nome' do registro encontrado no MySQL

081

 

082

// Verifica a opção se sempre validar o login

083

if ($_SG['validaSempre'] == true) {

084

// Definimos dois valores na sessão com os dados do login

085

$_SESSION['usuarioLogin'] = $usuario;

086

$_SESSION['usuarioSenha'] = $senha;

087

}

088

 

089

return true;

090

}

091

}

092

 

093

/**

094

* Função que protege uma página

095

*/

096

function protegePagina() {

097

global $_SG;

098

 

099

if (!isset($_SESSION['usuarioID']) OR !isset($_SESSION['usuarioNome'])) {

100

// Não há usuário logado, manda pra página de login

101

expulsaVisitante();

102

} else if (!isset($_SESSION['usuarioID']) OR !isset($_SESSION['usuarioNome'])) {

103

// Há usuário logado, verifica se precisa validar o login novamente

104

if ($_SG['validaSempre'] == true) {

105

// Verifica se os dados salvos na sessão batem com os dados do banco de dados

106

if (!validaUsuario($_SESSION['usuarioLogin'], $_SESSION['usuarioSenha'])) {

107

// Os dados não batem, manda pra tela de login

108

expulsaVisitante();

109

}

110

}

111

}

112

}

113

 

114

/**

115

* Função para expulsar um visitante

116

*/

117

function expulsaVisitante() {

118

global $_SG;

119

 

120

// Remove as variáveis da sessão (caso elas existam)

121

unset($_SESSION['usuarioID'], $_SESSION['usuarioNome'], $_SESSION['usuarioLogin'], $_SESSION['usuarioSenha']);

122

 

123

// Manda pra tela de login

124

header("Location: ".$_SG['paginaLogin']);

125

}

 

Não vou poder explicar todas as funções do arquivo pq é muita coisa.. Mas todas elas estão devidamente comentadas e documentadas… É só olhar.

 

Com esse arquivos nós já nos conectamos automaticamente ao servidor MySQL, então se você usar outra forma pra fazer a conexão, vá na parte de configurações do seguranca.php e defina a variável $_SG['conectaServidor'] pra falso (false). O mesmo acontece pra sessão com a variável $_SG['abreSessao'].

 

Agora é só incluir essas linhas no topo de cada arquivo que deverá ter o acesso restrito:

1

include("seguranca.php"); // Inclui o arquivo com o sistema de segurança

2

protegePagina(); // Chama a função que protege a página

 

Quando vocês quiserem exibir o nome do usuário logado, é só fazer isso:

1

echo "Olá, " . $_SESSION['usuarioNome'];

 

Vlw ai cara

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.