Coisas De Web

Nome:
Local: Rio de Janeiro, RJ, Brazil

Que perguntinha hein?! Mas vamos lá, adoro estudar assuntos relacionados à web, sempre que posso aprendo uma tecnologia, técnica ou linguagem nova. Tento sempre ver quais são as tendências e acompanha-las, enfim eu sou um eterno aprendiz. Deixando o lado profissional, entrando no lado pessoal, sou uma pessoa super gente-boa (pelo menos eu me acho. rs), adoro curtir a night, sair com os amigos, fazer novas amizades e viajar (tem coisa melhor do que isso?) Acho que você já está sabendo demais sobre mim. Fuiii...

terça-feira, 24 de julho de 2007

Upload no PHP

Entrei em período de férias por isso que estou meio sumido e o pan também está gastando muito do meu tempo, adoro esportes, apesar de não praticá-los muito. rs
Olá galerinha, hoje vamos ver como se faz upload de arquivos no php, é molezinha.

Arquivo HTML:

<form enctype="multipart/form-data" action="/upload.php" method="POST">
<label for = "arqUsuario">Imagem</label>
<input name="arqUsuario" type="file" />
<input type="hidden" name="MAX_FILE_SIZE" value="3000000" />
<input type="submit" value="Send File" />
</form>



  • O "tipo" do formulário tem que ser multipart/form-data, para fazer o upload lá no servidor.

  • Um input do tipo file, responsavel por armazenar o endereço do arquivo na máquina do usuário, junto com ele vem um botão, que no FF o value é Browser, para procurar o arquivo, sem precisar digitar o endereço, porém não sei como mudar as características desse botão :(.

  • Um input hidden com name MAX_FILE_SIZE, responsável por indicar o tamanho máximo permitido do arquivo que vai ser feito o upload.

  • E é claro um submit para mandar o arquivo ao servidor e o php armazená-lo.



Agora no arquivo php:


$uploaddir = '/home/meusProjetos/upload/';
$arquivo = $_FILES['arqUsuario'];
$uploadfile = $uploaddir . basename($arquivo['name']);
if(!eregi("^image\/(pjpeg|jpeg|png|gif|bmp)$", $arquivo["type"])) {
echo "Arquivo em formato inválido! A imagem deve ser jpg, jpeg, bmp, gif
ou png. Envie outro arquivo";
} else if($arquivo["size"] > $_POST["MAX_FILE_SIZE"]) {
echo "Arquivo em tamanho muito grande! Envie outro arquivo";
} else {
if (move_uploaded_file($arquivo['tmp_name'], $uploadfile)) {
echo "Arquivo válido e o upload feito.\n";
chmod($uploadfile , 0766);
} else {
echo "Não foi possivel fazer o upload!\n";
}
}
?>


Antes de explicar, o código acima existem algumas observações a serem feitas.
Obs1: No phpconfig, tem que estar autorizado o upload de arquivos, e também, deve ser verificado o tamanho máximo de upload, que por padrão é dois megas, dependendo da sua necessidade terá que aumentá-lo.

Obs2:Quando a página php, é chamada já foi feito o upload do arquivo, porém ele está em uma pasta temporária, o php só vai ser responsável de mudar o diretório e o nome do arquivo.


  • $uploaddir é responsável pelo endereço definitivo do arquivo.

  • A variável $arquivo que recebe $_FILES['userfile'], possui todos os valores do arquivo

  • $uploadfile terá todo o caminho do arquivo

  • no primeiro if é verificado se o tipo do arquivo é diferente à uma imagem dos tipos (pjpeg|jpeg|png|gif|bmp), se for, ele não move o arquivo para uma pasta definitiva.

  • A instrução move_uploaded_file é a responsável por mover o arquivo de um diretório temporário para um definitivo (Oh! não me diga).

  • a instrução chmod(), irá trocar as permissões do arquivo, isso se faz necessário, para visualizar e modificar os arquivos, o 0766 lhe dá permissão de alterar e remover.



Acho que está tudo explicadinho, nos mííííííííínimos detalhes.

fuiii...

Marcadores: , ,

sexta-feira, 6 de julho de 2007

SO na Web

Meu povo e minha pova, tudo que se possa imaginar tem na internet, mas tem algumas iniciativas que merecem destaque, pois bem a idéia de desenvolver um SO na web, não é tão inovadora assim, mas essa aplicação é demais, lembra muito um desktop de verdade, e tem todas as tarefas básicas, incluido um editor de texto, explorer, alguns joguinhos (incluido xadrez no qual estou viciado), para você que desenvolve vale a pena dar uma conferida, porque assim tem-se uma idéia do que é possível fazer, e o melhor de tudo é open-Source, então carpem diem :)

Bom isso é um bom exemplo da tão famosa "web 2.0", no próximo post vou tentar escrever sobre o que penso sobre esse tema.

EyeOs

fuiii...

Marcadores:

terça-feira, 3 de julho de 2007

Programando nos Comentarios

Isso mesmo que você leu, o IEca (só podia ser ele), te permite programar nos comentários, essa é uma das práticas que uso para resolver problemas de renderização. Tipo float, position, entre outros.

O IEca como todos sabemos, tenta ao máximo não seguir a recomendações da W3C e portanto nos traz muitos problemas na hora de exibir o site da forma desejada, ainda bem que para transpassar esse problema existem várias técnicas, como:


  • Fazer dois css's, um para o IE e outro para o FF, e no javascript fazer a chamada do css correto.

  • Colocar uns hacks de underline, antes das propriedades.

  • Colocar as execessões do IE em comentário condicional.

  • Fica por conta da sua imaginação.



Essas são as três que conheço e considero legais, excluindo a segunda, pois colocando esses hacks o css não valida e é sempre bom tentar validar, infelizmente nem sempre isso é possível :(. Bom, prefiro trabalhar com o desvio condicional (muitas das vezes), pois, normalmente, só tenho que se alterar algumas propriedades, não são todas. Mas em algumas situações a melhor opção é testar o tipo de browser e carregar o css correto para o browser, sem mais lenga-lenga, vou mostrar como é uma estrutura do comentário condicional, agora vê se pode comentário condicional, só rindo mesmo. rs:

<!--[if IE]>
<style>
html {overflow:auto;}
</style>
<![endif]-->

Ás vezes é necessário especificar a versão do IE, pois a cada versão ele renderiza diferente.
Dentro das tag style, você já sabe, é como se estivesse no css e faz-se as alterações necessárias.

fuiii...

Marcadores: