Problemas com Arrays

1. Problemas com Arrays

Judson A. Borges
karvox

(usa Ubuntu)

Enviado em 25/01/2010 - 12:08h

Saudações pessoal,

Estou com um problema num sistema que estou desenvolvendo, faz tempo que não programo em PHP e gostaria que vocês vissem meu código e se possível me dar uma luz no que está acontecendo. Vou explicar:
Tenho um aquivo com nome de usuário e senha "usuario:senha", tenho uma página em PHP que recebe dados de um formulário e captura o campo, ex: judson andrade borges, vai compor o login da seguinte forma, judson.borges, com um outro usuario "judson alex borges" ficaria judson.alex e assim decrementado os sobrenomes até chegar ao nome e dar a mensagem de usuario já cadastrado. Mas o código está inserido nomes repetidos abaixo segue o código análise:

function checkLogin($file,$formFieldName)
{
// Array contendo todas as palavras vindo do campo "Nome" e convertidas para minúsculas
$a = str_word_count(mb_strtolower($formFieldName), 1);
$tam = count($a);
$novo = ($a[0]) . "." . ($a[$tam - 1]); // Concatenando nome.ultimosobrenome

// Checando arquivo de login ----------------------------------------------------------------------------

$linhas = file($file);
$getLogin = array();

foreach ($linhas as $linha)
{
list($registro) = explode(':', $linha, -1);
$getLogin[] = $registro;
}

//--------------------------------------------------------------------------------------------------------

$temp = $novo;
$x = 0;
print "Esse aqui é o novo: " . $novo . "<br>";
//Checagem de login repetidos
if (!empty($getLogin)) {
$x++;
foreach ( $getLogin as $login ) {
if ($novo == $login) { //Cria um login alternativo com o nome e um dos sobrenomes
for ($i = 1; $i < $tam-1; $i++) {

if ($novo == $login && $x < $tam) {

$temp = ($a[0]) . "." . ($a[$tam - $i -$x]);
} else {
print "Nome já cadastrado no sistema.";
echo "<a href='cadastro.php' title='Cadastro' target='_self'>Cadastro</a>";
exit;
} // Fim ELSE
} // Fim FOR
} // Fim IF secundário

} // Fim foreach
} // Fim IF principal
//print $temp;
return $temp;
//fclose($fp);
}

Então ele não está decrementando na ordem e inserindo o mesmo nome que já existe no arquivo.

Desde já agradeço a atenção de todos.


  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts