Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Salvatore

Problema com identificação de senha em PHP Criptografada

Recommended Posts

Estou fazendo um sistema de login porém ele não consegue identificar a senha criptografada 

 

Como a senha e definida? a senha e definida a partir de um sistema em java(não feito por mim) então não posso editar

 

Exemplo de senha/Criptografada no bancos de dados

12345m = $MD5$1a7b45ec4c0661b31f3e0cf2f2738d10@wbfqs/so33fBHLREhffQ7w==

 

no sistema em java ela e reconhecida como 12345m

mas no meu sistema em php n

alguém ajuda eu 

 

Meu codigo

<?php 

include("admin/bd/config.php");

if (isset($_POST['Usuario']) && isset($_POST['Senha'])) {
    $Usuario = $_POST['Usuario'];
    $Senha = md5($_POST['Senha']);
    $get = mysqli_query($con,"SELECT * FROM nlogin WHERE Usuario = '$Usuario'") or die(mysqli_error(con));
    $num = mysqli_num_rows($get);

    if ($num == 1) {

        while ($percorrer = mysqli_fetch_assoc($get)) {

            if (password_verify ( $_POST['Senha'] , $percorrer['Senha'] )){

                $adm = $percorrer['adm'];
                $Usuario = $percorrer['Usuario'];
                session_start();
                if ($adm == 1) {
                    $_SESSION['adm'] = $Usuario;
                    header("Location: admin/index.php");
                }else{
                    $_SESSION['nor'] = $username;
                    header("Location: index.php");
                }

            }

        }

    }


}

Ele apenas fica travado na pagina vlogin.php e falando que a conexão com o bancos de dados foi bem sucedida(seta por mim) e não faz nada a mais, nem redireciona

Compartilhar este post


Link para o post
Compartilhar em outros sites

Possivelmente a senha não está batendo!

 

Ao final do laço de if (password_verify......

Coloque uma condição

} else {
    echo "A senha informada não confere";
}

Acredito que o caso seja que a forma que cria a criptografia da senha por JAVA que está o problema.

Porque só não usa o php mesmo?

password_hash('12345m', PASSWORD_DEFAULT);

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
4 horas atrás, Omar~ disse:

Possivelmente a senha não está batendo!

 

Ao final do laço de if (password_verify......

Coloque uma condição


} else {
    echo "A senha informada não confere";
}

Acredito que o caso seja que a forma que cria a criptografia da senha por JAVA que está o problema.

Porque só não usa o php mesmo?

password_hash('12345m', PASSWORD_DEFAULT);

 

nenhum erro e exibido, não posso usar PHP, pois o local que está rodando o java so aceita java e preciso usar java

Compartilhar este post


Link para o post
Compartilhar em outros sites
7 horas atrás, Salvatore disse:

Estou fazendo um sistema de login porém ele não consegue identificar a senha criptografada 

 

Como a senha e definida? a senha e definida a partir de um sistema em java(não feito por mim) então não posso editar

 

Exemplo de senha/Criptografada no bancos de dados

12345m = $MD5$1a7b45ec4c0661b31f3e0cf2f2738d10@wbfqs/so33fBHLREhffQ7w==

 

no sistema em java ela e reconhecida como 12345m

mas no meu sistema em php n

alguém ajuda eu 

 

Meu codigo


<?php 

include("admin/bd/config.php");

if (isset($_POST['Usuario']) && isset($_POST['Senha'])) {
    $Usuario = $_POST['Usuario'];
    $Senha = md5($_POST['Senha']);
    $get = mysqli_query($con,"SELECT * FROM nlogin WHERE Usuario = '$Usuario'") or die(mysqli_error(con));
    $num = mysqli_num_rows($get);

    if ($num == 1) {

        while ($percorrer = mysqli_fetch_assoc($get)) {

            if (password_verify ( $_POST['Senha'] , $percorrer['Senha'] )){

                $adm = $percorrer['adm'];
                $Usuario = $percorrer['Usuario'];
                session_start();
                if ($adm == 1) {
                    $_SESSION['adm'] = $Usuario;
                    header("Location: admin/index.php");
                }else{
                    $_SESSION['nor'] = $username;
                    header("Location: index.php");
                }

            }

        }

    }


}

Ele apenas fica travado na pagina vlogin.php e falando que a conexão com o bancos de dados foi bem sucedida(seta por mim) e não faz nada a mais, nem redireciona

Isso aqui não seria PHP

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salvatore

O que está errado no seu código é que você recebe sua SENHA via $_POST e move esse valor recebido criptografando com MD5, mas na hora que você vai comparar, no seu IF percorre senha você esta usando o $_POST.

 

Ou sejá você lê sua tabela que tem o conteudo CRIPTOGRAFADO com MD5 mas o seu BATIMENTO DE CONTEUDO você não esta usando a variavel criptografada e sim a variavel que você revebe via $_POST.

 

AQUI:

if (password_verify ( $_POST['Senha'] , $percorrer['Senha'] )){

Experimente mudar para:

if (password_verify ($Senha, $percorrer['Senha'] )){

que é a variável com formato criptografado que você definiu:
$Senha = md5($_POST['Senha']);

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

 

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
21 minutos atrás, Felipe Guedes Coutinho disse:

Salvatore

O que está errado no seu código é que você recebe sua SENHA via $_POST e move esse valor recebido criptografando com MD5, mas na hora que você vai comparar, no seu IF percorre senha você esta usando o $_POST.

 

Ou sejá você lê sua tabela que tem o conteudo CRIPTOGRAFADO com MD5 mas o seu BATIMENTO DE CONTEUDO você não esta usando a variavel criptografada e sim a variavel que você revebe via $_POST.

 

AQUI:


if (password_verify ( $_POST['Senha'] , $percorrer['Senha'] )){

Experimente mudar para:


if (password_verify ($Senha, $percorrer['Senha'] )){

que é a variável com formato criptografado que você definiu:
$Senha = md5($_POST['Senha']);

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

 

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

A pagina fica igual antes, em branco so aparece a mensagem do banco(config.php) de dados avisando que está conectado no banco, não redireciona e nem nada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salvatore

Experimente utilizar o código abaixo, caso não funcione MOSTRE um PRINT com a URL (LINK) redirecionado pelo código, pois assim podemos analisar qual é o motivo do erro.

<?php 
include("admin/bd/config.php");

if (!empty($_POST['Usuario']) and !empty($_POST['Senha'])) {
    $sql = mysql_query("SELECT * FROM nlogin WHERE Usuario = '$_POST['Usuario']' and Senha = 'md5($_POST['Senha']'");
	$select = mysql_query($sql);
    if ($result = mysql_fetch_assoc($select)) {
        session_start();
        if ($result['Senha'] == '1') {
            $_SESSION['adm'] = $result['Usuario'];
            $_SESSION['nor'] = "";
            header("Location: admin/index.php?nome=".$_SESSION['adm']);
            exit();
        } else {
            $_SESSION['adm'] = "";
            $_SESSION['nor'] = $_POST['Usuario'];
            header("Location: index.php?nome=".$_SESSION['nor']);
            exit();
        }
    } else {
        session_destroy();
        header("Location: index.php?ERRO=Usuario_Nao_Encontrado");
        exit();
    }
} else {
    header("Location: index.php?ERRO=Nome_Senha_Em_Brancos");
    exit();
}

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

 

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, Felipe Guedes Coutinho disse:

Salvatore

Experimente utilizar o código abaixo, caso não funcione MOSTRE um PRINT com a URL (LINK) redirecionado pelo código, pois assim podemos analisar qual é o motivo do erro.


<?php 
include("admin/bd/config.php");

if (!empty($_POST['Usuario']) and !empty($_POST['Senha'])) {
    $sql = mysql_query("SELECT * FROM nlogin WHERE Usuario = '$_POST['Usuario']' and Senha = 'md5($_POST['Senha']'");
	$select = mysql_query($sql);
    if ($result = mysql_fetch_assoc($select)) {
        session_start();
        if ($result['Senha'] == '1') {
            $_SESSION['adm'] = $result['Usuario'];
            $_SESSION['nor'] = "";
            header("Location: admin/index.php?nome=".$_SESSION['adm']);
            exit();
        } else {
            $_SESSION['adm'] = "";
            $_SESSION['nor'] = $_POST['Usuario'];
            header("Location: index.php?nome=".$_SESSION['nor']);
            exit();
        }
    } else {
        session_destroy();
        header("Location: index.php?ERRO=Usuario_Nao_Encontrado");
        exit();
    }
} else {
    header("Location: index.php?ERRO=Nome_Senha_Em_Brancos");
    exit();
}

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

 

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:\xampp\htdocs\200cono\vlogin.php on line 5

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salvatore

Veja agora se funciona:

 

<?php 
include("admin/bd/config.php");
$usuario = mysql_real_escape_string(trim($_POST['Usuario']));
$senha = mysql_real_escape_string(trim($_POST['Senha']));
if (!empty($_POST['Usuario']) and !empty($_POST['Senha'])) {
    $sql = mysql_query("SELECT * FROM nlogin WHERE Usuario = '".$usuario."' and Senha = MD5('".$senha."')";
    $select = mysql_query($sql);
    if ($result = mysql_fetch_assoc($select)) {
        session_start();
        if ($result['Senha'] == '1') {
            $_SESSION['adm'] = $result['Usuario'];
            header("Location: admin/index.php?nome=".$_SESSION['adm']);
            exit();
        } else {
            $_SESSION['nor'] = $_POST['Usuario'];
            header("Location: index.php?nome=".$_SESSION['nor']);
            exit();
        }
    }
}

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

 

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, Felipe Guedes Coutinho disse:

Salvatore

Veja agora se funciona:

 


<?php 
include("admin/bd/config.php");
$usuario = mysql_real_escape_string(trim($_POST['Usuario']));
$senha = mysql_real_escape_string(trim($_POST['Senha']));
if (!empty($_POST['Usuario']) and !empty($_POST['Senha'])) {
    $sql = mysql_query("SELECT * FROM nlogin WHERE Usuario = WHERE nm_login = '".$usuario."' and cd_pass = MD5('".$senha."')";
	$select = mysql_query($sql);
    if ($result = mysql_fetch_assoc($select)) {
        session_start();
        if ($result['Senha'] == '1') {
            $_SESSION['adm'] = $result['Usuario'];
            header("Location: admin/index.php?nome=".$_SESSION['adm']);
            exit();
        } else {
            $_SESSION['nor'] = $_POST['Usuario'];
            header("Location: index.php?nome=".$_SESSION['nor']);
            exit();
        }
    }
}

Se a minha resposta for útil não esqueça de agradecer e votar positivo.

 

Espero ter ajudado de alguma forma.

 

Att
Felipe Guedes Coutinho

Parse error: syntax error, unexpected ';', expecting ',' or ')' in C:\xampp\htdocs\200cono\vlogin.php on line 6

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você copiou o código errado.

 

Verifique os campos do seu WHERE, pois estou pegando de um exemplo que uso no meu projeto.

Ajustes os campos de comparação.

 

Ou atualize a página e pegue denovo pois editei o código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos acabar com isso por partes!

 

1º - A função password_hash () suporta BCrypt,

onde, creio que o mesmo NÃO suporte MD5...

 

 

2º - Existe um fragmento em sua HASH que
contém a senha criptografada em MD5, segue
abaixo:

 

HASH ATUAL
$MD5$1a7b45ec4c0661b31f3e0cf2f2738d10@wbfqs/so33fBHLREhffQ7w==

 

FRAGMENTO COM SENHA EM MD5
1a7b45ec4c0661b31f3e0cf2f2738d10

 

 

15 horas atrás, Omar~ disse:

Acredito que o caso seja que a forma que cria a criptografia da senha por JAVA que está o problema.


 

3º - Mas como verificar o mesmo? segue
então um exemplo...

CÓDIGO

<?php

$percorrer [ 'Senha' ] =
	'$MD5$1a7b45ec4c0661b31f3e0cf2f2738d10@wbfqs/so33fBHLREhffQ7w=='
;

$_POST = array (
	'Usuario' => 'Admin',
	'Senha' => '12345m'
);

# VERIFICA O POST
if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {

	# CONVERTE A SENHA PARA MD5
	$senha = md5 ( trim ( $_POST [ 'Senha' ] ) );

	# VERIFICA SENHA COM A HASH
	if ( preg_match ( '/(\$[\w]+\$)([\w]+)(\@[\w\/=._]+)/', $percorrer [ 'Senha' ], $matches ) ) {

		# VERIFICA A SENHA INFORMADA COM
		# A EXPRESSÂO
		if ( $matches [ 2 ] === $senha ) {

			echo "Senha Válida!";

		} else {

			echo "Senha Inválida";

		}
	}

} else {

	echo "Error, Preencha todos os campos!";

}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
4 horas atrás, ShadowDLL disse:

Vamos acabar com isso por partes!

 

1º - A função password_hash () suporta BCrypt,

onde, creio que o mesmo NÃO suporte MD5...

 

 

2º - Existe um fragmento em sua HASH que
contém a senha criptografada em MD5, segue
abaixo:

 

HASH ATUAL
$MD5$1a7b45ec4c0661b31f3e0cf2f2738d10@wbfqs/so33fBHLREhffQ7w==

 

FRAGMENTO COM SENHA EM MD5
1a7b45ec4c0661b31f3e0cf2f2738d10

 

 


 

3º - Mas como verificar o mesmo? segue
então um exemplo...

CÓDIGO


<?php

$percorrer [ 'Senha' ] =
	'$MD5$1a7b45ec4c0661b31f3e0cf2f2738d10@wbfqs/so33fBHLREhffQ7w=='
;

$_POST = array (
	'Usuario' => 'Admin',
	'Senha' => '12345m'
);

# VERIFICA O POST
if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {

	# CONVERTE A SENHA PARA MD5
	$senha = md5 ( trim ( $_POST [ 'Senha' ] ) );

	# VERIFICA SENHA COM A HASH
	if ( preg_match ( '/(\$[\w]+\$)([\w]+)(\@[\w\/=._]+)/', $percorrer [ 'Senha' ], $matches ) ) {

		# VERIFICA A SENHA INFORMADA COM
		# A EXPRESSÂO
		if ( $matches [ 2 ] === $senha ) {

			echo "Senha Válida!";

		} else {

			echo "Senha Inválida";

		}
	}

} else {

	echo "Error, Preencha todos os campos!";

}

 

Sou bastante iniciante no PHP, queria saber como eu faço pra ele puxa as informação do bancos de dados e usa este codigo

Compartilhar este post


Link para o post
Compartilhar em outros sites
8 horas atrás, Salvatore disse:

Sou bastante iniciante no PHP, queria saber como eu faço pra ele puxa as informação do bancos de dados e usa este codigo


Segue código abaixo:

<?php
session_start ();

include ( 'admin/bd/config.php' );

if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {
	$Usuario = $_POST [ 'Usuario' ];
	$Senha = md5 ( $_POST [ 'Senha' ] );

	$get = mysqli_query ( $con,"SELECT * FROM nlogin WHERE Usuario = '$Usuario'" ) or die ( mysqli_error ( con ) );
	$num = mysqli_num_rows ( $get );

	if ( $num !== 0 ) {

		while ( $percorrer = mysqli_fetch_assoc ( $get ) ) {

			if ( preg_match ( '/(\$[\w]+\$)([\w]+)(\@[\w\/=._]+)/', $percorrer [ 'Senha' ], $matches ) ) {

				$adm = $percorrer [ 'adm' ];
				$Usuario = $percorrer [ 'Usuario' ];

				if ( $matches [ 2 ] === $Senha ) {

					$_SESSION['adm'] = $Usuario;
					header("Location: admin/index.php");

				} else {

					$_SESSION['nor'] = $username;
					header("Location: index.php");

				}

			}

		}

	} else {

		echo "Error, Verifique os dados inseridos!";

	}
} else {

	echo "Error, Preencha todos os campos!";

}

 

 

Não realizei testes no mesmo, então, sendo assim,
qualquer erro avisar!

Compartilhar este post


Link para o post
Compartilhar em outros sites
10 horas atrás, ShadowDLL disse:


Segue código abaixo:


<?php
session_start ();

include ( 'admin/bd/config.php' );

if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {
	$Usuario = $_POST [ 'Usuario' ];
	$Senha = md5 ( $_POST [ 'Senha' ] );

	$get = mysqli_query ( $con,"SELECT * FROM nlogin WHERE Usuario = '$Usuario'" ) or die ( mysqli_error ( con ) );
	$num = mysqli_num_rows ( $get );

	if ( $num !== 0 ) {

		while ( $percorrer = mysqli_fetch_assoc ( $get ) ) {

			if ( preg_match ( '/(\$[\w]+\$)([\w]+)(\@[\w\/=._]+)/', $percorrer [ 'Senha' ], $matches ) ) {

				$adm = $percorrer [ 'adm' ];
				$Usuario = $percorrer [ 'Usuario' ];

				if ( $matches [ 2 ] === $Senha ) {

					$_SESSION['adm'] = $Usuario;
					header("Location: admin/index.php");

				} else {

					$_SESSION['nor'] = $username;
					header("Location: index.php");

				}

			}

		}

	} else {

		echo "Error, Verifique os dados inseridos!";

	}
} else {

	echo "Error, Preencha todos os campos!";

}

 

 

Não realizei testes no mesmo, então, sendo assim,
qualquer erro avisar!

Parse error: syntax error, unexpected 'if' (T_IF) in C:\xampp\htdocs\200cono\vlogin.php on line 6

 

10 horas atrás, ShadowDLL disse:

if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, Salvatore disse:

Parse error: syntax error, unexpected 'if' (T_IF) in C:\xampp\htdocs\200cono\vlogin.php on line 6

 

 Por algum motivo existia caracteres "invisíveis"
no código '-'

 

SEGUE ANEXO

image.png.77e2bc4ea5dd4b36a68bdf2c6048547d.png

  

NOVO CÓDIGO

<?php
session_start ();

include ( 'admin/db/config.php' );

if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {

	$Usuario = $_POST [ 'Usuario' ];
	$Senha = md5 ( trim ( $_POST [ 'Senha' ] ) );

	$get = mysqli_query ( $con, "SELECT * FROM nlogin WHERE Usuario = '$Usuario'" ) or die ( mysql_error ( $con ) );
	$num = mysqli_num_rows ( $get );


	if ( $num !== 0 ) {

		while ( $percorrer = mysqli_fetch ( $get ) ) {

			if ( preg_match ( '/(\$[\w]+\$)([\w]+)(\@[\w\/=._]+)/', $percorrer [ 'Senha' ], $matches ) ) {

				$adm = $percorrer [ 'adm' ];
				$Usuario = $percorrer [ 'Usuario' ];

				if ( $matches [ 2 ] === $Senha ) {

					$_SESSION [ 'adm' ] = $Usuario;
					header ( 'Location: admin/index.php' );

				} else {

					$_SESSION [ 'nor' ] = $Usuario;
					header ( 'Location: index.php' );

				}

			} else {

				echo "Error, Formato de senha incorreta!";

			}

		}

	} else {

		echo "Error, Verifique os dados inseridos!";

	}

} else {

	echo "Error, Preencha todos os campos!";

}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 horas atrás, ShadowDLL disse:

 Por algum motivo existia caracteres "invisíveis"
no código '-'

 

SEGUE ANEXO

image.png.77e2bc4ea5dd4b36a68bdf2c6048547d.png

  

NOVO CÓDIGO


<?php
session_start ();

include ( 'admin/db/config.php' );

if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {

	$Usuario = $_POST [ 'Usuario' ];
	$Senha = md5 ( trim ( $_POST [ 'Senha' ] ) );

	$get = mysqli_query ( $con, "SELECT * FROM nlogin WHERE Usuario = '$Usuario'" ) or die ( mysql_error ( $con ) );
	$num = mysqli_num_rows ( $get );


	if ( $num !== 0 ) {

		while ( $percorrer = mysqli_fetch ( $get ) ) {

			if ( preg_match ( '/(\$[\w]+\$)([\w]+)(\@[\w\/=._]+)/', $percorrer [ 'Senha' ], $matches ) ) {

				$adm = $percorrer [ 'adm' ];
				$Usuario = $percorrer [ 'Usuario' ];

				if ( $matches [ 2 ] === $Senha ) {

					$_SESSION [ 'adm' ] = $Usuario;
					header ( 'Location: admin/index.php' );

				} else {

					$_SESSION [ 'nor' ] = $Usuario;
					header ( 'Location: index.php' );

				}

			} else {

				echo "Error, Formato de senha incorreta!";

			}

		}

	} else {

		echo "Error, Verifique os dados inseridos!";

	}

} else {

	echo "Error, Preencha todos os campos!";

}

 

: Uncaught Error: Call to undefined function mysqli_fetch() in C:\xampp\htdocs\200cono\vlogin.php:17 Stack trace: #0 {main} thrown in C:\xampp\htdocs\200cono\vlogin.php on line 17

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

 

 

Olha desta forma aqui eu consegui fazer o login usando este codigo aqui

Apenas mudei este

if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {

	$Usuario = $_POST [ 'Usuario' ];
	$Senha = md5 ( trim ( $_POST [ 'Senha' ] ) );

	$get = mysqli_query ( $con, "SELECT * FROM nlogin WHERE Usuario = '$Usuario'" ) or die ( mysql_error ( $con ) );

 

 

Para este aqui

if ( isset ( $_POST [ 'usuario' ] ) && isset ( $_POST [ 'senha' ] ) ) {

	$usuario = $_POST [ 'usuario' ];
	$senha = md5 ( trim ( $_POST [ 'senha' ] ) );

	$get = mysqli_query ( $con, "SELECT * FROM nlogin WHERE usuario = '$usuario' AND senha = '$senha'" ) or die ( mysqli_connect_error ( $con ) );

Este 

while ( $percorrer = mysqli_fetch ( $get ) ) {

 

Por este

while ( $percorrer = mysqli_fetch_array ( $get ) ) {

 

 

 

 

<?php
session_start ();

include ( 'admin/db/config.php' );

if ( isset ( $_POST [ 'usuario' ] ) && isset ( $_POST [ 'senha' ] ) ) {

	$usuario = $_POST [ 'usuario' ];
	$senha = md5 ( trim ( $_POST [ 'senha' ] ) );

	$get = mysqli_query ( $con, "SELECT * FROM nlogin WHERE usuario = '$usuario' AND senha = '$senha'" ) or die ( mysqli_connect_error ( $con ) );
	$num = mysqli_num_rows ( $get );


	if ( $num !== 0 ) {

		while ( $percorrer = mysqli_fetch_array ( $get ) ) {

			if ( preg_match ( '/(\$[\w]+\$)([\w]+)(\@[\w\/=._]+)/', $percorrer [ 'senha' ], $matches ) ) {

				$adm = $percorrer [ 'adm' ];
				$usuario = $percorrer [ 'usuario' ];

				if ( $matches [ 2 ] === $senha ) {

					$_SESSION [ 'adm' ] = $usuario;
					header ( 'Location: admin/index.php' );

				} else {

					$_SESSION [ 'nor' ] = $usuario;
					header ( 'Location: index.php' );

				}

			} else {

				echo "Error, Formato de senha incorreta!";

			}

		}

	} else {

		echo "Error, Verifique os dados inseridos!";

	}

} else {

	echo "Error, Preencha todos os campos!";

}

?>

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 10/08/2019 at 01:52, Jack Oliveira disse:

 

 

 

Olha desta forma aqui eu consegui fazer o login usando este codigo aqui

Apenas mudei este


if ( isset ( $_POST [ 'Usuario' ] ) && isset ( $_POST [ 'Senha' ] ) ) {

	$Usuario = $_POST [ 'Usuario' ];
	$Senha = md5 ( trim ( $_POST [ 'Senha' ] ) );

	$get = mysqli_query ( $con, "SELECT * FROM nlogin WHERE Usuario = '$Usuario'" ) or die ( mysql_error ( $con ) );

 

 

Para este aqui


if ( isset ( $_POST [ 'usuario' ] ) && isset ( $_POST [ 'senha' ] ) ) {

	$usuario = $_POST [ 'usuario' ];
	$senha = md5 ( trim ( $_POST [ 'senha' ] ) );

	$get = mysqli_query ( $con, "SELECT * FROM nlogin WHERE usuario = '$usuario' AND senha = '$senha'" ) or die ( mysqli_connect_error ( $con ) );

Este 


while ( $percorrer = mysqli_fetch ( $get ) ) {

 

Por este


while ( $percorrer = mysqli_fetch_array ( $get ) ) {

 

 

 

 


<?php
session_start ();

include ( 'admin/db/config.php' );

if ( isset ( $_POST [ 'usuario' ] ) && isset ( $_POST [ 'senha' ] ) ) {

	$usuario = $_POST [ 'usuario' ];
	$senha = md5 ( trim ( $_POST [ 'senha' ] ) );

	$get = mysqli_query ( $con, "SELECT * FROM nlogin WHERE usuario = '$usuario' AND senha = '$senha'" ) or die ( mysqli_connect_error ( $con ) );
	$num = mysqli_num_rows ( $get );


	if ( $num !== 0 ) {

		while ( $percorrer = mysqli_fetch_array ( $get ) ) {

			if ( preg_match ( '/(\$[\w]+\$)([\w]+)(\@[\w\/=._]+)/', $percorrer [ 'senha' ], $matches ) ) {

				$adm = $percorrer [ 'adm' ];
				$usuario = $percorrer [ 'usuario' ];

				if ( $matches [ 2 ] === $senha ) {

					$_SESSION [ 'adm' ] = $usuario;
					header ( 'Location: admin/index.php' );

				} else {

					$_SESSION [ 'nor' ] = $usuario;
					header ( 'Location: index.php' );

				}

			} else {

				echo "Error, Formato de senha incorreta!";

			}

		}

	} else {

		echo "Error, Verifique os dados inseridos!";

	}

} else {

	echo "Error, Preencha todos os campos!";

}

?>

 

 

eu erro, pedindo pra preencher a senha, sendo que a mesma está correta

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos do grupo, saudações e um feliz 2025.
       
      Estou com uma pequena dúvida referente a Teclas de Atalho.

      Quando o Caps Lock está ativado o Comando da Tecla de Atalho não funciona.
      ou seja:
      se estiver para letra minúscula ====> funciona
      se estiver para letra maiúscula ====> não funciona
       
      Como consigo evitar essa falha, tanto para Letra Maiúscula quanto Minúscula ?

      o Código está assim:
      document.addEventListener( 'keydown', evt => { if (!evt.ctrlKey || evt.key !== 'r' ) return;// Não é Ctrl+r, portanto interrompemos o script evt.preventDefault(); });  
      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Por favor, poderiam me ajudar.

      Estou com a seguinte dúvida:
      --> como faço para para implementar o input código do produto, para quando o usuário digitar o ID o sistema espera de 1s a 2s, sem ter que pressionar a tecla ENTER.

      exemplo:
      código   ----   descrição
           1       -----   produto_A
       
      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Humildemente peço desculpa por postar uma dúvida que tenho.

      Preciso salvar no MySql, os seguinte Registro:

      1 - Principal
      ====> minha dúvida começa aqui
      ==========> como faço para o Sistema Contar Automaticamente o que estiver despois do 1.____?
      1.01 - Matriz
      1.01.0001 - Estoque
      1.01.0002 - Oficina
      etc

      2 - Secundário
      2.01 - Loja_1
      2.01.0001 - Caixa
      2.01.0002 - Recepção
      etc
       
      Resumindo seria como se fosse um Cadastro de PLANO de CONTAS CONTÁBEIL.

      Grato,


      Cesar









       
    • Por violin101
      Caros amigos, saudações.

      Por favor, me perdoa em recorrer a orientação dos amigos.

      Preciso fazer um Relatório onde o usuário pode Gerar uma Lista com prazo para vencimento de: 15 / 20/ 30 dias da data atual.

      Tem como montar uma SQL para o sistema fazer uma busca no MySql por período ou dias próximo ao vencimento ?

      Tentei fazer assim, mas o SQL me traz tudo:
      $query = "SELECT faturamento.*, DATE_ADD(faturamento.dataVencimento, INTERVAL 30 DAY), fornecedor.* FROM faturamento INNER JOIN fornecedor ON fornecedor.idfornecedor = faturamento.id_fornecedor WHERE faturamento.statusFatur = 1 ORDER BY faturamento.idFaturamento $ordenar ";  
      Grato,
       
      Cesar
       
       
       
       
    • Por violin101
      Caros amigos, saudações
       
      Por favor, me perdoa em recorrer a orientação dos amigos, tenho uma dúvida.
       
      Gostaria de uma rotina onde o Sistema possa acusar para o usuário antes dos 30 dias, grifar na Tabela o aviso de vencimento próximo, por exemplo:
       
      Data Atual: 15/11/2024
                                           Vencimento
      Fornecedor.....................Data.....................Valor
      Fornecedor_1...........01/12/2024..........R$ 120,00 <== grifar a linha de Laranja
      Fornecedor_1...........01/01/2025..........R$ 130,00
      Fornecedor_2...........15/12/2024..........R$ 200,00 <== grifar a linha de Amarelo
      Fornecedor_2...........15/01/2025..........R$ 230,00
      Fornecedor_3...........20/12/2024..........R$ 150,00
       
      Alguém tem alguma dica ou leitura sobre este assunto ?

      Grato,
       
      Cesar
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.