<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5947903529521715221</id><updated>2011-07-07T16:40:01.259-07:00</updated><category term='javascript cancelar evento concorrência concorrentes eventos sobreposição sobrepostos'/><category term='função como saber maior idade PHP datas'/><category term='introdução apresentação'/><category term='Javascript Cast Random Arrays'/><category term='javascript datas cálculo dias diferença'/><category term='ajax'/><title type='text'>Blog do desenvolvimento em PHP</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>8</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5947903529521715221.post-1028905032645533923</id><published>2010-01-25T10:26:00.000-08:00</published><updated>2010-01-25T11:05:17.031-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript cancelar evento concorrência concorrentes eventos sobreposição sobrepostos'/><title type='text'>Como Cancelar um Evento em Javascript para Elementos Sobrepostos</title><content type='html'>Algumas vezes atribuímos o mesmo tipo de evento para elementos HTML que estão sobrepostos visualmente e isto gera concorrência. Algumas vezes queremos definir qual destes eventos será acionado e qual não será.&lt;br /&gt;&lt;br /&gt;Por exemplo, veja a lista abaixo:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_azdrSwKoh9Y/S13XJX_2VVI/AAAAAAAAAC0/3tGPO5YaiZE/s1600-h/exemplo_eventos_concorrentes.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_azdrSwKoh9Y/S13XJX_2VVI/AAAAAAAAAC0/3tGPO5YaiZE/s320/exemplo_eventos_concorrentes.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Vamos supor que ela foi composta com uma DIV com uma UL dentro:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_azdrSwKoh9Y/S13aR6gPg7I/AAAAAAAAAC8/QSlG9vOSoyM/s1600-h/html_lista_eventos_concorrentes.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_azdrSwKoh9Y/S13aR6gPg7I/AAAAAAAAAC8/QSlG9vOSoyM/s320/html_lista_eventos_concorrentes.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: xx-small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Vamos supor que queremos que, ao clicar em um item da lista LI, este se torne azul claro, indicando que está selecionado. Mas queremos que quando o usuário clique na área branca da DIV, nenhum elemento fique mais selecionado. Neste caso, devemos definir o evento onclick dos itens da lista e um outro evento onclick para a DIV. Porém, como os itens estão dentro da DIV, quando o usuário clicar no item, este clique será transferido também para a DIV. A consequência disso é que será chamada a rotina para selecionar o item mas, logo em seguida, será chamada a rotina para desselecionar. Como resolver esse tipo de problema?&lt;br /&gt;&lt;br /&gt;Simples: no evento onclick, definir o método que será chamado:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_azdrSwKoh9Y/S13jqlTxW0I/AAAAAAAAADE/Ds9wKH4bwOc/s1600-h/div_onclick.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_azdrSwKoh9Y/S13jqlTxW0I/AAAAAAAAADE/Ds9wKH4bwOc/s320/div_onclick.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;E...&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_azdrSwKoh9Y/S13jukXZCEI/AAAAAAAAADM/jbgZRcyxlqQ/s1600-h/li_onclick.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_azdrSwKoh9Y/S13jukXZCEI/AAAAAAAAADM/jbgZRcyxlqQ/s320/li_onclick.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;A função Seleciona() será acionada antes da Desseleciona() porque os itens LI são exibidos por cima da DIV. E agora, na função Seleciona(), deve se inserir o código abaixo que irá cancelar a chamada ao evento da DIV ou qualquer outra subsequente.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;155:  function Seleciona(event) {&lt;br /&gt;156:    if (typeof event.stopPropagation != "undefined") {&lt;br /&gt;157:      event.stopPropagation();&lt;br /&gt;158:    }&lt;br /&gt;159:    if (typeof event.cancelBubble  != "undefined") {&lt;br /&gt;160:      event.cancelBubble = true;&lt;br /&gt;161:    }&lt;br /&gt;162:  }&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&amp;nbsp;Pronto!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Obs:&lt;/b&gt; somente testado no IE e no Firefox. O primeiro IF é para o padrão Firefox, o segundo é para o padrão IE.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Obs:&lt;/b&gt; a palavra "&lt;i&gt;desseleciona&lt;/i&gt;" não existe :P&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Obs:&lt;/b&gt; para quem não sabe, &lt;i&gt;event&lt;/i&gt; é uma palavra reservada que indica o objeto manipulador do evento em questão.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5947903529521715221-1028905032645533923?l=oreidophp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/1028905032645533923/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5947903529521715221&amp;postID=1028905032645533923' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/1028905032645533923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/1028905032645533923'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/2010/01/como-cancelar-um-evento-em-javascript.html' title='Como Cancelar um Evento em Javascript para Elementos Sobrepostos'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_azdrSwKoh9Y/S13XJX_2VVI/AAAAAAAAAC0/3tGPO5YaiZE/s72-c/exemplo_eventos_concorrentes.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5947903529521715221.post-8006931548541819970</id><published>2010-01-18T03:08:00.000-08:00</published><updated>2010-01-18T03:16:59.941-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='função como saber maior idade PHP datas'/><title type='text'>Função para Verificar se Alguém É Maior de Idade</title><content type='html'>&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="syntax17"&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="syntax8"&gt;function&lt;/span&gt;&lt;span class="syntax8"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;MaiorIdade&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax10"&gt;$data_nasc&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;  &lt;span class="syntax8"&gt;list&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax10"&gt;$dia_nasc&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$mes_nasc&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$ano_nasc&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax9"&gt;explode&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax14"&gt;/&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$data_nasc&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt; &lt;br /&gt;  &lt;span class="syntax8"&gt;list&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax10"&gt;$dia_hoje&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$mes_hoje&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$ano_hoje&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax9"&gt;explode&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax14"&gt;/&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax9"&gt;date&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax14"&gt;d&lt;/span&gt;&lt;span class="syntax14"&gt;/&lt;/span&gt;&lt;span class="syntax14"&gt;m&lt;/span&gt;&lt;span class="syntax14"&gt;/&lt;/span&gt;&lt;span class="syntax14"&gt;Y&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax9"&gt;time&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;  &lt;span class="syntax8"&gt;return&lt;/span&gt; &lt;span class="syntax9"&gt;mktime&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax5"&gt;23&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax5"&gt;59&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax5"&gt;59&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$mes_nasc&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$dia_nasc&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$ano_nasc&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;&amp;lt;&lt;/span&gt; &lt;br /&gt;         &lt;span class="syntax9"&gt;mktime&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax5"&gt;00&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax5"&gt;00&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax5"&gt;00&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$mes_hoje&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$dia_hoje&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax10"&gt;$ano_hoje&lt;/span&gt; &lt;span class="syntax18"&gt;-&lt;/span&gt; &lt;span class="syntax5"&gt;18&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="syntax10"&gt;$data&lt;/span&gt; &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax14"&gt;25&lt;/span&gt;&lt;span class="syntax14"&gt;/&lt;/span&gt;&lt;span class="syntax14"&gt;10&lt;/span&gt;&lt;span class="syntax14"&gt;/&lt;/span&gt;&lt;span class="syntax14"&gt;1977&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="syntax8"&gt;echo&lt;/span&gt; &lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax14"&gt;Quem&lt;/span&gt;&lt;span class="syntax14"&gt; &lt;/span&gt;&lt;span class="syntax14"&gt;nasce&lt;/span&gt;&lt;span class="syntax14"&gt; &lt;/span&gt;&lt;span class="syntax14"&gt;em&lt;/span&gt;&lt;span class="syntax14"&gt; &lt;/span&gt;&lt;span class="syntax10"&gt;$data&lt;/span&gt;&lt;span class="syntax14"&gt; &lt;/span&gt;&lt;span class="syntax14"&gt;e&lt;/span&gt;&lt;span class="syntax14"&gt; &lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt; &lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax18"&gt; (&lt;/span&gt;&lt;span class="syntax6"&gt;MaiorIdade&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax10"&gt;$data&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;?&lt;/span&gt; &lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax14"&gt;maior&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt; &lt;span class="syntax18"&gt;:&lt;/span&gt; &lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax14"&gt;menor&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;.&lt;/span&gt; &lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax14"&gt; &lt;/span&gt;&lt;span class="syntax14"&gt;de&lt;/span&gt;&lt;span class="syntax14"&gt; &lt;/span&gt;&lt;span class="syntax14"&gt;idade&lt;/span&gt;&lt;span class="syntax14"&gt;&amp;quot;&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="syntax17"&gt;?&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5947903529521715221-8006931548541819970?l=oreidophp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/8006931548541819970/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5947903529521715221&amp;postID=8006931548541819970' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/8006931548541819970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/8006931548541819970'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/2010/01/funcao-para-verificar-se-alguem-e-maior.html' title='Função para Verificar se Alguém É Maior de Idade'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5947903529521715221.post-5796145836862636638</id><published>2008-06-24T10:37:00.000-07:00</published><updated>2010-01-18T03:12:54.510-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript datas cálculo dias diferença'/><title type='text'>Cálculo de dias corridos entre duas datas em Javascript</title><content type='html'>Eu andei procurando na Internet como calcular diferença entre datas em Javascript ou, mais especificamente, como fazer o cálculo de dias entre duas datas. Pra variar, eu só achei soluções exdrúxulas. Então, como sempre, é melhor a gente fazer o nosso próprio código. Segue abaixo:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutterH"&gt;15:&lt;/span&gt;&lt;span class="syntax8"&gt;var&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;a&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;new&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax10"&gt;Date&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax17"&gt;2008&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;8&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;3&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;16:&lt;/span&gt;&lt;span class="syntax8"&gt;var&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;b&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;new&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax10"&gt;Date&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax17"&gt;2008&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;8&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;15&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;17:&lt;/span&gt;&lt;span class="syntax8"&gt;var&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;c&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;b&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;getTime&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;-&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;a&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;getTime&lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;18:&lt;/span&gt;&lt;span class="syntax8"&gt;var&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;d&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;c&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;(&lt;/span&gt;&lt;span class="syntax17"&gt;24&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;*&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;60&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;*&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;60&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;*&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;24&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;*&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;1000&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;19:&lt;/span&gt;&lt;span class="syntax2"&gt;//&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;1&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;dia&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;em&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;milisegundos&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;&amp;eacute;&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;24&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;horas&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;*&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;60&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;minutos&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;*&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;60&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;segundo&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;*&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;1000&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;milisegundos&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Claro, se quiser achar a quantidade de horas, basta mudar o denominador do último cálculo para (60 * 60 * 1000), ou seja, 1 hora = (60 minutos * 60 segundos * 1000) milisegundos. E por aí vai.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5947903529521715221-5796145836862636638?l=oreidophp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/5796145836862636638/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5947903529521715221&amp;postID=5796145836862636638' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/5796145836862636638'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/5796145836862636638'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/2008/06/clculo-de-dias-corridos-entre-duas.html' title='Cálculo de dias corridos entre duas datas em Javascript'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5947903529521715221.post-3253739031046220761</id><published>2008-01-09T09:14:00.000-08:00</published><updated>2008-01-09T09:23:11.462-08:00</updated><title type='text'>Inconsistências entre os Browsers</title><content type='html'>Este tópico eu vou usar para catalogar as inconsistências existente entre os navegadores que atrapalham um desenvolvimento cross-browser. Vou listar o resultado nos browsers IE6.0, Opera 9.23 e Firefox 2.0.0.11.&lt;br /&gt;&lt;br /&gt;1) Tag THEAD não aceita estilos OVERFLOW e HEIGHT&lt;br /&gt;&lt;br /&gt;Exemplo:&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt;231:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;table&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;232:&lt;/span&gt;  &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;thead&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;233:&lt;/span&gt;    &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;tr&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;C.1&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;C.2&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;tr&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;234:&lt;/span&gt;  &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;thead&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;235:&lt;/span&gt;  &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;tbody&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;style='&lt;/span&gt;&lt;span class="syntax9"&gt;height&lt;/span&gt;&lt;span class="syntax18"&gt;:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;30px&lt;/span&gt;;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax9"&gt;overflow&lt;/span&gt;&lt;span class="syntax18"&gt;:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax10"&gt;auto&lt;/span&gt;;&lt;span class="syntax17"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;236:&lt;/span&gt;    &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;tr&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;1.1&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;1.2&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;tr&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;237:&lt;/span&gt;    &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;tr&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;2.1&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;2.2&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;tr&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;238:&lt;/span&gt;    &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;tr&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;3.1&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;3.2&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;td&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;tr&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;239:&lt;/span&gt;  &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;tbody&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;240:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;table&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;IE: Não aconteceu nada&lt;br /&gt;Firefox: Height funcionou, mas não exibiu o scroll&lt;br /&gt;Opera: Não aconteceu nada&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5947903529521715221-3253739031046220761?l=oreidophp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/3253739031046220761/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5947903529521715221&amp;postID=3253739031046220761' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/3253739031046220761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/3253739031046220761'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/2008/01/este-tpico-eu-vou-usar-para-catalogar.html' title='Inconsistências entre os Browsers'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5947903529521715221.post-6566641541134071900</id><published>2007-11-19T09:12:00.000-08:00</published><updated>2007-11-21T02:48:18.099-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Javascript Cast Random Arrays'/><title type='text'>Dicas Javascript</title><content type='html'>Hoje eu vou começar uma série onde eu vou postar dicas de Javascript que podem salvar em momentos de apuro.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1. Como converter um float para inteiro sem arredondamento.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;É fácil. Bastar usar a notação:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt;1:&lt;/span&gt;&lt;span class="syntax8"&gt;var&lt;/span&gt; real &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax5"&gt;1234.&lt;/span&gt;&lt;span class="syntax5"&gt;56&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;2:&lt;/span&gt;&lt;span class="syntax8"&gt;var&lt;/span&gt; inteiro &lt;span class="syntax18"&gt;=&lt;/span&gt; real &lt;span class="syntax18"&gt;|&lt;/span&gt; &lt;span class="syntax5"&gt;0&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;3:&lt;/span&gt;&lt;span class="syntax6"&gt;alert(&lt;/span&gt;inteiro&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;A saída será "1234". Se você usasse Math.round() a saída seria "1235".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2. Como gerar números aleatórios dentro de um intervalo.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;O Javascript fornece a função Math.random() que gera números reais entre 0 e 1. Muitas vezes queremos números inteiros entre um intervalo. Eu criei a função random() a seguir para este fim:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt; 1:&lt;/span&gt;&lt;span class="syntax1"&gt;/*&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 2:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Gera&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;números&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;aleatórios&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;inteiros&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;entre&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;um&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;intervalo&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 3:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@author&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Daniel&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Castro&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Machado&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;&amp;lt;daniel@cdt.unb.br&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 4:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@param&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;int&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;valorIni&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Valor&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;inicial.&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt; 5:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@param&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;int&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;valorFim&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Valor&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;final.&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 6:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@return&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;int&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Valor&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;randômico&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 7:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@copyright&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 8:&lt;/span&gt;&lt;span class="syntax1"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 9:&lt;/span&gt;&lt;span class="syntax8"&gt;function&lt;/span&gt; &lt;span class="syntax6"&gt;random(&lt;/span&gt;valorIni&lt;span class="syntax18"&gt;,&lt;/span&gt; valorFim&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;10:&lt;/span&gt;  &lt;span class="syntax8"&gt;var&lt;/span&gt; numRandom&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;11:&lt;/span&gt;  &lt;span class="syntax8"&gt;do&lt;/span&gt; numRandom &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax10"&gt;Math&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;random(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt; &lt;span class="syntax6"&gt;while&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;numRandom =&lt;span class="syntax18"&gt;=&lt;/span&gt; 1&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt; &lt;span class="syntax2"&gt;//&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Evita&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;gerar&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;o&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;número&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;valorFim&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;+&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;1&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;12:&lt;/span&gt;  &lt;span class="syntax6"&gt;return&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;numRandom &lt;span class="syntax18"&gt;*&lt;/span&gt; &lt;span class="syntax18"&gt;(&lt;/span&gt;valorFim &lt;span class="syntax18"&gt;-&lt;/span&gt; valorIni &lt;span class="syntax18"&gt;+&lt;/span&gt; &lt;span class="syntax5"&gt;1&lt;/span&gt;&lt;span class="syntax18"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;+&lt;/span&gt; valorIni&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;|&lt;/span&gt; &lt;span class="syntax5"&gt;0&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;13:&lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Comentários sobre a função:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;O número gerado por Math.random() não pode ser 1 pois o resultado sairia do intervalo&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Não usei Math.round() pois, neste caso, o primeiro e o último número teriam 50% menos chance de ocorrer.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;O 1 que é somado garante que se busque no intervalo aberto.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3. Embaralhar um Array&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Essa é uma função similar à função shuffle() do PHP. Ela embaralha o Array informado.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt; 1:&lt;/span&gt;&lt;span class="syntax1"&gt;/*&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 2:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Gera&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;um&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Array&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;embaralhado&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;a&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;partir&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;de&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;um&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Array&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;passado&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;por&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;parâmetro.&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 3:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@author&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Daniel&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Castro&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Machado&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;&amp;lt;daniel@cdt.unb.br&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 4:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@param&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Array&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;arrayOrigem&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt; 5:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@return&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Array&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 6:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@copyright&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 7:&lt;/span&gt;&lt;span class="syntax1"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 8:&lt;/span&gt;&lt;span class="syntax8"&gt;function&lt;/span&gt; &lt;span class="syntax6"&gt;shuffle(&lt;/span&gt;arrayOrigem&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 9:&lt;/span&gt;  &lt;span class="syntax8"&gt;var&lt;/span&gt; arrayDestino &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax8"&gt;new&lt;/span&gt; &lt;span class="syntax6"&gt;Array(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;10:&lt;/span&gt;  &lt;span class="syntax8"&gt;var&lt;/span&gt; indice&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;11:&lt;/span&gt;  &lt;span class="syntax6"&gt;while&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;arrayOrigem&lt;span class="syntax18"&gt;.&lt;/span&gt;length &lt;span class="syntax18"&gt;&amp;gt;&lt;/span&gt; 0&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;12:&lt;/span&gt;    indice &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax6"&gt;random(&lt;/span&gt;0&lt;span class="syntax18"&gt;,&lt;/span&gt; arrayOrigem&lt;span class="syntax18"&gt;.&lt;/span&gt;length &lt;span class="syntax18"&gt;-&lt;/span&gt; 1&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;13:&lt;/span&gt;    arrayDestino&lt;span class="syntax18"&gt;[&lt;/span&gt;arrayDestino&lt;span class="syntax18"&gt;.&lt;/span&gt;length&lt;span class="syntax18"&gt;]&lt;/span&gt; &lt;span class="syntax18"&gt;=&lt;/span&gt; arrayOrigem&lt;span class="syntax18"&gt;[&lt;/span&gt;indice&lt;span class="syntax18"&gt;]&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;14:&lt;/span&gt;    arrayOrigem&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;splice(&lt;/span&gt;indice&lt;span class="syntax18"&gt;,&lt;/span&gt; 1&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;15:&lt;/span&gt;  &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;16:&lt;/span&gt;  &lt;span class="syntax8"&gt;return&lt;/span&gt; arrayDestino&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;17:&lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Comentários sobre a função:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Ela usa a função random() que eu criei acima.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Até onde eu sei não tem como passar variáveis por referência em Javascript (se alguém souber como, me diga!). Então não dá pra usar como no PHP - shuffle(vetor), mas tem que se redefinir o vetor na mão: vetor = shuffle(vetor).&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5947903529521715221-6566641541134071900?l=oreidophp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/6566641541134071900/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5947903529521715221&amp;postID=6566641541134071900' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/6566641541134071900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/6566641541134071900'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/2007/11/dicas-javascript.html' title='Dicas Javascript'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5947903529521715221.post-2309492987020852933</id><published>2007-11-06T11:16:00.001-08:00</published><updated>2007-11-19T10:24:17.064-08:00</updated><title type='text'>Validando Javascript no Ajax</title><content type='html'>No &lt;a href="http://oreidophp.blogspot.com/2007/10/tutorial-rpido-de-ajax.html"&gt;Tutorial Rápido de Ajax&lt;/a&gt; que eu escrevi eu comentei que os códigos Javascript não são validados ao serem escritos na página. Mas, é lógico, que sempre queremos validá-los. Então hoje eu vou apresentar uma solução para isso.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt; 1:&lt;/span&gt;&lt;span class="syntax1"&gt;/*&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 2:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Realiza&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;uma&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;requisição&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;AJAX&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;e&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;processa&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;a&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;resposta.&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 3:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@param&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;string&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;URL&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;URL&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;do&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;script&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;que&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;irá&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;processar&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;a&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;requisição.&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 4:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@param&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;string&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;param&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Variáveis&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;enviadas.&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Exemplo:&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;"nome=joao&amp;amp;senha=123456".&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt; 5:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@param&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;string&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;IDResposta&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;ID&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;do&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;elemento&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;onde&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;a&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;resposta&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;será&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;escrita.&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 6:&lt;/span&gt;&lt;span class="syntax1"&gt;*&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;@author&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Daniel&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Castro&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;Machado&lt;/span&gt;&lt;span class="syntax1"&gt; &lt;/span&gt;&lt;span class="syntax1"&gt;&amp;lt;daniel@cdt.unb.br&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 7:&lt;/span&gt;&lt;span class="syntax1"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 8:&lt;/span&gt;&lt;span class="syntax8"&gt;function&lt;/span&gt; &lt;span class="syntax6"&gt;requisita(&lt;/span&gt;URL&lt;span class="syntax18"&gt;,&lt;/span&gt; param&lt;span class="syntax18"&gt;,&lt;/span&gt; IDResposta&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 9:&lt;/span&gt;  requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;open(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;POST&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; URL&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax14"&gt;true&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;10:&lt;/span&gt;  requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;setRequestHeader(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Content-Type&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;application/x-www-form-urlencoded&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;11:&lt;/span&gt;  requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;send(&lt;/span&gt;param&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;12:&lt;/span&gt;  requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;onreadystatechange &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax6"&gt;function(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;13:&lt;/span&gt;    &lt;span class="syntax8"&gt;var&lt;/span&gt; campoResposta &lt;span class="syntax18"&gt;=&lt;/span&gt; document&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;getElementById(&lt;/span&gt;IDResposta&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;14:&lt;/span&gt;    &lt;span class="syntax6"&gt;switch&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;readyState&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;15:&lt;/span&gt;      &lt;span class="syntax8"&gt;case&lt;/span&gt; &lt;span class="syntax5"&gt;2&lt;/span&gt;&lt;span class="syntax18"&gt;:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;16:&lt;/span&gt;           campoResposta&lt;span class="syntax18"&gt;.&lt;/span&gt;innerHTML &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Carregando,&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;aguarde...&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;17:&lt;/span&gt;           &lt;span class="syntax8"&gt;break&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;18:&lt;/span&gt;      &lt;span class="syntax8"&gt;case&lt;/span&gt; &lt;span class="syntax5"&gt;4&lt;/span&gt;&lt;span class="syntax18"&gt;:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;19:&lt;/span&gt;           &lt;span class="syntax6"&gt;if&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;status &lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt; 200&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;20:&lt;/span&gt;             campoResposta&lt;span class="syntax18"&gt;.&lt;/span&gt;innerHTML &lt;span class="syntax18"&gt;=&lt;/span&gt; requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;responseText&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;21:&lt;/span&gt;             &lt;span class="syntax8"&gt;var&lt;/span&gt; arScripts &lt;span class="syntax18"&gt;=&lt;/span&gt; campoResposta&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;getElementsByTagName(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;script&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;22:&lt;/span&gt;             &lt;span class="syntax8"&gt;var&lt;/span&gt; scriptTotal &lt;span class="syntax18"&gt;=&lt;/span&gt; document&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;createElement(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;script&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;23:&lt;/span&gt;             &lt;span class="syntax6"&gt;for&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;scriptParcial &lt;span class="syntax8"&gt;in&lt;/span&gt; arScripts&lt;span class="syntax6"&gt;)&lt;/span&gt; scriptTotal&lt;span class="syntax18"&gt;.&lt;/span&gt;text &lt;span class="syntax18"&gt;+&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt; scriptParcial&lt;span class="syntax18"&gt;.&lt;/span&gt;innerHTML&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;24:&lt;/span&gt;             document&lt;span class="syntax18"&gt;.&lt;/span&gt;body&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;appendChild(&lt;/span&gt;scriptTotal&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;25:&lt;/span&gt;           &lt;span class="syntax18"&gt;}&lt;/span&gt; &lt;span class="syntax8"&gt;else&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;26:&lt;/span&gt;             campoResposta&lt;span class="syntax18"&gt;.&lt;/span&gt;innerHTML &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;Erro&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;na&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;resposta&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;do&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;servidor&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;27:&lt;/span&gt;           &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;28:&lt;/span&gt;           &lt;span class="syntax8"&gt;break&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;29:&lt;/span&gt;    &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;30:&lt;/span&gt;  &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;31:&lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;A função requisita() pode ser um função genérica para tratamento de requisições Ajax. Ela exige como parâmetros a URL, as variáveis URL e o ID do elemento onde será escrita a resposta. Esta função faz o papel, por exemplo, do window.open() nas requisições tradicionais.&lt;br /&gt;&lt;br /&gt;O que ela faz é:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Envia a requisição.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Ao receber uma resposta OK (status 200), escreve o código HTML em um área da página chamada areaResposta. Este código contém nenhum, um ou vários scripts (que infelizmente não são validados por padrão).&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Então recupera todos estes scripts através de DOM.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Depois, para cada script desses, recupera seu conteúdo.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Em um novo elemento de script é inserido estes conteúdos.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Depois insere o script na página com appendChild().&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;Em outras palavras, para você usar o Ajax, basta instanciar o objeto XMLHttpRequest e usar a função requisita() para fazer as requisições. Nunca foi tão fácil usar Ajax. Nem mesmo é preciso entender de Ajax. Basta usar os códigos postados aqui e não será mais preciso se preocupar com os detalhes sujos de implementação.&lt;br /&gt;&lt;br /&gt;P.S.: A solução alternativa seria usar eval() - como já foi dito no post anterior. Mas, neste caso, percebeu-se que as funções não foram validadas corretamente.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5947903529521715221-2309492987020852933?l=oreidophp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/2309492987020852933/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5947903529521715221&amp;postID=2309492987020852933' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/2309492987020852933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/2309492987020852933'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/2007/11/validando-javascript-no-ajax.html' title='Validando Javascript no Ajax'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5947903529521715221.post-5350753647904512308</id><published>2007-10-27T18:29:00.000-07:00</published><updated>2009-04-04T05:39:35.898-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><title type='text'>Tutorial rápido de Ajax</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Ajax com PHP&lt;/span&gt;&lt;br /&gt;&lt;p&gt;Ajax é a sigla de Asynchronous JavaScript and XML.&lt;br /&gt;&lt;br /&gt;O termo “assíncrono” – neste caso - significa que o usuário não precisa esperar que uma requisição seja processada para mandar outra(s).&lt;br /&gt;&lt;br /&gt;Ajax não é uma linguagem de programação, mas uma técnica sugerida pelo Google em 2005.&lt;br /&gt;&lt;br /&gt;Com Ajax é possível fazer requisições ao servidor sem submeter a página e assim criar sites parecidos com aplicações desktop (vide o Gmail, por exemplo) com melhor usabilidade e menor tráfego de dados.&lt;br /&gt;&lt;br /&gt;A desvantagem é um pequeno aumento na complexidade da implementação e problemas com a inexistência de links para páginas criadas com essas requisições que impedem o usuário de ter uma referência a uma página específica (como fazer bookmark).&lt;br /&gt;&lt;br /&gt;O Ajax é suportado pelos seguintes browsers: Internet Explorer 5.0+, Safari 1.2, Mozilla 1.0 / Firefox, Opera 8+ e Netscape 7.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;O objeto XMLHttpRequest&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;É o ponto chave do negócio. Este objeto manipula as requisições e as respostas do Ajax.&lt;br /&gt;&lt;br /&gt;A maioria dos fabricantes de browser implementa em Javascript uma classe nativa chamada XMLHttpRequest enquanto a Microsoft implementa uma classe ActiveXObject, mas ambos com interface semelhante.&lt;br /&gt;&lt;br /&gt;Propriedades-chave:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;readyState: integer – estado atual da requisição&lt;/li&gt;&lt;br /&gt;&lt;li&gt;responseText: string – a resposta do servidor&lt;/li&gt;&lt;br /&gt;&lt;li&gt;status: integer – status de resposta (exemplo: se for 200, a requisição está ok, se for 404, a página não foi encontrada)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;Métodos-chave:&lt;/p&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;setRequestHeader() – define o cabeçalho da requisição.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;onreadystatechange() – evento acionado quando há mudança no estado da requisição (atributo readyState)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;open() – abre e configura uma conexão com o servidor&lt;/li&gt;&lt;br /&gt;&lt;li&gt;send() – envia a requisição&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Passos para a criação de uma rotina em Ajax:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1.) Definir o elemento que enviará a requisição&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Normalmente a requisição é feita através de algum evento de um input, por exemplo, ao clicar em um botão.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2.) Instanciar o objeto XMLHttpRequest em Javascript. Esse objeto irá manipular a requisição e a resposta.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A rotina de criação sempre será como segue:&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt; 2:&lt;/span&gt;&lt;span class="syntax8"&gt;var&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 3:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 4:&lt;/span&gt;&lt;span class="syntax8"&gt;function&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;criaObjetoAjax(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt; 5:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 6:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;try&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;//&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Firefox,&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Opera&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;8.0+,&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Safari&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 7:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;new&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;XMLHttpRequest(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 8:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;catch&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;e&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;//&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Internet&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Explorer&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt; 9:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;try&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;10:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;new&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;ActiveXObject(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;Msxml2.XMLHTTP&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;11:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;catch&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;e&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;12:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;try&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;13:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;new&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;ActiveXObject(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;Microsoft.XMLHTTP&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;14:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;catch&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;e&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;15:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;alert(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;Seu&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;browser&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;não&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;suporta&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;AJAX!&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;16:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax8"&gt;return&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax14"&gt;false&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;17:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;18:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;19:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;20:&lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;3.) Enviar requisições&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Primeiramente, definir – se for o caso - as variáveis URL.&lt;br /&gt;&lt;span&gt;Exemplo:&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt;1:&lt;/span&gt;&lt;span class="syntax8"&gt;var&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;param&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;nome&lt;/span&gt;&lt;span class="syntax13"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;joao&lt;/span&gt;&lt;span class="syntax13"&gt;&amp;amp;&lt;/span&gt;&lt;span class="syntax13"&gt;senha&lt;/span&gt;&lt;span class="syntax13"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;123456&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Definir o cabeçalho da requisição (o método POST não funcionará direito sem essas definições, pois os dados são enviados no cabeçalho)&lt;br /&gt;&lt;p style="font-family: courier new;"&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt;1:&lt;/span&gt;&lt;span class="syntax17"&gt;&lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;setRequestHeader(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Content-Type&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;application/x-www-form-urlencoded&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;2:&lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;setRequestHeader(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Content-length&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; param&lt;span class="syntax18"&gt;.&lt;/span&gt;length&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;3:&lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;setRequestHeader(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Connection&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;close&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Georgia,serif;"&gt;Evocar os seguintes métodos do XMLHttpRequest (que são primitivas de um serviço na camada de transporte. Para mais informações, estude arquiteturas de redes OSI ou TCP/IP)&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;open() - Abre a conexão&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;send() - Envia os dados&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;O método open recebe os argumentos:&lt;/p&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Método de requisição (“GET” ou “POST”)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;URL do script PHP no servidor&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Se a conexão é assíncrona (true ou false)&lt;/li&gt;&lt;/ul&gt;Se o método for GET, os parâmetros devem ser enviados na URL. Se o método for POST, o método send() recebe os dados (que no caso é a variável param) para escrever no header da requisição.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;4.) O script server-side&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;O script PHP no servidor recebe os dados nas variáveis $_GET ou $_POST respectivamente, é processado e gera uma resposta em formato de texto - que nada mais é do que o output do script.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;5.) A propriedade readyState:&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;A propriedade readyState do objeto XMLHttpRequest armazena o estado atual da requisição. Seus valores possíveis são:&lt;/p&gt;&lt;br /&gt;0: O request não está inicializado&lt;br /&gt;1: O request foi configurado&lt;br /&gt;2: O request foi enviado&lt;br /&gt;3: O request está em processo&lt;br /&gt;4: O request foi completo&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;6.) O evento onreadystatechange &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;O evento onreadystatechange do objeto XMLHttpRequest ocorre toda vez que a propriedade readyState muda. Ouvindo este evento vamos processar a resposta vinda do servidor quando seu estado for 4 (concluída). A resposta é guardada no atributo responseText do objeto XMLHttpRequest.&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt;1:&lt;/span&gt;&lt;span class="syntax17"&gt;&lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax17"&gt;onreadystatechange&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;function(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;2:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;if (&lt;/span&gt;requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;readyState &lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt; 4&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;3:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;document&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;getElmentById(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;resposta&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax17"&gt;innerHTML&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;requisicao&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax17"&gt;responseText&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;4:&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;5:&lt;/span&gt;&lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Considerações:&lt;/p&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Nem sempre uma requisição é acionada por uma ação do usuário. Um auto reload na página também pode requerer dados. Um exemplo disso é um sistema de chat que precisa fazer requisições periódicas para saber se houve novas mensagens.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Para exibir uma mensagem do tipo “Carregando...”, deve-se tratar a propriedade readyState quando seu valor for 2 ou 3.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Se a resposta enviar um javascript, este não será validado automaticamente. Para saber como validar os scripts enviados, leia o tutorial http://oreidophp.blogspot.com/2007/11/validando-javascript-no-ajax.html.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Também é possível enviar como resposta um XML contendo dados para serem tratados via Javascript.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Exemplo&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Vamos colocar o que foi dito em prática. O exemplo a seguir é composto de dois arquivos na raiz da aplicação. É enviado o nome do usuário e recebido nome do servidor de aplicação.&lt;/p&gt;&lt;p class="MsoNormal"&gt;Tela:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://1.bp.blogspot.com/_azdrSwKoh9Y/RyiKU9Iz63I/AAAAAAAAABI/A1iUjIUK9CQ/s320/telaAjax.gif" alt="Tela do exemplo" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=""&gt;index.html&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt;   1:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax8"&gt;html&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   2:&lt;/span&gt;  &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax8"&gt;body&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   3:&lt;/span&gt;    &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax8"&gt;h1&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;Teste de Ajax&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax8"&gt;h1&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   4:&lt;/span&gt;    Seu nome: &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax8"&gt;input&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;type&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;text&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;name&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;nome&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;id&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;nome&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;   5:&lt;/span&gt;    &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax8"&gt;input&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;type&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;button&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;value&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Requisitar&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;onclick&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;requisita()&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   6:&lt;/span&gt;    &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax8"&gt;div&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;id&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;resposta&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax8"&gt;div&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   7:&lt;/span&gt;  &lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax8"&gt;body&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   8:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax8"&gt;html&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   9:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  10:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;script&lt;/span&gt;&lt;span class="syntax17"&gt; &lt;/span&gt;&lt;span class="syntax17"&gt;type&lt;/span&gt;&lt;span class="syntax17"&gt;=&lt;/span&gt;&lt;span class="syntax17"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt;text&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;javascript&lt;/span&gt;&lt;span class="syntax17"&gt;'&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  11:&lt;/span&gt;  &lt;span class="syntax8"&gt;var&lt;/span&gt; requisicao&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  12:&lt;/span&gt;  &lt;span class="syntax8"&gt;try&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt; &lt;span class="syntax2"&gt;//&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Firefox,&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Opera&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;8.0+,&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Safari&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  13:&lt;/span&gt;    requisicao &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax8"&gt;new&lt;/span&gt; &lt;span class="syntax6"&gt;XMLHttpRequest(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  14:&lt;/span&gt;  &lt;span class="syntax18"&gt;}&lt;/span&gt; &lt;span class="syntax6"&gt;catch&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;e&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt; &lt;span class="syntax2"&gt;//&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Internet&lt;/span&gt;&lt;span class="syntax2"&gt; &lt;/span&gt;&lt;span class="syntax2"&gt;Explorer&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  15:&lt;/span&gt;    &lt;span class="syntax8"&gt;try&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  16:&lt;/span&gt;      requisicao &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax8"&gt;new&lt;/span&gt; &lt;span class="syntax6"&gt;ActiveXObject(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;Msxml2.XMLHTTP&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  17:&lt;/span&gt;    &lt;span class="syntax18"&gt;}&lt;/span&gt; &lt;span class="syntax6"&gt;catch&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;e&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  18:&lt;/span&gt;      &lt;span class="syntax8"&gt;try&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  19:&lt;/span&gt;        requisicao &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax8"&gt;new&lt;/span&gt; &lt;span class="syntax6"&gt;ActiveXObject(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;Microsoft.XMLHTTP&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  20:&lt;/span&gt;      &lt;span class="syntax18"&gt;}&lt;/span&gt; &lt;span class="syntax6"&gt;catch&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;e&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  21:&lt;/span&gt;        requisicao &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax14"&gt;false&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  22:&lt;/span&gt;      &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  23:&lt;/span&gt;    &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  24:&lt;/span&gt;  &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  25:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  26:&lt;/span&gt;  &lt;span class="syntax8"&gt;function&lt;/span&gt; &lt;span class="syntax6"&gt;requisita(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  27:&lt;/span&gt;    &lt;span class="syntax6"&gt;if&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;&lt;span class="syntax18"&gt;!&lt;/span&gt;requisicao&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  28:&lt;/span&gt;      &lt;span class="syntax6"&gt;alert(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Seu&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;browser&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;não&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;suporta&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;Ajax&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  29:&lt;/span&gt;      &lt;span class="syntax8"&gt;return&lt;/span&gt; &lt;span class="syntax14"&gt;false&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  30:&lt;/span&gt;    &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  31:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  32:&lt;/span&gt;    requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;onreadystatechange &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax6"&gt;function(&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  33:&lt;/span&gt;      &lt;span class="syntax8"&gt;var&lt;/span&gt; resposta &lt;span class="syntax18"&gt;=&lt;/span&gt; document&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;getElementById(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;resposta&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  34:&lt;/span&gt;      &lt;span class="syntax6"&gt;switch&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;readyState&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  35:&lt;/span&gt;        &lt;span class="syntax8"&gt;case&lt;/span&gt; &lt;span class="syntax5"&gt;2&lt;/span&gt;&lt;span class="syntax18"&gt;:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  36:&lt;/span&gt;             resposta&lt;span class="syntax18"&gt;.&lt;/span&gt;innerHTML &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;Carregando...&amp;lt;br/&amp;gt;&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  37:&lt;/span&gt;             &lt;span class="syntax8"&gt;break&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  38:&lt;/span&gt;        &lt;span class="syntax8"&gt;case&lt;/span&gt; &lt;span class="syntax5"&gt;4&lt;/span&gt;&lt;span class="syntax18"&gt;:&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  39:&lt;/span&gt;             &lt;span class="syntax6"&gt;if&lt;/span&gt;&lt;span class="syntax6"&gt; &lt;/span&gt;&lt;span class="syntax6"&gt;(&lt;/span&gt;requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;status &lt;span class="syntax18"&gt;=&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;200&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  40:&lt;/span&gt;               resposta&lt;span class="syntax18"&gt;.&lt;/span&gt;innerHTML &lt;span class="syntax18"&gt;=&lt;/span&gt; requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;responseText&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  41:&lt;/span&gt;             &lt;span class="syntax18"&gt;}&lt;/span&gt; &lt;span class="syntax8"&gt;else&lt;/span&gt; &lt;span class="syntax18"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  42:&lt;/span&gt;               resposta&lt;span class="syntax18"&gt;.&lt;/span&gt;innerHTML &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;Erro&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;no&lt;/span&gt;&lt;span class="syntax13"&gt; &lt;/span&gt;&lt;span class="syntax13"&gt;servidor&amp;lt;/b&amp;gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  43:&lt;/span&gt;             &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  44:&lt;/span&gt;      &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  45:&lt;/span&gt;    &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  46:&lt;/span&gt;    &lt;span class="syntax8"&gt;var&lt;/span&gt; param &lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;nome=&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt; &lt;span class="syntax18"&gt;+&lt;/span&gt; document&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;getElementById(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;nome&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;.&lt;/span&gt;value&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  47:&lt;/span&gt;    requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;open(&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;POST&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;processaRequisicao.php&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt; &lt;span class="syntax14"&gt;true&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  48:&lt;/span&gt;    requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;setRequestHeader(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Content-Type&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;application/x-www-form-urlencoded&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  49:&lt;/span&gt;    requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;setRequestHeader(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Content-length&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt;param&lt;span class="syntax18"&gt;.&lt;/span&gt;length&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;  50:&lt;/span&gt;    requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;setRequestHeader(&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;Connection&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;,&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;close&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  51:&lt;/span&gt;    requisicao&lt;span class="syntax18"&gt;.&lt;/span&gt;&lt;span class="syntax6"&gt;send(&lt;/span&gt;param&lt;span class="syntax6"&gt;)&lt;/span&gt;&lt;span class="syntax18"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  52:&lt;/span&gt;  &lt;span class="syntax18"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;  53:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;&lt;b&gt;&lt;span style=""&gt;processaRequisicao.php&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span class="syntax0"&gt;&lt;span class="gutter"&gt;   1:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;hr&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   2:&lt;/span&gt;Ola &lt;span class="syntax17"&gt;&amp;lt;?&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax10"&gt;$&lt;/span&gt;&lt;span class="syntax10"&gt;_POST&lt;/span&gt;&lt;span class="syntax18"&gt;[&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax13"&gt;nome&lt;/span&gt;&lt;span class="syntax13"&gt;'&lt;/span&gt;&lt;span class="syntax18"&gt;]&lt;/span&gt; &lt;span class="syntax17"&gt;?&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   3:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;br&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutter"&gt;   4:&lt;/span&gt;O software do servidor de aplicacao &lt;span class="syntax14"&gt;&amp;amp;&lt;/span&gt;&lt;span class="syntax14"&gt;eacute&lt;/span&gt;&lt;span class="syntax14"&gt;;&lt;/span&gt; &lt;span class="syntax17"&gt;&amp;lt;?&lt;/span&gt;&lt;span class="syntax18"&gt;=&lt;/span&gt; &lt;span class="syntax10"&gt;$&lt;/span&gt;&lt;span class="syntax10"&gt;_SERVER&lt;/span&gt;&lt;span class="syntax18"&gt;[&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax13"&gt;SERVER_SOFTWARE&lt;/span&gt;&lt;span class="syntax13"&gt;"&lt;/span&gt;&lt;span class="syntax18"&gt;]&lt;/span&gt; &lt;span class="syntax17"&gt;?&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="gutterH"&gt;   5:&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;lt;&lt;/span&gt;&lt;span class="syntax17"&gt;hr&lt;/span&gt;&lt;span class="syntax17"&gt;/&lt;/span&gt;&lt;span class="syntax17"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5947903529521715221-5350753647904512308?l=oreidophp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/5350753647904512308/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5947903529521715221&amp;postID=5350753647904512308' title='6 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/5350753647904512308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/5350753647904512308'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/2007/10/tutorial-rpido-de-ajax.html' title='Tutorial rápido de Ajax'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_azdrSwKoh9Y/RyiKU9Iz63I/AAAAAAAAABI/A1iUjIUK9CQ/s72-c/telaAjax.gif' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5947903529521715221.post-8722150728112088320</id><published>2007-10-27T18:22:00.000-07:00</published><updated>2007-11-05T11:44:39.030-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='introdução apresentação'/><title type='text'>Wellcome Você!</title><content type='html'>Oi!&lt;br /&gt;Meu nome é Daniel Castro Machado.&lt;br /&gt;Sou desenvolvedor WEB e utilizo a linguagem PHP 5.0.&lt;br /&gt;&lt;br /&gt;A idéia desse blog é a seguinte: eu deparo com diversas situações de aprendizado no dia-a-dia do meu trabalho e então, a partir de hoje, eu vou condensar esse aprendizado no blog.&lt;br /&gt;&lt;br /&gt;Vai me servir como fixação das idéias e também pode ser útil para outros incautos programadores.&lt;br /&gt;&lt;br /&gt;Então, mãos à obra!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5947903529521715221-8722150728112088320?l=oreidophp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://oreidophp.blogspot.com/feeds/8722150728112088320/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5947903529521715221&amp;postID=8722150728112088320' title='3 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/8722150728112088320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5947903529521715221/posts/default/8722150728112088320'/><link rel='alternate' type='text/html' href='http://oreidophp.blogspot.com/2007/10/wellcome-quem.html' title='Wellcome Você!'/><author><name>Danniel</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://bp3.blogger.com/_azdrSwKoh9Y/R4qYGEd7r4I/AAAAAAAAABU/Uj6jGxxJoeE/S220/piano.jpg'/></author><thr:total>3</thr:total></entry></feed>
