Fórum Verificação de senha PHP #601254
18/03/2019
0
<?php
$password_length = 8;
public function passcheck($senha) {
$returnVal = True;
if ( strlen($senha) < $password_length ) {
$returnVal = False;
}
if ( !preg_match("#[0-9]+#", $senha) ) {
$returnVal = False;
}
if ( !preg_match("#[a-z]+#", $senha) ) {
$returnVal = False;
}
if ( !preg_match("#[A-Z]+#", $senha) ) {
$returnVal = False;
}
return $returnVal;
}
?>quero inseri la em outra "pagina" mas nao sei onde ou como colocar, se eu coloco no começo do codigo da esse erro
se ajudar, coloco o codigo da outra pagina aqui.
Vitor Ferreira
Curtir tópico
+ 0Post mais votado
18/03/2019
Primeira coisa que eu notei, sua função não esta dentro de uma classe, voce implementa classes e não funções.
Pode tentar assim:
<?php
public class PasswordFunctions{
$password_length = 8;
public function passcheck($senha) {
$returnVal = True;
if ( strlen($senha) < $password_length ) {
$returnVal = False;
}
if ( !preg_match("#[0-9]+#", $senha) ) {
$returnVal = False;
}
if ( !preg_match("#[a-z]+#", $senha) ) {
$returnVal = False;
}
if ( !preg_match("#[A-Z]+#", $senha) ) {
$returnVal = False;
}
return $returnVal;
}
}
?>E então em sua classe que você quer implementar ela, voce coloca na sua classe dessa forma:
public class Login implements PasswordFunctions { ... }E acredito que estanciando a classe em uma variavel, voce consiga chamar a função:
<?php
$passfunc = new PasswordFunctions();
$passfunc->passcheck('1234');
?>Acredito que assim voce consiga chamar sua função como deseja.
Espero ter ajudado. :D
Alex William
Gostei + 2
Mais Posts
19/03/2019
Vitor Ferreira
<?php
class dados{
public class dados implements PasswordFunction{
$nome = $_POST['nome'];
$user = $_POST['usuario'];
$senha = $_POST['senha'];
$confs = $_POST['confsenha'];
$email = $_POST['email'];
$erros = array();
$passfunc = new passcheck();
$passfunc->passcheck('1234');
if(!$nome){
$erros[] = "Nome não definido!";
}
if(!$user){
$erros[] = "Usuario não definido!";
}
if(!$senha){
$erros[] = "Senha não definida!";
}
if(!$confs){
$erros[] = "Confirmação de senha não definida!";
}
if(!$email){
$erros[] = "E-mail não definido!";
}
if($nome){
if(!ctype_alpha($nome) === false){
$erros[] = "Insira Nome e Sobrenome!";
}
$range2 = range(3,30);
if(!in_array(strlen($nome), $range2)){
$erros[] = "Nome deve conter entre 3 e 30 caracteres!";
}
}
if($user){
if(!ctype_alnum($user)){
$erros[] = "Usuario só pode conter letras e numeros!";
}
$range = range(1,30);
if(!in_array(strlen($user),$range)){
$erros[] = "Usuario deve conter entre 1 e 30 caracteres!";
}
}
if($senha){
if($senha != $passcheck){
$erros[] = "senha deve conter uma MAIUSCULA, um numero e de 8 a 20 caracteres!";
}
}
if($senha && $confs){
if($senha != $confs){
$erros[] = "Senhas não conferem!";
}
}
if($email){
if (!filter_var($email, FILTER_VALIDATE_EMAIL)){
$erros[] = "E-mail no formato errado EX.: email@email.com";
}
}
if(count($erros) > 0){
foreach($erros as $erro){
echo $erro. "<br>";
}
}else{
echo "Registrado com sucesso Usuario: <b>" .$user. "</b> e Senha: <b>" .$senha. "<b>";
}
echo "<br>";
echo "<br><a href='cadastro.php'><i> Voltar para Cadastro </i></a>";
}
?><?php
public class passcheck{
$password_length = 8;
public function passcheck($senha) {
$returnVal = True;
if ( strlen($senha) < $password_length ) {
$returnVal = False;
}
if ( !preg_match("#[0-9]+#", $senha) ) {
$returnVal = False;
}
if ( !preg_match("#[a-z]+#", $senha) ) {
$returnVal = False;
}
if ( !preg_match("#[A-Z]+#", $senha) ) {
$returnVal = False;
}
return $returnVal;
}
}}
?>e esta gerando esse erro, nao consigo ver aonde estou errando e se estou tentando utilizar isso de maneira correta, ja fiz colocando alguns ifs no primeiro codigo, mas gostaria de aprender a usar implements/extends/classes
desde ja grato pela atenção!! muito obrigado msm.
Gostei + 0
20/03/2019
Vanderley Junior
Gostei + 1
21/03/2019
Geovane Souza
<?php
class PasswordFunctions {
private $password_length = 8;
public function passcheck($senha) {
if ( strlen($senha) < $this->password_length ) {
return false;
}
if( ! preg_match( '/^[a-zA-Z0-9]+/', $senha ) {
return false;
}
return true;
}
}
?>
Gostei + 1
26/03/2019
Vitor Ferreira
Primeira coisa que eu notei, sua função não esta dentro de uma classe, voce implementa classes e não funções.
Pode tentar assim:
<?php
public class PasswordFunctions{
$password_length = 8;
public function passcheck($senha) {
$returnVal = True;
if ( strlen($senha) < $password_length ) {
$returnVal = False;
}
if ( !preg_match("#[0-9]+#", $senha) ) {
$returnVal = False;
}
if ( !preg_match("#[a-z]+#", $senha) ) {
$returnVal = False;
}
if ( !preg_match("#[A-Z]+#", $senha) ) {
$returnVal = False;
}
return $returnVal;
}
}
?>E então em sua classe que você quer implementar ela, voce coloca na sua classe dessa forma:
public class Login implements PasswordFunctions { ... }E acredito que estanciando a classe em uma variavel, voce consiga chamar a função:
<?php
$passfunc = new PasswordFunctions();
$passfunc->passcheck('1234');
?>Acredito que assim voce consiga chamar sua função como deseja.
Espero ter ajudado. :D
Boa tarde depois de alguns dias consegui!! li algumas coisas e um amigo me ajudou, sua explicação esta mto boa, nao tinha entendido, muito obrigado!!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)