Oferta Nacional - 234x60

Arquivo

Arquivo da Categoria ‘geral’

Como ler um arquivo CSV ou TXT usando Python

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

Continuando o artigo anterior, onde eu tive a necessidade de ler 3 arquivos em formatos de textos mas com padrões diferentes, em que precisei padronizá-los para cadastrar num banco de dados MySQL, vou mostrar como fiz para ler os arquivos CSV e TXT, e depois salvar em arquivos temporários (para manter os originais).


import csv
import re
import os

nome = raw_input("Nome do arquivo: ") # deve ser digitado o caminho do arquivo também

ifile  = open(nome, "r") # arquivo de leitura, original

ofile  = open(nome + ".tmp", "w+") # arquivo temporário, de leitura e gravação

for line in ifile:
linha = line;

#print "Substituindo '\\t\r' por ''"
pattern = re.compile(r'\t\r')
linha = pattern.sub("",linha)

#print "Substituindo ',' por '.'"
pattern = re.compile(r',')
linha = pattern.sub(".",linha)

#print "Substituindo '\t' por ','"
pattern = re.compile('\t')
linha = pattern.sub(",",linha)

#print "Padronizando as datas... \n"
pattern = re.compile(r'([0-9]{2})/([0-9]{2})/([0-9]{4}) ([0-9]{2}):([0-9]{2}):([0-9]{2})')
linha = pattern.sub(r"\3-\2-\1 \4:\5:\6",linha)

print '\n' + line + '\n' + linha + '\n'

ofile.write(linha)

ofile.close()

ifile.close()

Neste ponto, foram feitas algumas substituições utilizando expressões regulares a partir do arquivo original, e salvando num arquivo temporário com a extensão .tmp. Agora vamos abrir o arquivo temporário para leitura. No meu caso, utilizei os dados para cadastrá-los no banco MySQL, mas neste exemplo, apenas vamos imprimir o resultado na tela.


ofile  = open(nome + ".tmp", "rb")
reader = csv.reader(ofile)

rownum = 0
for row in reader:
# Salva o cabeçalho
if rownum == 0:
header = row
else:
colnum = 0
for col in row:

# imprime a linha, com o respectivo nome do campo, salvo do cabeçalho
print '%-8s: %s - %d' % (header[colnum], col, colnum)

colnum += 1

rownum += 1

ofile.close()
os.remove(nome + ".tmp")

 

 

Posts Relacionados:

O Hobbit em quadrinhos (the hoobit)

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

O Hobbit - capa de revista em quadrinhosApesar deste assunto fugir do propósito deste blog, resolvi compartilhar esse link, pois o livro O Hobbit foi dos livros que mais gostei de ler. Recentemente encontrei uma versão em quadrinhos, ideal para ler em tablet.

O Hobbit

O Hobbit é um dos livros mais importantes de J. R. R. Tolkien, prelúdio a O Senhor dos Anéis. Conta a história de Bilbo Bolseiro, um Hobbit pacato e satisfeito cuja vida vira de cabeça para baixo quando ele se junta ao mago Gandalf e a treze anões em sua jornada para reaver um tesouro roubado. Esta versão em quadrinhos, cuidadosamente condensada por Charles Dixon e ilustrada por David Wenzel, tornou-se por si só um best-seller clássico.

Muitos fãs de Tolkien citam a história de “O Hobbit” como a sua favorita, mais do que a cosmologia de “Silmarilion” ou o caráter épico da Trilogia do Anel. A história, escrita para crianças, foi um grande sucesso editorial quando lançado em 1937 e se tornou um prelúdio fascinante para “Senhor dos Anéis”. O livro conta a história de Bilbo Bolseiro, um Hobbit pacato e satisfeito cuja vida vira de cabeça para baixo quando ele se junta ao mago Gandalf e a treze anões em sua jornada para reaver um tesouro roubado.

É uma viagem repleta de perigos – e no fim Bilbo encara sozinho o guardião do tesouro, o mais terrível dragão de toda a Terra-Média.

