quarta-feira, 23 de dezembro de 2015

Instalação e conexão do FreeTDS + MapServer (Linux) com SQL Server 2014 - Parte 2

Olá galera,

Hoje vamos mostrar alguns exemplos de como efetuar a conexão com o SQL Server no Windows a partir de uma máquina Linux. Conforme mencionamos no vídeo anterior, utilizaremos FreetDS e UnixODBC.

Para os exemplos do vídeo utilizamos o seguinte: isql, ogrinfo ODBC, VirtualSpatialData e MapServer.

Se você gostou do vídeo, compartilha e deixa seu comentário.

Um grande abraço a todos e até a próxima.

terça-feira, 22 de dezembro de 2015

Instalação e conexão do FreeTDS + MapServer (Linux) com SQL Server 2014 - Parte 1

Olá galera,

Hoje vamos mostrar como instalar e configurar uma conexão para ser utilizada no MapServer(Linux) com SQL Server 2014 em uma máquina Windows. Nesse primeiro vídeo iremos efetuar a instalação do FreetDS e UnixODBC. Além disso, faremos um teste básico para verificar a conexão.

Vale lembrar que o MapServer, GDAL, Apache(com CGI habilitado) já devem estar instalados e devidamente configurados. Aqui mesmo no blog há tutoriais mostrando como instalar e configurar os softwares citados.

Se você gostou do vídeo, compartilha e deixa seu comentário.

Um grande abraço a todos e até a próxima.

sábado, 19 de dezembro de 2015

IP fixo no VirtualBox com Debian 8.2

Olá galera,

No vídeo de hoje, vamos executar a dica do meu amigo Luiz Paulo. Iremos criar uma placa de rede que vai manter o IP fixo dentro de uma máquina virtual com VirtualBox.

Se você gostou do vídeo, compartilha e deixa seu comentário.

Um grande abraço a todos e até a próxima.

terça-feira, 15 de dezembro de 2015

Instalando o PostgreSQL 9.4 + PostGIS 2.1 no Debian 8.2

Olá galera,

Hoje vamos refazer um tutorial antigo aqui do blog. É sobre a instalação do PostgreSQL + PostGIS em versões mais novas. A distribuição utilizada foi o Debian 8.2 mas a instalação no Ubuntu 15.04 ou 15.10 funciona de forma semelhante.

Um grande abraço a todos e até a próxima.

sábado, 12 de dezembro de 2015

3 Anos de CodeGeo

Olá galera,

Hoje o nosso blog completa 3 anos. Gostaria de agradecer a TODOS os leitores pela assiduidade e pelas mensagens enviadas.

Peço desculpas por não estar publicando novos conteúdos com mais frequência. Esse ano foi um ano de muita correria e várias madrugadas acordado a fim de cumprir prazos.

Nosso planejamento para 2016 é fazer mais vídeos sobre novos conteúdos e refazer sobre os antigos também como os do Laravel. Com a nova versão 5.1, vou lançar uma nova série, em breve, envolvendo várias tecnologias.

Como não poderia deixar de fazê-lo, quero agradecer mais uma vez aos amigos Luís Lopes por incentivar a criação do blog e ao Anderson Medeiros que vem apoiando e divulgando o nosso trabalho.

Para finalizar, fica aí o meu MUITO OBRIGADO a todos que incentivam e apoiam a nossa iniciativa de compartilhar o conhecimento.

Grande abraço.

domingo, 18 de outubro de 2015

Tutorial OpenLayers 3 - Aplicando filtros em uma camada WMS com MapServer

Olá galera,

O vídeo de hoje é atendendo o pedido de +Helder soares de menezes - seguidor do nosso canal no YouTube. A solicitação é para aplicar filtros digitados em um formulário em uma camada de mapa. Para exemplificar vou utilizar o MapServer com uma camada WMS.

Os códigos utilizados podem ser baixados através do https://github.com/larsurilch/ol3

Um grande abraço a todos e até a próxima.

domingo, 27 de setembro de 2015

Corrigindo o erro "Tipo de dados datetime resultou em um valor fora do intervalo" no SQL Server

Olá galera,

Estamos de volta com mais uma dica para solucionar um problema com o SQL Server.

INSERT INTO [dbo].[acoes] ([nome], [metodo], [updated_at], [created_at]) VALUES (Acesso total, *, 2015-09-16 21:54:53.000, 2015-09-16 21:54:53.000)

Ao executar um script de INSERT como o exemplo acima, o SQL Server retornou o seguinte erro: A conversão de um tipo de dados nvarchar em um tipo de dados datetime resultou em um valor fora do intervalo. Esse problema ocorre porque meu banco de dados instalado está no idioma pt-BR.

Para alterar o idioma, execute o comando abaixo no banco onde deve ser aplicada a alteração.

    Exec sp_defaultlanguage 'usuário', 'idioma'
    Reconfigure
  

Para o meu caso, o script ficou da seguinte forma:

    Exec sp_defaultlanguage 'sa', 'us_english'
    Reconfigure
  

Fica a dica aí pessoal.

Um grande abraço e até a próxima.

terça-feira, 22 de setembro de 2015

Corrigindo erro "Request exceeded the limit of 10 internal redirects" no .htaccess

Fala galera,

Peço desculpas por estar meio ausente do blog, devido a correria com alguns projetos, mas estou sempre olhando todas as perguntas e solicitações.

No post de hoje, falaremos sobre o erro Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace. no .htaccess.

Como exemplo, exibiremos abaixo um arquivo .htaccess onde ocorre o problema.

    <IfModule mod_rewrite.c>
      <IfModule mod_negotiation.c>
        Options -MultiViews
      </IfModule>

      RewriteEngine on

      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^(.*)/$ /$1 [L,R=301]

      RewriteBase /projeto/
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteRule ^ index.php [L]
    </IfModule>
  

A título de curiosidade, esse arquivo foi retirado das pasta public de um projeto em Laravel 5.1.

Para corrigir o problema, substitua o conteúdo da linha 14: RewriteRule ^ index.php [L] por RewriteRule ^(.+)$ /index.php/$1 [NC,L,QSA]

Com essa alteração, o problema deve ser corrigido. Espero ter ajudado aos que se depararam com esse erro.

Um grande abraço e até a próxima.

segunda-feira, 31 de agosto de 2015

Alterando atributos de uma tabela com SQL Server Management Studio 2014

Fala galera,

No vídeo de hoje vamos mostrar como alterar atributos de uma tabela com SQL Server Management Studio 2014.

Fica aí a dica. Grande abraço

sábado, 1 de agosto de 2015

Tutorial OpenLayers 3 - Cesium

Olá galera,

Hoje vamos falar sobre como integrar o Cesium com OpenLayers 3. Iremos utilizar como base o código que se encontra no Google Drive

Os códigos utilizados podem ser baixados através do https://github.com/larsurilch/ol3

Um grande abraço a todos e até a próxima.

segunda-feira, 27 de julho de 2015

Criando índice espacial no SQL Server Express 2014

Olá galera,

No vídeo de hoje vamos mostrar como criar índice espacial no SQL Server Express 2014.

Fica aí a dica. Grande abraço

quarta-feira, 22 de julho de 2015

Gerando scripts com esquema e dados no SQL Server Express 2014

Olá galera,

No vídeo de hoje vamos gerar scripts com esquemas e dados no SQL Server Express 2014. Fiz o vídeo pois apesar de ser uma tarefa básica, a opção fica meio "escondida".

Fica aí a dica. Grande abraço

sábado, 27 de junho de 2015

Corrigindo acentuação no Blade do Laravel 5 com SQL Server

Olá galera,

O post de hoje é uma contribuição do nosso amigo Anderson Nunes.

Conversando com Anderson, fui questionado se já havia me deparado com o problema de acentuação no Blade. Ele ainda comentou que debugando dentro do Controller a acentuação estava correta.

O ambiente utilizado foi uma box do Vagrant Ubuntu/Trusty 64 com Apache e PHP instalados. Além disso, foi instalado o FreeTDS e setado o charset para UTF-8.

