2011-01-17 18 views
14

Muszę wysłać adres URL mojej strony w treści, aby odbiorca wiadomości mógł kliknąć na nią, aby dołączyć do mojej strony.Jak przekazać URL w treści mailto

Jednak obecnie klient poczty renderuje pocztę tak:

link idzie tu http://www.example.com/foo.php?this=a

URL jest obcięty na & symbolu, tym samym cały proces łączenia się niepowodzeniem. Jak mogę przekazać adres URL taki jak http://www.example.com/foo.php?this=a&join=abc&user454 w treści mailto?

Mój obecny HTML jest następujący:

<a href="mailto:[email protected]?body=Link goes here http://www.example.com/foo.php?this=a&amp;really=long&amp;url=with&amp;lots=and&amp;lots=and&amp;lots=of&prameters=on_it 
">Link text goes here</a> 

Odpowiedz

23

trzeba zakodować URL. To URL Decoder/Encoder tool zrobi lewy. Poniższy seems to work:

<a href="mailto:[email protected]?body=Link goes here http%3A%2F%2Fwww.example.com%2Ffoo.php%3Fthis%3Da%26join%3Dabc%26user454 
">Link text goes here</a> 
+0

rozwiąże każdy problem związany z adresem URL, więc oznaczyłem go jako poprawną odpowiedź. –

10

bym kodowanie URL łącza używasz, więc byłoby:

<a href="mailto:[email protected]?body=Link%20goes%20here%20http%3A%2F%2Fwww.example.com%2Ffoo.php%3Fthis%3Da%26join%3Dabc%26user454">Link text goes here</a> 
+0

-1, że nie będzie działać !! – Sarfraz

+0

Po prostu próbowałem. to działa! zamiast tego użył pierwszego linku, który podał, a nie drugiego. – tekknolagi

+0

proszę oddać swój głos! – tekknolagi

3

Można wpisać javascript: alert (escape ("adresu URL")); w polu adresu przeglądarki i uzyskaj bezpieczny URL dla łącza mailto. Na przykład wpisz następujące polecenie w polu adresu przeglądarki i naciśnij Enter.

javascript:alert(escape("http://www.example.com/foo.php?this=a"));

Otrzymasz komunikat, który wyświetli się.

http%3A//www.example.com/foo.php%3Fthis%3Da

Przeglądarki oparte na przeglądarkach Opera i Mozilla umożliwiają kopiowanie wyświetlanej zawartości z pola alertu.

Mogłeś ją poprawić wpisując

javascript:alert("mailto:[email protected]?subject=My Subject&body="+escape("http://www.example.com/foo.php?this=a"));

aby uzyskać temat i treść zawartych w link. Innymi ulepszeniami mogą być użycie nazwy Od i podział wiersza za pomocą% 0a.

javascript:alert("mailto:Just Me <[email protected]>?subject=My Subject&body=This is the link:%250a"+escape("http://www.example.com/foo.php?this=a"));
+0

dziękuję za funkcję ucieczki! Tego właśnie szukałem – yngrdyn

1

jak widzę używasz php następnie można użyć "urlencode()" Funkcja

<a href="mailto:[email protected]?body=Link goes here <?php echo urlencode('http://www.example.com/foo.php?this=a&amp;really=long&amp;url=with&amp;lots=and&amp;lots=and&amp;lots=of&prameters=on_it 
');?>">Link text goes here</a>