Esta versão em quadrinhos, cuidadosamente condensada por Charles Dixon e ilustrada por David Wenzel, tornou-se por si só um best-seller clássico. Um belo “aperitivo” aos fãs até o filme, com direção de Guilhermo Del Toro e previsão de lançamento em 2011.

O Hobbit Download

http://www.easy-share.com/D19835E2E52411E09676002481FAD55A/O_Hobbit_jrr_tolkien.zip

Gandalf tricks Bilbo into hosting a party for Thorin and his band of twelve dwarves, who sing of reclaiming the Lonely Mountain and its vast treasure from the dragon Smaug. When the music ends, Gandalf unveils a map showing a secret door into the Mountain and proposes that the dumbfounded Bilbo serve as the expedition’s “burglar”. The dwarves ridicule the idea, but Bilbo, indignant, joins despite himself.

The group travel into the wild, where Gandalf saves the company from trolls and leads them to Rivendell, where Elrond reveals more secrets from the map. Passing over the Misty Mountains, they are caught by goblins and driven deep underground. Although Gandalf rescues them, Bilbo gets separated from the others as they flee the goblins. Lost in the goblin tunnels, he stumbles across a mysterious ring and then encounters Gollum, who engages him in a game of riddles for the path out of the tunnels, or his demise. With the help of the ring, which confers invisibility, Bilbo escapes and rejoins the dwarves, improving his reputation with them. The goblins and Wargs give chase but the company are saved by eagles before resting in the house of Beorn.

The company enter the black forest of Mirkwood without Gandalf. In Mirkwood, Bilbo first saves the dwarves from giant spiders and then from the dungeons of the Wood-elves. Nearing the Lonely Mountain, the travellers are welcomed by the human inhabitants of Lake-town, who hope the dwarves will fulfil prophecies of Smaug’s demise. The expedition travel to the Mountain and find the secret door; Bilbo scouts the dragon’s lair, stealing a great cup and learning of a weakness in Smaug’s armour. The enraged dragon, deducing that Lake-town has aided the intruder, sets out to destroy the town. A noble thrush who overheard Bilbo’s report of Smaug’s vulnerability reports it to Bard, who slays the Dragon.

When the dwarves take possession of the mountain, Bilbo finds the Arkenstone, an heirloom of Thorin’s dynasty, and steals it. The Wood-elves and Lake-men besiege the Mountain and request compensation for their aid, reparations for Lake-town’s destruction, and settlement of old claims on the treasure. Thorin refuses and, having summoned his kin from the mountains of the North, reinforces his position. Bilbo tries to ransom the Arkenstone to head off a war, but Thorin is intransigent. He banishes Bilbo, and battle seems inevitable.

Gandalf reappears to warn all of an approaching army of goblins and Wargs. The dwarves, men, and elves band together, but only with the timely arrival of the eagles and Beorn do they win the climactic Battle of Five Armies. Thorin is fatally wounded and reconciles with Bilbo before he dies. Bilbo accepts only a small portion of his share of the treasure, having no want or need for more, but still returns home a very wealthy hobbit.

O Hobbit Download

http://www.easy-share.com/D19835E2E52411E09676002481FAD55A/O_Hobbit_jrr_tolkien.zip

Posts Relacionados:

  • Nenhum

Desenvolvimento web: frameworks PHP vs Ruby on Rails vs Python on Django

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.
Com o objetivo de encontrar uma linguagem/framework de programação web, que tenha robustez, rapidez e simplicidade de desenvolvimento e manutenção, facilidade de gerenciamento de templates/design, facilidade de integração de novas funcionalidades, menor curva de aprendizagem e melhor relação custo-benefício, ampla documentação e comunidade envolvida entre outros fatores que facilitam a vida de um desenvolvedor web, fiz algumas pesquisas para comparar linguagens de programação para a web, e seus respectivos frameworks de desenvolvimento.
Escolhi as linguagens PHP, Ruby e Python para a pesquisa, devido aos seguintes fatores:
  • PHP: maior comunidade do mundo de desenvolvimento Web, minha linguagem atual
  • Ruby (on Rails): Teve um boom de muitos desenvolvedores falando que é melhor, mais limpo e mais rápido de desenvolver do  que PHP, e que migraram para o Rails. Grandes portais, como o Twitter, usam Ruby on Rails.
  • Python: Ultimamente tenho ouvido muito falar de Python para o desenvolvimento web, com muitos elogios sobre a robustez e rapidez de desenvolvimento.
