quinta-feira, 15 de fevereiro de 2001

0

Pesquisa com acentuação

Muita gente tem perguntado como fazer uma pesquisa de palavras, considerando que os resultados podem (ou não) ter letras acentuadas, então montei a função abaixo que, facilita o processo. Ela se baseia no estudo do operador SQL LIKE, que permite que seja informado um range de caracteres a serem pesquisados em uma única posição.


'Rotina para pesquisa de palavras acentuadas
'Por Rubens Farias (rubens.farias@gmail.com), Fev/2001
'[Preserve a referência ao autor!]
Function FormatLikeSearch( Texto )
 dim n, NovoTexto, valorASC
 NovoTexto = ""
 for n = 1 to len( Texto )
     valorASC = asc( mid( Texto, n, 1 ) )
     select case valorASC
        case  39: NovoTexto = NovoTexto & "''"
        case  65: NovoTexto = NovoTexto & "[ÁÀÂÄÃA]"
        case  67: NovoTexto = NovoTexto & "[ÇC]"
        case  69: NovoTexto = NovoTexto & "[ÉÈÊËE]"
        case  73: NovoTexto = NovoTexto & "[ÍÌÎÏI]"
        case  79: NovoTexto = NovoTexto & "[ÓÒÔÖÕO]"
        case  85: NovoTexto = NovoTexto & "[ÚÙÛÜU]"
        case  97: NovoTexto = NovoTexto & "[áàâäãa]"
        case  99: NovoTexto = NovoTexto & "[çc]"
        case 101: NovoTexto = NovoTexto & "[éèêëe]"
        case 105: NovoTexto = NovoTexto & "[íìîïi]"
        case 111: NovoTexto = NovoTexto & "[óòôöõo]"
        case 117: NovoTexto = NovoTexto & "[úùûüu]"
        case else
           if valorASC > 31 and valorASC < 127 then
              NovoTexto = NovoTexto & chr( valorASC )
           else
              NovoTexto = NovoTexto & "_"
           end if
     end select
 next
 FormatLikeSearch = "'%" & NovoTexto & "%'"
End Function


E use assim:


set rsquery = conn.execute( "select * from tabela where descricao like " & FormatLikeSearch( request.form("TextoPesquisa") ) )


Caso faça alguma alteração significativa na rotina, envie-me um email, para que eu possa incrementar este código.



Esta matéria foi postada originalmente no ASP4Developers por Rubens N. Farias (site), que na época era "pós-graduado em análise de sistemas orientados a objetos, MCP, MCSD, MCAD, MCSD.NET e consultor em TI, além de idealizador do projeto ASP4Developers. Desenvolve sistemas sob medida, focados na satisfação do usuário, com qualidade e custo realista.". Hoje, vai saber...

quarta-feira, 7 de fevereiro de 2001

0

News FAQ v1.1

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
: News FAQ v1.1
: Última atualização: 08.01.2001 09:10
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

- Para que serve a linha subject (assunto)?
  Para dar uma descrição simples do que está ocorrendo. Subjects sem informações, tipo "help help", "me ajudem!", "só para feras" ou "essa é pra vc, marcão" são ignorados por muitos os freqüentadores. O mesmo é válido para subjects "impositivos", como "quero o código", "urgente", e afins. Também não coloque "Para fulano" no subject, pois o news não é de ninguém e outras pessoas podem ajudá-lo.

- Como certificar-me que uma mensagem será respondida ?
  Use de bom senso. Coloque um subject descritivo e coloque o maior número de informações que você tenha à disposição. Caso seu problema seja com algumas linhas de código, poste algumas linhas antes e outras depois da que ocorre o problema, o suficiente para que entendam o que você está querendo fazer. Tente construir parágrafos curtos e simples, pois isto facilita (e muito!) a leitura. Importante: leia sua mensagem antes de enviá-la, certificando-se que ela está clara e oferece todos os elementos para que a resposta seja fornecida. "Lembre-se: suas atuais e futuros empregadores podem estar lendo suas mensagens, assim como seus pais, filhos, vizinhos que lembrarão de suas 'gafes' por mais tempo.

- Posso enviar uma msg com assunto que não diz respeito ao news ?
  Basicamente, não. Se você está em um news de ASP, vc só espera ver mensagens sobre ASP, e não sobre sorvete de flocos ou folclore Lituano. Caso seja *realmente* necessário, coloque o prefixo "OT" (off-topic) na mensagem. Mas esta prática deve ser evitada ao máximo.

- Como responder uma mensagem ?
  Não inclua toda a mensagem na resposta, mantendo apenas os trechos relevantes a serem comentados. Tente ser claro na resposta, dando elementos que ajudem a esclarecer a questão, ou oferecendo algum link com mais informações. E caso não possa ajudar, também nao atrapalhe.

