|
|
|
| Больше спасибо за быстрый отклик на мое первое сообщение.
Появился второй вопрос:
Есть БД, в ней пристуствует поле Description (для вставки большого объема текста). При выводе на страницу, все ссылки (http, ttp, @) отображаются как обычный текст.
Вопрос: Как преобразовать это в ссылки?
Сразу появился третий вопрос:
Человек заполняет со стороны пользователя форму и это поле, в нем он пишет ссылку на сайт, например., Приглашаю всех на мой сайт http://name.domen.ru.
Вопрос: как преобразовать это при записи в БД, чтобы при просмотре сообщения был следующий вид:
Приглашаю всех на <a href="http://name.domen.ru%20">мой сайт</a> | |
|
|
|
|
|
|
|
для: MacVit
(05.08.2004 в 13:16)
| | Примерно вот так. Регулярным выражением обрабатываете текст, который вы хотите изменить.
<?
$description=preg_replace("/(http:\\/\\/www|www)(\\S+)/si",'<a href="http://www\\2">www\\2</a>',$description);
?>
|
Это регулярное выражение заменяет текст вида
http://www.ресурс и www.ресурс
на ссылку в HTML
<a href=http://www.ресурс>http://www.ресурс</a>
| |
|
|
|
|
|
|
|
для: MacVit
(05.08.2004 в 13:16)
| | Вопрос: Как преобразовать это в ссылки?
По первому вопросу: Вы можете записывать в базу ссылки уже виде HTML, а не виде текста. Тогда преобразование производим до того, как поместили в базу.
Либо в базе хранить текст, а преобразовывать ссылки перед тем, как вывести на страницу.
По второму вопросу:
Тоже самое.
Допустим поле в форме ввода называется text – т.е. у нас есть переменная $text;
Тогда в скрипте, который обрабатывает форму пишем
<?
$text=preg_replace("/(http:\\/\\/www|www)(\\S+)/si",'<a href="http://www\\2">www\\2</a>',$text);
?>
|
Т.е. обрабатываем эту переменную, чтобы преобразовать ссылки, а уже потом помещаем в базу данных
$query="Insert …… $text";
| |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(05.08.2004 в 14:13)
| | Большое СПАСИБО за быстрый ответ!!! | |
|
|
|