Nem ismeri fel az mb_encode_mimeheader() fügvényt.
ha jól értelmezem akkor engedélyezni kell a php.ini-ben. Nem volt engedélyezve most átállítottam erre:
[mbstring]
mbstring.internal_encoding = ISO-8859-2
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.detect_order = auto
;mbstring.substitute_character = none;
Na kezd összejönni a pop3 class használata, most már le tudom kérdezni, hogy hány levél van és a levelek header-ét is megtudom nézni.
Azzal nem vagyok tisztában hogy miként lehet a subject sor tartalmát olvasható formátumba konvertálni, mivel fene tudja, milyen szabvány szerinti karakterkészlettel küldenek levelet.
A objectum orientáltal még nem sokat dolgoztam, az elvet ismerem, gyakorlat nuku. (kivéve egy-2 példaprogram a tanuljuk meg a php használata 24 óra alatt című könyvből)
Próbáltam :
$proba = new pop3 ('');
$proba = new pop3 ('mail.axelero.hu');
mindkettőnél ugyanaz a hibaüzenet mint amit lejebb leírtam.
Közben rájöttem, hogy elsősorban nem is a class használatával van a bajom, hanem inkább azzal, hogy nem tudom mi a mail szerver kezelésének a metodikája, azaz mit miután kell meghíni, mire kell figyelni. Ezért lenne jó egy mintaprogi ami ezt a class-t használná, mert akkor megérteném a mintaprogin keresztül. A pop3 class-t már megpróbáltam megérteni de nem derül ki belőle a sorrend. (legalábbis számomra)
Gondoltam erre, de nem sok értelmét látom mert a pegasus ugyanúgy mint más levelezők csak egy egy mailboxot néznek át, igaz a pegasusban be lehet állítani többet is, de ez így nem alkalmas arra, hogy egy cég teljes levelezését, az összes mailboxal egyut + tovabbi külső mail boxokat átvizsgáljon spam ügyben.
gond az is, hogy minden egyes gépen a pegasusba be kell vinni az olyan szüréseket amik már megjelentek a cég másik mailboxaiban.
Ezért sokkal célszerübb, ha ezt egy központi spam gyilkos hajtja végre. LINUX KIZÁRVA. :(((
Tehát marad a winfos, de ott meg egy nagy rakás szar ilyen progi van, amikből már vagy 10-et végigpróbaáltam.
$proba = new pop3 ();
var_dump ($proba);
$x = $proba->Login($user,$password,$apop);
?>
Eddig jutottam el, és a köv. hibaüzenet jön:
Warning: fwrite(): supplied argument is not a valid stream resource in C:\PHP_Honlap\proba\pop3\pop3_class.php on line 523
Warning: fgets(): supplied argument is not a valid stream resource in C:\PHP_Honlap\proba\pop3\pop3_class.php on line 524
Sajna a class-okkal nem sok gyakorlatom van így nagyon megköszönném ha segítenétek egy kis mintaprogival hogyan lehet a headereket letölteni, hogy ki tudja majd értékelni valahogy.
Arra is jó lenne egy kis mintaprogi, hogyan lehet egy adott levelet letörölni a szerverről.
En is a bogofilter-t hasznalom, remekul tanul, csak ajanlani tudom. Ez is a bayesian elvet hasznalja a spamek kiszuresere, ami nagy vonalakban bizonyos szavak egyuttes elofordulasat figyeli.
Ha a helpben is benne van, de nem hajtja végre, akkor a szoftvernek tudnia kellene. Ilyenkor szerintem ne dobd ki az egészet (működő részeivel együtt) nagy ívben az ablakon - az Open Source világban az a szokás, hogy ilyenkor az ember támogatást kér, mert vagy benne van, és csak ő nem érti, hogy kell, vagy benne kellene lennie, de nem működik megfelelően, vagyis találtál egy hibát, amit nagy valószínűséggel ki akarnak majd javítani, ha szólsz nekik róla. Ez a megközelítés szerintem rendkívül időtakarékos, próbáld meg, ha még nem tetted ennek a szoftvernek az esetében.
Egy picit off leszek, ezért elnézést kérek, de azt hiszem ez a legjobb hely, ahol segítséget kérhetek:
Szeretném, ha írna nekem olyan programozó, aki saját vállalkozásban vagy magánvállalkozóként csinálja a programozást, lenne ezzel kapcsolatosan pár kérdésem.
Mondjuk mivel ha ilyen szurest vegeztek akkor mindenkepp letoltitek a szerverrol a levelet, es max a kuka-ba dobjatok. A mozilla-nak a levelezoje meglehetosen fejlett es ugyes es okos spam fileterrel rendelkezik. Talan erdemes volna pegasus mellett kiprobalni. Nem igen van hasonlo, azaz ilyen stilusban, tudasu mas levelezo soft.
Az utóbbi egyébként pont egy olyan ami pegasusba integrálódik bele, ezt már használtam de hibázik.
Ha szürésbe egy konkrét levélcímet teszek bele akkor jól csinálja de ha *@akarmi.com a szürési feltétel akkor nem hajtja végra, azaz bizonyos szolgáltatókat nem lehet vele kitiltani, pedig a help szerint ez is benne van.
Ezért gondolkodunk saját spam szürésen.
A cégnél mindenhol pegasust használnak célszerüen a vírus védelem miatt és erről nem is akarnak átálni (nem is javaslom nekik :)) )
Azért át fogom nézni a többi linket is, mert érdekes a téma.
Ha a saját kezetekben van a mail-szerver, akkor majdnem biztos vagyok benne, hogy létezik erre már egy tucatnyi megoldás - talán még XP alá is néhány.
Ha a sávszélességgel akarsz takarékoskodni, akkor a POP3-at ellenjavallom: POP3 esetén nem tudod csak a fejlécet letölteni, csak az egész üzenetet egyben, így nem tudsz korai, fejléc-alapú szűrést csinálni.
Pop3-al szeretném. A pegasus mail levelezőproginak vannak hasonló szolgáltatásai, de sajnos hibázik, mert pld a *@yahoo.com stb szűréseket nem hajtja végre. A pegasus tud selective mail dawnload-ot is amikor is először a levelek headar-ét tölti le, ott ki lehet választani, hogy mely leveleket akarom letölteni és melyeket törölni a szerveren, és utána végre lehet hajtatni. Ez 1 mailbox esetén még járható út, de több esetén nagyon emberigényes.
Egy cég mailboxait kellene rendszeresen végigpásztázni, kb 200 mailbox, és ráadásul több külsö privát mailboxot is. Ha belegondolok, akkor ezt máshol is használni tudnák.
A spam leveleket fizikailag kell törölni, úgy hogy a nem sapm levelek megmaradjanak.
Milyen kapcsolattal szeretned? pop3? Imap? Mindre van lehetoseg php-bol is. Amugy procmail az mindennel egyszerubb:) Vagy a mailbox-bol mint file-bol akarod kigyomlalni? Mivel az 1 sima szoveges file, igy a file kezelo fugvenyeket nezd at.
php.net/imap
php.net/filesystem
Nem találok semmilyen leírást arra, hogyan lehet mail-f fogadni php-ből.
Pontosabban arra lenne szükségem, hogy egy olyan programot csinálja, amely a mailboxba x időnként felmegy, leszedi a levelek egy másolatát, de nem törli a leveleket, majd a leveleket elkezdi kiértékelni és a küldőket illetve a címzetteket külön külön adatbázisba gyűjti, és egy kulcsszó adatbázis alapján (illetve a küldő email címe) eldönti, hogy az adott levél spam-e és ha igen akkor letörli a mailboxból a levelet. A spam levél elég sokféleképpen kiszürhető, elsősorban a feladó, másodsorban a levél törzsében előforduló szócsoportok alapján.
Szerintetek ezt meg lehet oldalni php-ből?
Irdatlan mennyiségű spam-ot kapunk, kipróbáltaunk már vagy 10 féle spam szürőt, de egyik sem jött be, ezért gondolkodom ilyen megoldáson.
Ugy tunik nagyon nem vagy tisztaba azzal mi is az a cookie. A kukit amikor elkuldod, akkor abban a php-ban meg nem lesz erteke, hiszen igy mukodik:
szerver kiadja kukit, program lefut bongeszo megkapja -> bongeszo visszajon oldalra elkuldi fejlecbe a kuki informaciot -> szerver oldalon levo progi ekkor megkapja.
Ha ezt erted akkor ok, es rajosz, hogy majd a kovetkezo oldal lekereskor lesz neked kukid. Mar amennyiben a bongeszo elfogadta.
Amugy a time()+300 az 5 perc elettartamu kuki.
nem hiszem hogy koze lenne a php-nak az sql-hez. Ha az sql-rol akarsz olvasni akkor sql doksit olvass. Mysql eseten peldaul a mysql.com/doc alatt. Php-bol csak parancsokat hajtasz vegre sql fele.