Een vergissing is menselijk maar om er een puinhoop van te maken heb je een computer nodig (met mij erachter)
Als je mail binnen is misschien nog fputs("QUIT\r\n") doen ?
Er zal tot die tijd iig geen feof gegeven worden vermoed ik.
Er zal tot die tijd iig geen feof gegeven worden vermoed ik.
code:
1
2
3
4
| C: RETR 1 S: +OK 120 octets S: <the POP3 server sends message 1> S: . |
Het bericht zou ik met fread() lezen. De twee andere gedeeltes van de respons met fgets().
heb het nu ook met fread geprobeerd als:
ik zie nu dus die hele mail over het beeld verschijnen,
alleen blijft m'n script in die loop hangen doordat (vermoed ik) die feof() niet gesnapt wordt
PHP:
1
2
3
4
| while (!feof($fp)) { print fgets($fp, 128)."<BR>"; flush(); } |
ik zie nu dus die hele mail over het beeld verschijnen,
alleen blijft m'n script in die loop hangen doordat (vermoed ik) die feof() niet gesnapt wordt
Een vergissing is menselijk maar om er een puinhoop van te maken heb je een computer nodig (met mij erachter)
Je krijgt geen eof...
Heel simpel.
Pas als je QUIT zegt tegen de server krijg je een eof (van de server uit dan iig).
Als je mailtje binnen is, moet je dus gewoon QUIT roepen tegen de server, als het goed is eindigt je mailtje met bijv een enkele . op een lege lijn en zodra je dat hebt kan je stoppen met lezen en dus evt QUIT roepen
Heel simpel.
Pas als je QUIT zegt tegen de server krijg je een eof (van de server uit dan iig).
Als je mailtje binnen is, moet je dus gewoon QUIT roepen tegen de server, als het goed is eindigt je mailtje met bijv een enkele . op een lege lijn en zodra je dat hebt kan je stoppen met lezen en dus evt QUIT roepen
eej perfect 
zo werkt het idd wel:
zo werkt het idd wel:
PHP:
1
2
3
4
5
6
| while (!feof($fp)) { $buffer = fgets($fp, 128); if ($buffer == ".\r\n") fputs($fp, "QUIT\r\n"); print $buffer."<BR>"; flush(); } |
Een vergissing is menselijk maar om er een puinhoop van te maken heb je een computer nodig (met mij erachter)
Pagina: 1