Jump to content
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

Share this post


Link to post
Share on other 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);

 

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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!";

}

 

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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!

Share this post


Link to post
Share on other 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' ] ) ) {

Share this post


Link to post
Share on other 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!";

}

 

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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!";

}

?>

 

 

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By anabeatrizzz
      2. Por que PHP é a mais utilizada em projetos? Explique.
       
      3. São 24 anos de desenvolvimento em PHP, o que faz ele durar tanto na área da programação? Explique.
       
      4. Você acredita que o PHP vai morrer ou não? Explique.
       
      5. Explique o que seria esta HHVM que as empresas utilizam.
       
      6. PHP tem a facilidade de criar APIs, quais seriam as vantagens na hora de desenvolver aplicativos para celular? Explique.
       
      7. Explique um pouco sobre o Laravel, Zend Framework, Sympony, lumen, codelgniter que foram surgindo ao decorrer dos anos.
       
      8. “O PHP veio da WEB e da WEB ele permanecerá”. O que essa frase significaria para você? Explique.
       
      9. Como funcionariam as comunidades em PHP? Por que existem tantas pessoas ainda usando a linguagem? Explique.
       
      10. O PHP vem se modernizando durante anos, quais seriam estas evoluções dele? Explique.
    • By fideles
      Mais uma vez venho aqui pedir ajuda a vocês.
       
      Tenho um formulario que criei aqui na empresa algo bem simples, somente para sair das planilhas de excel, que seria cadastro de funcionarios.
       
      Tem os campos, matricula, nome completo, unidade de trabalho, endereço e telefone de emergencia.
       
      A parte do formulario funciona, a gravação no BD tbm, listar as informações também, ai me perguntaram se era possível um auto preenchimento dos campos colocando somente a matricula do funcionario e respondi que eu não sei porque realmente não sei.
       
      A ajuda que eu preciso de vocês seria, é possível fazer isso ? Colocar a matricula e vir do banco e preencher os outros inputs? Se sim, é possível me derem um exemplo de como funciona e eu estudar o codigo e colocar nos outros inputs.
       
      Obrigado antecipadamente. 
       
    • By tetsuo
      Boas galera?
      Às vezes subo um projeto que, despercebidamente passa um arquivo com letra maiúscula/minúscula
      E dá trabalho pra descobrir que era somente e apenas isso.
       
      Como posso resolver isso?
      Uso rWindows 10.
      Mas a hospedagem é em linux.
       
      O Docker serviria pra me ajudar com essa questão?
       
    • By lUANZIKA3
      minha pagina contém uma table que
      exibe a ultima id da minha DB porém ela não fica ativa.
      a ultima id só é exibida se o form tiver sido enviado.
      ↓table aonde é exibida a Insert_id
      <table class="table table-dark" method="POST" action="processa.php"> <thead> <tr> <th scope="col">#</th> <th scope="col">Ultimo ID</th> </tr> </thead> <tbody> <tr> <th scope="row">1</th> <td> <?php if(isset($_SESSION['id'])){ echo $_SESSION['id']; } ?></td> </tr> </tbody> </table> Agora a conexao.php
      <?php session_start(); $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "contas"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); $face = filter_input(INPUT_POST, 'face', FILTER_SANITIZE_STRING); $numeros = filter_input(INPUT_POST, 'numeros', FILTER_SANITIZE_STRING); //echo "Nome: $nome <br>"; //echo "E-mail: $email <br>"; $result_usuario = "INSERT INTO usuarios (nome, face, numeros, created) VALUES ('$nome', '$face', '$numeros', NOW())"; if ($conn->query($result_usuario) === TRUE) { $id = $conn->insert_id; $_SESSION['id'] = "" . $id; } else { echo "Error: " . $result_usuario . "<br>" . $conn->error; } $resultado_usuario = mysqli_query($conn, $result_usuario); if(mysqli_insert_id($conn)){ $_SESSION['msg'] = "<div class='alert alert-success' role='alert'> Parabéns agora você está participando! </div>"; header("Location: index.php"); }else{ $_SESSION['msg'] = "<div class='alert alert-danger' role='alert'> OPS! Parece que você já está participando, espere por outro sorteio e volte! </div>"; header("Location: index.php"); }  
    • By lUANZIKA3
      minha pagina contém uma table que
      exibe a ultima id da minha DB porém ela não fica ativa.
      a ultima id só é exibida se o form tiver sido enviado.
      ↓table aonde é exibida a Insert_id
      <table class="table table-dark" method="POST" action="processa.php"> <thead> <tr> <th scope="col">#</th> <th scope="col">Ultimo ID</th> </tr> </thead> <tbody> <tr> <th scope="row">1</th> <td> <?php if(isset($_SESSION['id'])){ echo $_SESSION['id']; } ?></td> </tr> </tbody> </table> Agora a conexao.php
      <?php session_start(); $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "contas"; //Criar a conexao $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); $face = filter_input(INPUT_POST, 'face', FILTER_SANITIZE_STRING); $numeros = filter_input(INPUT_POST, 'numeros', FILTER_SANITIZE_STRING); //echo "Nome: $nome <br>"; //echo "E-mail: $email <br>"; $result_usuario = "INSERT INTO usuarios (nome, face, numeros, created) VALUES ('$nome', '$face', '$numeros', NOW())"; if ($conn->query($result_usuario) === TRUE) { $id = $conn->insert_id; $_SESSION['id'] = "" . $id; } else { echo "Error: " . $result_usuario . "<br>" . $conn->error; } $resultado_usuario = mysqli_query($conn, $result_usuario); if(mysqli_insert_id($conn)){ $_SESSION['msg'] = "<div class='alert alert-success' role='alert'> Parabéns agora você está participando! </div>"; header("Location: index.php"); }else{ $_SESSION['msg'] = "<div class='alert alert-danger' role='alert'> OPS! Parece que você já está participando, espere por outro sorteio e volte! </div>"; header("Location: index.php"); }  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.