# Estação Davis Vantage Pro 2 - Banco de Dados



## MattMendes (4 Set 2012 às 06:26)

Olá Pessoal! Tenho uma Davis Vantage Pro2, com o software Weatherlink, e gostaria de exibir dados na web em tempo real, estou montando meu próprio site, e pretendo trabalhar com banco de dados MySQL, a partir de dados baixados do Weatherlink. 

Alguém saberia me dizer como posso armazenar os dados baixados pelo Auto Download do Weatherlink, em um banco de dados MySQL? Teria que partir do arquivo .wlk?

Poderiam me dar uma sugestão sobre como trabalhar com banco de dados para exibir dados na minha página pessoal? 

Agradeço desde já!


----------



## MattMendes (5 Set 2012 às 02:50)

Alguém sabe se é possível armazenar os dados localmente em MySQL??


----------



## CptRena (5 Set 2012 às 11:41)

MattMendes disse:


> Alguém sabe se é possível armazenar os dados localmente em MySQL??



Vou usar DB-database (base de dados) no texto seguinte para ser mais simples.

Sim, eu tenho um servidor pessoal e tenho uma DB MySQL.. Uso scripts escritos em php para aceder à DB e para criar as páginas web com os dados extraídos da mesma.
Podes usar php para ler um ficheiro e dele extraires os dados que quiseres, por exemplo.
Quanto ao WeatherLink, não tenho grandes conhecimentos desse programa. Vou investigar...




> Can WeatherLinkIP or Vantage Connect upload data directly to a site on my own server?
> 
> No, WeatherLinkIP and Vantage Connect only upload to www.weatherlink.com at this time. However, our WeatherLink software (running on your PC) can be used to generate custom web pages and upload them to your own server.


Fonte: http://www.davisnet.com/support/weather/faq/answer/index.asp?ProdFam=15&faqCat=1&faqid=55


----------



## MattMendes (7 Set 2012 às 23:25)

Olá CptRena, obrigado pela resposta.

Sim, irei usar php para acessar os dados, minha dúvida está na atualização destes dados em meu DB Mysql, e como seria o código para enviar dados de um arquivo txt separado por tabulações para meu DB, vi alguns códigos, mas como o arquivo exportado pelo Weatherlink possui cabeçalho, precisaria ler os dados a partir da 3ª linha. Alguem tem alguma idéia de como fazer isso? 

obrigado.


----------



## CptRena (8 Set 2012 às 13:02)

MattMendes disse:


> Olá CptRena, obrigado pela resposta.
> 
> Sim, irei usar php para acessar os dados, minha dúvida está na atualização destes dados em meu DB Mysql, e como seria o código para enviar dados de um arquivo txt separado por tabulações para meu DB, vi alguns códigos, mas como o arquivo exportado pelo Weatherlink possui cabeçalho, precisaria ler os dados a partir da 3ª linha. Alguem tem alguma idéia de como fazer isso?
> 
> obrigado.



Bom dia MattMendes,

Pode separar uma string que esteja delimitada por tabulações usando o comando: explode("\t",$string)
Para procurar o fim do cabeçalho podes usar: strpos(string original,item a perquisar)
Para criar uma nova string sem cabeçalho: substr(string original,resultado de strpos)
Para colocar os dados numa base de dados:

	date_default_timezone_set('UTC');
	$server='localhost ou outro servidor';
	$username='username';
	$password='password';
	$db='nome da base de dados';
	$conn=mysqli_connect($server,$username,$password,$db);
	$cmd0="INSERT INTO `nome da tabela` (nome das colunas separados por virgula, por exemplo:temperature,relative_humidity,wind,pressure,precipitation,rain_rate) VALUES('".$array_of_values[0]."','".$array_of_values[1]."','".$array_of_values[2]."','".$array_of_values[3]."','".$array_of_values[4]."','".$array_of_values[5]."')"; (Estes sao os valores que estao no array criado pelo comando explode explicado anteriormente)
	$result0=mysqli_query($conn,$cmd0);
	mysqli_close($conn);



Espero ter ajudado com este pequeno post. Se tiver alguma dúvida não hesite em contactar. Se estiver a usar codificação UTF8 coloque estes comandos logo a seguir a "$conn=mysqli_connect($server,$username,$password,$db);":

	$qry0='SET NAMES UTF8';
	$rslt0=mysqli_query($conn,$qry0);


----------

