Ir para conteúdo

POWERED BY:

Arquivado

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

HIAGO SPARK

Alterar HREF de url com php

Recommended Posts

Bom dia,
Gostaria da ajuda de vocês, não sei se alguém já teve a experiência de precisar alterar apenas uma parte de um texto em php, exemplo:

Tenho um editor de texto que contém o seguinte texto...

Olá, [[Nome usuario]], gostaria de conhecer os novos produtos da [[empresa_name]] ?

<a href="http://www.algumacoisa.com/link.php">Clique aqui e veja...</a>

Ná hora de enviar o email no php eu gostaria que ele fizesse o seguinte pegar todos os elementos <a> pegar o valor href manter e adicionar a outro link... o email no final teria o seguinte fonte.

 
Olá, [[Nome usuario]], gostaria de conhecer os novos produtos da [[empresa_name]] ?
 
<a href="verseclicou.php?url=http://www.algumacoisa.com/link.php">Clique aqui e veja...</a>
 

Assim poderia saber os links que foram clicados, alguém teria uma sugestão de como manipularia isso em PHP ?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia!

 

Uma sugestão seria você jogar o link, que neste caso está no "a href" em uma variável, e esta variável você chamaria onde deseja.

 

por exemplo:

 

a="http://www.algumacoisa.com/link.php"

 

Olá, [[Nome usuario]], gostaria de conhecer os novos produtos da [[empresa_name]] ? <a href="verseclicou.php?url=$a">Clique aqui e veja...</a>

 

Algo assim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então mais teria de fazer um filtro pois o cliente vai digitar o texto adicionar os links e no final ele iria varrer o texto e ir alterando essas informações em todos os links do texto entendeu ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que não entendi!!

Poderia me explicar melhor o processo?

O cliente digita o texto a partir de campos de um formulário?

Onde o código deve pegar essas informações?

Compartilhar este post


Link para o post
Compartilhar em outros sites

thicomp,

Então deixa eu explicar melhor, é um campo com um editor de texto, o Cliente vai escrever normalmente inserindo links pelo editor e tudo no final vai ter apenas o html com o conteúdo gerado pelo editor, dá para fazer isso pelo próprio editor mais por segurança eu prefiro fazer no PHP direto o procedimento, eu preciso separar o que é HTML e editar conteudo das tags mantendo valores como o exemplo acima.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu faria isso com ajax desta maneira:

<html>
	<head>
		<title>TESTE</title>
		<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
		<script type="text/javascript">
			jQuery(document).ready(function(){	
				jQuery('a').click(function(){
					var href = jQuery(this).attr('title');
					jQuery.ajax({
						type : 'GET',
						url  : 'verseclicou.php',
						data : {uri : href}		
					}).done(function(){
						window.setTimeout(aHref(href), 5000);					
					})
				})		
			})	
			function aHref(href){
				location.href = href;
			}
		</script>	
	</head>
<body>	
<a title="teste.php" href="#">seu link aqui</a>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

A resposta já foi dada por outro usuário, usa expressão regular para achar os links e fazer essa substituição.

Compartilhar este post


Link para o post
Compartilhar em outros sites

$texto = 'Olá, [[Nome usuario]], gostaria de conhecer os novos produtos da [[empresa_name]] ?
 
<a href="http://www.algumacoisa.com/link.php">Clique aqui e veja...</a>';


echo preg_replace('/<a href="(.*)"/is', '<a href="verseclicou.php?url=$1"', $texto);

 

Resultado:

Olá, [[Nome usuario]], gostaria de conhecer os novos produtos da [[empresa_name]] ?
 
<a href="verseclicou.php?url=http://www.algumacoisa.com/link.php">Clique aqui e veja...</a>

 

Ou você também pode usar uma classe htmlparser como a Simple HTML DOM para transformar o documento HTML em um objeto e assim poder acessar suas propriedades e objetos-filhos.

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Raphael Barros

Tenho conhecimentos em jquery tenho um código até mais simples que faiz isso que desenvolvi, mais eu busco em php. Já resolvi pessoal, vlw a todos...

 

Eu editei o puglin que gera os link do editor de texto ai antes do protoclo coloquei http://meusitio.com.br/verseclicou.php?nome=<?php echo $name; ?>&url=http://

Ai quando o cara clica no gerador de hiperlink ele já adiciona essa sitaxe.... Vlw a todos...

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.