Уважаемые пользователи, по техническим причинам загрузка файлов временно недоступна. Приносим извинения за временные неудобства.

Темы с одинаковым названием

У вас есть идея для расширения функциональности phpBB 3.0.x? Расскажите о ней здесь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
NetStar
phpBB 1.0.0
Сообщения: 3
Стаж: 14 лет 5 месяцев

Темы с одинаковым названием

Сообщение NetStar »

Связка phpbb3 (3.0.10) + Друпал 6, на Денвере.

Как запретить создание нескольких тем с одинаковым названием?

одинаковые темы - этот вариант ну никак не прикручивается :cry:
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 7 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Темы с одинаковым названием

Сообщение MIT »

"Этот вариант" для второй версии форума. Он не применим к третьей.

Запрет создания тем с одинаковым названием стандартными настройками установить невозможно.
NetStar
phpBB 1.0.0
Сообщения: 3
Стаж: 14 лет 5 месяцев

Re: Темы с одинаковым названием

Сообщение NetStar »

Ну а как это сделать?
NetStar
phpBB 1.0.0
Сообщения: 3
Стаж: 14 лет 5 месяцев

Re: Темы с одинаковым названием

Сообщение NetStar »

заметил что у вас на форуме такая же проблема
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 8 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Темы с одинаковым названием

Сообщение Sheer »

NetStar писал(а):Ну а как это сделать?
При создании новой темы искать названия тем в базе и сравнивать с $subject. При совпадении выводить предупреждающее сообщение.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 6 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Темы с одинаковым названием

Сообщение HAMMER663 »

А если на форуме миллион тем? Форум загнется!
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 8 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Темы с одинаковым названием

Сообщение Sheer »

HAMMER663
Ну если ТС так обеспокоен этим вопросом, пусть тогда он у него загнется. Зато одинаковых не будет :D
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 6 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Темы с одинаковым названием

Сообщение HAMMER663 »

Sheer Я лишь хотел предупредить ТС :D
А то ведь завтра прибежит опять и будет писать, что форум не работает :)
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 7 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Темы с одинаковым названием

Сообщение MIT »

Open: /language/ru/posting.php
Find:

Код: Выделить всё

	'STYLES_TIP'				=> 'Совет: можно быстро применить стили к выделенному тексту.',
After add:

Код: Выделить всё

	'SUBJECT_ALREADY_USED'		=> 'Название темы уже используется',
Open: /posting.php
Find:

Код: Выделить всё

	if (!$preview && !$refresh && utf8_clean_string($post_data['post_subject']) === '' && ($mode == 'post' || ($mode == 'edit' && $post_data['topic_first_post_id'] == $post_id)))
	{
		$error[] = $user->lang['EMPTY_SUBJECT'];
	}
Add after:

Код: Выделить всё

	if ($mode == 'post')
	{
		$sql = 'SELECT topic_id
			FROM ' . TOPICS_TABLE . "
			WHERE topic_title = '" . $db->sql_escape($post_data['post_subject']) . "'";
		$result = $db->sql_query($sql);
		$row = $db->sql_fetchrow($result);
		$db->sql_freeresult($result);

		if ($row)
		{
			$error[] = $user->lang['SUBJECT_ALREADY_USED'];
		}
	}
romeo_piter
phpBB 2.0.22
Сообщения: 1375
Стаж: 17 лет 6 месяцев
Благодарил (а): 260 раз
Поблагодарили: 32 раза

Re: Темы с одинаковым названием

Сообщение romeo_piter »

Дмитрий, это регистронезависимый вариант?

Добавлено спустя 40 секунд:
И будут ли варианты:

Привет
Привет?

Рассматриваться как 2 разных названия?
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 7 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Темы с одинаковым названием

Сообщение MIT »

romeo_piter писал(а):это регистронезависимый вариант?
Да, в общем случае. Если регистр всё равно будет учитываться, то можно заставить его игнорировать, заменив

Код: Выделить всё

		$sql = 'SELECT topic_id
			FROM ' . TOPICS_TABLE . "
			WHERE topic_title = '" . $db->sql_escape($post_data['post_subject']) . "'";
на

Код: Выделить всё

		$sql = 'SELECT topic_id
			FROM ' . TOPICS_TABLE . "
			WHERE topic_title = '" . $db->sql_escape($post_data['post_subject']) . "' collate utf8_general_ci";
но если никто не лазил в структуру таблиц и ничего не менял, то этого не потребуется.
romeo_piter писал(а):2 разных названия?
Да.

Вернуться в «Запросы модов для phpBB 3.0.x»