[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Почтовый клиент
Andruhaphp
Хочу сделать у себя на сайте почтовый клиент,что бы у зарегестрированных пользователей была,своя почта,и когда незарегенный вводил какое-то сообщение в форму,оно сортировало и присылало всем кто попадает под категорию,ну и что бы эти пользователи зарегестрированные могли читать эту почту,удалять,перемещать в коризину ну как то так.
Готовые скрипты брать не хочу.Поэтому кто может помогите как реализовать вот именно сам почтовый кабинет,сортировка уже есть.Может ссылки на статьи,хоть что-то,что бы понять как и что,готов трудится в поте лица всем спасибо



Спустя 5 минут, 55 секунд (2.02.2011 - 16:20) Andruhaphp написал(а):
кстати вот примерно как на этом форуме есть внутренняя почта

Спустя 10 минут, 54 секунды (2.02.2011 - 16:31) Zerstoren написал(а):
На самом деле все просто.

Нужна таблица с данными:
1id
2 получатель
3 отправитель
4 удалено получателем
5 удалено отправителем
6 текст
// Мона еще полей, но это по вашему желанию

Сделать выборку по получателям / отправителям. Для этого воспользуемся данными сессии.

И не забудьте про защиту. А то это одно из очень уязвимых мест

Спустя 1 минута, 59 секунд (2.02.2011 - 16:33) inpost написал(а):
Andruhaphp
в БД заносишь:
`id`,получатель,отправитель,тема,текст письма
А теперь остаётся лишь вывод =)

Спустя 4 минуты, 20 секунд (2.02.2011 - 16:37) Andruhaphp написал(а):
Zerstoren,вот как раз про защиту я и думал.А какие могут быть уязвимости???
я создал таблицу в базе message,там у меня поля id,author,poluchatel,text

Спустя 34 минуты, 3 секунды (2.02.2011 - 17:11) Andruhaphp написал(а):
а как сделать вывод что бы сначала была ссылка с именем пользователя а потом в неё зайти можно и прочитать само сообщение??ну кинь те хоть где это прочитать можно....

Спустя 1 день, 5 часов, 27 минут, 47 секунд (3.02.2011 - 22:39) VELIK505 написал(а):
Цитата (Andruhaphp @ 2.02.2011 - 13:37)
Zerstoren,вот как раз про защиту я и думал.А какие могут быть уязвимости???
я создал таблицу в базе message,там у меня поля id,author,poluchatel,text

Sql иньекцию пустить можно через неё.
Надо обрабатывать всякую бяку.
function checkstring($stroka)
{
$stroka = str_replace(">",">",$stroka);
$stroka = str_replace("<","%<",$stroka);
return $stroka;
}


Так же я как полагаю знаний у вас не сильно много. Меня ложили через почту автоботом а потом я подумал чё за фигня как так если каптча стоит а потом врубился что если отключить картинки в браузере то можно каптчу вообще не вводить.
т.е не хватало чёто типо такого
OR !isset($_SESSION["texto"]

if (strtolower($_POST['code'])!= strtolower($_SESSION['texto']) OR !isset($_SESSION["texto"]))

Спустя 17 минут (3.02.2011 - 22:56) Andruhaphp написал(а):
VELIK505 ,а как сделать вывод что бы сначала была ссылка с именем пользователя а потом в неё зайти можно и прочитать само сообщение??Сколько лазил по форумах так и не нашел как сделать.Мож кто ссылкой поделится.Хоть что-то

Спустя 2 минуты, 7 секунд (3.02.2011 - 22:58) VELIK505 написал(а):
Да ты сделай 2ва шаблона. как-бы 2 странички на 1ую страничку ты выводишь как раз все сообщения от юзеров а с каждого юзера идёт линк на 2ую страничку с самим сообщением

Спустя 2 минуты, 11 секунд (3.02.2011 - 23:00) inpost написал(а):
Andruhaphp
2 страницы, на одной выводишь ссылки, на другой содержание. Чему тут учиться? Как формировать ссылку? Это стандартный $_GET, где передаёшь параметр ID

Спустя 2 минуты, 6 секунд (3.02.2011 - 23:02) Andruhaphp написал(а):
ну про вот сообщение отправили оно занеслось в БД,теперь когда я буду его вытягивать оттуда,по параметру poluchatel,вот честно не понял чуток

Спустя 6 минут, 58 секунд (3.02.2011 - 23:09) Andruhaphp написал(а):
inpost ,твои ссылки на статьи по выводу данных из БД помогают,кста

Спустя 2 часа, 29 секунд (4.02.2011 - 01:10) Zerstoren написал(а):
Цитата (Andruhaphp @ 3.02.2011 - 19:56)
VELIK505 ,а как сделать вывод что бы сначала была ссылка с именем пользователя а потом в неё зайти можно и прочитать само сообщение??Сколько лазил по форумах так и не нашел как сделать.Мож кто ссылкой поделится.Хоть что-то

Я выводил по айди.
Ток применял очень много фильтров.

Но самые главные
1е - зачистка мусора с id.
2е - смотрел, является ли получателем/отправителем юзер, нет? фтопку его.

хотя лучше вообще спрятать ай-ди и не кому не показывать. Дать только постраничную навигацию. Посмотрите вариант как SMF движке и вам станет понятней.

Спустя 1 день, 21 час, 33 минуты, 58 секунд (5.02.2011 - 22:44) Andruhaphp написал(а):
а может ещё кто что может подсказать по этому поводу?

Спустя 22 часа, 8 минут, 4 секунды (6.02.2011 - 20:52) Andruhaphp написал(а):
Вот такая ситуация,задумка кода,что в зависимости,если письма с readm==1,то есть прочитанные,значит выводит одну картинку,что нет сообщений,а если есть непрочитанные письма,значит выводит другую иконку и сообщение
$zap=mysql_query("SELECT * FROM t_messages WHERE id='$id'",$db);
$ros = mysql_fetch_assoc($zap)

if ($ros['readm'] == 1)
{
echo "|<a href='mail.php'><img src='/images/nomail.gif' alt='новых писем нет' />новых писем нет</a>|<a href='exit.php'>Выход</a><br><br>";
}
else
{
echo "
| <a href='mail.php'><img src='/images/activemail.gif' alt='новое письмо' />новое письмо</a> |<a href='exit.php'>Выход</a><br><br> ";
}
выводит такую ошибку: syntax error, unexpected T_IF on line 53

Спустя 1 час, 9 минут, 46 секунд (6.02.2011 - 22:01) Andruhaphp написал(а):
Здесь разобрался а вот
А вот тут пролблема,не работает задумка моя:
$zap=mysql_query("SELECT * FROM `t_messages` WHERE `poluchatel`='$login'",$db);
$ros = mysql_fetch_assoc($zap);

if ($ros['readm'] == 0)
{
echo "<a href='mail.php'><img src='images/activemail.gif' alt='новое письмо' /> новое письмо </a>"."</br>";
}
else
{
echo "<a href='mail.php'><img src='images/nomail.gif' alt='новых писем нет' /> новых писем нет </a>"."</br>";
}
выводит в любом случаи только картинку и сообщение,что есть "новое письмо",вне зависимости есть оно или нет

Спустя 1 час, 17 минут, 6 секунд (6.02.2011 - 23:19) Andruhaphp написал(а):
все вопрос решен
Админы закройте тему пожалуйста
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.