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

Esta é minha lista de artigos com a tag "MIME"

Links comentados via del.icio.us – 8

Por: Flávio Theruo KaminisseThursday 30 November 2006 às 5:46 PM

Este é o oitavo artigo da série links comentados do Japs, quem perdeu algum ou está conhecendo esta série agora pode acompanhar as outras edições por aqui, Categoria Links Comentados.

Só para lembrar, quem quiser continuar recebendo os links que adiciono via del.icio.us em seu feed, basta assinar o Del.icio.us do Japs.

Vou iniciar uma nova forma de comentar os links, vou tentar ser bem suscinto, nos comentários e postar mais links.

JS, just it: Parte 1 – Acessando elementos por JavaScript, JS, just it : Parte 2 – Implementando o getElementsByClassName e JS, just it : Parte 3 – Modificando Atributos por JavaScript, artigos muito interessantes sobre JavaScript.

Por dentro do AdSense: Que tal uma fazer Blogtimização?, dicas para otimizar anúncios em seu blog.

Tá difícil…, se alguma coisa estiver dificil, este é o lugar de você iniciar a reclamação.

document.write and xhtml, artigo muito interessante para resolver este problema, eu já tive problema com isso reportado no artigo O mime-type do Japs agora é application/xhtml+xml.

Photosynth – espaços 3D navegáveis baseados em coleções de fotos e Como fazer feeds de sites dos outros com PHP, dois artigos muito interessantes do Bruno Torres.

E-book sobre PostgreSQL, o título já diz tudo, quem utiliza ou quer conhecer o PostgreSQL.

Problemas com acentos e outros caracteres em partições vfat, dicas muito interessante.

Ajax/Javascript Com DHTMLGoodies: Resulta em interfaces profissionais, muito interessante, recomendo.

GTD: Conheça um método eficaz de organização e produtividade pessoal que pode melhorar sua motivação e seus resultados, ainda não conhece esta metodologia? Deveria conhecer!

Anúncio: ‘Disponível a 4a. Edição do Guia do Linux Desktop!’, vale a pena conferir.

Calando conversas chatas no GMail, dica muito interessante para quem utiliza o Gmail.

Run: Universal JavaScript Animation Framework, não conhece? Deveria!

JSOC: JavaScript Object Cache, dica muito, muito útil.

Race Conditions with Ajax and PHP, outra dica muito, muito útil.

Pequeno aplicativo para criar .ISO, outra dica bastante útil.

Expressões Regulares – Uma Abordagem Divertida, livro do Aurélio Marinho Jargas sobre Expressões Regulares, vale a pena conferir e compra, eu ainda não comprei mas vou comprar.

E o último de hoje: A Deal’s a Deal, que segue com a imagem abaixo.

A Deal's a Deal

Espero que tenham gostado destas indicações de hoje que tiveram mais links do que comentários sobre o link, e quem quiser continuar recebendo os links que adiciono via del.icio.us em seu feed, basta assinar o Del.icio.us do Japs.

E quem tiver mais alguma colaboração, pode postar nos comentários, ou então me enviar.

Powered by Zoundry

Comentários: 290

Tags: AdSense AJAX Charsets Content Negotiation del.icio.us Dicas Download e-book Expressões Regulares Internet JavaScript links Links Comentados Linux MIME PHP Programação Prototype Software Livre Tecnologia

O mime-type do Japs agora é application/xhtml+xml

Por: Flávio Theruo KaminisseTuesday 28 March 2006 às 1:31 PM

Aproveitando os estudos realizados no último post sobre content negotiation, e um pequeno empurrãozinho do Henrique, resolvemos utilizar o script do artigo anterior e deixar que todas as páginas XHTML fossem enviadas como application/xhtml+xml.

É verdade, agora todas as páginas do blog são enviadas como application/xhtml+xml, como já falei no post anterior, existem alguns riscos de se enviar páginas assim, principalmente em um blog que é bastante dinâmico, mas resolvi correr este risco e experimentar.

Fiz uma verificação de todos os artigos, tive que ajustar algumas coisas, mas a migração foi tranquila, estou utilizando o plugin X-Valid: XHTML validifier, e logo estarei dando minhas opniões sobre o mesmo.

Até o Google Adsense está funcionando corretamente, falo assim porque o Google utiliza um iframe para exibir seus anúncios e uma chamada document.write(), que não funciona em xml e graças ao post seguindo à risca os padrões, arrumei o script e esta tudo funcionando.

Mais detalhes sobre application/xhtml+xml podem ser lidos no artigo mudei meu mime-type e também no artigo XHTML Media Types.

Algumas pessoas me escreveram falando de problemas no uso de acentos em arquivos JavaScript quando se utiliza a codificação UTF-8, o Alessandro escreveu o artigo problemas com caracteres em JavaScript que mostra como resolver este problema, vale a pena a leitura.

Espero que entendam qualquer erro que possa aparecer nas páginas XHTML do blog, fiquem tranquilos que estarei arrumando o mais rápido possível.

Comentários: 570

Tags: Content Negotiation Firefox Google MIME PHP Tecnologia XHTML

Content Negotiation

Por: Flávio Theruo KaminisseSaturday 25 March 2006 às 11:07 AM

Nestes últimos dias, andei lendo bastante sobre um assunto que despertou bastante minha curiosidade, vou descrever o pouco que entendi sobre este assunto, o qual, achei muito interessante, caso eu cometa algum erro, sinta-se a vontade para corrigir, pois ainda estou aprendendo.

O assunto deste post é content negotiation, mas afinal de contas, o que é content negotiation?

Content negotiation é a forma como o servidor, no caso de PHP rodando em ambiente Linux, Apache, negocia com os user agent (Browser, Mecanismos de busca, e outros) a requisição de cada documento, nesta “negociação” o user agent informa quais media types (também chamado de content type e MIME type) ele pode interpretar. Um exemplo prático: No caso de você possuir duas imagens iguais, uma GIF e uma PNG, alguns browsers, como é o caso do ie, não interpretam PNG, então o user agent browser, fala para o servidor quais tipos MIME ele pode interpretar, então o servidor ao invés de enviar a imagem PNG, envia a imagem no formato GIF, pois é um formato que o user agent pode interpretar corretamente.

Em suma, o user agent anuncia quais MIME ele pode interpretar no header da página e envia para o servidor, este header especificamente é chamado de Accept, um exemplo do header Accept do Firefox é:

