21. září bude sraz! Od 18.00 v restauraci Tradice v Praze u Anděla
Autor Zpráva
OnZ
Profil
Zdravím mám problém.

<?php
$mbox = imap_open ( "{imap.atlas.cz:143}" , "budry" , "*************" );

echo "<h1>Mailboxes</h1>\n" ;
$folders = imap_listmailbox ( $mbox , "{imap.atlas.cz:143}" , "*" );

if ( $folders == false ) {
echo "Call failed<br />\n" ;
} else {
foreach ( $folders as $val ) {
echo $val . "<br />\n" ;
}
}

echo "<h1>Headers in INBOX</h1>\n" ;
$headers = imap_headers ( $mbox );

if ( $headers == false ) {
echo "Call failed<br />\n" ;
} else {
foreach ( $headers as $val ) {
echo $val . "<br />\n" ;
}
}

imap_close ( $mbox );
?> 


Mám od atlasu aktivovanej imap ale píše mi to Warningy. Prosím kde mám chybu?


Warning: imap_open(): Couldn't open stream {imap.atlas.cz:143} in /3w/xf.cz/j/jobik/email/2/index.php on line 2
Mailboxes

Warning: imap_listmailbox(): supplied argument is not a valid imap resource in /3w/xf.cz/j/jobik/email/2/index.php on line 5
Call failed
Headers in INBOX

Warning: imap_headers(): supplied argument is not a valid imap resource in /3w/xf.cz/j/jobik/email/2/index.php on line 16
Call failed

Warning: imap_close(): supplied argument is not a valid imap resource in /3w/xf.cz/j/jobik/email/2/index.php on line 26
OnZ
Profil
Myslím že na Atlasu bych ten Imap mněl aktivovanej ale nechápu co je to za chybu. Stejnou chbu mi to vypíše i u emailu na Centrumu kde ale IMAP aktivovaný není. Prosím poraďte

Předem díky všem
bohyn
Profil
zkus:
imap_open(...);
echo imap_last_error();


Edit: jeste pokud si pamatuju tak atlas ma cely e-mail jako prihlasovaci jmeno.
OnZ
Profil
bohyn
jeste pokud si pamatuju tak atlas ma cely e-mail jako prihlasovaci jmeno.

1) Opraveno máš pravdu psali to v nápovědě na atlasu.


2) Vložil jsem tam to
echo imap_last_error();
a vypsalo to to:

Certificate failure for imap.atlas.cz: unable to get local issuer certificate: /C=CZ/ST=Prague/L=Prague/O=Atlas.cz/OU=IT/CN=ssl.atlas.cz

Podle toho co to píše. Řekl bych že je problém s nějakým certifikátem, ale nevím proč a jak to opravit prosím pomoct.
nightfish
Profil
zřejmě to bude chtít /novalidate-cert v imap_open - http://us.php.net/manual/en/function.imap-open.php
OnZ
Profil
nightfish
Když jsem to tam tedy pole toho návdu dal:
$mbox = imap_open ( "{imap.atlas.cz/pop3/ssl/novalidate-cert}INBOX" , "budry@atlas.cz" , "*************" );


Vypisuje to to samé. Nic se nezměnilo. Pokud jsem to jen špatně napsal prosím poraďte jak to napsat správně

EDIT: Jak jsem si to teď procházel tak koukám že je to možné zapsat i jinak. ta adresa nemusí být taková jakou jsem tam napsal (viz. tučné). Nekteří používájí i jiné adresy. Pochopil jsem z toho že záleží na email hostingu nevíte jak je to u atlasu? Možná se mýlím já nevím.
OnZ
Profil
POZOR! Skusil jsem to upravit (
$mbox = imap_open ( "{imap.atlas.cz/novalidate-cert}INBOX" , "budry@atlas.cz" , "*********" );
) a vypadá to že je to OK!. Toto mi to vypsalo nevím jestli je to zprávně co myslíte???

rsh to IMAP server timed out
Mailboxes
{imap.atlas.cz}INBOX
{imap.atlas.cz}Deleted Items
{imap.atlas.cz}Drafts
{imap.atlas.cz}Quarantine
{imap.atlas.cz}Sent Items
{imap.atlas.cz}SPAM
Headers in INBOX
Call failed
bohyn
Profil
Kdyz sem si s tim kdysi hral no lokale tak sem pouzil tohle:
imap_open("{localhost:143/imap4/notls/norsh}", "user", "heslo")
OnZ
Profil
Prosí m ještě jedna otázka. Nevíte pomocí jakých funkcí dosáhnout tohoto: Potřeboval bych otevřít email a jeho obsah uložit do databáze ale jen obsah ne ok doho ani předmět ani nic jiného prostě aby to samo otevřelo email a uložilo obsah do databáze. Nevíte jak nato? TADY se to dá říci řešilo ale nevím jaké funce použít.

Prosím poraďte.
OnZ
Profil
Co myslíte jde to vytvořit nebo ne?

Prosím poraďte

Předem děkuji za každou radu
OnZ
Profil
Bylo mi řečeno že to jde ale nevím jaké funkce použít prosím poraďte
nightfish
Profil
používám zhruba toto

<?php
  $mbox = imap_open("{adresa.smtp.serveru:993/imap/ssl/novalidate-cert}INBOX", "login", "heslo"); // tu adresu si zmen na to, co uz ti fungovalo
  $pocet = imap_num_msg($mbox); // pocet zprav v INBOXu
  if ($pocet > 0) {
    $i = 1;
    while ($i < $pocet + 1) {
      $telo = imap_body($mbox, $i); // tady si ulozit telo mailu a dal s nim muzu pracovat
      imap_mail_move($mbox, $i, "archiv"); // tady tu zpravu presunu z INBOXu do archivu (pozor, slozka "archiv" musi existovat)
      $i++;
    }
    imap_expunge($mbox); // nevim, k cemu to tu mam
  }
  imap_close($mbox);
?>
OnZ
Profil
Děkuji moc všem co mi pomohli už mi to funguje

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0