Intereting Posts
Не удается заставить mysql_insert_id () работать Показать запрос в строке таблицы (th) Использование regex + str_replace для готовых тегов для jQuery Отправка SMS-команд AT на 3G-модем с использованием PHP Получение данных из базы данных sql и отображение в таблицах. Отображение определенных данных в соответствии с установленными флажками. Как установить атрибут значения HTML (с пробелами) Запись в файл с помощью register_shutdown_function Создание столбцов одинаковой ширины установить дату по умолчанию в datepicker только по вторникам и средам? Рекомендации по использованию и хранению информации о кредитных картах с помощью PHP Как иметь eclipse разрешать php-классы в пространстве имен MongoDB \ BSON? Недействительный сеанс для определенного пользователя в Symfony2 Ошибка FPDF: не может включать файл определения шрифта в PHP ImageMagick не хватает делегатов декодирования Ошибка сегментации PHPUnit 11

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

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

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

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

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

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

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

Я использовал три первых из списка довольно долгое время; roundcube был определенно самым « удобным », я бы сказал …

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


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

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

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


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

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

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

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

  • Расширение PHP IMAP
  • Zend_Mail ; возможно, он может использоваться вне Zend Framework, btw

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

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

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


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

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

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

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

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

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

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

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

  • орда
  • SquirrelMail

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

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

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

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

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

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

Удачи!

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

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

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

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

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

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