Accept: text/xml, application/xml, application/xhtml+xml, text/html;q=0.9, text/plain;q=0.8, image/png, image/jpeg, image/gif;q=0.2, */*;q=0.1

Agora que todo mundo já sabe o que significa content negotiation, vamos ao verdadeiro propósito deste post, que além de descrever um pouco do que é content negotiation, tem como objetivo falar um pouco sobre um MIME específico que é o application/xhtml+xml, pois não sei se todos sabem, mas documentos XHTML, podem utilizar o MIME application/xhtml+xml, mas o único problema é que nem todos os browsers suportam o MIME application/xhtml+xml, como vimos no exemplo acima, o Firefox aceita este MIME, já o ie não.

Mas e se por um acaso eu quiser enviar meus documentos XHTML com o MIME application/xhtml+xml? Eu não posso?

É claro que você pode, mas se você enviar as páginas diretamente com MIME application/xhtml+xml, o ie não vai nem abrir sua página, então quer dizer que eu não posso utilizar application/xhtml+xml em meus documentos!

Poder você pode, mas antes disso você tem que utilizar um pequeno trecho de código para que funcione corretamente em todos os browsers, e por exemplo o ie consiga acessar sua página sem problemas, vou apresentar agora um pequeno trecho de código para que este problema seja resolvido, lembrando que este trecho de código foi retirado de uma de minhas referências.


<?php
if ( stristr($_SERVER["HTTP_ACCEPT"], "application/xhtml+xml" ) ||
     stristr($_SERVER["HTTP_USER_AGENT"], "W3C_Validator" ) ):
    header("Content-Type: application/xhtml+xml; charset=utf-8");
    header("Vary: Accept");
    echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
else:
    header("Content-Type: text/html; charset=utf-8");
    header("Vary: Accept")
endif;
?>

Basicamente o que este trecho de código faz é, caso o user agent aceite em seu MIME application/xhtml+xml, ou o user agent seja o W3C HTML Validator, o documento será enviado como application/xhtml+xml, caso o user agent não aceite, o documento será enviado como text/html.

Montei dois exemplos somente para mostrar o que acontece no caso de um MIME sendo enviado como application/xhtml+xml diretamente e outro sendo tratado com o exemplo que apresentei. A primeira página que envia o MIME como application/xhtml+xml diretamente pode ser acessada aqui, já um segundo exemplo que trata o MIME pode ser acessada aqui. Quem quiser baixar o primeiro exemplo basta clicar aqui, e o segundo exemplo aqui.

Um benefício ao se enviar o MIME como application/xhtml+xml, é que você nem precisa ficar validando seu site através do W3C HTML Validator, pois browsers como o Firefox, que são baseados no engine Gecko, mostram mensagens de erro e warnings, caso seu documento não seja válido, em contrapartida se pensarmos em um blog, e imaginarmos que a área de comentários é livre e nem todos precisam saber todas as regras de validação da W3C para postar em seu blog, caso algum comentário apresente algum erro, sua página ficará exibindo este erro até que o administrador do blog edite e arrume todos os erros e warnings, isso não é muito bom.

Existem plugins para o wordpress que analisam os comentários para testar qualquer tipo de erro e corrigi-los, mas nunca usei, e não sei da eficiência destes na correção.

Por enquanto é só isso, quem quiser saber mais sobre o assuto, pode visitar os endereços que usei como referência para este artigo, peguei um pouco de idéia de cada um, alguns trechos podem estar até bem parecido, mas tentei ao máximo explicar com minhas próprias palavras, vale acessar estes artigos, pois apresentam outros exemplos de modificação do MIME para application/xhtml+xml em outras linguagens e muitas outras informações:

Content negotiation | 456 Berea Street

Content Negotiation @ The Autistic Cuckoo

Keystone Websites: Serving up XHTML with the correct MIME type

X-Valid: XHTML validifier

Vou estudar mais e quem sabe num próximo artigo, aprofundar mais nestes e em outros assuntos semelhantes.

Como eu já disse no início do post, caso eu tenha cometido algum erro, fique a vontade para corrigir, criticar, dar idéias, e explicar melhor algum trecho que tenha ficado meio obscuro, pois como ja disse, estou aprendendo.

Comentários: 893

Tags: Content Negotiation Firefox MIME PHP Programação Tecnologia XHTML


  • Sigam-me no Twitter

Sobre o Japs

Foto do autor Flávio Theruo Kaminisse O Japs é o site pessoal do Flávio T. Kaminisse, atualmente trabalha com Análise de sistemas na Webroom Soluções Interativas, é formado em Ciência da Computação pela Universidade Federal de Uberlândia, é também especialista em Banco de Dados, tendo concluído sua pós-graduação pela Unitri, gosta de mexer um pouco com Linux, é responsável pela área de TI do Charges.com.br e Webinsider, e ainda arruma um tempinho para escrever sobre tecnologia, javascript, AJAX, desenvolvimento e outros assuntos interessantes por aqui. Leia mais.

Você ainda não tem estes livros na sua biblioteca? Cuidado! Você está ficando desatualizado.

  • Sistemas de Banco de Dados - Ramez E. Elmasri, Shamkant Navathe
  • PHP: a Bíblia - Tim Converse, Joyce Park
  • MySQL: a Bíblia - Steve Suehring
  • Fundamentos do Ajax - Ryan Asleson, Nathaniel T. Schutta
  • Hackers Expostos - Stuart Mcclure, Joel Scambray, George Kurtz
  • PHP 5: Programação Poderosa - Gutmans, Bakken, Rethans
  • Não me faça pensar! - Steve Krug
  • Google Adwords a Arte da Guerra - Ricardo Vaz Monteiro
  • Sandman - Neil Gaiman
  • The Art and Science of Web Design - Jeffrey Veen
  • Ansiedade de Informação 2 - RICHARD SAUL WURMAN
  • Mobile Web Design - Cameron Moll
Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

838 assinantes Assine o feed do Japs

Artigos por e-mail

Receba os últimos artigos do Japs no seu e-mail.


Encontre-me

O Japs recomenda

Blogs amigos:

Alguns sites e blogs que valem a pena ser visitados:

Pessoas que trabalham comigo:

Sites dos colegas de trabalho na Webroom.

Já trabalharam comigo: