Kostek.88
13.03.2008, 11:00:14
Witam, mam taki problem: dodaję newsy w panelu administracyjnym i od razu jako zdjęcie dodaje się po prostu znacznik <img /> w komórce pola bazy danych razem z treścią. Chciałem w pewnym momencie wyświetlić to wszystko, ALE BEZ ZDJĘĆ. Jak takie coś wykonać? Da się jakąś funkcją oddzielić znacznik img od reszty treści? Zaznaczam, że w tekście występują inne znaczniki, ale chodziło mi o wywalenie tego img przy wyświetlaniu. Czy funkcją split/explode da radę, czy da się to w ogóle wykonać?
Pozdrawiam
Kostek.88
13.03.2008, 11:46:40
Dzięki, a lepiej użyć str_ireplace, która nie rozróżnia wielkości liter, ale nie działa w PHP 4.0, który obecnie mam
mokry
13.03.2008, 11:56:00
Proponuję użyć preg_replace(). Do tego krótkie wyrażenie regularne i masz to co chciałeś. Zobacz w manualu na przykłady uzycia tej funkcji a na pewno coś znajdziesz.
Kostek.88
13.03.2008, 12:23:57
Mam takie coś:
<?php
?>
Ale nie wiem jak zrobić, żeby łapało ten znacznik też w prawą stronę, czyli nie tylko "<img", ale resztę aż do "/>" lub ">". Czytałem o wyrażeniach regularnych, ale nie mogę tego sklecić...
bim2
13.03.2008, 12:28:19
<?php
$news = preg_replace('!<img(.*?)/>!is', '', $row["news_main"]); ?>
Kostek.88
13.03.2008, 12:35:46
Dzięki wielkie stary

. A jeszcze lepiej można zrobić tak:
<?php
$news = preg_replace('!<img(.*?)>!is', '', $row["news_main"]); ?>
Wtedy zadziała na znaczniki "<img>" i "<img />". Dzięki jeszcze raz

Pozdrawiam