Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyrażenia regularne, wycianie znacznika img
cytrynek
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 12.01.2005

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


Mam pewien problem z wyrażeniami regularnymi. Otóż mam kawałek kodu zapisanego do zmiennej $_POST['artykul']:
  1. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4495.jpg&w=250" alt="" />


I chciałbym go zmienić na coś takiego:
  1. <a href=pliki/obrazy/aktualnosci/4495.jpg><img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4495.jpg&w=250" alt="" /></a>


Robię to w ten sposób ale nic nie wychodzi
  1. <?php
  2. $_POST['artykul']=preg_replace('#(<img src=\"/obrazskala.php?obrazek=)(W)(.jpg&w=250\" alt=\"\" />)#', "<a href=2.jpg>123</a>", $_POST['artykul']);
  3. ?>


Proszę o pomoc
Go to the top of the page
+Quote Post
-gox-
post
Post #2





Goście







a tak?

  1. <?php
  2. preg_match('#/([0-9])+.#', $_POST['artykul'], $id);
  3. $_POST['artykul'] = "<a href=pliki/obrazy/aktualnosci/$id[1].jpg>$_POST['artykul']</a>";
  4. ?>
Go to the top of the page
+Quote Post
cytrynek
post
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 12.01.2005

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


No tak z tym, że ten przykład jest dobry gdy nazwa pliku składa się z cyfr. Natomiast jeżeli nazwa pliku składa się z różnych znaków to niestety nie zadziała.

Jeszcze raz opiszę swój problem.
Mam zmienną $_POST gdzie znajduje się tekst wraz z ilustracjami. Chciałbym aby do tych ilustracji prowadził link. Dlatego potrzebuję takiego wyrażenia, które wycina fragment kodu z obrazka i tworzy z niego link.

Przykład kodu $_POST['artykul']:

  1. To jest jakiś tekst. Poniżej znajduje się obrazek
  2. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4495.jpg&w=250" alt="" />
  3. To jest jakiś tekst. Poniżej znajduje się obrazek
  4. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4496.jpg&w=250" alt="" />


Chciałbym aby przerobiony kod wyglądał w ten sposób:
  1. To jest jakiś tekst. Poniżej znajduje się obrazek
  2. <a href=pliki/obrazy/aktualnosci/4495.jpg>
  3. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4495.jpg&w=250" alt="" />
  4. </a>
  5. To jest jakiś tekst. Poniżej znajduje się obrazek
  6. <a href=pliki/obrazy/aktualnosci/4496.jpg>
  7. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4496.jpg&w=250" alt="" />
  8. </a>


Dziękuję za pomoc.

Ten post edytował cytrynek 24.10.2008, 17:53:34
Go to the top of the page
+Quote Post
-gox-
post
Post #4





Goście







Roznych znakow powiadasz....

a tak:?


#/([^/\.])+\.#

(IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
-gox-
post
Post #5





Goście







albo tak:

#/([^/\.])+\.(jpg|bmp|gif|png|wbmp|tiff|tif|jpeg)[ "\'&]+#ism

czy tak
#/([^/\.])+\.(jpg|bmp|gif|png|wbmp|tiff|tif|jpeg)[^a-z]+#ism

albo samo takie:
#/([^/\.])+\.(jpg|bmp|gif|png|wbmp|tiff|tif|jpeg)#ism
Go to the top of the page
+Quote Post
cytrynek
post
Post #6





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 12.01.2005

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


No dobrze wiem, jak uzyskać samą nazwę pliku. A jak wstawić ją za pomocą wyrażenia w coś takiego ?
  1. <a href=pliki/obrazy/aktualnosci/4495.jpg>
  2. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4495.jpg&w=250" alt="" />
  3. </a>
Go to the top of the page
+Quote Post
-794467-
post
Post #7





Goście







tak ło

  1. <?php
  2.  
  3. preg_match('#(...)#', $data, $img_name);
  4.  
  5. ?>
  6.  
  7. <a href=pliki/obrazy/aktualnosci/<?=$img_name?>.jpg>
  8. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/<?=$img_name?>.jpg&w=250" alt="" />
  9. </a>
Go to the top of the page
+Quote Post
cytrynek
post
Post #8





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 12.01.2005

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


To chyba nie załatwi sprawy, ponieważ podmieni tylko dla 1 wyrażenia. A ja chciałbym aby to było dla wszystkich ilustracji. Prawdopodobnie z preg_replace. Ale niestety nie wiem jak to zrobić (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Może przypomnę. Mam coś takiego:
  1. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4495.jpg&w=250" alt="" />


A chcę aby było tak:
  1. <a href=pliki/obrazy/aktualnosci/4495.jpg>
  2. <img src="/obrazskala.php?obrazek=pliki/obrazy/aktualnosci/4495.jpg&w=250" alt="" />
  3. </a>


Naprawdę nikt nie wie ? (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif)
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: 15.09.2025 - 19:20