Arquivo da categoria: MySQL

RoundCube Webmail

roundcubeRecentemente testei a nova versão do RoundCube. Apesar de conhecer o projeto há mais de um ano, e já tê-lo testado anteriormente, eu venho usando o SquirrelMail com o tema do Outlook. Ná época eu não optei pelo RoundCube por ele ter muitos alguns bugs irritantes meio chatos, como não poder remover anexos, problemas ao visualizar páginas em HTML, lentidão, etc… Porém essa nova versão me surpreendeu! Todos os bugs que mencionei acima foram corrigidos, está muito leve e funcional. Estou estudando seriamente adotá-lo como webmail principal da empresa que trabalho.

Instalar o RoundCube é extremamente fácil:

Instalação:

Baixe o programa do site http://roundcube.net.

descompacte-o no diretório do seu servidor web (ex: /var/www/roundcube).

No diretório config, remova a extensão “.dist” do final dos arquivos main.inc.php e db.inc.php.

Abra o arquivo db.inc.php e altera a linha abaixo:

$rcmail_config[‘db_dsnw’] = ‘mysql://usuario:senha@host_banco_de_dados/nome_banco_de_dados’;

No arquivo main.inc.php altere os parâmetros:

$rcmail_config[‘default_host’] = ”;
Nesta linha adicione o endereço padrão do servidor de email, no caso é mail.dominio.com
$rcmail_config[‘virtuser_query’] = ”;
Preencha este campo com %u para ser considerado o login digitado.
$rcmail_config[‘smtp_server’] = ”;
Host usado para envio de emails, preencha com o nome host do $rcmail_config[‘default_host’] = ”;, ou seja, mail.dominio.com
$rcmail_config[‘smtp_user’] = ”;
Preencha este campo com %u para ser considerado o login digitado.
$rcmail_config[‘smtp_pass’] = ”;
Preencha este campo com %p para ser considerado a senha digitada.

Dê um chmod 777 nos diretórios tmp e log do roundcube (/var/www/roundcube tmp e log).

Agora, utilizando o phpmyadmin, crie o banco e as tabelas para o roundcube.

Na opção IMPORT (importar) do phpmyadmin localize o arquivo mysql5.initial.sql da pasta SQL do webmail. E importe escolhente o Conjunto de caracteres do arquivo (charset) como LATIN1.
OBS: escolhendo mysql5.initial.sql, pois a versão do mysql utilizado é o 5.x.

Então é isso! fica aí a indicação do RoundCube.


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.