Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zaminianie ciągu znaków na link klikalny
Forum PHP.pl > Forum > Przedszkole
slaveman
Witam mam taki problem:
posiadam zmienną $tekst której wartością jest ciąg znaków w tym adres url i niewiem jak zrobic aby zamienić ta zmienną tak aby powstał identyczny ciag znaków tylko zamiast adresu url był link klikalny dla przygładu:
Mam zmienną
  1. <?php
  2. $tekst = "ble ble <a href="http://xx.pl" target="_blank">http://xx.pl</a> ble ble"
  3. ?>

a chciał bym przekonwertowac ta zminna aby powstała
  1. <?php
  2. $tekst = "ble ble <a href="http://xx.pl">http://xx.pl</a> ble ble"
  3. ?>


Nalezy pamiętac przytym że adresy url bedą zawsze różne więc nie wystarczy zwykłą podmiana fragmętu ciągu znaków.

Bardzo prosze o pomoc i pozdrawiam
Athlan
Polecam Ci gotowy już BBCode:

http://bbcode.strefaphp.net/

a tak nawiązując do Twojego problemu to spróbuj tak:

  1. <?php
  2. $tekst = "ble ble <a href="http://xx.pl" target="_blank">http://xx.pl</a> ble ble";
  3.  
  4. $tekst = stripslashes($tekst);
  5.  
  6. echo $tekst;
  7. ?>


EDIT. widzę że chcesz się dodatkowo pozbyć targeta:

  1. <?php
  2.  
  3. $tekst = "ble ble <a href="http://xx.pl" target="_blank">http://xx.pl</a> ble ble";
  4.  
  5. $tekst = str_replace('target="_blank"','',stripslashes($tekst));
  6.  
  7. echo $tekst;
  8.  
  9. ?>


czek yt sał, pzdr.
slaveman
Nie oto mi chodzi na odwrót ma być czyli mma zwykła adres http://dasdf.pl i chce go zamienić na link <a href="http://dasdf.pl">http://dasdf.pl</a>
Athlan
to proponuję BBcode jak wcześniej:

http://bbcode.strefaphp.net/

lub (pozwolę sobie skożystać z funkcji ze strefy php . net:

  1. <?php
  2. function add_links($str)
  3. {
  4. $str = preg_replace("#(.*?)?(.*?)#si", "<A HREF="12" TARGET="_blank">12</A>", $str);
  5.  
  6. return $str;
  7. }
  8. ?>


uzycie:

  1. <?php
  2. $tekst = "http://www.google.pl";
  3. echo add_links($tekst);
  4. ?>


EDIT. jeszcze do zabezpieczeń: by sprawdzić poprawność linka uzyj funkcji ereg() i wyrażeń regularnych (więcej w manualu (www.php.net) i na guuglach (www.google.com)) smile.gif
slaveman
No oto mi chodzilo wielkie dzięki ale ejst jeszcze ejden problem jak przerobic tą funkcje by działąła odwrotnie czyli zamieniała
  1. <a href="http://xx.pl">http:/xx.pl</a>
na
Vogel
gdybys tylko szedl na strone ktora podal ci Athlan ( http://bbcode.strefaphp.net/ ) to bys nie mial pytan, bo wszystko podane jest tam jak na tacy. Heh...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.