- Gostaria de receber receitas de bolo dos participantes do news. Basta pedir ?
  Não. Como o tipo do assunto difere do tema central do news, esta mensagem é considerada off-topic, não sendo lida pela maioria dos integrantes do news.

- Fulano me ofendeu e vou postar uma msg respondendo.
  Seria melhor não responder, pois isso possivelmente geraria uma "flame-war" ou "bate-boca". É recomendado que você entre em contato em PVT com o autor e converse com ele. Caso a mensagem tenha cunho difamativo e você nao conseguir entrar em contato, você pode enviar uma mensagem para
mailto:redatornews@uol.com.br?cc=denuncia@uol.com.br, com o código da mensagem completo e as devidas medidas serão tomadas.

- Quero entrar em contato com o cara que respondeu uma msg que eu postei. Posso fazê-lo ?
  Geralmente, quem participa do news checa novas mensagens pelo menos uma vez por dia e não gosta de receber perguntas do news em seu email. Assim, o meio mais rápido de entrar em contato com alguém é pelo próprio news, com os assuntos pertinentes, mesmo por que, sempre há pessoas novas, ou alguém que já tenha tido o mesmo problema que você, podendo ajudar. Assim, só envie mensagens em PVT (privado) caso o autor da postagem tenha instruído-o a fazê-lo.

- Quero saber como <!-- insira a pergunta aqui -->. É só postar no news, certo ?
  Mais ou menos. Muitas das dúvidas que são postadas, já foram respondidas outras vezes, em outros dias. Assim, muito provavelmente sua pergunta já foi respondida antes mesmo de ser postada (isso é que é eficiência!). Caso você use o Microsoft Outlook Express, acesse o menu Ferramentas, Opções..., Manutenção e _desmarque_ as opções de "excluir corpos das mensagens" e "excluir mensagens após n dias" e defina que você quer baixar _todas_ as mensagens (e não apenas as novas). Isso é um processo um pouco demorado, pois ele vai baixar todas as postagens do referido news para seu computador, mas você vai poder contar um uma grande base de dados de pesquisa, tendo seus problemas resolvidos mais rapidamente.

- Onde eu encontro um server que rode minhas páginas ASP ?
  Essa pergunta é uma das mais freqüentes. Sites como
www.aspbrasil.com.br possuem uma lista de servidores gratuitos e pesquisar as mensagens anteriores também é uma grande fonte de recursos.

- Onde eu encontro boas referências sobre ASP ?
  Existem inúmeros sites de ASP na internet. o
www.aspbrasil.com.br é citado mais freqüentemente, por ser nacional, mas ainda existem os www.pt4free.net, www.4guysfromrolla.com, www.asp101.com, msdn.microsoft.com e www.aspfaq.com. Este último é especialmente interessante, pois é baseado nas postagens recebidas no news de ASP da Microsoft e reúne as respostas às perguntas mais frequentemente feitas. São bons começos e estes sites contém listas de outros sites de ASP, onde você pode continuar aprendendo.

- O componente <!-- insira o nome aqui --> não está funcionando ou onde pego este componente ?
  O local mais simples de conseguir estas informações é no site das empresas fornecedoras. Geralmente são intuitivos (o ASPGrid, por exemplo, fica no site
www.aspgrid.com). Rode uma pesquisa na search engine que você prefere (recomendo www.altavista.com) e beba direto da fonte.

- Uhu! Brigado pelas dicas, mas resolvi o problema de outro jeito.
  Por que não posta no news ? Outras pessoas podem ter a mesma dúvida e isso realimenta a base de conhecimentos disponível. Não hesite em fazê-lo.

- Visitem meu site:
www.minhaURL.com.br ou "votem em mim"
  Por que visitaríamos ? Apenas para aumentar seus hits ? Se for para comentar sobre o layout, há um news específico para isso (webdesign). Agora, se você possuir uma base de conhecimentos sobre ASP e deseja compartilhá-la, fique a vontade.

- Onde eu pego o crack para o programa <!-- insira o nome do aplicativo aqui --> ?
  Este não é lugar onde você vá conseguir informações deste tipo. Pesquise em sites sobre hacking ou em search engines, sabendo que você está infringindo a lei.

- Interessante este FAQ. Onde posso pegar mais info ?
  Recomendo
www.faqs.org


Aproveite do espaço do news com sabedoria.

[]s

Participantes do
news://uol.mundodigital.linguagens.asp


Esta matéria foi postada originalmente no ASP4Developers por Rubens N. Farias (site), que na época era "pós-graduado em análise de sistemas orientados a objetos, MCP, MCSD, MCAD, MCSD.NET e consultor em TI, além de idealizador do projeto ASP4Developers. Desenvolve sistemas sob medida, focados na satisfação do usuário, com qualidade e custo realista.". Hoje, vai saber...