Arquivo da tag: MySQL

Ferramenta para o usuário trocar a senha do e-mail

No ambiente de e-mails que administro, utilizo o Postfix autenticando usuários virtuais em uma base MySQL. Essa semana surgiu a necessidade de fornecer uma ferramenta para que o próprio usuário pudesse alterar sua senha, sem a necessidade de solicitar ao administrador.

Procurei rapidamente na interntet alguma coisa já pronta que fizesse isso, mas não encontrei. Daí arregacei as mangas, abri o vi e fui fazer em PHP.

Optei por verificar a a senha atual autenticando uma conexão imap (pode ser pop tbm), abstraindo toda a frescurada de comparar hashes md5, crypts, etc…

O resultado foi  o programinha que disponibilizo agora para quem tiver a mesma necessidade que eu.

altera_senha3

Clique aqui para ver o fonte

have fun!


Exibição de consultas sql no php

Este artigo demonstra a utilização das funções mysql_num_fields e mysql_field_name do PHP para a visualização de resultados de uma consulta SQL.

Utilizando estas duas funções o código fica muito mais limpo, e vai dar uma trégua para sua tendinite 😉
* mysql_num_fields: Essa função retorna a quantidade de campos de uma SQL.
Exemplo:
<?php
$SQL=”Select id, nome from tabela”;
$resultado=@mysql_query($SQL) or die(mysql_error());
$ncampos=mysql_num_fields($resultado);
?>

O valor de ncampos será 2, pois os campos listados na SQL são id e nome.
Então, poderíamos fazer:
<?php
$ncampos=mysql_num_fields($resultado);
echo “<tr>”;
for( $y=0; $y<$ncampos; $y++){
$campo=mysql_field_name($result,$y);
echo “<td>$campo</td>”;
}
echo “</tr>”;
?>

Com esse código, nós criamos o cabeçalho da tabela de resultados, sem ao menos saber os nomes dos campos que serão apresentados.

* mysql_field_name: Essa função retorna o nome do campo na ordem que foi inserida na SQL.
Exemplo:
<?php
$SQL=”Select id, nome,email from tabela”;
$resultado=@mysql_query($SQL) or die(mysql_error());
$campo=mysql_field_name($resultado,2);
?>

O valor de campo será nome, pois é o segundo campo listado na SQL.
Agora, para listarmos todo o resutado de uma consulta SQL, podemos fazer assim:
<?php
while ($array_result = mysql_fetch_array($resultado)) {
echo “<tr>”;
for( $y=0; $y<$ncampos; $y++){
$valor=mysql_field_name($resultado,$y);
echo “<td> $array_result[$valor] </td>”;
}
echo “</tr>;
}
?>
Então é isso, por enquanto é só! Fica para um próximo artigo como paginar os resultados.