Понедельников НЕТ!
Регистрация или вход Регистрация или вход Избранное на этом сайте | Главная | Анкета | Рекомендовать | Обратная связь | В избранное | Сделать домашней
Скачать SSDForums
Скачать SSDForums 1.0.1 Скачать SSDForums 1.0.1
Скачать SSDForums 1.0.1 SP1 Скачать SSDForums 1.0.1 SP1
Скачать SSDForums 1.0.1 SP2 Скачать SSDForums 1.0.1 SP2
SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro
SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro
Jewelry Сase Team
Скачать Ruby Chat 0.1.1 Скачать Ruby Chat 0.1.1
Меню
Главная
Форум
Магазин цифровых товаров

Новости
Подписка на новости
Темы новостей
Добавить новость

Каталог файлов
Карта файлового архива
Публикации

Опросы
Анкета пользователя
Чат

BestMaker
Викторина
Архив новостей
Карманный оракул
Поиск по сайту с помощью Яндекс
Поиск по сайту с помощью Google
Фото дня
Для души
Погода на 3 дня
IndexCat
IndexTop
Map_Pages
Поиск по сайту









Интересное в сети

Sape — это система купли-продажи ссылок
с главных и внутренних страниц сайтов
Публикации
Комментарии
Запрет Гостям писать в комментариях под именем зарегистрированного Пользователя (для Slaed 2.1)


Если комментарии возможны для незарегистрированных посетителей, то может возникнуть ситуация, когда он, Гость, будет писать комментарии от имени зарегистрированного посетителя (Пользователя).
Исправим этот недочет.




Обработка ошибок в комментариях происходит в файле function/comments.php, функция function SaveComments.
Добавим нижеприведенный код

Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//Строка, после которой вставим обработку еще одной ошибки
   if ($postname == "" && !is_user($user)) $stop = ""._CERROR3."";
   

//Начало кода "Проверка имени Гостя"

//Если пришел Гость
   if (!is_user($user)) {

//Обнуляем переменную
      $stop_name = "";

//Проверяем, есть ли имя, написанное при комментарии в таблицах пользователей и админов
      $stop_name .= list($stop_name1) = $db->sql_fetchrow( $db->sql_query("SELECT user_id FROM ".$prefix."_users WHERE user_name = '$postname' ") );
      $stop_name .= list($stop_name1) = $db->sql_fetchrow( $db->sql_query("SELECT user_id FROM ".$prefix."_users_temp WHERE user_name = '$postname' ") );
      $stop_name .= list($stop_name1) = $db->sql_fetchrow( $db->sql_query("SELECT id FROM ".$prefix."_admins  WHERE name = '$postname' ") );

//Если есть совпадения, то выводим сообщение об ошибке.
         if ($stop_name != "") {
            $stop = "Ошибка!  <br>Имя $postname используется зарегистрированным пользователем. <br><br>Если Вы зарегистрированный пользователь, <a href=\"index.php?name=Account\">войдите</a> под своим Login'ом.";
         }
   }

//Конец кода "Проверка имени Гостя"


Теперь при попытке Гостя писать под именем Пользователя, ему будет выдаваться ошибка.


Дата публикации: 30.01.2007
Прочитано: 10369 раз
[ Назад | Начало | Наверх ]
Комментарии

djusha
Дата: 07.04.2008 | Комментарий: 23
djushaрешаем проблему координально. Перед тем как записывать имя незарегистрированного пользователя в базу, добавляем к имени слово "Guest".

Тогда и бараны сыты будут и волки целы.

И всем понятно будет, что это гость, и если потом появится зарегистрированный пользователь с таким же именем, то он будет без приписки "Guest".

А этот, поскольку имя в базе будет уже с припиской "Guest", то с ней и останется.

Итак,

function SaveComments

сразу, выше

PHP - Код
1
2
3
4
<?php
$cid
= intval($cid);
        
$ip = getenv("REMOTE_ADDR");
?>


добавляем

PHP - Код
1
2
3
<?php
if (!is_user($user) && !is_admin($admin)) {$postname = "Guest $postname";} # Для незарегистрированных пользователей добавляем приписку  об этом.
?>


обратите внимание, что если будет писать настоящий админ, то приписка добавлятся не будет.


так же,
function ShowComments

