Last edited by retched; 9 Sep 2010 at 11:46 PM.
Thank you again for your help Retched!
I don't have AIM, but I do think I found the problem/solution thanks to you.
I had only edited out the wget line from the spiders.txt. I hadn't added that line of code, so I just left everything the way it was and looked at the cache.
The error in my cache says:
That sounded familiar, so I searched this thread again and found you had also run into the 500 /XMLParser error. After checking several things, this is what you had found (Post 62):PHP Fatal error: Class 'XMLParser' not found in /xxxxx/xxxxxxxx/public_html/checkout_by_amazon/amazonorder.php on line 360
I'm hoping that is the problem with mine too - there aren't any orders to process right now.Essentially this would only happen when there was nothing for the cron script to process.
When I did a Live test order last night, it went through fine (other than the quirks I mentioned in other posts) and showed up in both my Zen Admin and Seller Central. Once it was marked shipped in our Admin, the information was relayed back to Amazon and everything updated.
So unless the Cron job affects something else I'm not aware of, I'm going to just wait to see what happens when there are orders and not stress in the meantime. :)
Thank you again for pointing me in the right direction.
I'll finish that project tomorrow, I've made enough mistakes today!
I have not tried this on a live site, However... you can attempt to do this. Copy IOPNXMLParser.php in the checkout_by_amazon/modules/order directory to your computer.
Rename the file XMLParser.php and edit two lines.
Replace class IOPNXMLParser{ with class XMLParser{ and replace function IOPNXMLParser($xml){ with function XMLParser($xml){
I'm working on seeing if I can make a code edit to amazonorder.php so that it will no longer execute the code if the variable that determines which parser to load is empty, to just not execute the code... Make sure to upload this back in the same directory. The directory should now have three files. IOPNXMLParser, MFAXMLParser, and XMLParser
Also make sure to add in the little line I changed up above so that you don't have any errors.
Ok. I tried this and made the changes you suggested.
Now my Cron job email says:
No more 500 Internal Server error. :)--2010-09-10 01:55:02-- http://www.mbgltd.com/checkout_by_am...ion=Everything
Resolving www.mbgltd.com... xxx.xx.xx.x
Connecting to www.mbgltd.com|xxx.xx.xx.x|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: `/dev/null'
0K 53.1M=0s
2010-09-10 01:55:04 (53.1 MB/s) - `/dev/null' saved [319]
I'll finish that project tomorrow, I've made enough mistakes today!
Hi retched,
there is a reason for having these two parsers. IOPN and MFA are needed. if IOPN is not reachable from Amazon, the orders are retrieved using MFA.
so if you make changes, make sure you are addressing all the stuff.
Thank you for this fix
Just a follow up and a head's up -
I don't know if the above change is behind what I'm seeing this morning, but I can only assume it is since it looks like it started right after I made the change.
We also sell on Amazon and this morning EVERY Merchant fulfilled transaction we've had on Amazon has now shown up in our Zencart admin and is showing as pending.
I deleted the XMLParser.php file and I'm hoping that will stop this from happening.
I also contacted Seller Support to find out if I could safely delete these orders from our Zen cart. (They all show as shipped in Seller Central.)
I'll finish that project tomorrow, I've made enough mistakes today!
Ok now this is bothersome...
If you're getting the 500 server errors, I would go ahead and undo the change in the server. The 500 server error means that something stopped in the code and caused it to come to up as invalid. The only problem with this is, your cache folder will be filled up error messages from this.
.
Zen Cart - putting the dream of business ownership within reach of anyone!
Donate to: DrByte directly or to the Zen Cart team as a whole
Remember: Any code suggestions you see here are merely suggestions. You assume full responsibility for your use of any such suggestions, including any impact ANY alterations you make to your site may have on your PCI compliance.
Furthermore, any advice you see here about PCI matters is merely an opinion, and should not be relied upon as "official". Official PCI information should be obtained from the PCI Security Council directly or from one of their authorized Assessors.
I offer a local pickup option and would like to disable this option for Amazon & Google Checkout payment orders. I was thinking how to do it and need a little help in modifying the below line from the local pickup module. It simple needs to disable itself if Amazon or Google Checkout is being used as payment methods.
Here is the line in the pickup module that I believe needs to be modified to accomplish this.
Can anyone help on this?
PHP Code:
if ( ($this->enabled == true) && ((int)MODULE_SHIPPING_STOREPICKUP_ZONE > 0) ) {
I'm still getting the 500 error on my cron job, but everything seems to be passing back and forth between Seller Central and Zen like it should.
I've had another issue pop up though.
I installed CBA on another cart. Identical set up - only differences are the template and the server they are on (same host though).
The new cart I can't get the tracking to 'stick' in the Zen Admin. I add it, click submit and it throws me back out to the Order list page. The order is marked shipped, but it doesn't add the tracking number and it doesn't send the info to Amazon.
It works perfect on the first cart I installed it on.
Any ideas what could be causing this? Did I miss something?
I'll finish that project tomorrow, I've made enough mistakes today!
Bookmarks