Usei também o Google Insights for Search para pesquisar o interesse das pessoas, e usei um filtro para o nicho Internet -> Web Design e Desenvolvimento. Portanto, nos gráficos do Insigths, para uma melhor comparação por nicho, clique na aba ”Crescimento com relação à categoria Web design e desenvo…”.

Gráficos do Google Insights for Search

Lembre-se de clicar na aba “Crescimento com relação à categoria Web design e desenvo…”.

Interesses por PHP, Ruby e Python, usando como termso de pesquisa os frameworks yii (php), rails (ruby), django (python), cake php, zend :

http://www.google.com/insights/search/#cat=422&q=yii%2Crails%2Cdjango%2Ccake%20php%2Czend%20framework&cmpt=q

Pelas linguagens puras (PHP, Ruby, Python e Java):

Numa comparação de interesses entre PHP, Ruby, Ruby on Rails, Yii e Django, temos o seguinte gráfico:
 
É perceptível que existe uma rivalidade desigual entre PHP e Ruby on Rails. Isso porque Rails é um framework de desenvolvimento em Ruby. A comunidade Rails, dos quais muitos migraram do PHP, diz que o PHP é sujo, de difícil manutenção, enquanto o Ruby on Rails é limpo, e de rápido desenvolvimento e manutenção. Porém, o correto seria comparar Ruby on Rails com algum framework PHP. Em função disso, e por eu não possuir muita experiência com framework PHP, resolvi buscar, na opnião da comunidade PHP, qual é o melhor framework PHP. Pesquisei no google por ”best php framework“.

Conforme uma pesquisa realizada, cujo resultado está em http://www.phpframeworks.com/top-10-php-frameworks/, Yii é o mais votado como o melhor framework PHP, em resultados recentes, seguido pelo CodeIgniter e depois pelo Cake PHP. Cake PHP é um framework inspirado no Ruby on Rails.

Conforme o gráfico do Google Insights, o interesse por Django, um framework para Python, vem crescendo numa escala menor do que o Yii, porém, percebe-se que não existe um modismo como aconteceu com o Ruby on Rails, que deu um salto, e que começou a cair com o lançamento do Yii (o interesse pelo framework Zend também caiu).

Uma pesquisa de comparação entre o CodeIgniter, o Yii, o Cake PHP e o Zend foi realizada pelo HipRank: http://www.hiprank.com/cakephp-vs-codeigniter-vs-yii-vs-zend.html. Os resultados mostram que o Yii e CodeIgniner são jovens, porém muito bem cotados, seguido pelo Cake PHP, com muitos pontos positivos, enaquanto o Zend não está muito bem cotado, tendo quase 50% de pontos negativos.

Particularmente, minha experiência com Zend não foi muito boa. Achei complicado, e acredito não ser a melhor referência para comparar com o Ruby on Rails. Também não levei muito a fundo a minha experiência com o Cake PHP, mas pelo pouco que tive, foi muito melhor que com o Zend. Nunca usei o CodeIgniter nem o Yii.

Comparando Ruby on Rails com frameworks PHP

A partir dos resultados do Google Insights (http://www.google.com/insights/search/#cat=422&q=yii%2Crails%2Czend%2Ccake%20php%2Ccodeigniter&cmpt=q), comparando Yii, CodeIgniter, Rails, Zend, e Cake PHP, é possível obter as seguintes conclusões:
  • Zend é mais antigo de todos, portanto, deve possuir uma maior comunidade.
  • O interesse por Ruby on Rails começou a cair após o lançamento do CodeIgniter (meados de 2006).
  • O interesse pelo Zend começou a cair após o lançamento do Yii (meados de 2008), assim como o interesse pelo Cake PHP.
  • O interesse por CodeIgniter é o maior de todos, desde antes do lançamento do Yii.
  • A curva de interesse pelo Yii vem crescendo de forma semelhante ao do CodeIgniter, consistente e muito menor que o crescimento do interesse por Ruby on Rails (considero que a taxa de interesse do Ruby on Rails foi um boom quando não existia um bom framework PHP que pudesse ser equiparado).
A partir do post no blog do O’Reilly, um grande formador de opniões, foram apresentadas 7 razões para que o autor do post voltasse ao PHP após 2 anos de experiência com o Ruby on Rails.
Neste momento, ainda prefiro usar um framework PHP ao invés de Ruby on Rails, ficando entre os dois frameworks PHP: Yii e CodeIgniter. Falta ainda a comparação com Python on Django.
Uma nova comparação por interesse no Google Insights for Search entre Django, CodeIgniter e Yii (http://www.google.com/insights/search/#cat=422&q=yii%2Ccodeigniter%2Cdjango&cmpt=q) mostra que o interesse por Django ficou praticamente estável após o lançamento do Yii.
Como a taxa de crescimento do CodeIgniter permaneceu, e a partir das análises anteriores, concluo superficialmente que os desenvolvedores do Ruby on Rails migraram para o CodeIgniter, e os do Zend, Cake PHP e Django começaram a migrar para o Yii (para o desenvolvimento web).

Comparação entre PHP e Python

Na pesquisa, encontrei algumas comparações entre Python e PHP, como disponíveis em  http://wiki.python.org/moin/PythonVsPhphttp://tech.t9i.in/2010/07/php-vs-python-for-web-apps/. Minhas conclusões embasadas nestas comparações são:
  • Python é mais geral que PHP, podendo ser usado tando para web como para aplicações desktop
  • PHP é totalmente voltado para a web, sendo melhor de se utilizar para este propósito
  • Praticamente, para a web, tudo o que o PHP faz, o Pyton faz, e vice-versa.
  • PHP é mais fácil de se aprender do que Python, para a Web.
  • A configuração PHP é mais fácil que a do Python (assim como Ruby)
  • Python está inclinando esforços para facilitar o desenvolvimento web.

Conlusão entre Python e PHP

Para aplicações web, ainda prefiro usar o PHP. Mas acredito que o Python possa se tornar uma linguagem para o futuro da web. Apesar de não ter realizado uma pesquisa mais aprofundada, acredito que com Python é ou será possível construir funcionalidades como o Google Docs (atualmente feito em Java). Logo, vou aprender mais sobre Python, mas ainda continuarei usando PHP.

CodeIgniter vs Yii

Uma comparação realizada em http://www.phpframeworks.com/php-framework-comparison/comparion.php?id=9-19, mostra que o Yii é superior ao CodeIgniter. Pesquisas semelhantes revelam que os desenvolvedores do CodeIgniter estão testando e preferindo trabalhar com o Yii.
Avaliando as informações disponíveis nos sites do Yii (http://www.yiiframework.com/) e no site do CodeIgniter (http://codeigniter.com/), e as opiniões da comunidade de desenvolvedores, para o desenvolvimento PHP, vou apostar no Yii.

Posts Relacionados:

  • Nenhum

Descubra o seu nível de inglês – teste de inglês online gratuito

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

O melhor teste de inglês do Brasil!

Faça um teste de inglês online grátis e saiba seu nível de inglês e como melhorá-lo e concorra a uma bolsa de estudos de inglês.

  • Saiba seu nível de inglês em 10 minutos.
  • Descubra quanto tempo você precisa para aprender inglês.
  • Ganhe um estudo personalizado e 7 dias de curso grátis.

Participe e concorra a 3 meses grátis

http://www.testemeuingles.com/?idi=6

Posts Relacionados:

  • Nenhum

Como proteger arquivos e pastas com senha no ubuntu linux usando htaccess e htpasswd

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

Seguindo o exemplo do post anterior (http://blog.idealmind.com.br/servidores/como-criar-um-link-simbolico-no-ubuntu-linux/), vou exemplificar como criar uma proteção, ou seja, restringir o acesso de um arquivo através de login e senha, onde o servidor requer autenticação, através de htaccess e htpasswd, para acessar ou fazer o download de um arquivo restrito.

Como no exemplo do post anterior, a idéia é proteger o download do arquivo em http://www.exemplo.com.br/backup/backupdb.sql.gz (que é um link simbólico puxando um arquivo em outro diretório do servidor).

A proteção pode ser feita utilizando o htacces e o htpasswd. Assim:

Entre no diretório onde está o arquivo que você quer restringir:
$ cd /home/exemplo/backup
home/exemplo/backup$ htpasswd -c restrito nomedousuario
New password:
Re-type new password:
Adding password for user nomedousuario
home/exemplo/backup$

onde restrito é o nome do arquivo que arqmazena os usuários e as senhas, e nome do usuário é o nome do usuário que terá acesso.Você vai digitar a senha de acesso para este usuário logo em seguida, e confirmar a senha.

Neste momento, você terá criado um usuário que poderá acessar o arquivo. Porém, o arquivo ainda não está protegido. Então faça o seguinte:
Crie um arquivo .htaccess dentro dessa pasta (/home/exemplo/backup), utilizando, por exemplo,o vim:

home/exemplo/backup$ vim .htaccess

e insira o seguinte conteúdo no arquivo .htaccess:

AuthName “Acesso Restrito”
AuthType Basic
AuthUserFile /home/exemplo/backup/restrito
require valid-user

salve e feche o vim (:x).

Pronto, a partir desse momento, para qualquer usuário que acessar http://www.exemplo.com.br/backup/backupdb.sql.gz, será solicitado um login e uma senha, e o acesso ao download do arquivo somente será liberado se o usuário for autenticado com sucesso.

A analogia é a mesma para restrição de diretórios.

Se você quiser adicionar mais usuários para se autenticar com logins e senhas diferentes, basta dar o comando:

home/exemplo/backup$ htpasswd restrito nomedeoutrousuario
New password:
Re-type new password:
Adding password for user nomedeoutrousuario

Note que não precisa do parâmetro -c, que especifica que o arquivo restrito deve ser criado, pois ele já existe.

Posts Relacionados:

Como criar um link simbólico no ubuntu linux

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

Ontem eu tive a necessidade de criar um link simbólico, de forma a disponibilizar o download de um arquivo dentro de uma pasta na raíz do servidor linux.

Para ser mais específico, eu precisei disponibilizar o download do backup do banco de dados, via http, para usuários que não têm acesso ssh e ftp ao servidor, mas que precisam da ultima versão do backup do banco de dados. Porém, o backup fica armazenado em uma pasta dentro da raíz do servidor, de forma que não seria muito prático apenas colocar o backup do banco dentro de uma pasta real que possibilitasse o download direto via http.

A solução foi criar um link simbólico, para que quando os usuários solicitassem o acesso ao arquivo via http, fosse disponibilizado o download do arquivo original, na pasta original.

Vamos à prática.

Supondo que você tenha um arquivo, tipo, no meu caso, backupbd.sql.gz, na pasta /home/backups/, e você quer disponibilizar o download via http, através de um link http://www.exemplo.com.br/backup/backupdb.sql.gz, desse mesmo arquivo.

Se a pasta raíz do seu site se localiza em /home/exemplo ( http://www.exemplo.com.br aponta para /home/exemplo ), você vai criar a pasta backup dentro desse diretório.

$ cd /home/exemplo
home/exemplo$ mkdir backup
home/exemplo$ cd backup
home/exemplo/backups$ ln -s /home/backups/backupbd.sql.gz backupdb.sql.gz

Pronto, você fez um link simbólico, onde se os usuários acessarem http://www.exemplo.com.br/backup/backupdb.sql.gz, será disponibilizado o download do arquivo backupbd.sql.gz localizado em /home/backups/.

Para criar um link simbólico de uma pasta, você usa a mesma lógica.

No próximo post, vou mostrar, ainda em cima deste exemplo, como proteger o download do arquivo via http, solicitando uma senha, através do .htaccess e .htpasswd.

Posts Relacionados:

Criando virtual hosts no linux ubuntu 9.10

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

Para criar um virtual host no apache2 instalado no ubuntu 9.10 (acerdito que funciona também em outras versões do ubuntu), siga os passos abaixo:

Por padrão, o diretório do apache é /var/www

Você pode criar pastas dentro desse diretório, que serão os vhosts. Se o diretório estiver protegido, no terminal execute o seguinte comando:

sudo chmod 777 /var/www

Crie dentro desse diretório um novo diretório chamado, por exemplo, meusite.local
No terminal:
mkdir /var/www/meusite.local
sudo getdit /etc/apache2/sites-available/meusite.local

Adicione o seguinte código:

<VirtualHost *:80>
	ServerName meusite.local
	DocumentRoot /var/www/meusite.local
	<Directory /var/www/meusite.local/>
		Options FollowSymLinks
		AllowOverride None
		Order deny,allow
		Allow from all
	</Directory>
</VirtualHost>

Salve e feche.

Edite o arquivo hosts do Ubuntu:

sudo gedit /etc/hosts

Adicione a seguinte linha:
127.0.0.1 meusite.local

Salve e feche.

Abra o arquivo
sudo gedit /etc/apache2/apache2.conf
e certifique-se de que ele possua as linhas

NameVirtualHost *:80
Listen 80

Edite se preciso (adicione as linhas), salve e feche.

No terminal, desabilite o site default do apache:
a2dissite default
e habilite o seu vhost:
a2ensite meusite.local

Dê o seguinte comando
sudo /etc/init.d/apache2 reload

Vá até o diretório /var/www/meusite.local, e crie um novo arquivo, index.html, e insira e salve o seguinte código:

<h1>Funciona!</h1><h2>Esta é a página inicial de meusite.local</h2>

Abra o navegador e acesse http://meusite.local

Você deverá ver as mensagens editadas no arquivo.

Pronto! Você criou um virtual host!

Para criar outros, siga o mesmo processo, substituindo meusite.local pelo nome do seu novo virtual host.

Só para deixar claro, o diretório não precisa ter o mesmo nome do virtual host.

Posts Relacionados:

  • Nenhum

fixPng Jquery Plugin ie6

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

Download & Demo

Demo: http://blog.idealmind.com.br/exemplos/fixpng/
Download: http://blog.idealmind.com.br/exemplos/fixpng/fixpng.rar

ENGLISH

This plugin solves the problems of transparency in PNG in Internet Explorer 6.

It looks for all the images and puts them in the background with an opacity filter, replacing the original image with a transparent 1px gif.

Using


<script type="text/javascript" src="js/jquery.js"></script>
 <script type="text/javascript" src="js/fixpng.js"></script>
 <script type="text/javascript">
 $(document).ready(function(){
 $("body").fixPng();
 });
 </script>

The code to put images not changes:


<img src="img/image.png" alt="png image" />

Options


$("body").fixPng( [ string gif_file, string attr, string noreplace ] );

gif_file – If you use a file different then “img/vazio.gif”, use this option to set the correct path to a transparent gif.

attr – If you do not want to apply the filter on a specific image, use this option to set the attribute of the image that will not have the filter. The default is the attribute ‘rel’.

noreplace – The attribute value defined above. The default is ‘noreplace’.

Example


$("body").fixPng( "images/null.gif", "class", "nofixpng" );

Image that will not filter


<img src="img/imagem.png" class="test nofixpng" />

PORTUGUÊS

Este plugin resolve os problemas de transparência em PNG no Internet Explorer 6.

Ele procura por todas as imagens e as coloca em background com um filtro de opacidade, substituindo a imagem original por um gif transparente de 1px.

Como usar


<script type="text/javascript" src="js/jquery.js"></script>
 <script type="text/javascript" src="js/fixpng.js"></script>
 <script type="text/javascript">
 $(document).ready(function(){
 $("body").fixPng();
 });
 </script>

O código de iserção das imagens é normal:


<img src="img/imagem.png" alt="png image" />

Opções


$("body").fixPng( [ string gif_file, string attr, string noreplace ] );

gif_file – Se você for usar um gif diferente de “img/vazio.gif”, use esta opção para definir o caminho correto.

attr – Se você não deseja aplicar o filtro em uma determinada imagem, use esta opção para definir o atributo da imagem que não terá o filtro. O padrão é o atributo ‘rel’.

noreplace – O valor do atributo definido acima. O padrão é ‘noreplace’.

Exemplo


$("body").fixPng( "images/null.gif", "class", "nofixpng" );

Imagem que não terá o filtro


<img src="img/imagem.png" class="test nofixpng" />

 

Licence/Licença

This plugin is under GNU GENERAL PUBLIC LICENSE.


Posts Relacionados:

Como criar um disco virtual

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

Para criar um disco virtual a partir de um computador na rede, no windows, basta usar o comando:

Iniciar -> Executar (ou na linha de comando CMD do windows)
subst P: \\computador\pasta

onde P: será o nome do disco virtual, e \\computador é o nome do computador na rede, e \pasta é a pasta compartilhada do computador.

A pasta obrigatoriamente deve estar compartilhada para que seja acessada remotamente.

How to create a virtual drive

To create a virtual drive from a shared computer on the network, you need to use this command:

Start -> Run
subst P: \\computer\folder

where P: is the name of the virtual drive created, and \\computer\folder is the shared folder from a pc on the network.

Posts Relacionados:

  • Nenhum

Simple AutoComplete JQuery Plugin

Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

DOWNLOAD

http://blog.idealmind.com.br/exemplos/simpleautocomplete/simpleautocomplete.rar

DEMO

http://blog.idealmind.com.br/exemplos/simpleautocomplete/

ENGLISH

Simple AutoComplete JQuery Plugin screenshot

The Simple JQuery AutoComplete Plugin allows you to add autocomplete functionality easily in text fields on your site.

It also has resources to bring other data in the autocomplete list, as the id of the element, performing a callback function to store these data in other inputs.

You can also:
* Use multiple autocomplete on the same page
* Pass an extra parameter to filter the results of a sql query
* Stylize each autocomplete in different ways.

How to use it

To use the Simple AutoComplete JQuery Plugin is very easy. Just use the syntax:

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="simpleautocomplete.js"></script>
<script type="text/javascript">
	$(document).ready(function(){
		$("#input_fied_id").simpleAutoComplete("query_processor.php");
	});
</script>

Enter the css that will be used to style the auto complete:

<link rel="stylesheet" type="text/css" href="simpleAutoComplete.css" />

And the field that will run the autocomplete:

<input type="text" id="input_fied_id" name="estado" />

Optional Features:

Callback Function

You can use a callback function that will be performed by selecting an autocomplete item, bringing extra data.

To do it, use the syntax:

<script type="text/javascript">
	$(document).ready(function(){
		$("#input_fied_id").simpleAutoComplete("query_processor.php",null,callbackfunctionName);
	});

	// And create a callbackfunction
	function callbackfunctionName( par )
	{
		$("#id_estado").val( par[0] );
	}
</script>

The variable ‘par’ is a vector with additional data brought by the query for each item (stored in an attribute of the item).

The callback is useful for you to bring other data beyond what appears in the autocomplete, as the id of an autocomplete option, or any other data (see the demo that illustrates this feature) to be returned by the file that runs the query, and store it in the input “id_estado” (you can bring as many parameters as you want, and store them in different fields).

Optional parameters

You can use the optional parameters to add more detail and customize each autocomplete.

identifier : to enable the file (eg php) that will process the query to identify which query is processed, and to identify an autocomplete on a page that has more than one autocomplete.

autoCompleteClassName : if you want to use a custom css class name (default ‘autocomplete’). This is useful to avoid conflicts, or if you want to style each autocomplete differently.

selectedClassName : has the same purpose autoCompleteClassName, but applies for the pre-selected autocomplete item, eg, on mouse over (default ‘sel’).

attrCallBack : if you want to store the parameters that will be passed to the callback function in other list attribute (default ‘rel’).

extraParamFromInput : useful if you want to pass an additional parameter to the query, in order to filter the results. This value must be one input field (this way the value can be variable).

Compatibility

Simple AutoComplete version 1.1.0 has been tested, exhibiting the same behavior in the following browsers: IE6, IE7, IE8, Safari, Chrome and Firefox.


PORTUGUÊS

Hoje eu criei um novo sistema autocomplete, para substituir o antigo que estava tento bugs no IE. Este autocomplete é um plugin JQuery, fácil de integrar e customizar.

Simple AutoComplete JQuery Plugin screenshot

O Simple AutoComplete JQuery Plugin permite que você adicione a funcionalidade de autocomplete facilmente em campos de texto do seu site.

Ele também possui recursos para trazer outros dados na lista do autocomplete, como o id do elemento, executando uma função de callback para armazenar estes dados em outros inputs.

Você ainda pode:
* utilizar vários autocompletes numa mesma página
* passar um parâmetro extra para filtrar os resultados de uma consulta sql
* estilizar cada autocomplete de maneiras diferentes.

Como usar

Para usar o Simple AutoComplete JQuery Plugin é muito fácil. Basta usar a sintaxe:

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="simpleautocomplete.js"></script>
<script type="text/javascript">
	$(document).ready(function(){
		$("#input_fied_id").simpleAutoComplete("query_processor.php");
	});
</script>

Insira o css que será usado para estilizar o auto complete:

<link rel="stylesheet" type="text/css" href="simpleAutoComplete.css" />

E o campo que será executado o autocomplete:

<input type="text" id="input_fied_id" name="estado" />

Recursos opcionais:

Função de Callback

Você pode utilizar uma função de callback, que será executada ao selecionar um item do autocomplete, trazendo dados extras.

Para isso, utilize a sintaxe:

<script type="text/javascript">
	$(document).ready(function(){
		$("#input_fied_id").simpleAutoComplete("query_processor.php",null,callbackfunction);
	});

	// E crie a função de callback
	function callbackfunction( par )
	{
		$("#id_estado").val( par[0] );
	}
</script>

A variável ‘par’ é um vetor com dados adicionais trazidos pela consulta para cada item (armazenados em um atributo do item).

O callback é util para você trazer outros dados além do que aparecerá no autocomplete, como o id de uma opção do autocomplete, ou qualquer outro dado (veja o demo que exemplifica esta funcionalidade), que será retornado pelo arquivo que executará a consulta, e armazenar no input “id_estado” (você pode trazer quantos parâmetros quiser, e armazená-los em campos diferentes).

Parâmetros opcionais

Você pode utilizar os parâmetros opcionais para adicionar mais detalhes e personalizar cada autocomplete.

São eles:

identifier : útil para que o arquivo (php por exemplo) que processará a consulta possa identificar qual consulta será processada, e para identificar um autocomplete numa página que tenha mais de um autocomplete.

autoCompleteClassName : caso você queira utilizar um nome de classe css diferente da padrão (padrão ‘autocomplete’). Isso é útil para evitar conflitos, ou caso você queira estilizar diferentemente vários autocompletes.

selectedClassName : tem o mesmo propósito de autoCompleteClassName, porém se aplica à opção pré-selecionada dos resultados do autocomplete (padrão ‘sel’).

attrCallBack : caso você queira que os parâmetros que serão passados para a função de callback sejam armazenados em um atributo diferente do padrão, que é ‘rel’.

extraParamFromInput : útil caso você queira passar um parâmetro adicional à consulta, com o intuito de filtrar os resultados. Este valor deve estar em um campo input (desta forma o valor pode ser variável).

Compatibilidade

O Plugin simpleAutoComplete foi testado apresentando o mesmo comportamento, nos seguintes navegadores: IE6, IE7, IE8, Safari, Chrome e Firefox.

Licence

This plugin is under GNU GENERAL PUBLIC LICENSE.


Posts Relacionados:

SEO Powered by Platinum SEO from Techblissonline