в коментариях, в версии 2,3 показывает дату зарегистрированного пользователя. можно использовать и эту возможность

меняем
PHP - Код
1
2
3
<?php
$user_regdate
= ($user_regdate) ? "".$datetime[3].".".$datetime[2].".".$datetime[1]."" : "<i>"._NO_INFO."</i>";
?>


на

PHP - Код
1
2
3
<?php
$user_regdate
= ($user_regdate) ? "".$datetime[3].".".$datetime[2].".".$datetime[1]."" : "<i>"._NO_INFO.", User <B>\"$com_name\"</B> is not registered</i>";
?>


_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
отредактированно 07.04.2008г.
admin
Дата: 07.04.2008 | Комментарий: 22
adminSerg_pnz, ну да, примерно так... :)
Serg_pnz
Дата: 07.04.2008 | Комментарий: 21
Serg_pnzdjusha, должны, но я паранойей не страдаю

upd: Хотя будет неприятно, если кто-то напишет имя "Админ", а с другой стороны приписка префикса "Гость" - выход.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
отредактированно 07.04.2008г.

Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
djusha
Дата: 07.04.2008 | Комментарий: 20
djushaЭто все хорошо конечно. Но "Запрещенные имена" тоже должны учитыватся, тоесть запрещатся...
TIMKA
Дата: 13.07.2007 | Комментарий: 19
TIMKAЭто что нужно сделать, чтоб когда гость писал под ником Зина писалось вот так Ваше имя: Гость, Зина вот тогда не будет путанец ...


Не могу найти строку " if ($postname == "" && !is_user($user)) $stop = ""._CERROR3."";" в папке function в файле comments.php после каторой я как понял нужно добавлять данный код.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
отредактированно 13.07.2007г.
Serg_pnz
Дата: 22.05.2007 | Комментарий: 18
Serg_pnz
Цитата
Давайте на секунду представим, что гость оставил комментарий под именем "Зина". Через месяц регистрируется пользователь и пишет в свой ник "Зина". Что произойдёт ??? Пользователю присвояться коменты, которых он не писал ???

Именно так всё и будет на версиях 2.1 и ниже. На 2.2 и выше по идее всё нормально будет. Почти... Помоему просто появятся две "Зины". {имячко ты выбрал для примера }

Поэтому желательно как-то подписывать, что это гость оставил комментарий, т.е. сразу после ника, который введет гость, что бы система автоматом вписывала (Гость)
Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
Sнэйк
Дата: 21.05.2007 | Комментарий: 17
SнэйкНаверно самый тупой вопрос. Давайте на секунду представим, что гость оставил комментарий под именем "Зина". Через месяц регистрируется пользователь и пишет в свой ник "Зина". Что произойдёт ??? Пользователю присвояться коменты, которых он не писал ???
Sнэйк
Дата: 21.05.2007 | Комментарий: 16
SнэйкСпасибо !!!
Serg_pnz
Дата: 18.05.2007 | Комментарий: 15
Serg_pnzangel7,
uploads/raznoe/rose.jpg
Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
angel7
Дата: 18.05.2007 | Комментарий: 14
angel7Serg_pnz, теперь работает! Спасибо! прошу прощения за глупость
Всего 23 на 3 страницах по 10 на каждой странице
[ 1 | 2 | 3 ] [>>]
Вы не можете отправить комментарий анонимно, пожалуйста зарегистрируйтесь.
Календарь 3 в 1
- М - Г + Г + М
Апрель, 2024
пнвтсрчтптсбвс
1234567
891011121314
15161718192021
22232425262728
2930
Купить.
Можно в кредит на 90 дней!
Навигация
»» RSS
Главная | Форум | Новости | Подписка на новости | Темы новостей | Добавить новость | Каталог файлов | Карта файлового архива | Публикации | Опросы | Анкета пользователя | Чат | BestMaker | Викторина | Архив новостей | Карманный оракул | Поиск по сайту с помощью Яндекс | Поиск по сайту с помощью Google | Фото дня | Для души | Погода на 3 дня | IndexCat | IndexTop | Map_Pages | Весь Оракул

Rambler's Top100

Генерация страницы: 0.263 сек. и 18 запросов к базе данных за 0.024 сек.
Web site engine code is Copyright © 2006 by SLAED CMS. All rights reserved.