Jump to content
Fórum Script Brasil
  • 0

Busca avançada PHP + MySQL


Erick_Aracaju

Question

Para cadastrar os dados no BD MySQL uso um Insert Record Form Wizard da extensão Developer Toolbox instalada no DreamWeaver CS4.

No campo textarea adicionei o plugin TinyMce que salva os dados em ASCII, aqui começa o problema.

Mas observando um texto sobre uma função “TiraAcentos”.

Basta que eu faça o texto da busca chegar no recordset usando este replace:

Case "á"

Letra = "a"

Letra = replace(Letra,"a",[á,á]

Dessa forma, como consulto em dois campos, um que recebe os dados em ASCII e o outro não, o recordset poderá encontrar os resultados nos dois formatos.

No texto, a busca substituia o caracter acentuado por várias opções resultando numa busca completa a palavras com ou sem acentos.

No meu exemplo, gostaria de acrescentar o formato ASCII para ser procurado também. Se eu estiver certo, gostaria que me respondessem algumas dúvidas se possível.

Estou tendo dificuldades em passar o conteúdo do campo texto do formulário de busca para o recordset via Get usando a função.

Sem passar pela função o sistema funciona normalmente com a limitação de não encontrar certas expressões na coluna alimentada com ASCII.

Gostaria de saber se está correto o código abaixo caso fosse de interesse apenas o - á - :

<%

function TiraAcento(StrAcento)

for i = 1 to len (StrAcento)

Letra = mid(StrAcento, i, 1)

Select Case Letra

Case "á"

Letra = "a"

Letra = replace(Letra,"a",[á,&aacute;]

End Select

ProdutoAdmin = ProdutoAdmin & Letra

next

TiraAcento = ProdutoAdmin

end function

%>

Se sim, entre quais tags coloco a função e como ficaria o Select para buscar o resultado dela?

Veja o Select atual do sistema (não houve modificação para usar a função TiraAcentos):

SELECT *

FROM paginas

WHERE paginas.pagina_conteudo LIKE %nome% OR (paginas.pagina_nome LIKE %nome%)

Variables:

nome

Name: nome

Type: Text

Default Value: -1

Run-time Value: $_GET['ProdutoAdmin']

* onde ProdutoAdmin é oriundo do formulário de busca.

Obrigado pela atenção.

Erick

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Consegui!

Basta setar o script do TinyMCE que fica na página html com a seguinte configuração:

tinyMCE.init({

mode : "textareas",

entity_encoding: "raw", <------------------------ Esta!

Dessa forma o TinyMCE lança os dados no BD com acentuação normal, inclusive o ç.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...