login.php и Баги с отправкой

Обсуждение дизайна и функциональности сайта и форума.
AjaxVS
Постоялец
Постоялец
 
Сообщения: 506
Зарегистрирован: 01.12.2004 (Ср) 13:12
Откуда: Donetsk, Battle.Net

login.php и Баги с отправкой

Сообщение AjaxVS » 25.07.2006 (Вт) 21:20

Во-первых, куда делся http://bbs.vbstreets.ru/login.php
?

Во-вторых, постя этот текст
Заметил бредовую закономерность.
Если, залогиниваясь, поставить метку "Автоматически входить", уведомления приходят все и без глюков.
Если же метку не ставить или стереть кукисы оперы, уведомления приходят очень редко..
Это касается и некоторых других форумов.. Бред, да и только..

в http://bbs.vbstreets.ru/viewtopic.php?t=25354, получил ответ phpBB:
Failed sending email :: PHP ::

DEBUG MODE

Line : 234
File : emailer.php


Что за баги?

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 26.07.2006 (Ср) 6:45

http://bbs.vbstreets.ru/login.php работает.
По второму, думаю дело в багах Оперы.
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 26.07.2006 (Ср) 11:55

И тут пришёл великий знаток phpBB :lol:
1) вопрос снимается...

2) Никакой связи быть не может. Механизм отправки почты такой:
Когда вы постите, в зависимости от установки "Уведомлять меня о новых ответах" и поставленной в чекбоксе галки , в таблицы topic_watch создаётся запись такого вида:

ид-пользователя | ид-топика | статус-уведомления

Статус-уведомления сначала стаится в 0.
Дальше если кто то постит в этот топик, происходит выборка записей, где статус уведомления = 0. По результату запроса генерируется список email адресов всех, кто подписан на ответы в этот топик. Список дробится на несколько списков - сгруппированных по языкам пользователей. Потом произходит обработка всех список:
В соответсвии с выбранным языком, загружается нужный нотификациионный шаблон ( а если конкретно - то этот - http://bbs.vbstreets.ru/language/lang_r ... notify.tpl ). Потом генерируется BCC список и всем юзерам с одинаковым языком отправляется нужный шаблонизированный текст. дальше идёт обработка следующей языковой группы.
Итак, всем кому было отправленно письмо в поле "статус-уведомления" ставится 1, так что пока они не посмотрят тему, новые уведомления о новых ответах приходить не будут. Соответсвенно когда вы просматриваете топик, если вы на него подписаны, поле "статус-уведомления" ставится обратно в 0.
Есть ещё такие ссылки как "Подписаться на ответы в тему" и "Отписаться...". Как можно догадаться они создают такую запись в таблице искусственно (т.е. не прибегая к постингу в тему).

Автологин: Автологин основан на куках. В куку сохраняется массив, предварительно сериализованный. Массив содержит элементы autologin_id и autologin_key. Кука сохраняется с постфиксом _data.
В данном случае это bbs2vbstreets_data
В autologin_id сохраняется ваш ID, в autologin специально сгенерированное с помощью dss_rand() число, которое также заносится в таблицу sessions_keys. Это сделанно чтобы предотвратить возможность подделки куки и входа под другим пользователем. Так что форум запоминает кому, какой KEY был поставлен. (Ну если честно, там всё чуть чуть сложнее. Но принцип тот же)

Так что как видите никакой связи нет.

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

$result = @mail($to, $this->subject, preg_replace("#(?<!\r)\n#s", "\n", $this->msg), $this->extra_headers);


Функция mail шлёт почту... если почту отослать не удалось в переменной $result будет FALSE.

Если там после работы скрипта FALSE то выводится вот такое сообщение об ошибке.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

AjaxVS
Постоялец
Постоялец
 
Сообщения: 506
Зарегистрирован: 01.12.2004 (Ср) 13:12
Откуда: Donetsk, Battle.Net

Сообщение AjaxVS » 26.07.2006 (Ср) 18:23

1. Ничего не понимаю.. При наборе login.php меня тупо кидает на index.php. Буду разбираться дальше.. Никто не помнит, где в Винде лежит файлик, переадресовывающий адреса?.. Ну в смысле, вы поняли +_+

2. Ой как все громоздко с уведомлениями =( Я вот свой форум делаю потихоньку, вроде все куда проще получается.. Ну, посмотрим, что получится в конце =)

3. Ну да, из фразы "File : emailer.php" догадаться можно, что ошибка в отправки мыла.. Я хотел сказать, может не надо так над юзерами издеваться и отключить DEBUG MODE? Мало ли что..
Последний раз редактировалось AjaxVS 26.07.2006 (Ср) 18:27, всего редактировалось 1 раз.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 26.07.2006 (Ср) 18:26

1. Ты про \WINNT\system32\drivers\etc\hosts :?:
Изображение

AjaxVS
Постоялец
Постоялец
 
Сообщения: 506
Зарегистрирован: 01.12.2004 (Ср) 13:12
Откуда: Donetsk, Battle.Net

Сообщение AjaxVS » 26.07.2006 (Ср) 18:30

Точно, то, что искал! Правда, ничего кроме локалхоста там нет =(

Може, меня забанили? =))

Q2W
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 745
Зарегистрирован: 31.01.2004 (Сб) 20:46
Откуда: Питер

Сообщение Q2W » 26.07.2006 (Ср) 20:44

AjaxVS писал(а):2. Ой как все громоздко с уведомлениями =( Я вот свой форум делаю потихоньку, вроде все куда проще получается.. Ну, посмотрим, что получится в конце =)

На самом деле основная сложность, что нужно помнить, какой юзер, какой пост/топик/раздел прочитал. А это кол-во_юзеров*кол-во_постов (для учёта постов) - много данных. Оптимизировать сложно.
То же и с уведомлениями кол-во_юзеров*кол-во_топиков.

Я свой форум писал - долго мучался.
Я знаю верный путь

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 27.07.2006 (Чт) 1:46

AjaxVS писал(а):1. Ничего не понимаю.. При наборе login.php меня тупо кидает на index.php.


:lol:

А что по твоему должно быть? Приколист :lol: Всё правильно, ты уже залогиненный и на логине тебе делать нечего.

Можешь дописать в конец ?sid=вот_тут_свой_иден_сессии&logout=1
и тебя не только перебросят на index.php но и разлогинят.

Потом можешь спокойно набирать просто login.php и увидеть наконец форму ввода логина и пароля.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.


Вернуться в VBStreets.ru

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15

    TopList