Hoi,
ik heb een probleem met een e-mailscript. Het script haalt alle e-mail op van de server, maar het lukt met niet om de bijlage goed weg te schrijven. Ik heb werkelijk vanalles geprobeerd. Dit is wat ik nu heb:
Hij maakt wel het bestand aan met de goede naam, maar het bstand blijft leeg, ik heb al van alles geprobeerd.PHP Code:
<?
$mail = array();
set_time_limit(5);
$mail['user'] = 'doeterniettoe';
$mail['pass'] = 'same';
if($mail['con'] = imap_open("{doeterneittoe:110/pop3}INBOX",$mail['user'],$mail['pass'])) {
$mail['num'] = imap_num_msg($mail['con']);
if($mail['num'] > 0){
$msg = array();
for($msg['num'] = 1;$msg['num'] <= $mail['num']; $msg['num']++){
$parts = array();
$msg['content'] = imap_fetchbody($mail['con'],$msg['num'],1);
//print_r($msg['content']);
$msg['header'] = imap_headerinfo($mail['con'],$msg['num']);
//print_r($msg['header']);
$explode = explode("<",$msg['header']->fromaddress);
$msg['from'] = array();
$msg['from']['name'] = trim($explode[0]);
$msg['from']['adress'] = trim(substr($explode[1],0,(strlen($explode[1])-1)));
$msg['structure'] = imap_fetchstructure($mail['con'],$msg['num']);
$msg['subject'] = $msg['header']->subject;
$msg['time'] = $msg['header']->utime;
//print_r($msg['structure']);
$parts['info'] = imap_fetchstructure($mail['con'],$msg['num']);
//print_r($parts['info']);
$parts['num'] = count($parts['info']->parts);
//print($parts['num']."\n");
if ($parts['num'] > 1) {
$ipart = 0;
foreach ($parts['info']->parts as $part) {
//print_r($part);
if ($part->disposition == "ATTACHMENT") {
//echo($ipart);
//echo("Ja");
//echo($part->dparameters[0]->value);
$file['body'] = imap_fetchbody($mail['con'], $msg['num'], $ipart);
$file['file'] = imap_base64($file['body']);
print($file['file']);
$file['structure'] = imap_fetchstructure($mail['con'], $msg['num']);
$file['filename'] = $file['structure']->parts[1]->dparameters[0]->value;
$file['handler'] = fopen($file['filename'], "w");
fputs($file['handler'], $file['file']);
fclose($file['handler']);
print_r($file['body']);
}
$ipart++;
}
}
$einde = array();
$einde['onderwerp'] = $msg['subject'];
$einde['datum'] = date("d-m-Y H:i:s",$msg['utime']);
$einde['bericht'] = trim($msg['content']);
$einde['naam'] = $msg['from']['name'];
$einde['email'] = $msg['from']['adress'];
$einde['file'] = $file['filename'];
//print_r($einde);
unset($einde,$file,$parts);
//send message to trashbin
//imap_delete($mail['con'],$msg['num']);
}
}
//Delete al messages form the "thrashbin"
//imap_expunge($mail['con']);
//disconect form server
imap_close($mail['con']);
}
?>
Is er iemand die mij hier misschien zou kunnen helpen?
Al vast bedankt!
Sander
- E-mail bijlage prob.
-
24-10-2006, 20:48 #1
- Berichten
- 36
- Lid sinds
- 18 Jaar
E-mail bijlage prob.
-
In de schijnwerper
-
27-10-2006, 17:00 #2
- Berichten
- 9
- Lid sinds
- 18 Jaar
Wat was de eindconclusie van jouw testen ?
Was er wel degelijk file-content beschikbaar maar schrijft hij die gewoon niet weg ?
-
27-10-2006, 21:40 #3
- Berichten
- 36
- Lid sinds
- 18 Jaar
Na het printen van de diverse variable bleek dat er wel degelijk een atachement was. Maar de inhoud van het attechment werdt gewoon niet weggeschreven naar het bestand. Het bestand werdt wel aangemaakt, en had de goede naam
gr. Sander
-
28-10-2006, 17:36 #4
- Berichten
- 9
- Lid sinds
- 18 Jaar
Wel, je kan alvast eens proberen om het resultaat van het fputs commando te displayen, dan weet je of het opvullen van het bestand gelukt is of niet :
fwrite is de alias functie fputs : http://be2.php.net/manual/en/function.fwrite.php
fwrite() returns the number of bytes written, or FALSE on error
Er staat ook nog een belangrijke opmerking voor windows :
Note: On systems which differentiate between binary and text files (i.e. Windows) the file must be opened with 'b' included in fopen() mode parameter.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic