Autor Zpráva
Kubas
Profil *
Zdravím,
zkoušel jsem pomocí IMAP vytáhnout emaily pro zkoušku ze seznamu. Nicméně vyhodilo mi to chybu na neexistující funkci viz -

Fatal error: Call to undefined function imap_open() in C:\Program Files\VertrigoServ\www\pokus.php on line 8 Call Stack: 0.0008 332952 1. {main}() C:\Program Files\VertrigoServ\www\pokus.php:0

Použil jsem script z http://cz.php.net/manual/en/function.imap-open.php

<?php
$mbox = imap_open("{imap.example.org:143}", "username", "password");

echo "<h1>Mailboxes</h1>\n";
$folders = imap_listmailbox($mbox, "{imap.example.org: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);
?>

Nemusí být na serveru něco dodatečně nainstalovaného? Nebo proč to hází tu chybu o neexistující funkci?


P.S.: Chyba na řádku 8 se nevztahuje k příkladu z http://cz.php.net/manual/en/function.imap-open.php ...
Keeehi
Profil
Ano, PHP potřebuje na to mít rozšíření. V php.ini si zkontrolujte řádek s extension=php_imap.dll
Kubas
Profil *
U řádku extension=php_imap.dll jsem smazal středník, nicméně nepomohlo..
Keeehi
Profil
Kubas:
Restartoval jste pak apache?
Kubas
Profil *
Ano, zkoušel jsem i stáhnout přímo soubor php_imap.dll z netu a hodit ho do php/ext, taky nepomohlo.
Kubas
Profil *
P.S.: Nemá se ta funkce ještě někde povolit / nějakým způsobem přidat? Nebo proč mi to teda hází že ta funkce je neznámá?
Davex
Profil
Viz [#2] Keeehi. Když není v konfiguraci PHP zapnuté rozšíření a nenahraje se knihovna php_imap.dll, tak to nemůže fungovat.

Obyčejně je tato knihovna součástí instalace PHP a nemusí se odnikud stahovat, ale ty sis zrovna vybral Vertrigo, který tuto a jiné knihovny neobsahuje, a proto má možnosti PHP silně omezené.

Nainstaluj si nějaký schopnější balík - třeba EasyPHP, WampServer nebo XAMPP. Tam stačí IMAP zapnout v konfiguraci balíku nebo odkomentovat v souboru php.ini a po restartu Apache to funguje.
Kubas
Profil *
Děkuji to bylo ono.. Po instalaci EasyPHp už to jede jak má. Takže - díky

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: