|
imap_deletemailbox
Delete a mailbox
(PHP 4, PHP 5)
Code Examples / Notes » imap_deletemailboxsanin
When deleting user account(s) from IMAP server don't forget to put full server name and port. Also need to be logged as IMAP admin and set ACL. This worked for Cyrus: <?php //Credentials $cyrusadmin_username="cyrus"; $cyrusadmin_password="cyruspassword"; $cyrus_serverip="fellowship.ring.net"; //User to delete $username="frodoBaggins"; //Open the connection to IMAP server (Cyrus) $mbox=imap_open("{".$serverip.":143}",$cyrusadmin_username, $cyrusadmin_password, OP_HALFOPEN) or die('IMAP Could not connect because '.imap_last_error()); //Set ACL - Give rights to $cyrusadmin_username to delete mailbox imap_setacl ($mbox, "user.".$username, $cyrusadmin_username, "lrswipcda") or die('Could not setacl on mailbox'); //Delete mailbox imap_deletemailbox($mbox,"{".$serverip.":143}user.".$username) or die('Could not delete mailbox'); ?> kenstumpfhotmail.com
Recent versions of the Cyrus imapd define mailbox ACLs as follows: c (create) The user may create new sub-mailboxes of the mailbox, or delete or rename the current mailbox. d (delete) The user may store the "Deleted" flag, and perform expunges. This means to delete a mailbox, you will need to give the user you are connecting with via imap_open() "c" rights on the mailbox in order for imap_deletemailbox() to work. Setting "d" rights for yourself is not the same. Check the documentation for your version of Cyrus imapd. |
Change Languageimap_8bit imap_alerts imap_append imap_base64 imap_binary imap_body imap_bodystruct imap_check imap_clearflag_full imap_close imap_createmailbox imap_delete imap_deletemailbox imap_errors imap_expunge imap_fetch_overview imap_fetchbody imap_fetchheader imap_fetchstructure imap_get_quota imap_get_quotaroot imap_getacl imap_getmailboxes imap_getsubscribed imap_header imap_headerinfo imap_headers imap_last_error imap_list imap_listmailbox imap_listscan imap_listsubscribed imap_lsub imap_mail_compose imap_mail_copy imap_mail_move imap_mail imap_mailboxmsginfo imap_mime_header_decode imap_msgno imap_num_msg imap_num_recent imap_open imap_ping imap_qprint imap_renamemailbox imap_reopen imap_rfc822_parse_adrlist imap_rfc822_parse_headers imap_rfc822_write_address imap_savebody imap_scanmailbox imap_search imap_set_quota imap_setacl imap_setflag_full imap_sort imap_status imap_subscribe imap_thread imap_timeout imap_uid imap_undelete imap_unsubscribe imap_utf7_decode imap_utf7_encode imap_utf8 |