PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (25): В начало « ... 13 14 15 16 [17] 18 19 20 21 ... » В конец

> Найдено сообщений: 374
VestCoastman Отправлено: 07 Мая, 2013 - 00:49:24 • Тема: Вхождение внутри вхождения • Форум: Регулярные выражения

Ответов: 6
Просмотров: 306
[quote=DeepVarvar][/quote]
Не совсем понял, это как?
Может есть пример простенький? Закатив глазки
VestCoastman Отправлено: 06 Мая, 2013 - 14:07:46 • Тема: Вхождение внутри вхождения • Форум: Регулярные выражения

Ответов: 6
Просмотров: 306
Нет, это работать не будет, точнее будет, но до первого вхождения закрывающего тега
Результат будет:
CODE (htmlphp):
скопировать код в буфер обмена
  1. ([spoiler]text [spoiler]text[/spoiler])[/spoiler]

() - вхождение
VestCoastman Отправлено: 06 Мая, 2013 - 04:10:15 • Тема: Вхождение внутри вхождения • Форум: Регулярные выражения

Ответов: 6
Просмотров: 306
Уже как то очень давно задавал этот вопрос, но никто так и не ответил
Такой ббкод:
PHP:
скопировать код в буфер обмена
  1. $text = preg_replace("/\[spoiler\](.*)\[\/spoiler\]/iu", "<div><a href=\"javascript://\" class=\"btn forumspl\">Спойлер</a><div class=\"bodyspl\">$1</div></div>", $text);

Работает только до первого вхождения, а последующие нет. Пример
CODE (htmlphp):
скопировать код в буфер обмена
  1. [spoiler]
  2. Это работает
  3.         [spoiler]А вот это уже нет :([/spoiler]
  4. [spoiler]

Уже не знаю что и делать, все модификаторы перебрал Растерялся
VestCoastman Отправлено: 05 Мая, 2013 - 22:01:58 • Тема: Условие и отрицание • Форум: Регулярные выражения

Ответов: 11
Просмотров: 543
Ответа я так и не получил. Чтож, очень жаль.
VestCoastman Отправлено: 03 Мая, 2013 - 19:07:27 • Тема: Условие и отрицание • Форум: Регулярные выражения

Ответов: 11
Просмотров: 543
OrmaJever пишет:
VestCoastman пишет:
"/\[url=(?:'|"|\'|\")((((ht|f)tps?Недовольство, огорчение?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)(?:'|"|\'|\")\](.*)\[\/url\]/Usi"

Я извиняюсь, но вот это замена bb кода? А?! Не понял
Помоему вот этого хватит "\[url=?(.+?)\](.+?)[url]ims" Растерялся
(Добавление)
я не представляю как долго php будет отбрабывать вашу регулярку

Не в этом дело, регулярка естественно будет оптимизирована, тут вопрос в другом.
VestCoastman Отправлено: 03 Мая, 2013 - 17:11:00 • Тема: Условие и отрицание • Форум: Регулярные выражения

Ответов: 11
Просмотров: 543
Уже искал и punbb с phpbb3 поковырял, но в punbb какая-то хитрожопая система, а в phpbb3 коды добавляются через панель/базу, по этому тоже хитрожопая система.
Гугл дает результаты только на готовые бб коды, но ни слова про отдельные ссылки
VestCoastman Отправлено: 03 Мая, 2013 - 16:07:32 • Тема: Условие и отрицание • Форум: Регулярные выражения

Ответов: 11
Просмотров: 543
Второй день парюсь. Прошу помощи.
VestCoastman Отправлено: 03 Мая, 2013 - 08:59:24 • Тема: Условие и отрицание • Форум: Регулярные выражения

Ответов: 11
Просмотров: 543
Не пошло дело. Огорчение Что с тегом url, что с img...
Вот полный код:
PHP:
скопировать код в буфер обмена
  1. $text = preg_replace("/\[url=(?:& #039;|& quot;|\'|\")((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)(?:& #039;|& quot;|\'|\")\](.*)\[\/url\]/Usi", "<a href=\"$1\">$7</a>", $text);
  2. $text = preg_replace("/\[img\]((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)\[\/img\]/Usi", "<img src=\"$1\">", $text);
  3. $text = preg_replace("/(?<!\")((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)(?<!\")/", "<a href=\"$1\">$1</a>", $text);

PHP:
скопировать код в буфер обмена
  1. [img]https://www.google.ru/images/srpr/logo4w.png[/img]
  2. [url="http://google.ru"]google[/url]
  3. http://google.ru

выше написанный код не обрабатывается. Результат его работы:
CODE (html):
скопировать код в буфер обмена
  1. <img src="https://<a href="www.google.ru/images/srpr/logo4w.png">www.google.ru/images/srpr/logo4w.png</a>">
  2. <a href="http://google.ru">google</a>
  3. <a href="http://google.ru">http://google.ru</a>


Уже и так и сяк пытался, но не выходит(
VestCoastman Отправлено: 02 Мая, 2013 - 21:41:01 • Тема: Условие и отрицание • Форум: Регулярные выражения

Ответов: 11
Просмотров: 543
LIME пишет:
PHP:
скопировать код в буфер обмена
  1. $text = preg_replace("/(?<!\")((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)(?!\")/", "<a href=\"$1\">$1</a>", $text);


Вот спасибо.
Подредактировал под одинарные кавычки и &quot; но правильнее было бы проверять весь тег [url="
Может кому и пригодится:
PHP:
скопировать код в буфер обмена
  1. $text = preg_replace("/(?<!:'|"|\'|\")((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)(?<!:'|"|\'|\")/", "<a href=\"$1\">$1</a>", $text);


тут теги &quot ; не фильтруются в теге [php])
VestCoastman Отправлено: 02 Мая, 2013 - 19:08:15 • Тема: Сохранить изображение на компьютер • Форум: Вопросы новичков

Ответов: 8
Просмотров: 296
header()
VestCoastman Отправлено: 02 Мая, 2013 - 18:01:11 • Тема: Условие и отрицание • Форум: Регулярные выражения

Ответов: 11
Просмотров: 543
имеется замена бб кода url на ссылку
PHP:
скопировать код в буфер обмена
  1. $text = preg_replace("/\[url=(?:'|"|\'|\")((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)(?:'|"|\'|\")\](.*)\[\/url\]/Usi", "<a href=\"$1\">$7</a>", $text);

И имеется просто замена ссылки на кликабельную ссылку т.е.
PHP:
скопировать код в буфер обмена
  1. $text = preg_replace("/((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)/", "<a href=\"$1\">$1</a>", $text);

Но при таком раскладе совпадение будет некорректным, например
PHP:
скопировать код в буфер обмена
  1. [url="http://google.ru"]test[/url]

выделит http://google.ru, соответственно нужно, например, отрицание кавычек вокруг.
Подскажите решение?
VestCoastman Отправлено: 29 Апреля, 2013 - 14:35:41 • Тема: Присвоение переменной NULL • Форум: Вопросы новичков

Ответов: 2
Просмотров: 178
Только что пробовал, ошибка - "Ошибка запроса"
Сейчас еще проверю mysql_error()
(Добавление)
Всё, нашел ошибку. Пропустил кавычку
mysql_query("INSERT INTO `table` SET (`v1`,`v2`,`v3`) VALUES ('".$v1."','".$v2."',".$v3.")");

Спасибо, тему можно закрывать.
VestCoastman Отправлено: 29 Апреля, 2013 - 14:31:09 • Тема: Присвоение переменной NULL • Форум: Вопросы новичков

Ответов: 2
Просмотров: 178
Как присвоить переменной NULL в запросе
PHP:
скопировать код в буфер обмена
  1. $v1 = 'test1';
  2. $v2 = 'test2';
  3. $v3 = 'NULL'; // Тут нужен NULL, а не строка "NULL"
  4. mysql_query("INSERT INTO `table` SET (`v1`,`v2`,`v3`) VALUES ('".$v1."','".$v2."','".$v3."')");

альтернатива без переменных
PHP:
скопировать код в буфер обмена
  1. mysql_query("INSERT INTO `table` SET (`v1`,`v2`,`v3`) VALUES ('test1','test2',NULL)");
VestCoastman Отправлено: 25 Апреля, 2013 - 00:39:13 • Тема: Можно ли поместить в майскюэль запрос переменную из массива пост не создавая переменных посредников • Форум: Вопросы новичков

Ответов: 4
Просмотров: 261
PHP:
скопировать код в буфер обмена
  1. mysql_query("INSERT INTO tb_clients SET client_name='{$_POST['client_name']}'");

P.S. Это небезопасно.
VestCoastman Отправлено: 24 Апреля, 2013 - 20:47:50 • Тема: While() select • Форум: Вопросы новичков

Ответов: 5
Просмотров: 192
DelphinPRO, там разные таблицы, ошибся малость. Вот правильный пример.
PHP:
скопировать код в буфер обмена
  1.  
  2. $result = mq("select * from mytalbe");
  3. while($array = mfa($result))
  4. {
  5.         $category = $array['category'];
  6.         $ctitle = mq("select * FROM categories where id='$category'");
  7.         echo $ctitle;
  8. }
  9.  

(Добавление)
Мелкий пишет:
Выгрузите всю таблицу в память, там уже обходите рекурсивно.

Это как Не понял

Страниц (25): В начало « ... 13 14 15 16 [17] 18 19 20 21 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB