Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][JQuery]Problem z wyrażeniem regularnym i kodem jquery
PHPapprentice
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 6.03.2014

Ostrzeżenie: (0%)
-----


Witam , przerabiam właśnie książkę "PHP5, Apache i MySQL od podstaw" i jestem w ostatnim rozdziale.
Podczas przerabiania tego rozdziału pojawiły się dwa problemy.

1.Chciałbym dodać do forum które jest tematem ostatniego rozdziału , możliwość zamieniania adresu email na odpowiednie łącze np. :

joomla@gmail.com

na łącze

<a href="mailto:joomla@gmail.com" title="Kliknij żeby wysłac emaila">joomla@gmail.com</a>

Niestety próbowałem już paru sposobów zdefiniowania wyrażenia regularnego ale żaden z nich nie działał poprawnie. Myślę że główny problem nie leży w samym wyrażeniu regularnym ale w kwantyfikatorach tego wyrażenia.

2. Drugi problem jest taki że chciałem dodać do możliwości dodawania nowego postu listę bbcodów. Po prostu wylistowaną listą nienumerowaną listę bbcodów jak na przykład :
*.\[b\]\[/b\]
*.\[url\]\[/url\]

i tak dalej

Po kliknięciu na taki bbcode powinien się on znaleźć w polu textarea w którym się wpisuje treść postu. Niestety działa to nie do końca. Mianowicie po załadowaniu strony z wpisywaniem nowego posta jak kliknie się na bbcode wstawia się on do textarea bez problemu jednak jak już coś zacznę pisać w polu textarea to kliknięcie na bbcode nic nie daje, w ogóle się nie wstawia do textarea.

Poniżej wstawiam kod JQuery który posłużył mi do zaimplementowania tej funkcjonalności :

  1.  
  2. $(function(){
  3. $('#tag_b').click(function(){
  4. $('#sigF').html($('#sigF').text()+'');
  5. });
  6. $('#tag_i').click(function(){
  7. $('#sigF').text($('#sigF').text()+'');
  8. });
  9. $('#tag_u').click(function(){
  10. $('#sigF').text($('#sigF').text()+'');
  11. });
  12. $('#tag_img').click(function(){
  13. $('#sigF').text($('#sigF').text()+'[img=][/img]');
  14. });
  15. $('#tag_color').click(function(){
  16. $('#sigF').text($('#sigF').text()+'[color=][/color]');
  17. });
  18. $('#tag_url1').click(function(){
  19. $('#sigF').text($('#sigF').text()+'http://');
  20. });
  21. $('#tag_url2').click(function(){
  22. $('#sigF').text($('#sigF').text()+'');
  23. });
  24. $('#tag_quote1').click(function(){
  25. $('#sigF').text($('#sigF').text()+'<!--quoteo--><div class='quotetop'>Cytat</div><div class='quotemain'><!--quotec--><!--QuoteEnd--></div><!--QuoteEEnd-->');
  26. });
  27. $('#tag_quote2').click(function(){
  28. $('#sigF').text($('#sigF').text()+'<!--quoteo--><div class='quotetop'>Cytat</div><div class='quotemain'><!--quotec--><!--QuoteEnd--></div><!--QuoteEEnd-->');
  29. });
  30.  
  31. })


Prosił bym o pomoc w rozwiązaniu tych problemów i z góry dziękuje.

Mogę dodać że próbowałem już wyrażeń regularnych takich jak :

|^([a-zA-Z0-9-_\.])+@([a-zA-Z0-9-_\.])+\.[a-zA-z0-9]{2,4}$|

oraz

|[\w\-]+(\.[\w\-]+)*@[\w\-]+(\.[\w\-]+)+|

Żadne z nich nie działało poprawnie. To znaczy zamieniało email na linka ale nie tak jak miało to robić. Na przykład tworzyło tylko część linka i powielało go parę razy.

Z tego co myślę to wyrażenia regularne są w porządku oprócz kwantyfikatorów.

Prosił bym o pomoc w tym.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.09.2025 - 17:44