Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как создать "связь с модератором" ??
 
 автор: atew   (04.02.2011 в 11:03)   письмо автору
12.2 Кб
 
 

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

как это реализовать?
какие функции необходимо учесть??

  Ответить  
 
 автор: cheops   (04.02.2011 в 11:09)   письмо автору
 
   для: atew   (04.02.2011 в 11:03)
 

Хм... не очень понятно, что вызывает затруднения?

  Ответить  
 
 автор: atew   (04.02.2011 в 11:31)   письмо автору
 
   для: cheops   (04.02.2011 в 11:09)
 

как создать файл, в который будут заносится сообщения и сохранятся

  Ответить  
 
 автор: cheops   (04.02.2011 в 11:35)   письмо автору
 
   для: atew   (04.02.2011 в 11:31)
 

А вы где планируете сохранять сообщения? В базе данных? В файле?

  Ответить  
 
 автор: atew   (04.02.2011 в 12:01)   письмо автору
 
   для: cheops   (04.02.2011 в 11:35)
 

хотелось бы в файле!

  Ответить  
 
 автор: cheops   (04.02.2011 в 12:08)   письмо автору
 
   для: atew   (04.02.2011 в 12:01)
 

(1) С одним файлом могут быть сложности, при одновременном обращении к нему нескольких посетителей. Чтобы не оказаться однажды с побитым файлом, придется вводить блокировки при помощи функции flock() перед записью при помощи функции fwrite().
(2) Есть еще один распространненый вариант, позволяющий избежать этих сложностей - записывать каждую запись в отдельный файл какой-либо директории. При этом в имя файла вводить текущее время, получаемое функцией time(), чтобы они автоматически сортировались по времени.

PS Кроме того, чтобы чтение файлов не было доступным из браузера кому попало доступ к файлу (или директории) необходимо закрыть при помощи конфигурационного файла .htaccess. Почитать о нем подробнее можно в статье http://softtime.ru/article/index.php?id_article=25.

  Ответить  
 
 автор: neadekvat   (04.02.2011 в 17:09)   письмо автору
 
   для: cheops   (04.02.2011 в 12:08)
 

Во втором случаи также можно нарваться на неприятности, когда два обращения происходят одновременно.
Помню, завязал какую-то генерацию имен в обработчике на время, а потом не досчитался пары тысяч файлов - они тупо перезаписывались.
Так что все равно стоит использовать функцию file_exists()

  Ответить  
 
 автор: sim5   (04.02.2011 в 17:20)   письмо автору
 
   для: neadekvat   (04.02.2011 в 17:09)
 

Так вы не именуйте их только по времени.

  Ответить  
 
 автор: cheops   (04.02.2011 в 17:31)   письмо автору
 
   для: neadekvat   (04.02.2011 в 17:09)
 

Собственно, можно воспользоваться функцией tempnam(), которая позволяет для заданной директории создать уникальное имя, в качестве второго параметра функция принимает произвольный префикс (туда можно поместить время).

  Ответить  
 
 автор: sim5   (04.02.2011 в 17:32)   письмо автору
 
   для: cheops   (04.02.2011 в 17:31)
 

Если автор упомянул почту, то зачем их вообще сохранять, выгоднее отправлять на мыло.

  Ответить  
 
 автор: cheops   (04.02.2011 в 17:33)   письмо автору
 
   для: sim5   (04.02.2011 в 17:32)
 

Для разрбора полетов полезно все-таки куда-то архивировать запросы... думаю, лишним не будет.

  Ответить  
 
 автор: sim5   (04.02.2011 в 17:35)   письмо автору
 
   для: cheops   (04.02.2011 в 17:33)
 

Вот пусть модератор и хранит почту свою - как наказание :)

  Ответить  
 
 автор: atew   (04.02.2011 в 17:57)   письмо автору
 
   для: sim5   (04.02.2011 в 17:32)
 

>Если автор упомянул почту, то зачем их вообще сохранять, выгоднее отправлять на мыло.

Мне интересно будет услышать и эту версию. Мне кажется что с почтой будет сложнее...

  Ответить  
 
 автор: sim5   (04.02.2011 в 17:59)   письмо автору
 
   для: atew   (04.02.2011 в 17:57)
 

А что тут сложного? Просто вместо записи сообщения в файл, формируете почтовое отправление и отправляете его на почту по указанному адресу.

  Ответить  
 
 автор: cheops   (04.02.2011 в 18:01)   письмо автору
 
   для: atew   (04.02.2011 в 17:57)
 

Да, нет, с почтой пожалуй даже попроще, в PHP имеется стандартная функция mail(), которая позволяет сформировать и отправить письмо.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования