Подтвердить что ты не робот

Как создать веб-клиент электронной почты с помощью PHP?

Я хотел бы узнать, как создать веб-клиент электронной почты на PHP (аналогично yahoo и gmail).

Кто-нибудь знает, как я могу начать с этого?

Я хочу, чтобы моя система могла отправлять и получать электронную почту.

4b9b3361

Ответ 1

Наиболее очевидным ответом будет "не надо": уже есть много программного обеспечения для веб-почты, некоторые из которых основаны на PHP (если вы зависите от использования PHP, потому что у вас уже есть сервер на основе стека LAMP, для экземпляр).

Чтобы процитировать только несколько имен, все на основе PHP, вы могли бы посмотреть на них:

  • SquirrelMail: довольно старый, и не очень сексуальный... Но вот уже много лет работает.
  • Horde IMP: хорошо знаю и довольно мощный
  • roundcube: возможно, самый "сексуальный" и "веб-2.0" в списке тех, кого я пробовал.
  • AtMail: Я никогда не использовал этот, поэтому я не могу сказать гораздо больше...

Я использовал три первых списка в течение довольно продолжительного времени; roundcube был определенно самым "удобным", я бы сказал...

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


Теперь, если вы должны настроить веб-почту, скажем, для вашей компании: definitly использовать уже существующее программное обеспечение:

  • существующее программное обеспечение уже было бы "хорошим":
    • многие люди используют его, а это означает, что многие люди говорят, что "это может быть сделано лучше" или "это не удобно", или... вы понимаете; все это сделало существующее программное обеспечение лучше : -)
    • многие люди попытаются сломать такое приложение, что означает множество исправлений безопасности, что означает, что приложение, вероятно, более безопасно, чем вы будете писать в течение длительного времени...
  • существующее приложение с открытым исходным кодом будет представлять сотни дней работы
    • Вы действительно готовы потратить такое количество времени на то, что уже существует?
    • если вы работаете в компании: готова ли ваша компания платить за один год? или даже, вероятно, больше? работая над тем, что уже существует?
    • ты мне не веришь? Прочтите этот пост-блог: Код: Это тривиально; это о stackoverflow, но это было бы точно так же для программного обеспечения для веб-почты (за исключением того, что stackoverflow более поздний - и, вероятно, имел меньше ресурсов для кода, но это просто дикая догадка ^^)

В качестве побочного элемента: если ваша компания хочет, чтобы вы создали клон gmail, вы не будете (то же самое: сколько людей работает в gmail? Сколько программистов имеет ваша компания?) Сколько может ваша компания потратить на это?)...
И всего за пару долларов каждый год ваша компания может иметь "профессиональную" учетную запись Google для каждого из ее сотрудников, btw...


После этого, если вы все еще хотите/должны писать пользовательскую веб-почту вручную, используя стек LA * (M) * P, вам нужно знать хотя бы следующее:

  • Как программировать в PHP
  • Основы IMAP (даже если вы используете библиотеку/фреймворк, такое большое приложение потребует, чтобы вы знали некоторые вещи о базовых протоколах или никогда не узнаете "почему" или "как" что-то пошло не так)
  • HTML/CSS/Javascript (с некоторыми знаниями о AJax - давай, это 2009!)
  • Таким образом, ваше приложение проще в обслуживании (и добавление/переработка/изменение материала и исправление ошибок возможны), вы, вероятно, захотите использовать некоторые Framework и следовать некоторым шаблонам проектирования и передовым методам
    • В качестве примера вы можете взглянуть на такие структуры, как symfony или Zend Framework
    • Да, вы можете разрабатывать и применять без Framework, и/или без MVC... Но.. ergh...

Учитывая все это не проблема (если вы уже не совсем хорошо это понимаете и/или не имеете большого опыта, для приобретения этого может потребоваться не менее двух лет... Учитывая программирование и веб-разработка - это ваша работа на полную ставку), вы можете начать поиск доступа к почтовому серверу, используя, например, IMAP.

Здесь есть несколько возможностей. Я бы посмотрел, по крайней мере, перед тем, как выбрать, на этих двух:


Как только ваше приложение будет выполнено, вы, как мы надеемся, начнете получать пользователей, что означает по крайней мере три вещи:

  • Отчеты об ошибках; они почти всегда срочные для пользователей - например, "OMG, я ничего не понимаю, больше ничего не работает, я должен получить свою почту прямо сейчас!"
  • Запросы на эволюцию: пользователям всегда нужно больше таких вещей, как "Я видел это в gmail на моей личной учетной записи, как это у нас нет в нашей корпоративной учетной записи? Это инструмент, который мы используем для работы!"
  • "Это слишком медленно, я не могу работать!"; то, пожалуйста, подумайте о масштабируемости и оптимизации при разработке/разработке приложения!

Здесь, опять же, вы готовы справиться с этим?


Ну, я думаю, я сказал достаточно; теперь, ваше время подумать: вам действительно нужно/нужно разрабатывать такое приложение с нуля?

Если у вас есть свободное время, , возможно, вы могли бы участвовать в уже существующем проекте с открытым исходным кодом?. Это может быть выгодно каждому; -)


Наконец, последнее: , если вы хотите работать над таким проектом просто для удовольствия, знать, что ему нравится, и больше узнать о веб-разработке, затем DO!
(Это, на мой взгляд, вероятно, единственная причина, которая оправдывала бы работу над этим, btw)


Во всяком случае, удачи! И/или получайте удовольствие!

Ответ 2

  • Изучите веб-стек: HTML, javascript, php, mysql...
  • Напишите несколько небольших проектов
  • Нанимайте кого-нибудь, чтобы учиться у более опытных людей.
  • Изучите ООП, образцы дизайна, лучшие практики и т.д.
  • Примените то, что вы узнали в течение нескольких лет.

Если вы пройдете пункт 5, вы узнаете, как его построить.

Ответ 3

Вы можете легко создать простой, используя PHP IMAP, но если вам нужно спросить, то это может быть немного сложнее для вас.

Считаете ли вы использование предварительно построенного:

Ответ 4

Это ОГРОМНЫЙ вопрос!

Ваши основные параметры: 1. Непосредственная интеграция вашего кода с существующим почтовым сервером
2. Использование IMAP и SMTP для связи с существующим почтовым сервером

Номер 2 является самым простым, потому что вы можете изменять почтовые серверы, если вам когда-либо понадобится.

и да, есть гораздо больше, чтобы рассмотреть, как вы идете

Ответ 5

Настройте учетную запись электронной почты, к которой можно получить доступ через POP (пример: gmail). Затем используйте функции PHP IMAP для получения электронной почты по протоколу POP (POP, вероятно, проще, чем IMAP) (http://us2.php.net/imap). Для отправки почты используйте функции PHP Mail (http://us2.php.net/mail).

Ответ 6

Если вы не используете внешнюю почтовую службу (например, Gmail), вам необходимо настроить собственный сервер для хранения и отправки электронной почты. Вот учебник для использования Postfix (для отправки почты) и Dovecot (для доступа к почте через IMAP). В этом руководстве также объясняется создание системы веб-почты в SquirrelMail. Вы могли бы это сделать, или, если вы действительно хотите разработать свою собственную систему, вы можете написать приложение PHP для доступа к вашей почте.

Удачи!

Ответ 7

Самый очевидный ответ должен быть "отличным".

Я согласен. С нынешним так называемым самым сексуальным интерфейсом мы застряли, ясно, что нам нужно что-то другое. Для тех, кто думает, мне нравится изобретать колесо: я этого не делаю! Я только что установил новый веб-сайт, и я очень доволен результатом. Я в основном использовал 1000 часов работы свободных разработчиков и не хотел бы изобретать что-то, что было сделано раньше, в 1000 раз лучше. Я бы придумал сайт на 10% того, что у меня было бы сейчас, и потратил бы в 10 раз больше. Макет отличный, функциональность отличная. У меня есть аутентификация, тип социальной сети, личная область для меня и моей семьи, чтобы хранить файлы, повестку дня, поддержку фото и видео, интеграцию с YouTube, интеграцию с facebook,... у меня будет больше, я добавлю игры, и т.д. Все в значительной степени бесплатно (я потратил около 100 долларов на Facebook-тип социальной сети). Как: joomla. Открытый исходный код, множество плагинов. 100 тысяч тысяч разработчиков, дизайнеров, тестеров и т.д. Я бы никогда не смог это сделать сам, и не смог бы я заплатить навсегда. Но это бесплатно, так что мне не нужно. И, кстати, joomla является лишь одним из многих cms с открытым исходным кодом.

То, что я не могу найти, - это правильный веб-клиент электронной почты, который является "сексуальным" и который правильно интегрируется в систему cms. Я нашел и купил обертку для круглых кубиков, чтобы подключиться к моему замечательному сайту. Но, к сожалению, этот веб-клиент с очень старыми взглядами и краф-электронной почтой просто не прав. Это медленно, взаимодействие глупо, вам нужно купить дорогие шаблоны, чтобы он работал с мобильными устройствами. Он просто не подходит. Он выглядит старым.

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

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

Не заново изобретайте, но не унывайте.