pb with email order

cachousam

Avatar: cachousam

2011-03-15 10:33

Hello.
I made ​​some changes to my site and since then I no longer receive emails regarding orders.
What files board I made ​​the mistake?
Thank you in advance.

» Quick.Cart v3.x

Makaron

Avatar: Makaron

2011-03-15 16:09

First check did You have inserted email address in field "Information about new order sent to e-mail" in Settings tab..

Mak-Web.pl - Quick.Cart & Quick.Cms templates

cachousam

Avatar: cachousam

2011-03-15 16:51

Hello makaron.
of course i have inserted the email in the good field in setting tab.
My site is ok since 3 years.
but I have recently made ​​changes and since it does not work anymore.
I do not remember the changed files that could be involved.
Thanks for your help

Makaron

Avatar: Makaron

2011-03-16 16:20

Code which is connected with sending email with order is in two files: actions_client/p.php and core/orders.php. Functions needs also tempaltes which are in templates/orders_print.tpl. Check these files and compare them with original onces.

Mak-Web.pl - Quick.Cart & Quick.Cms templates

cachousam

Avatar: cachousam

2011-03-17 17:32

Thank you Makaron, I found my stupidity in the file p.php

I have another question

how to have the text in utf8 because as you can see is not very nice

- KYO8WM - 152.00 EUR * 1 = 152.00 EUR
- Forfait Livraison (Chèque ) = 0.00 EUR
- Canal de paiement: -
---
Coût total TTC: 152.00 EUR
---
Thank you

boboo

Avatar: boboo

2011-03-17 18:03

The sendEmail function uses very simple header with only one parameter:
if( @mail( $sTargetEmail, $sTopic, $sMailContent, 'From: '.$sSender ) ){
the "From:.$sSender" is the only header content. In this case mail function uses the standard settings (poor as well).
declare a $sHeader and put into:
$sHeader='MIME-Version:1.0'."\n".'Content-type:text/html;charset=UTF-8'."\n".'Content-Transfer -Encoding:8bit'."\n".'From: <'.$sSender.">\n";
and put the $sHeader instead of 'From: '.$sSender
You will get utf-8, and html formatted emails.
I use this with polish language, where we have a lot of strange letters ;-)
ąćęłńóśźż

http://it-service.kimla.de QC- & QCMS-plugins

cachousam

Avatar: cachousam

2011-03-19 07:58

Thanks boboo
Its now better but the line breaks are no visible like this:

dupont lajoie 38 rue du lac 74000 thonon 0505050505 cachousam@yahoo.fr ------------ - BGSM-G - 443.00 EUR * 1 = 443.00 EUR - Forfait Livraison (Ch&egrave;que ) = 0.00 EUR - Canal de paiement: - --- Co&ucirc;t total TTC: 443.00 EUR ---

boboo

Avatar: boboo

2011-03-19 11:53

the line breaks - you have to put them in the order_print.tpl , where the e-mail template is.
use <br/> for line breaks.
example:
$aData[sFirstName] $aData[sLastName] <br/>
$aData[sCompanyName] <br/>
$aData[sStreet] <br/>
$aData[sZipCode] $aData[sCity] <br/>
$aData[sPhone] <br/>
$aData[sEmail] <br/>
</br>
------------------------ <br/>
$lang[Order_customer_products] <br/>
------------------------ <br/>
$aData[sProducts] <br/>

http://it-service.kimla.de QC- & QCMS-plugins

cachousam

Avatar: cachousam

2011-03-19 15:56

Thank you.Its work fine
But it is strange , now in outlook the sender of the mail is:
MIME-Version:1.0.

There might be another way?

boboo

Avatar: boboo

2011-03-19 16:05

put here what you have in
$sHeader=........;
the whole line
and the line with @mail

http://it-service.kimla.de QC- & QCMS-plugins

cachousam

Avatar: cachousam

2011-03-19 16:34

I do not understand where to put what you say.
Here is my script

function sendEmail( $aForm, $sFile = 'messages.tpl', $sTargetEmail = null ){
extract( $aForm );
$oTpl = TplParser::getInstance( );
$sHeader='MIME-Version:1.0'."\n".'Content-type:text/html;charset=UTF-8'."\n".'Content-Transfer -Encoding:8bit'."\n".'From: <'.$sSender.">\n";
if( !empty( $sTopic ) && !empty( $sMailContent ) && checkEmail( $sSender ) === true ){
$sMailContent = change2Latin( $sMailContent );
$sTopic = change2Latin( $sTopic );

if( !empty( $sPhone ) )
$sMailContent = $GLOBALS['lang']['Phone'].': '.change2Latin( $sPhone )."\n".$sMailContent;
if( !empty( $sName ) )
$sMailContent = $GLOBALS['lang']['Name_and_surname'].': '.change2Latin( $sName )."\n".$sMailContent;

if( !isset( $sTargetEmail ) )
$sTargetEmail = $GLOBALS['config']['email'];

if( @mail( $sTargetEmail, $sTopic, $sMailContent, 'From: '.$sHeader ) ){
if( isset( $sFile ) )
return $oTpl->tbHtml( $sFile, 'MAIL_SEND_CORRECT' );

can you give me your email?

boboo

Avatar: boboo

2011-03-19 17:26

:-)
as i thought
this line:
if( @mail( $sTargetEmail, $sTopic, $sMailContent, 'From: '.$sHeader ) ){
change to:
if( @mail( $sTargetEmail, $sTopic, $sMailContent, $sHeader ) ){

in the variable $sHeader there is already 'From:'

http://it-service.kimla.de QC- & QCMS-plugins

boboo

Avatar: boboo

2011-03-19 17:27

my email:
bogdan(at)kimla.de

http://it-service.kimla.de QC- & QCMS-plugins

cachousam

Avatar: cachousam

2011-03-19 17:44

Nice.
You are a boss

cachousam

Avatar: cachousam

2012-01-22 09:24

Hello, I use this script for some time for the receiving and sending email from my order.
But recently, here is the form of order email.

Content-Transfer -Encoding: 8bit From: Date: Sun, 22 Jan 2012 08:21:06 -0000 Customer-Id: 3484 Abuse: abuse@ispfr.net test dom


rue de paris
75000 paris
0101010101
cachousam@yahoo.fr
------------

- KIT IP DSC (PC1832,PK5500,TL150) - 499.00 EUR * 1 = 499.00 EUR
- Forfait Livraison (Ch&egrave;que ) = 0.00 EUR
- Canal de paiement: -
---
Co&ucirc;t total TTC: 499.00 EUR
---




For questions about products the email of the sender does not appear and we see this famous abuse@abuse.fr.

Content-Transfer -Encoding: 8bit From: Date: Sun, 22 Jan 2012 08:13:13 -0000 Customer-Id: 3484 Abuse: abuse@ispfr.net Votre nom: test Téléphone: 0101010101 bla bla

For orders there is also abuse.
With some ISPs such as Orange, the customer does not receive their mail, which are treated as spam.
Thank you for your thoughts.

cgan

Avatar: cgan

2012-02-07 11:19

When I use this solution and the order contains more than one product the products will be displayed in one long row after each other in the email.
How can I separate the ordered products so they will be displayed on separate rows?

Best regards

cgan

cgan

Avatar: cgan

2012-02-07 12:41

I found solution.
I had to change from "\n" to '<br />' in line 492 in orders.php

cgan

Back to top
about us | contact