Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

lee the bean

Members
  • Posts

    80
  • Joined

  • Last visited

Posts posted by lee the bean

  1. 13 hours ago, pandrei said:

    1) Each sales channel and each language has its own description row for a product. If you delete unused sales channels and languages - these records will be less.

    Makes sense (documentation would help - sorry if I missed this)

    2) It works well under Linux and under Windows. It may fail because of incorrect paths  &  5) Yes, it is one of the possible reasons

    I'll re-install again... as I found other admin functions that don't work.

    3) What exactly columns do you mean? options_id and options_value_id? You have to import Product Options entity before Products. Otherwise these columns will be empty.

    Sorry, I should have highlighted the columns in the earlier osc2 image, and I followed the import instructs to the tee, so options where imported first.

    osc4 products_attributes_weight - no values populated, osc2 equivalent column = options_weight (from contribution) 
    osc4 no options_quantity column  (from osc2 contribution)

    oscom-quantity-for-product-attributes-mod

    4) You can correct it by changing SEO Page Name field in the SEO tab while editing product. Or you can do it for all products by running query:

    UPDATE products_description SET products_seo_page_name = CONCAT( REPLACE(LOWER(products_name), ' ', '-'), '-p-', products_id) WHERE products_name <> ''

    Except products_ids are no longer valid (as mentioned earlier) as install doesn't seem to import osc2 product_ids (or any xxxx_ids from site specific tables - so nothing marries up between osc2 and osc4)

    You can write an extension (\common\extensions), intercept product showing via hooks and maybe modify theme by overwriting a widget for showing product image.

    Thanks great news, I'll check this out.

    Thanks pandrei

  2. 16 hours ago, pandrei said:

    Hello Lee,

    1.

    Could you send me in pm the log files located at lib\common\extensions\OscLink\logs\*

    5.

    Please send us the following log files:

    lib/backend/runtime/logs/app.log

    lib/frontend/runtime/logs/app.log

     

     

    The amended products.php worked - thanks pandrei, all products imported. However product_descriptions table still has 8 entries per product (1 good, 7 NULLs), as per earlier entry and even on all products now imported.

    Further observations:

    1. Tools --> DB Backup button does nothing (although restore brings up Restore local options).

    2. Not all products_attributes table columns imported (attached image is osc2 table). Product Options not appearing on product page (configurable?)

    3. I would say that at the moment it wouldn't be possible to do a clean swap from osc2 --> osc4. For example:

    • seo product page url structure changed so would loose google indexed pages (osc2 -> /product-name-p-product_id.html -  /agate-apricot-tumblestone-p-1403.html)
    • need to provide 'empty database tables' option so all osc2 imported data that uses osc2 ids get imported (products_id, manufacturers_id, orders_id, reviews_id, customers_id etc etc) else nothing marrys up.

    4. Backend links to front end are adding double slash (eg preview product) to localhost (ie http://localhost//agate-apricot-tumblestone). Could this be due to the installation sales channel url (default was / which I left for localhost)? 

    5. I have a mod in osc2 products.php to load a 360 image Preview.html file via iframe if the folder and file exist (in a configurable folder location in configuration.php), using the products_model as location folder/file structure. Is it possible to do this local mod myself and if so which file needs the mod in osc4?

    products_attributes.png

  3. Version osc_4_03_50306

    Installed on wamp server. No problems.

    Followed migration instructions (from osc2. No problems connecting and importing data).

    However:

    1. OSCommerce Connector Service

    -------------------------------
    Start import for Products... Expecting: 2065
    Import was interrupted due an error: Invalid argument supplied for foreach()
    Imported 60/2065 products

    Repeated, same error. No errors logged in php log

     

    2. Importing Brands
    ----------------
    manufacturers id not imported - thus manufacturers names are added in alphabetical order starting at manufacturers_id 24.

    ocs2 starting products_id = 92 (FOSS-0051)
    osc4 starting products_id = 76 (VIRTUAL_GIFT_CARD); (77 = CPEB-0047)
    osc4 last products_id = 136 (CTUM-0178a)
    ocs2 products_id = 156  -->>  136 osc4

    osc2 products table CTUM-0178a --> manufacturers_id = 150
    osc4 products table CTUM-0178a --> manufacturers_id = 150 (hasn't added products_seo_page_name). This is last product imported befor error.

    Products end up with incorrect manufacturers assisned.

     

    3. Reviews not attached to products:
    ---------------------------------
    reviews table - most products_id values are set to 0 (may be due to products not imported - as in 1 above)

     

    4. Customer Addresses incorrect Counties:
    --------------------------------------
    osc2 zones table zone_id Stafordshire = 270 / Hertfordshire = 227
    osc4 zones table zone_id Stafordshire = 227 / Hertfordshire = 205

     

    5. Copied watch theme to amend to requirements.

    Pressing Widget Groups button on copied theme:
    -----------------------------
    Error
    An internal server error occurred.
    The above error occurred while the Web server was processing your request.

    Please contact us if you think this is a server error. Thank you.

     

    6. Logo 404's on copied watch theme:
    ---------------------------------
    <div class="logo">
        <img src="//themes\new-theme-name\img\\header.gif" alt="Company Name" style="border: none">
    <div>
    Although ok when editing theme or Preview in popup. Have to remove first / (ie /themes\new-theme-name\img\\header.gif) for it to work.

     

    7. Products attributes:
    -------------------
    osc2 options_weight not mapped to osc4 products_attributes_weight
    osc2 options_quantity not mapped at all!

    Not including quantity values for options is a major omission. This was a mod to osc2 and works very well maintaining separate quantities for every product option.

     

    8. Noticed <header> section incudes reply-to email address. Haven't explored if this is configurable but if not then another problem, as personally I don't have email addresses available on any page for spam scrappers to access. Users directed to contact us page only.

    General observation  - so distant (but most likely vastly improved) from osc2 wouldn't it have been better to launch under new Branding.

    Not really progressed further than playing with menus and getting head around the theme logistics, so no doubt more problems lurking 

     

    9. Product description table

    Multiple entries with same products_id

    products_description-table.png

  4. 47 minutes ago, Jack_mcs said:

    Sounds like your redirect line for your WAMP installation is not correct. I routinely run it in my local shops and it works as expected. You can turn on the diagnostic setting to see the paths it is using, which may help find the problem. But since the maps are not usable by the search engines you would just be wasting time trying to find the cause, in my opinion. Upload it to a live shop and run it there and you should see it works correctly.

    You're probably correct - updated live sites and all is hunky dory.

    How are the sitemap priorities assigned?

    Is there an equivalent SEO contribution for the google product feed? (currently using feedmachine)

  5. Just installed latest version of Google XML Sitemap SEO V 1.15

    Installs and runs ok, except it redirects to /googlesitemap/127.0.0.1 and 404s (on my wamp test bed). The sitemaps were created fine. http://127.0.0.1/catalog/ is fine as a reference.

    Only way to get it to complete and generate and redirect correctly to /googlesitemap/index.php was to remove the Manual IP & the Secure IP references and leave blank.

    What should happen with 127.0.0.1 configured?

    Where are the priorities assigned? Noticed products values from 0.1 through to 1.0, but not obvious why.

  6. 16 hours ago, Jack_mcs said:

    The change you made shouldn't have been necessary. I suspect your database server is in strict mode since that will cause problems like this. Still, the code should be able to handle that so I will make a change to it in the next version to account for it.

    Regarding the urls not changing, my guess is that you have that link hard-coded to use the rewritten one. But it shouldn't matter because the code will serve a standard url and issue a 301.

    The cache is used to store a copy of the url's. Without it the url's have to be rewritten on every page load. In the beginning of this addon having cache enabled could make a big difference.  But nowadays with faster servers and better php code it doesn't make a big difference. Also, the cache code stored all of the url's at once so on sites with a large number of products using cache can slow the site down significantly. So if you have a small number of products you can leave the settings as they are or turn them off and it probably won't make a big difference either way. But if you have a large number of products you may need to turn off caching, at least for the products.

    The single category URL not reverting back to default URL when contribution disabled has disappeared (today), no hardcoded links are/were present.

     

    Testing uncovered 2 more possible bugs:

    1. Uninstall option breaks with:

    [02-Mar-2022 07:42:36 Europe/London] PHP Warning:  array_merge(): Argument #2 is not an array in admin\configuration.php on line 79
    [02-Mar-2022 07:42:36 Europe/London] PHP Stack trace:
    [02-Mar-2022 07:42:36 Europe/London] PHP   1. {main}() admin\configuration.php:0
    [02-Mar-2022 07:42:36 Europe/London] PHP   2. array_merge() admin\configuration.php:79
    [02-Mar-2022 07:42:36 Europe/London] PHP Warning:  reset() expects parameter 1 to be array, null given in admin\includes\classes\object_info.php on line 22
    [02-Mar-2022 07:42:36 Europe/London] PHP Stack trace:
    [02-Mar-2022 07:42:36 Europe/London] PHP   1. {main}() admin\configuration.php:0
    [02-Mar-2022 07:42:36 Europe/London] PHP   2. objectInfo->__construct() admin\configuration.php:80
    [02-Mar-2022 07:42:36 Europe/London] PHP   3. objectInfo->objectInfo() admin\includes\classes\object_info.php:18
    [02-Mar-2022 07:42:36 Europe/London] PHP   4. reset() admin\includes\classes\object_info.php:22
    [02-Mar-2022 07:42:36 Europe/London] PHP Warning:  Variable passed to each() is not an array or object in admin\includes\classes\object_info.php on line 23
    [02-Mar-2022 07:42:36 Europe/London] PHP Stack trace:
    [02-Mar-2022 07:42:36 Europe/London] PHP   1. {main}() admin\configuration.php:0
    [02-Mar-2022 07:42:36 Europe/London] PHP   2. objectInfo->__construct() admin\configuration.php:80
    [02-Mar-2022 07:42:36 Europe/London] PHP   3. objectInfo->objectInfo() admin\includes\classes\object_info.php:18
    [02-Mar-2022 07:42:36 Europe/London] PHP   4. each() admin\includes\classes\object_info.php:23

    line 79/80

          $cInfo_array = array_merge($configuration, $cfg_extra);
          $cInfo = new objectInfo($cInfo_array);

    2. Using profile query while performance checker off - with  code in application_bottom.php breaks with:

    [02-Mar-2022 07:46:16 Europe/London] PHP Warning:  Division by zero in \includes\classes\seo.class.php on line 1819
    [02-Mar-2022 07:46:16 Europe/London] PHP Stack trace:
    [02-Mar-2022 07:46:16 Europe/London] PHP   1. {main}() \product_info.php:0
    [02-Mar-2022 07:46:16 Europe/London] PHP   2. require() \product_info.php:415
    [02-Mar-2022 07:46:16 Europe/London] PHP   3. SEO_URL->profile() \includes\application_bottom.php:35
    [02-Mar-2022 07:46:16 Europe/London] PHP   4. SEO_URL->calculate_performance() \includes\classes\seo.class.php:1804
    [02-Mar-2022 07:47:46 Europe/London] PHP Warning:  Division by zero in \includes\classes\seo.class.php on line 1819
    [02-Mar-2022 07:47:46 Europe/London] PHP Stack trace:
    [02-Mar-2022 07:47:46 Europe/London] PHP   1. {main}() \product_info.php:0
    [02-Mar-2022 07:47:46 Europe/London] PHP   2. require() \product_info.php:415
    [02-Mar-2022 07:47:46 Europe/London] PHP   3. SEO_URL->profile() \includes\application_bottom.php:35
    [02-Mar-2022 07:47:46 Europe/London] PHP   4. SEO_URL->calculate_performance() \includes\classes\seo.class.php:1804

  7. 21 hours ago, lee the bean said:

    Added contribution to a second server - with exactly the same results. Cache table added, seo urls working (categories, products and manufacturers), no option to configure seo options from the Configuration menu, no entries added to configuration table. No errors in php.log, MariaDB.log or Apache.log (only nicely formed urls).

    So here's the fix - reverted php versions back 5.6.40, 7.0.33, 7.1.33 to no avail, but at least it eliminates php versions.

    Found entry with same issue here : [CONTRIBUTION] Ultimate SEO URLs v2.1 - by Chemo - Page 299 - General Add-Ons Support - osCommerce Community Forum
    Amended seo.class.php as per "In function __construct(){ replace all '' values for configuration_id with NULL"
    Refreshed product page and whoopydo the link and database entries have now been added.

    A new issue:

    Setting Enable SEO Urls to false reverts to default urls, except the one category that had already been accessed via an SEO url. Hovering over link - and the link has reverted back, but clicking on it reveals a redirect to the SEO url version. All other category urls behave, even after accessing via SEO. Renamed the .htaccess file, and the category 404's (still accessing the SEO url version). Tried resetting the SEO Url Cache - but to no avail. Stumped on this one (dont like niggling problems like this). The offending category is on sort order 0.

    For educational purposes, can someone explain the cache database in simple terms. Does this look ok (don't have the extra addons so not present in database) so only 3 entries.236587489_Screenshot2022-03-01150550.thumb.png.ca68d90542c37c11b5797d2e89595955.png

  8. 2 hours ago, Jack_mcs said:

    Then, as far as I know, the addon should not work. This isn't something I can help with since it requires looking at the database. If it is working for you and the default settings are fine then you can run that way.

    Added contribution to a second server - with exactly the same results. Cache table added, seo urls working (categories, products and manufacturers), no option to configure seo options from the Configuration menu, no entries added to configuration table. No errors in php.log, MariaDB.log or Apache.log (only nicely formed urls).

  9. Just installed Ultimate SEO 2-2.2d-24 as per instructions on ms 2.3.4. Great contribution, except one problem. No configuration database entries have been entered into database, thus no  Configuration => SEO URLs and therefore cannot configure. Code is in the seo.class.php file - so unsure why entries not being added...

    Apart from the fact that 'as installed' the contribution does exactly as I needed so I don't need to configure any options - I thought it might be a good idea to feedback, as others may have similar problem.

  10. Sorry Phil, I didn't mean to confuse.

    No changes necessary to any Osc release, just the PayPal App download (PayPal Standard 5.010) from the osc site and the online app update (5.018).

    Message was for the PayPal app developer to add the newer paypal.com.crt bundled within the Frozen release to any further releases of the PayPal app & to make those release streams PHP 7 compatible.

  11. Sorted.

    So in case anybody else follows the same path with the same issue here is the low down

    Osc 2.3.4 plus PayPal download from the PayPal App Marketplace will probably work ok in a live PayPal environment, but won't work in the PayPal sandbox environment. Online updates via the admin panel will not fix this.

    To fix it download Osc Frozen which includes a bundled version of PayPal App.

    From the Osc Frozen download - copy file catalog/ext/modules/payment/paypal/paypal.com.crt to your live system folder and upload.

    To the developer - include the latest version of paypal.com.crt to your downloadable and online update processes & update for PHP 7 deprecated constructor issue.

  12. Thanks again Phil & Malcolm.

    I think its been a case of if it ain't broke don't fix it. I found the GitHub situation very confusing for a bear with a small brain several years ago, and to be honest its not any clearer now. I guess I will have to download a copy of Frozen at some point or ignore the update PayPal message until PayPal make some change that will force me to do an update.

    Perhaps I'll backout PayPal 5.018 and try 5.010 - the last downloadable version - to see if that helps as a first step. To embark on Frozen and then to add back in all the customisations over the years looks like a project I'd need to think about for the time being.

    I hadn't checked the forum for a few years and didn't realise oscommerce was in limbo, but I'd like to add my thanks to all those who have carried on the good work.

  13. Mr Phil - re: switching to frozen / edge.

    Reason - it doesn't show up on the latest news panel of the admin panel. Last release there shows as 2.3.4 6th June 2014. Installed and coded this release for BS (2014) and latterly (2017) for PHP 7. As for Frozen / Edge releases - what versions are they? - the download only has 2.3.4.1 Full package (which I cant see is any different from the 2.3.4 version via a quick check of the zip files documentation release notes) or 2.4.0 Beta. Not sure if either of these are the Frozen / Edge versions. I vaguely remember reading some kind of releases being released on GitHub or something like that. But I didn't want to start poking about on some other service and downloading 'unofficial' releases. By unofficial I mean outside the oscommerce site.

    Is the PayPal 'update' button compatible with the last official release (2.3.4 / 2.3.4.1??) or has it some base code requisites from Frozen / Edge?  I did check the forum first. I can't see any prerequisites listed in the PayPal App download area - although 5.010 is the last release there.

    The update button 'updated code' ok. Verify SSL set to True on Live 4.039 & Test 5.018 systems. SSL Version set to Default on Test system.

     

    Mr Brockley John - re: IPN / PDT.

    Yes they are correctly configured.

    I believe the logs supplied show that the handshaking is working.

  14. Have just updated development site from 4.039 to 5.018 via online update process (been on 4.039 for 2 years - no problems). Using Payments Standard

    Tested on sandbox - all appears ok on sandbox. Both the seller and buyer pp accounts are updated with the transaction.

    However the buyer isn't returned to the checkout success page but back to the shopping cart via checkout_process with an alert  Could not verify the PayPal transaction. Please try again 

    Order remains  Preparing [PayPal Standard]. No emails are sent (obviously).

    Running on standard 2.3.4 - updated to run on php 7.0.33 (deprecated constructor issue) and updated to use bootstrap. (Separate install issue - noticed that some files in this PayPal online update have not been updated for the constructor issue)

    Scratching my head on this one.

    I have attached xlsx with relevant server log and paypal log.

    Any ideas where to start?

    5.018 paypal sandbox test.xlsx

  15. Thank you Gergely. The subtle code changes in email.php allowed PHPMailer class to function just perfectly. I can now proceed to update to PHP 5.6

    So for anyone wanting a simple implementation guide here it is....

     

    The Definitive PHPMailer Install Instructions

    My Store    Store Owner                                      My Company

    E-Mail Address                                  [email protected]

                               E-Mail From                                       [email protected]

                              Send Extra Order Emails To:            [email protected]

     

    E-Mail Options  E-Mail Transport Method                              smtp

                             E-Mail Linefeeds                                              LF

                             Use MIME HTML When Sending Emails       true

                             Verify E-Mail Addresses Through DNS          true

                           Send E-Mails                                                   true

     

    Download PHPMailer from https://github.com/PHPMailer/PHPMailer (current version 5.2.23) & upload to catalog/ext folder

     

    Backup email.php files

    Amend:

    admin/includes/classes/email.php           &

    /includes/classes/email.php                       (these two files are identical)

     

    Replace (around lines 519), or replace your Pear code:

     

          if (EMAIL_TRANSPORT == 'smtp') {

            return mail($to_addr, $subject, $this->output, 'From: ' . $from . $this->lf . 'To: ' . $to . $this->lf . implode($this->lf, $this->headers) . $this->lf . implode($this->lf, $xtra_headers));

          } else {

            return mail($to, $subject, $this->output, 'From: '.$from.$this->lf.implode($this->lf, $this->headers).$this->lf.implode($this->lf, $xtra_headers));

          }

        }

     

    With

     

          if (EMAIL_TRANSPORT == 'smtp') {

    //        return mail($to_addr, $subject, $this->output, 'From: ' . $from . $this->lf . 'To: ' . $to . $this->lf . implode($this->lf, $this->headers) . $this->lf . implode($this->lf, $xtra_headers));

    //      } else {

    //        return mail($to, $subject, $this->output, 'From: '.$from.$this->lf.implode($this->lf, $this->headers).$this->lf.implode($this->lf, $xtra_headers));

    //      }

    //    }

     

                require_once(DIR_FS_CATALOG . 'ext/PHPMailer/PHPMailerAutoload.php');

     

                $pMail = new PHPMailer();

                $pMail->IsSMTP();

                $pMail->IsHTML(true);

           

                $pMail->Host     = "mail.mydomain.com";

                $pMail->SMTPAuth = true;

                $pMail->Username = "[email protected] ";

                $pMail->Password = "mypassword";

     

                $pMail->CharSet = "utf-8";

     

                $pMail->From = $from_addr;

                $pMail->FromName = $from_name;

                $pMail->addAddress($to_addr, $to_name);

                $pMail->Subject = $subject;

                $pMail->Body = $this->html;

                $pMail->AltBody = $this->text;

     

                if (!$pMail->Send()) {

                    return false;

                } else {

                    $pMail->clearAddresses();

                    $pMail->clearAttachments();   

                    return true;

                }

            }

         }

     

    Replace host, username and password values with your Authenticated SMTP parameters.

    Now all auto-generated emails from oscommerce will be sent with HTML, with a from address of    My Company <[email protected]>

    Emails sent via Tools -> Send Email, and newsletter emails will be send with HTML, with a from address of [email protected].

     

    Once again, thank you Gergely.

  16. Thanks again. Sorry I thought I'd given all the info to save bouncing q's & a's. But I obviously haven't. Yes I need SMTP. Problem finding the definitive PHPMailer installation instructions is not really relevant to using sendmail. However in answer - problem finding the definitive PHPMailer installation instructions exists on my Windows WAMP server test bed, my live service and development environments - both Linux OS

    I simply need the 4 questions answered and guidance on what Install "PHPMailer for OsCommerce" as it is explained before means in some versions of online instructions.

  17. Specification:

    HTTP Server: Apache/2.4.23 (Unix)

    PHP Version: 5.3.28 (Zend: 2.3.0)

    osCommerce: 2.3.4

     

    Sending SMTP HTML enabled emails using Pear SMTP Authentication script via amended /includes/classes/email.php in front/backend

     

    My Store     E-Mail Address                                   [email protected]

                          E-Mail From                                       My Company <[email protected]>

                          Send Extra Order Emails To:           My Company <[email protected]>

    E-Mail Options  E-Mail Transport Method                           smtp

                            E-Mail Linefeeds                                            LF

                            Use MIME HTML When Sending Emails     true

                            Verify E-Mail Addresses Through DNS        true

                          Send E-Mails                                                  true

     

    This configuration successfully sends all auto-generated emails and admin Send Emails and Newsletter Manager emails with HTML mark-up.

     

    I now need to update PHP version to 5.6.

     

    PEAR at PHP version 5.5.38 gives depreciated warnings:

    PHP Deprecated:  Non-static method Mail::factory()

    PEAR at PHP version 5.6 fails to send emails with following error:

    PHP Strict Standards:  Non-static method Mail::factory()

    PHP Strict Standards:  Non-static method Mail_RFC822::parseAddressList()

     

    So time to look for alternative SMTP Authentication script and found several add-ons using PHPMailer. However they employ differing implementations.

     

    oscom-phpmailer4osc-smtp-with-authentication-ZaWWz-lQp7x                 2006

    PHPMailer from http://phpmailer.sourceforge.net (currently version 1.73)

    Includes class.phpmailer.php & class.smtp.php

     

    oscom-phpmailer-class-to-send-email-JqJxG-juVcE            2010

    class.phpmailer.php       version 5.1

    sql database table update;

    backend/frontend class.phpmailer.php & class.smtp.php, updated application_top.php, general.php; backend mail.php, newsletter.php and product_notification.php

     

    oscom-phpmailer-for-oscommerce-X1ZFh-Wgg0V             2008

    instruction only, amend backend/frontend configure.php replace lines that don’t exist in the file so add-on not valid.

     

    oscom-smtp-email-pX3Ou-aO1yH            2015

    class.phpmailer.php       version 5.2

    backend/frontend email.php, class.phpmailer.php & class.smtp.php

     

    Current phpmailer.sourceforge.net is 5.2.23 (pre 5.2.18 has security vulnerability). It is unclear from the information within the add-on versions of class.phpmailer.php which versions they relate to from the original code on sourceforge.

     

    Many online instructions simply say install class.phpmailer.php (v5.2) or latest sourceforge version, add relevant code to email.php and configure Use MIME HTML When Sending Emails: false in E-Mail Options.

     

    Having tried the 2015 add-on (ie 2 x class.phpmailer.php, class.smtp.php and amended email.php) and the latest sourceforge 5.2.23 version (full folder files) I cannot get Tools -> Send Email to send a valid HTML email.

     

    Firstly I had to change

            My Store ->         E-Mail From              My Company <[email protected]>

    to

                                                                             [email protected]

    before any emails would send.

     

    With MIME HTML When Sending Emails: false no HTML is sent in message and received in outlook as:

     

    This is a heading 1 this is text this is heading 2 a little brown fox jumped over the hedgeÂ

     

    Text sent was:

    <h1>This is a heading 1</h1>

    this is text

    <h2>this is heading 2</h2>

    a little brown fox jumped over the hedge

     

    Properties

    X-MUNQ: aebac272d56eaa9b5c93265e7f828ecb

    X-MSK: HYD=0.517008005

    Return-path: <[email protected]>

    Envelope-to: [email protected]

    Delivery-date: Wed, 12 Jul 2017 07:22:19 +0100

    Received: from mail by mail.server.com with spamvirus-scanned (Exim 4.87)

                    id 1dVB2R-0003Uz-0r

                    for [email protected]; Wed, 12 Jul 2017 07:22:19 +0100

    X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on

                    mail.server.com

    X-Spam-Level: *

    X-Spam-Status: No, score=1.7 required=5.0 tests=HTML_MESSAGE,

                    HTML_MIME_NO_HTML_TAG,MIME_HTML_ONLY shortcircuit=no autolearn=disabled

                    version=3.3.1

    Received: from mail.server.com ([IP.IP.IP.IP] helo=my-domain.com)

                    by mail.server.com with esmtpsa (TLSv1:ECDHE-RSA-AES256-SHA:256)

                    (Exim 4.87)

                    id 1dVB2Q-0003TC-Tt

                    for [email protected]; Wed, 12 Jul 2017 07:22:18 +0100

    Date: Wed, 12 Jul 2017 07:22:18 +0100

    To: My Name <[email protected]>

    From: [email protected]

    Subject: mime off

    Message-ID: <[email protected]>

    X-Mailer: PHPMailer 5.2.23 (https://github.com/PHPMailer/PHPMailer)

    MIME-Version: 1.0

    Content-Type: text/html; charset=iso-8859-1

    Content-Transfer-Encoding: 8bit

    X-KLMS-Rule-ID: 1

    X-KLMS-Message-Action: clean

    X-KLMS-AntiVirus: Kaspersky Security 8.0 for Linux Mail Server, version 8.0.1.705, bases: 2017/07/12 01:47:00 #10048106; khse: 2014-01-23 rollback

    X-KLMS-AntiVirus-Status: Clean, skipped

     

     

     

    With MIME HTML When Sending Emails: true the email received in outlook as:

     

    --=_2a94c0d566e11ca9872b7af136e844f9 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit No error debug No error Errors are not cool --=_2a94c0d566e11ca9872b7af136e844f9 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable

    No error debug

     No error

    Errors = are not cool

    --=_2a94c0d566e11ca9872b7af136e844f9--

     

    Text sent was:

    <h1>No error debug</h1>

     

    No error

     

    <h2>Errors are not cool</h2>

     

    Properties:

    X-MUNQ: e80dccd3256f0d6c51b84a9d5d3af320

    X-MSK: HYD=0.528810005

    Return-path: <[email protected]>

    Envelope-to: [email protected]

    Delivery-date: Mon, 10 Jul 2017 06:11:06 +0100

    Received: from mail by mail.server.com with spamvirus-scanned (Exim 4.87)

                    id 1dUQyQ-0000sK-9G

                    for [email protected]; Mon, 10 Jul 2017 06:11:06 +0100

    X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on

                    mail.server.com

    X-Spam-Level: *

    X-Spam-Status: No, score=1.7 required=5.0 tests=HTML_MESSAGE,

                    HTML_MIME_NO_HTML_TAG,MIME_HTML_ONLY,TVD_RCVD_IP shortcircuit=no

                    autolearn=disabled version=3.3.1

    Received: from mail.server.com ([IP.IP.IP.IP] helo=my-domain.com)

                    by mail.server.com with esmtpsa (TLSv1:ECDHE-RSA-AES256-SHA:256)

                    (Exim 4.87)

                    id 1dUQyQ-0000pv-0O

                    for [email protected]; Mon, 10 Jul 2017 06:11:06 +0100

    Date: Mon, 10 Jul 2017 06:11:18 +0100

    To: My Name <[email protected]>

    From: [email protected]

    Subject: mime on

    Message-ID: <d3e199b6d34fb727e8f4bffa1725e982@my-domain.com>

    X-Mailer: PHPMailer 5.2.23 (https://github.com/PHPMailer/PHPMailer)

    MIME-Version: 1.0

    Content-Type: text/html; charset=iso-8859-1

    Content-Transfer-Encoding: 8bit

    X-KLMS-Rule-ID: 1

    X-KLMS-Message-Action: clean

    X-KLMS-AntiVirus: Kaspersky Security 8.0 for Linux Mail Server, version 8.0.1.705, bases: 2017/07/10 00:40:00 #10018344; khse: 2014-01-23 rollback

    X-KLMS-AntiVirus-Status: Clean, skipped

     

     

    Longer messages are interspersed with equals signs (as seen in the h2 text). Longer messages with many HTML snippets completely screws up (technical term) the message body text.

     

    This is the code in email.php:

     

    require_once(DIR_FS_CATALOG . ext/PHPMailer/PHPMailerAutoload.php");

    require_once(DIR_FS_CATALOG . "ext/PHPMailer/class.phpmailer.php");

     

    $pMail = new PHPMailer();

           

    $pMail->From     = $from_addr;

    $pMail->FromName = $from_name;

     

    $pMail->IsSMTP();

    $pMail->Host     = "mail.my-domain.com";

    $pMail->Username = " [email protected]";

    $pMail->Password = "mypassword";

    $pMail->SMTPAuth = true;

                   

    $pMail->Subject = $subject;

    $pMail->Body    = $this->output;

    $pMail->AddAddress($to_addr, $to_name);

    $pMail->IsHTML(true);

                   

    return $pMail->Send();

     

    $pMail->ClearAddresses();

    $pMail->ClearAttachments();         

    }

     

    Amending $pMail->IsHTML(false); makes no difference to received message ie. it is received in non-HTML followed by HTML in body of message.

     

    Here are my questions:

    1.       What is the definitive PHPMailer implementation?

    2.       What version of PHPMailer class from sourceforge is used in oscommerce v2.3.4?

    3.       Is the implementation simply class.phpmailer.php, class.smtp.php and code to email.php only?

    4.       Is the sourceforge PHPMailer class amended to function in oscommerce?

     

    I suspect there are other code changes I’ve not implemented as some instructions include the cryptic line:

     

    Install "PHPMailer for OsCommerce" as it is explained before.

     

    I have no idea what this related to.

     

    Having followed many forum entries I am no closer to understanding what is required.

     

    Response eagerly awaited and gratefully received.

  18. I found the answer to the missing order email image - the order email is now also created in the file

     

    catalog/ext/modules/payment/paypal/standard_ipn.php - added code as above and the next order included the image as expected.

     

    However some emails are also created via catalog/includes/modules/payment/paypal_standard.php, so it would be nice to know in what circumstances the emails are generated from which of the two files, as both have for my site - which is setup only to use PayPal Standard checkout. The only possible explanation I can deduce is that a payment via a tablet/mobile device via a PayPal installed app uses different code to a PC device.

     

    Also could it explain why a trace of a payment had this during a checkout

    /shop/checkout_payment.php?error_message=Please+select+a+payment+method+for+your+order.&osCsid=58q8tesu4d33srpelbefbmpj22

  19. ocCommerce v2.3.4 - PayPal App v4.039

     

    Only one Payment module enabled - PayPal Payments Standard

     

    catalog/checkout_process.php & catalog/includes/modules/payment/paypal_standard.php modified to include store logo in email:

    // lets start with the email confirmation
          $email_order = tep_image(HTTPS_SERVER . DIR_WS_HTTP_CATALOG . DIR_WS_IMAGES . 'store_logo.png', STORE_NAME, 441, 44) . "\n\n" .
                         STORE_NAME . "\n" .
                         EMAIL_SEPARATOR . "\n"
    .                   etc. This simple modification has been installed many years.

    PayPal App v4.039 has been installed, tested and live for a few months now without errors - it works a treat.

     

    However with two recent orders the extra order emails were missing the store logo image. No other indication that a problem may exist and no recent changes to coding.

     

    Decided to investigate and found the following in the server log on the last affected order:

     

    mysite.com 69.xxx.xxx.74 - - [31/Oct/2015:21:24:15 +0000] "GET /shop/shopping_cart.php?osCsid=58q8tesu4d33srpelbefbmpj22 HTTP/1.1" 200 44211 "https://www.mysite.com/shop/product_info.php?products_id=1164&osCsid=58q8tesu4d33srpelbefbmpj22" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

    mysite.com 69.xxx.xxx.74 - - [31/Oct/2015:21:26:22 +0000] "POST /shop/checkout_shipping.php?osCsid=58q8tesu4d33srpelbefbmpj22 HTTP/1.1" 302 - "https://www.mysite.com/shop/checkout_shipping.php?osCsid=58q8tesu4d33srpelbefbmpj22" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

    mysite.com 69.xxx.xxx.74 - - [31/Oct/2015:21:26:23 +0000] "GET /shop/checkout_payment.php?osCsid=58q8tesu4d33srpelbefbmpj22 HTTP/1.1" 200 31545 "https://www.mysite.com/shop/checkout_shipping.php?osCsid=58q8tesu4d33srpelbefbmpj22" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

    mysite.com 69.xxx.xxx.74 - - [31/Oct/2015:21:35:15 +0000] "GET /shop/checkout_confirmation.php?osCsid=58q8tesu4d33srpelbefbmpj22 HTTP/1.1" 302 - "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

     

    mysite.com 69.xxx.xxx.74 - - [31/Oct/2015:21:35:21 +0000] "GET /shop/checkout_payment.php?error_message=Please+select+a+payment+method+for+your+order.&osCsid=58q8tesu4d33srpelbefbmpj22 HTTP/1.1" 200 31748 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

    mysite.com 69.xxx.xxx.74 - - [31/Oct/2015:21:36:10 +0000] "POST /shop/checkout_confirmation.php?osCsid=58q8tesu4d33srpelbefbmpj22 HTTP/1.1" 200 36588 "https://www.mysite.com/shop/checkout_payment.php?error_message=Please+select+a+payment+method+for+your+order.&osCsid=58q8tesu4d33srpelbefbmpj22" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

     

    mysite.com 69.xxx.xxx.74 - - [31/Oct/2015:21:55:36 +0000] "GET /shop/checkout_process.php?osCsid=58q8tesu4d33srpelbefbmpj22&tx=08312084CR8405507&st=Completed&amt=91%2e55&cc=GBP&cm=1532&item_number= HTTP/1.1" 302 - "https://www.paypal.com/ca/cgi-bin/webscr?cmd=_flow&SESSION=TPPMEy2coLjMqGNnXfR4v46q3KVibDFC_k85uCXZmLkfzr3woX6SlZchQYm&dispatch=50a222a57771920b6a3d7b606239e4d529b525e0b7e69bf0224adecfb0124e9b61f737ba21b081984719xxxxxxxxxxxxxxxxx" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

    mysite.com 69.xxx.xxx.74 - - [31/Oct/2015:21:55:38 +0000] "GET /shop/checkout_success.php?osCsid=58q8tesu4d33srpelbefbmpj22 HTTP/1.1" 200 36584 "https://www.paypal.com/ca/cgi-bin/webscr?cmd=_flow&SESSION=TPPMEy2coLjMqGNnXfR4v46q3KVibDFC_k85uCXZmLkfzr3woX6SlZchQYm&dispatch=50a222a57771920b6a3d7b606239e4d529b525e0b7e69bf0224adecfb0124e9b61f737ba21b08198471xxxxxxxxxxxxxxxxx" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"

     

    As there is only one payment option - it is not selectable but the selected default, so it is not possible to not have the payment method not selected as per the error message appended to the checkout_payment.php url.

    Also - it is not possible to create the email without the image. So in this case the email is not being created from the two possible scripts paypal_standard.php (it should be this) or checkout_process.php (it would only be this if cash option was enabled). Hmmm. What the heck is going on.

     

    I cant reproduce the error message having extensively tested again.

     

    Thought I should report this to see if anyone else has seen this problem.

     

  20. Hi Tejas,

     

    No - I had to backout the standard_ipn.php file. Have been waiting to see if I was alone with this problem, or if the developer had a comment / suggestion to make.

     

    Lee

     

    PS - Not sure why this topic was moved to add-ons - as this add-on upgrade is part of the 2.3.3.4 to 2.3.4 version update.

×
×
  • Create New...