I have been creating a program to update order status and send a tracking email. It is working but it sends multiple emails when it should only send one. Here is a sample of the code:
$trackingOnly =
Array
(
[48462] => Tracking Number 4206043594055102008303
[48461] => Tracking Number 42089445940011020083
[48460] => Tracking Number 420195209400110200
[48458] => Tracking Number 4208021894055102
[48457] => Tracking Number 1Z67V75V03
)
$PWinvoiceEmailsAll =
Array
(
[48464] => Array
(
[fullname] => Ebinezer Hoodamackie
[date] => Wednesday 2 November, 2016
[email] => emailaddress######################
[status] => 1
[notified] => 1
)
[48463] => Array
(
[fullname] => George Washington
[date] => Wednesday 2 November, 2016
[email] => emailaddress######################
[status] => 1
[notified] => 1
)
)
foreach($trackingOnly as $orderNum => $trackingComment)
{
foreach($PWinvoiceEmailsAll as $orderPW => $arrayPW)
{
if($orderNum == $orderPW)
{
$queryB = "INSERT INTO orders_status_history (orders_id,orders_status_id,date_added,customer_notified,comments)
VALUES ($orderNum,3,NOW(),1,'$trackingComment')";
$queryC = "UPDATE orders
SET orders_status=3
WHERE orders_id=$orderNum";
odbc_exec($connectA,$queryB);
odbc_exec($connectA,$queryC);
//send email to customer
$dateToPost = $arrayPW['date'];
$nameToPost = $arrayPW['fullname'];
$orderToPost = $orderNum;
$emailToPost = $arrayPW['email'];
$trackingToPost = $trackingComment;
$message = 'date='.$dateToPost.'&name='.$nameToPost.'&order='.$orderToPost.'&email='.$email ToPost.'&tracking='.$trackingToPost;
$ch = curl_init("http://www.companyname.com/test.php");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $message);
curl_exec($ch);
curl_close($ch);
}
}
}
And here is the file it posts to:
require('includes/application_top.php');
include('/includes/functions/functions_email.php');
$date = $_POST['date'];
$name = $_POST['name'];
$order = $_POST['order'];
$email = $_POST['email'];
$tracking = $_POST['tracking'];
$message="Order Number: $order\n\nDetailed Invoice: http://www.companyname.com/index.php?main_page=account_history_info&order_id=$order\n\nDate Ordered: $date\n\nThe comments for your order are: $tracking\n\nYour order has been updated to the following status:\nNew status: Shipped\n\nPlease reply to this email if you have any questions.\n\n\n";
zen_mail($name,$email,"Order Update #$order",$message,"Company Name","[email protected]");
Can anyone tell me what I am doing wrong?
Bookmarks