Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ve_conect

Alterar urls digitados em textarea

Recommended Posts

Estou com um problemão e não consigo resolver.

Será que alguém pode me ajudar?

 

O problema é o seguinte:

Tenho um form:

<html> <head> <title>Sistema de Notícias</title></head> <body> <p> <form method=post action=gravar.asp> Titulo da Noticia:<br> <input name="name" type="text" size="20"> <p> <br> Conteúdo da Noticia:<br> <textarea name="message" rows="5" cols="25"></textarea> <p> <input type="submit" name="Submit" value="Inserir"> </form> </body> </html>
Neste form tem um textarea com editor onde o usuário insere uma notícia e formata sua mensagem.

Digamos que o usuário inclua um link no texto.

Como posso fazer com que o código seguinte (gravar.asp) verifique se há links e mais ainda,

como fazer para pegar o link e transformá-lo em outro como no exemplo abaixo:

 

texto = request("message")

'o request contém este conteúdo:

"Dando continuidade a sua política de correções mensais para seus softwares, esta semana a <a href="http://www.microsoft.com"><b>Microsoft</b></a> lançou três atualizações para as falhas no programa de mensagens instantâneas MSN Messenger, no Windows Media Services e no cliente de e-mail Outlook. <br>Veja mais acessando o endereço em português: <a href="http://www.microsoft.com.br/">www.microsoft.com.br</a>"

 

Como faço para pegar urls do conteúdo textarea:

"<a href="http://www.microsoft.com/"><b>www.microsoft.com.br</b></a>"

e

"<a href="http://www.microsoft.com.br/">www.microsoft.com.br</a>"

e alterá-las assim:

"<a href="http://www.contaclick.com.br?url=1&link=http://www.microsoft.com/"><b>www.microsoft.com.br</b></a>"

e

"<a href="http://www.contaclick.com.br?url=2&link=http://www.microsoft.com.br/">www.microsoft.com.br</a>"

 

Isto sem alterar o resto do conteúdo do textarea.

O objetivo do código é gravar em um banco de dados o conteúdo do textarea, alterando todos os links como no exemplo acima antes de gravar e publicar a notícia e ainda contar o nº de cliques do link.

 

É impossível fazer isso?

Já tentei com split, mas não consegui por causa das tags utilizadas no editor do form.

Além disso sou iniciante em programação asp e ainda tenho algumas dificuldades.

 

Agradeceria se alguém me desse uma luz!

Compartilhar este post


Link para o post
Compartilhar em outros sites

ao exibir os dados crie um array, monta uma expressão regular ou uma rotina de verificação e faz a comparação pra ver se o valor do array na posição do contador é uma url válida, se for você exibe em forma de link

Compartilhar este post


Link para o post
Compartilhar em outros sites

ae, segue a expressão regular para url

<%Function LinkURL(stringa)	Dim objRegExp, strTemp	stringa = replace(lcase(stringa),lcase("http://"),"")	Set objRegExp = New RegExp	const link = "www.contaclick.com.br?url=2&link=http://"	objRegExp.IgnoreCase = True	objRegExp.Global = True	objRegExp.Pattern = "(\b(www\.|http\://)\S+\b)"	strTemp = objRegExp.replace(stringa, "<A HREF=""http://"&link&"$1"" TARGET=""_blank"">$1</A>")	LinkURL = Replace(strTemp, "http://http://","http://")	Set objRegExp = NothingEnd FunctionResponse.Write(LinkURL("http://www.microsoft.com.br"))%>
agora você monta um array do seu texto e vai aplicando em cada posição do array essa função

mamão com açucar agora

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.