Emails tellen via iMAP extensie
Beste forumleden,
Ik ben met een leuk projectje bezig de laatste tijd en ben nu aangekomen bij het tellen van bestellingen die via bol.com binnen komen. Bol.com heeft helaas geen api hiervoor dus ik doe het op de volgende manier.
Bol.com mailt naar mijn emailadres met een bepaald onderwerp dat er een bestelling is. Via imap haal ik alle bestellingen op van het emailaccount.
Nu heb ik het voor elkaar om een lijst met alle emails geprint te krijgen, met alle waardes erbij als from, subject, date etc...
Het lijkt mij nu dus een koud kunstje om de datum te pakken en te vergelijken met vandaag inc de filtering dat alleen bol.com als afzender moet komen en het onderwerp moet starten met "Nieuwe koper".
Dit is de return van imap voor 1 email: #230: From:'"bol.com" ' Date:'Mon, 11 Jul 2016 15:29:04 +0200 (CEST)' Subject:'Een koper voor <mijn product>'
Hoe kan ik deze datum vergelijken in php met bijv vandaag? Is hier een regex voor of kan het allemaal een stuk makkelijker?
Ik wil dus gewoon het aantal bestellingen van bol.com per dag kunnen weergeven en het liefst per week etc...
Ik ben met een leuk projectje bezig de laatste tijd en ben nu aangekomen bij het tellen van bestellingen die via bol.com binnen komen. Bol.com heeft helaas geen api hiervoor dus ik doe het op de volgende manier.
Bol.com mailt naar mijn emailadres met een bepaald onderwerp dat er een bestelling is. Via imap haal ik alle bestellingen op van het emailaccount.
Nu heb ik het voor elkaar om een lijst met alle emails geprint te krijgen, met alle waardes erbij als from, subject, date etc...
Het lijkt mij nu dus een koud kunstje om de datum te pakken en te vergelijken met vandaag inc de filtering dat alleen bol.com als afzender moet komen en het onderwerp moet starten met "Nieuwe koper".
Dit is de return van imap voor 1 email: #230: From:'"bol.com" ' Date:'Mon, 11 Jul 2016 15:29:04 +0200 (CEST)' Subject:'Een koper voor <mijn product>'
Hoe kan ik deze datum vergelijken in php met bijv vandaag? Is hier een regex voor of kan het allemaal een stuk makkelijker?
Ik wil dus gewoon het aantal bestellingen van bol.com per dag kunnen weergeven en het liefst per week etc...
Furio Scripting op 12/07/2016 14:40:32:
Ik ben met een leuk projectje bezig de laatste tijd en ben nu aangekomen bij het tellen van bestellingen die via bol.com binnen komen. Bol.com heeft helaas geen api hiervoor […]
Ik wil dus gewoon het aantal bestellingen van bol.com per dag kunnen weergeven en het liefst per week etc...
Ik wil dus gewoon het aantal bestellingen van bol.com per dag kunnen weergeven en het liefst per week etc...
Dat kan met de bol.com Plaza API:
Quote:
Via de Plaza API kan men:
• Alle openstaande bestellingen inzien.
• Openstaande bestellingen als verzonden of geannuleerd markeren.
• Achteraf track&trace informatie toevoegen aan verzonden bestellingen.
• Alle openstaande retouren inzien.
• Openstaande retouren verwerken.
• Betaaloverzichten per maand inzien.
• Aanbod aanmaken en beheren.
• Levertijden en/of prijswijzigingen doorgeven.
• Voorraadwijzigingen doorgeven.
• Alle openstaande bestellingen inzien.
• Openstaande bestellingen als verzonden of geannuleerd markeren.
• Achteraf track&trace informatie toevoegen aan verzonden bestellingen.
• Alle openstaande retouren inzien.
• Openstaande retouren verwerken.
• Betaaloverzichten per maand inzien.
• Aanbod aanmaken en beheren.
• Levertijden en/of prijswijzigingen doorgeven.
• Voorraadwijzigingen doorgeven.
Oh bedankt maar ik heb het nu al werkend via Imap en werkt perfect maar vraag me of je met imap ook tussen datums kan zoeken. Nu vergelijk ik alleen de datum van vandaag.
Dit is de code nu:
Weet iemand hoe ik ook van de huidige week alle mailtjes kan ophalen en huidige maand plus huidig jaar?
Dit is de code nu:
Weet iemand hoe ik ook van de huidige week alle mailtjes kan ophalen en huidige maand plus huidig jaar?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
error_reporting(E_ALL); ini_set('display_errors', '1');
// open IMAP connection
# Connect to the mail server and grab headers from the mailbox
$mailConn = imap_open('{connectie string}', 'email', 'pass');
$date = date("j-F-Y");
$emails = imap_search($mailConn,'ON "'.$date.'"');
if ($emails)
{
foreach ($emails as $emailID)
{
$overview = imap_fetch_overview($mailConn, $emailID, 0);
if (strpos($overview[0]->subject, 'Een koper voor') === 0 && $overview[0]->from == '[email protected]')
{
echo 'Bol.com order vandaag!';
}
//echo $overview[0]->subject . ' - ' . $overview[0]->date . '<br><br><br>';
}
} else
{
echo 'No emails found.';
}
imap_close($mailConn);
[/code]
error_reporting(E_ALL); ini_set('display_errors', '1');
// open IMAP connection
# Connect to the mail server and grab headers from the mailbox
$mailConn = imap_open('{connectie string}', 'email', 'pass');
$date = date("j-F-Y");
$emails = imap_search($mailConn,'ON "'.$date.'"');
if ($emails)
{
foreach ($emails as $emailID)
{
$overview = imap_fetch_overview($mailConn, $emailID, 0);
if (strpos($overview[0]->subject, 'Een koper voor') === 0 && $overview[0]->from == '[email protected]')
{
echo 'Bol.com order vandaag!';
}
//echo $overview[0]->subject . ' - ' . $overview[0]->date . '<br><br><br>';
}
} else
{
echo 'No emails found.';
}
imap_close($mailConn);
[/code]
Gewijzigd op 12/07/2016 15:22:08 door Furio Scripting