Após vários testes, não conseguimos detectar o que poderia estar acontecendo. Falei com Anderson que gostaria que ele compartilhasse a solução caso fosse encontrada. No dia seguinte, ele me informou que resolveu o problema alterando o arquivo app/Providers/AppServiceProvider.php.

Deixe o método boot com o código abaixo.

    public function boot()
    {
        parent::boot();
        \Blade::setEchoFormat('e(utf8_encode(%s))');
    }
  

Bem pessoal, espero que a solução do Anderson possa ajudar a quem se deparou com o mesmo problema.

Anderson mais uma vez muito obrigado pela contribuição e precisando estamos a disposição.

Um grande abraço a todos e até a próxima.

terça-feira, 16 de junho de 2015

Customizando atributos de um shapefile com PostgreSQL + PostGIS + QGIS

Olá galera,

O vídeo de hoje é atendendo o pedido do Gustavo, seguidor do nosso blog. A solicitação é para unificar as colunas nome e uf que são atributos do shapefile de municípios. Para essa tarefa, vamos utilizar o PostgreSQL + PostGIS + QGIS.

Se você conhece uma outra forma de unificar esses campos somente usando o QGIS ou outro software, compartilhe conosco.

Um grande abraço a todos e até a próxima.

quinta-feira, 11 de junho de 2015

Instalando Node.js + npm no Ubuntu 15.04

Olá galera,

No terminal execute os comandos abaixo.

sudo apt-get install nodejs npm
nodejs -v
npm -v

Ambos os pacotes já estão instalados. Agora temos um problema, a instalação de alguns pacotes do npm ainda utilizam somente o termo node.

Se você executar, no terminal, o comando node -v, vai receber a mensagem de que ele ainda não foi instalado. Para resolver o problema, criaremos um link simbólico via terminal.

sudo ln -s /usr/bin/nodejs /usr/bin/node

Agora você pode utilizar o Node.js sem problemas.

Um grande abraço e até a próxima.

sexta-feira, 5 de junho de 2015

Configurando uma conexão PHP com SQL Server Express 2014

Olá pessoal,

Hoje nós vamos configurar e corrigir alguns erros de conexão do PHP com SQL Server Express 2014.

Espero ter ajudado pessoas que tenham se deparado com o mesmo problema.

Um grande abraço a todos e até a próxima.

quarta-feira, 27 de maio de 2015

MS4W + ImageMagick + SQL Server Express 2014 no Windows 8.1

Olá galera,

No vídeo de hoje, nós vamos montar um ambiente para trabalhar com Geo no Windows. A instalação do MS4W é bastante simples, por isso adicionei algumas instalações extras de acordo com minha necessidade.

Os instaladores e as bibliotecas utilizadas podem ser baixados através do Google Drive.

OBS: Vale lembrar que a instalação foi realizada com os softwares que estou disponibilizando. Com outras versões, principalmente do ImageMagick, pode ser que não funcione.

Um grande abraço a todos e até a próxima.

quinta-feira, 21 de maio de 2015

Tutorial OpenLayers 3 - Pesquisa por endereço

Olá galera,

O vídeo de hoje é atendendo o pedido de +Kleber Merklein - seguidor do nosso canal no YouTube. A solicitação é para implementar uma funcionalidade de busca no mapa, similar ao que temos no Google Maps.

Os códigos utilizados podem ser baixados através do https://github.com/larsurilch/ol3

Um grande abraço a todos e até a próxima.

sexta-feira, 15 de maio de 2015

Tutorial OpenLayers 3 - WMS

Olá galera,

O vídeo de hoje é atendendo o pedido de +felipesanctuss - seguidor do nosso canal no YouTube. A solicitação é para incluirmos uma camada a partir de um WMS informado pelo usuário.

Os códigos utilizados podem ser baixados através do https://github.com/larsurilch/ol3

Um grande abraço a todos e até a próxima.

terça-feira, 12 de maio de 2015

Tipo de transferência com FileZilla

Olá galera,

A post de hoje é uma dica rápida sobre o FileZilla. Há algum tempo comecei a ter problemas com arquivos sendo upados para um servidor. Uma imagem, localmente, estava sendo exibida perfeitamente mas no servidor não estava sendo renderizada.

Ao tentar acessar a imagem, era exibida uma mensagem como: "A imagem icone.png contem erros e não pode ser exibida."

Após inúmeras tentativas não consegui solucionar o problema e cheguei a cogitar ser algo no servidor. Aí tive a idéia de olhar a configuração do FileZilla.

No menu Transferir -> Tipo de transferência, a opção ASCII estava selecionada. De alguma forma, o FileZilla tinha se desconfigurado e arquivos binários estavam sendo transferidos como arquivos de texto simples.

Para solucionar o problema, alterei a opção para Automático. Espero que ajude quem já se deparou com um erro parecido.

Um grande abraço e até a próxima.

sábado, 9 de maio de 2015

OpenLayers 3 - Parte 8

Olá galera,

Dando continuidade a nossa série, hoje vamos falar sobre desenho de polígonos no OpenLayers 3. Iremos utilizar como base os códigos do vídeo da série OpenLayers 3 - Parte 7

Os códigos utilizados podem ser baixados através do https://github.com/larsurilch/ol3

Um grande abraço a todos e até a próxima.

quarta-feira, 22 de abril de 2015

Pacotes úteis para Laravel 5

Olá galera,

Hoje vou citar alguns componentes que podem ser úteis para quem está utilizando Laravel 5. Tive a oportunidade de testar todos e funcionam perfeitamente.

1 - Illuminate HTML - No Laravel 5, esse componente não vem mais incluído por padrão. Ele é um helper para auxiliar na criação de tags de HTML e formulários. Para instalar, no composer.json adicione a linha "illuminate/html": "5.*"

2 - Easy Flash Messages - Simples componente para trabalhar com Flash Messages. Para instalar, no composer.json, adicione a linha "laracasts/flash": "~1.3"

3 - Laravel-Translatable - Componente para trabalhar com dados que podem ser armazenados em múltiplos idiomas. Para instalar, no composer.json, adicione a linha "dimsav/laravel-translatable": "~5.0"

4 - Intervention Image - Excelente biblioteca para manipular e trabalhar com imagens. Para instalar, no composer.json, adicione a linha "intervention/image": "~2.1"

5 - Captcha for Laravel 5 - Como o próprio nome diz, é um simples componente de Capcha para o Laravel 5. Para instalar, no composer.json, adicione a linha "mews/captcha": "dev-master"

Bem pessoal fica aí a dica. Conhece e já utilizou algum outro que você acha interessante? Compartilhe com a gente.

Um grande abraço e até a próxima.

domingo, 29 de março de 2015

OpenLayers 3 - Parte 7

Olá galera,

Dando continuidade a nossa série, hoje vamos falar sobre desenho, edição e remoção de linhas no OpenLayers 3. Iremos utilizar como base os códigos que criamos no primeiro vídeo da série OpenLayers 3 - Parte 1

Os códigos utilizados podem ser baixados através do https://github.com/larsurilch/ol3

Um grande abraço a todos e até a próxima.

quarta-feira, 18 de março de 2015

Abrindo arquivo do Corel Draw no Ubuntu

Olá galera,

Para abrir o arquivo, utilizei o Inkscape (https://inkscape.org/pt). Caso você não o tenha, instale com o comando abaixo.

sudo apt-get install inkscape

Para que o Inkscape possa importar os arquivos com extensão .cdr, será necessário instalar o pacote python-uniconvertor.

sudo apt-get install python-uniconvertor

Agora você pode ir no menu Arquivo->Importar ou simplemente utilizar o atalho Ctrl+I e selecionar o arquivo a ser importado.

Vai aí uma dica extra. Para vetorizar a imagem importada, eu utilizo a Lata de tinta no menu lateral esquerdo conforme a imagem abaixo.

Para utilizar, basta selecionar a ferramenta e clicar em cima da imagem a ser vetorizada. Vale lembrar que esse processo só fica preciso se a imagem tiver uma boa resolução.

Um grande abraço a todos e até a próxima.

segunda-feira, 9 de março de 2015

OpenLayers 3 - Parte 6

Olá galera,

Hoje vamos falar sobre como inserir ponto no mapa através da digitação de coordenadas em campos texto. Iremos utilizar como base os códigos que criamos no quinto vídeo da série OpenLayers 3 - Parte 5

Os códigos utilizados podem ser baixados através do https://github.com/larsurilch/ol3

Um grande abraço a todos e até a próxima.

domingo, 1 de março de 2015

Instalando Laravel 5 no Ubuntu 14.04

Olá galera,

Nesse post mostraremos como instalar o Laravel 5.

No terminal execute o comando abaixo para instalar o Composer.

php -r "readfile('https://getcomposer.org/installer');" | php

Para instalar o Laravel 5, ainda no terminal, execute o comando abaixo.

php composer.phar create-project laravel/laravel nome_projeto --prefer-dist

Dê permissão no diretório storage.

sudo chmod -R 777 storage

Como o HTML e Form não estão mais incorporados no Laravel 5, será necessário acrescentá-los no composer.json. Logo após a linha "laravel/framework": "5.0.*", insira uma linha com o seguinte: "illuminate/html": "5.*"

Com o composer dentro da pasta do projeto, execute o comando abaixo no terminal.

php composer.phar update

Agora abra o arquivo config/app.php e adicione o código abaixo em providers.

'Illuminate\Html\HtmlServiceProvider',

Ainda em config/app.php, adicione o código abaixo em aliases.

    'Html'      => 'Illuminate\Html\HtmlFacade',
    'Form'      => 'Illuminate\Html\FormFacade',
  

Pronto. Agora você já tem o Laravel 5 instalado.

Um grande abraço e até a próxima.

sábado, 21 de fevereiro de 2015

Expandindo o disco virtual no VirtualBox - Ubuntu 14.04

Olá galera,

Hoje vamos mostrar como expandir um disco no VirtualBox. Para facilitar o entendimento, utilizaremos uma máquina virtual Windows instalada no Ubuntu 14.04.

O primeiro ponto é localizar onde está o disco virtual. Abra o VirtualBox e clique em Configurações para a máquina virtual selecionada conforme a imagem abaixo.

A extensão da minha máquina é vmdk portanto se formos executar o comando modifyhd vai dar o seguinte erro: VBoxManage: error: Resize hard disk operation for this format is not implemented yet!. Então vamos converter a nossa máquina primeiro para vdi, redimensioná-la e depois converter para vmdk novamente.

vboxmanage clonehd /home/larsurilch/VirtualBox\ VMs/windows/windows-disk1.vmdk /home/larsurilch/VirtualBox\ VMs/windows/windows-disk1.vdi --format vdi

Com o comando acima "criamos" um clone da máquina virtual no formato vdi.

Agora supondo que a nossa máquina tenha 30Gb de espaço e queremos ampliar para 50Gb, usaremos o comando abaixo.

vboxmanage modifyhd /home/larsurilch/VirtualBox\ VMs/windows/windows-disk1.vdi --resize 50000

Conforme mencionamos anteriormente, converteremos agora para vmdk. Utilizei o nome windows-disk2.vmdk para diferenciar do original.

vboxmanage clonehd /home/larsurilch/VirtualBox\ VMs/windows/windows-disk1.vdi /home/larsurilch/VirtualBox\ VMs/windows/windows-disk2.vmdk --format vmdk

Após concluído o processo, remova a unidade original e selecione a que foi gerada de acordo com as imagens abaixo.

Inicie a máquina virtual do Windows e vá em Painel de Controle -> Ferramentas Administrativas -> Gerenciamento do computador. Depois selecione Gerenciamento de disco conforme o item 1 da imagem abaixo.

No item 2 da imagem acima clique com o botão direito e depois selecione o item 3.

OBS: Na imagem do exemplo, o item 2 não exibe a partição adicionada e item 3 está desabilitado, porque eu já executei o procedimento de "Estender volume".

Espero que a dica tenha sido útil.

Um grande abraço a todos e até a próxima.

terça-feira, 10 de fevereiro de 2015

OpenLayers 3 - Parte 5

Olá galera,

Hoje vamos falar sobre a ferramenta de desenhar ponto no OL3, recurso também presente no OpenLayers 2. Iremos utilizar como base os códigos que criamos no primeiro vídeo da série OpenLayers 3 - Parte 1

Os códigos utilizados podem ser baixados através do https://github.com/larsurilch/ol3

Um grande abraço a todos e até a próxima.

sábado, 31 de janeiro de 2015

Corrigindo o erro "old_password" no MySQL

Olá galera,

Recentemente precisei migrar um sistema feito com Laravel 3.2 para um servidor com PHP 5.5.9. Antes de realizar a migração, para quem não sabe, é necessário fazer uns ajustes e podem ser conferidos no link http://www.codegeo.com.br/2014/05/corrigindo-conflito-do-yield-do-laravel.html.

Com as correções feitas, surgiu o seguinte erro: PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password].

O problema é causado devido ao novo formato para senha do banco que é de 41 bytes ao invés do formato antigo que é de 16.

Execute os comandos abaixo no banco que deseja alterar a senha. Esse procedimento pode ser feito diretamente no MySQL(terminal), MySQL Workbench, PHPMyAdmin ou qualquer outro da sua preferência.

    SET SESSION old_passwords=0;
    SET PASSWORD = PASSWORD('senha_do_seu_banco');
  

Na linha 1, desativamos o old_passwords para a sua session.

Na linha 2, alteramos a senha.

OBS: Os comandos devem ser executados juntos caso contrário não vai funcionar.

Espero que a dica seja útil para quem se deparou com o mesmo problema.

Um grande abraço e até a próxima.

terça-feira, 13 de janeiro de 2015

Instalar o módulo OCI8 (Oracle) no Ubuntu 14.04

1 - Instalar PHP5 e Apache 2

http://www.codegeo.com.br/2013/01/instalando-apache-2-e-php-5-no-ubuntu.html

2 - Baixar o Oracle Instant Client

Para que o módulo php-oci8 funcione, é necessário baixar o Instant Client.

http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

Baixe os arquivos Instant Client Package - Basic e Instant Client Package - SDK

OBS: Faça o download dos arquivos ZIP de acordo com a versão do seu banco de dados.

3 - Preparar Instant Client

Extraia o basic e o sdk para uma pasta instantclient dentro de /opt

unzip instantclient-basic-linux.x64-XX.X.X.X.X.zip -d /opt
unzip instantclient-sdk-linux.x64-XX.X.X.X.X.zip -d /opt

Os comandos acima irão extrair os 2 arquivos ZIP e colocá-los dentro de uma pasta chamada instantclient_XX_X, sendo que o X indica a versão baixada.

Agora vamos criar alguns links simbólicos dentro da pasta.

cd /opt/instantclient_XX_X
ln -s libclntsh.so.XX.X libclntsh.so
ln -s libocci.so.XX.X libocci.so

4 - Instalar bibliotecas necessárias

sudo apt-get install libaio1 php-pear php5-dev

5 - Preparar PECL/PEAR

pear upgrade --force pear
pear upgrade
pear channel-update pear.php.net
pecl channel-update pecl.php.net

6 - Instalar PECL/PEAR

pecl install oci8

Durante a instalação, o PECL irá pedir para você localizar o Instant Client e será exibida uma mensagem como abaixo:
Please provide the path to the ORACLE_HOME directory. Use 'instantclient,/path/to/instant/client/lib' if you're compiling with Oracle Instant Client [autodetect] :

Digite o código abaixo e em seguida pressione Enter

instantclient,/opt/instantclient_XX_X

7 - Incluir o OCI8 ao php.ini

sudo nano /etc/php5/apache2/php.ini

No final do arquivo acrescente a linha abaixo:

extension=oci8.so

Para salvar as alterações, aperte CTRL+X, digite Y e em seguida pressione Enter

8 - Reiniciar o Apache

sudo service apache2 restart

Verifique no phpinfo() se o módulo esta ativo. Caso a instalação tenha sido feita corretamente, irá aparecer uma imagem como a abaixo.

OBS: Não apague a pasta /opt/instantclient_XX_X pois o OCI8 deixará de funcionar.