Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Zamiana
Forum PHP.pl > Forum > Przedszkole
meehow18
Witam,
mam pytanie,
jak zrobić, że jeżeli ktoś w formularzu textarea poda np:
Kod
[url=http://a.pl]Zobacz[/url]

Zostanie zamienione na normalny link?

Mam obecnie napisaną taką clase

  1. <?php
  2. class zamiana extends CI_Model
  3. {
  4. function url($msg,$id)
  5. {
  6. //$this->db->where('email', $this->session->userdata('email'));
  7. $this->db->where('url', $id);
  8. $qw = $this->db->get('url');
  9.  
  10. foreach ( $qw->result() as $r)
  11. {
  12. $url = $r->id_sub;
  13. $kod= $r->kod;
  14. $base = base_url('index.php/url/index/');
  15. $link = "<a href=\"".$base."/".$url."/".$kod."\">".$r->opis." </a>";
  16. }
  17. $msg=str_replace("[url]",$link,$msg);
  18. return $msg;
  19. }
  20.  
  21. }


Ona działa na zasadzie, że pod polem textarea jest input na url i osobny na opis i wystarczy podać w poście [url] i zamienia. Teraz się pojawia problem, jeżeli ktoś chciałby ten sam link linkować z innym opisem.

Proszę o pomoc wink.gif
Sephirus
Kod
[url=http://a.pl]Zobacz[/url]


  1.  
  2. $text; // w tej zmiennej masz tekst na przykład "costam costam costam strona costam costam costam"
  3.  
  4. $text = preg_replace('/\[url=([^\]]+)\]([^\[]+)\[\/url\]/si','<a href="$1">$2</a>');
  5.  
  6. echo $text;


i tyle wink.gif
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.