Shopping cart empty when checkout is clicked
#21
Posted 06 August 2007 - 03:58 AM
Set "Force Cookie Use" to FALSE
To do this, go to your Admin control panel > Configuration > My Store > Sessions
I finished three Sites and all of them run great with this setting.
Please let me know if your problem was solved!
#22
Posted 10 August 2007 - 07:11 PM
Bizzidot, on Aug 6 2007, 03:58 AM, said:
Set "Force Cookie Use" to FALSE
To do this, go to your Admin control panel > Configuration > My Store > Sessions
I finished three Sites and all of them run great with this setting.
Please let me know if your problem was solved!
Worked for me, thanks!!
#23
Posted 09 October 2007 - 02:03 AM
Edited by Frozen, 09 October 2007 - 02:06 AM.
#24
Posted 16 October 2007 - 11:41 AM
Shop admin > Configuration > My store > Use Search-Engine Safe URLs (still in development) > false
Maybe thats why it says "still in development". Not quite sure why it is included at all.
Hope this helps...
#25
Posted 16 October 2007 - 12:48 PM
iwjdesigns, on Oct 16 2007, 11:41 AM, said:
Shop admin > Configuration > My store > Use Search-Engine Safe URLs (still in development) > false
Maybe thats why it says "still in development". Not quite sure why it is included at all.
Hope this helps...
#26
Posted 20 October 2007 - 02:07 AM
Frozen, on Oct 8 2007, 10:03 PM, said:
I am having the exact same problem.
When I first visit the site, I am a guest, I chose what I want to buy, and hit CHECKOUT
So then I am asked to log in, so I do, and my cart then appears to be empty.
I have tried EVERY setting and trick that has been mentioned in this thread. With no avail.
The ONLY way I can do one solid smooth purchase, is if I clear ALL my cookies, and start fresh. At that point, even after logging in for CHECKOUT, my item remains in the cart, and I can finish the purchase.
BUT, if I return one day, search the site, pick a product, when I hit CHECKOUT and it asks me to sign in, the item I JUST chose is gone from my cart, and the item I chose yesterday is in the cart now.
#27
Posted 28 October 2007 - 01:52 PM
Edited by grenian, 28 October 2007 - 02:01 PM.
#28
Posted 28 October 2007 - 06:34 PM
check out. Anyone have any ideas?
#29
Posted 29 October 2007 - 05:14 PM
Here are some things I have done.
When sessions are stored in mysql, the sessions are entered into the database. I've dropped the sessions table and verified that the session data is created. I changed to file based and I can see the file for the session being created.
I did a clean install of oscommerce rc1. It works fine with cookies. Works fine with ssl no cookies. Breaks when you have shared ssl.
My old server has:
Mandriva 2006
PHP 5.0.4
Apache 2.0.54
MySQL 4.1.12
New server has:
Mandriva 2007.1
PHP 5.2.1
Apache 2.2.4
MySql 5.0.37
I suspect it has something to do with a change in how php treats session information but I'm not sure. I'm going through the php change logs for any information that can help me tract down the problem.
I don't have the solution to this proble but maybe this info can be helpful.
#30
Posted 29 October 2007 - 08:27 PM
gdmoore, on Oct 29 2007, 01:14 PM, said:
Here are some things I have done.
When sessions are stored in mysql, the sessions are entered into the database. I've dropped the sessions table and verified that the session data is created. I changed to file based and I can see the file for the session being created.
I did a clean install of oscommerce rc1. It works fine with cookies. Works fine with ssl no cookies. Breaks when you have shared ssl.
My old server has:
Mandriva 2006
PHP 5.0.4
Apache 2.0.54
MySQL 4.1.12
New server has:
Mandriva 2007.1
PHP 5.2.1
Apache 2.2.4
MySql 5.0.37
I suspect it has something to do with a change in how php treats session information but I'm not sure. I'm going through the php change logs for any information that can help me tract down the problem.
I don't have the solution to this proble but maybe this info can be helpful.
I found the cause and solution to my problem. I hope it can help others.
The cause of the problem:
Suhosin from the hardened php project. Suhosin is an advanced protection system for PHP installations. This was installed by default for my distro.
Solution:
In the configuration file for suhosin, set suhosin.session.cryptdocroot = Off.
For my installation the location of the configuration file is:
/etc/php.d/Z99_suhosin.ini
#31
Posted 03 November 2007 - 04:31 PM
I too just recently got a shared SSL.
#32
Posted 03 November 2007 - 05:07 PM
Please help.
#33
Posted 03 November 2007 - 09:28 PM
After trying all sorts of combinations with my configure.php file I've narrowed down the the problem to a strange behavior. I'm now noticing that when I click the "check out" button after I've added several unique items to the cart and inputted my credit card information, I'm taken to the "Order Confirmation" page. However, the items on that page are not the ones I ordered. So I click anyway to see what happens. What happens is that I'm not taken to the "Finished" page, the order doesn't appear in history but what's strange is that I see the charge hit my merchant account.
Could anyone help me please. Here's the code I have on my configure.php
// Define the webserver and path parameters
// * DIR_FS_* = Filesystem directories (local/physical)
// * DIR_WS_* = Webserver directories (virtual/URL)
define('HTTP_SERVER', 'http://www.apologetics.com/'); // eg, http://localhost - should not be empty for productive servers
define('HTTPS_SERVER', 'https://secure.inetwave.com/apologetics'); // eg, https://localhost - should not be empty for productive servers
define('ENABLE_SSL', true); // secure webserver for checkout procedure?
define('HTTP_COOKIE_DOMAIN', 'www.apologetics.com');
define('HTTPS_COOKIE_DOMAIN', 'secure.inetwave.com/apologetics');
define('HTTP_COOKIE_PATH', '/catalog/');
define('HTTPS_COOKIE_PATH', '/catalog/');
define('DIR_WS_HTTP_CATALOG', '/catalog/');
define('DIR_WS_HTTPS_CATALOG', '/catalog/');
define('DIR_WS_IMAGES', 'images/');
define('DIR_WS_ICONS', DIR_WS_IMAGES . 'icons/');
define('DIR_WS_INCLUDES', 'includes/');
define('DIR_WS_BOXES', DIR_WS_INCLUDES . 'boxes/');
define('DIR_WS_FUNCTIONS', DIR_WS_INCLUDES . 'functions/');
define('DIR_WS_CLASSES', DIR_WS_INCLUDES . 'classes/');
define('DIR_WS_MODULES', DIR_WS_INCLUDES . 'modules/');
define('DIR_WS_LANGUAGES', DIR_WS_INCLUDES . 'languages/');
#34
Posted 05 November 2007 - 06:20 AM
-Harry
#35
Posted 05 November 2007 - 05:12 PM
Now my problem is that I'm unable to access my admin. Don't really know why any of this affected it. Now I need help in that area because it doesn't make sense to have a store when I can't access my admin.
-Harry
#36
Posted 05 November 2007 - 05:19 PM
harryedwards, on Nov 5 2007, 12:12 PM, said:
Now my problem is that I'm unable to access my admin. Don't really know why any of this affected it. Now I need help in that area because it doesn't make sense to have a store when I can't access my admin.
-Harry
The solution is simple
1. make sure your website is a dedicated IP
2. purchase your own SSL certificate, not using the one provided by your host
3. make sure the SSL is installed
4. change
define('HTTP_SERVER', 'http://www.apologetics.com/'); // eg, http://localhost - should not be empty for productive servers
define('HTTPS_SERVER', 'https://secure.inetwave.com/apologetics'); // eg, https://localhost - should not be empty for productive servers
to
define('HTTP_SERVER', 'http://www.apologetics.com/'); // eg, http://localhost - should not be empty for productive servers
define('HTTPS_SERVER', 'https://www.apologetics.com'); // eg, https://localhost - should not be empty for productive servers
That's what did it for me, and now i no longer have this problem
#37
Posted 08 November 2007 - 02:39 AM
Xtreme4U2NV, on Nov 5 2007, 05:19 PM, said:
1. make sure your website is a dedicated IP
2. purchase your own SSL certificate, not using the one provided by your host
3. make sure the SSL is installed
4. change
define('HTTP_SERVER', 'http://www.apologetics.com/'); // eg, http://localhost - should not be empty for productive servers
define('HTTPS_SERVER', 'https://secure.inetwave.com/apologetics'); // eg, https://localhost - should not be empty for productive servers
to
define('HTTP_SERVER', 'http://www.apologetics.com/'); // eg, http://localhost - should not be empty for productive servers
define('HTTPS_SERVER', 'https://www.apologetics.com'); // eg, https://localhost - should not be empty for productive servers
That's what did it for me, and now i no longer have this problem
It seems there are a myriad of reasons why this may happen...and I have tried every solution in the book with no success. When I click Add to Cart on any product at all, it takes me to the shopping cart with a message "Shopping Cart is Empty!" My site was working fine until I made a small change to the admin/includes/configure.php file to correct an issue with Module Options not showing...now I can't use the shopping cart!!
Made all sorts of 'fixes' to the configure.php file (one at a time, and all at once) - no luck
Register Globals is Off
SEF is Off
Have a dedicated IP and SSL
Defined cookie path, left it blank - neither worked
Tried to totally reinstall clean configure.php file and start from scratch - nope, that didnt work either
Please please, someone help figure this out! I have a deadline of 6 days to get this project live and I was right on track until this afternoon! Nothing I do is working!!
Edited by bren.g, 08 November 2007 - 02:40 AM.
#38
Posted 13 November 2007 - 05:07 PM
It's possible you won't be able to do this because it requires access to at least one of the configuration files for the Apache server.
The system I am using, I just built
It is using SuSe Enterprise server running SLES 10.1 - this would be basically the same as SuSeOpen 10.1 with this distro you get
Apache 2.2.3
PHP 5.12
mySQL
Suhosin 0.9.6
The version of os commerce I'm running is old, the reason I'm still using it is... I've highly modified the pages so they work in a winery based environment. I've also modded up the shipping module so it handles the issue of "reciprocal states" (a condition where 27 states in the US allow each other to ship wine to directly, with different legal maximums within pre-defined time periods).
The version of oscommerce I'm using is 1.2 and it was developed around when PHP4.04 was released.
I have fewer "oscommerce config tools" to help me with this.
Here is the recipe:
In the past I've used a symbolic link in the main servers directory
The doc root the MAIN SSL site was say... /web_work/sites/1webicom/http
The doc root for the subordinate site was /web_work/sites/8pkv/http
I would create a symlink from the the MAIN to the Subordinate site
an ls -l would look like this
lrwxrwxrwx 1 wwwrun www 19 Nov 11 17:40 pkv -> /web_work/8pkv/http
The configuration file would like this
define('HTTP_SERVER', 'http://www.pkv.com'); // eg, http://localhost - should not be empty for productive servers
define('HTTPS_SERVER', 'https://www.webicommerce.com/pkv'); // eg, https://localhost - should not be empty for productive servers
Everything that would occur in the HTTPS side of the transaction worked as though the directory "pkv" was nested inside the SSL doc
root.
This worked fine
***
Fast forward to the new install....
Apache doesn't allow symlinks to be used this way anymore. In fact it prohibits the following of a symlink. What it does instead... is use
"Aliases" which are hard coded symlinks.
Aliases are defined in the default-server.conf file. In my case the file is located at
/etc/apache2/default-server.conf
Open the file and edit under this part:
# We include the /icons/ alias for FancyIndexed directory listings. If you
# do not use FancyIndexing, you may comment this out.
#
Alias /icons/ "/usr/share/apache2/icons/"
<Directory "/usr/share/apache2/icons">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
##
To it add your Alias, mine would like like this:
#
Alias /pkv/ "/web_work/sites/8pkv/http/"
<Directory "/web_work/sites/8pkv/http">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
#
It knows the Alias is to be located *in* the root directory and each time it sees a call to "pkv" in the main http directory it *peers
into* the aliased path directory (/web_work/sites/8pkv/http) instead.
Since the URL request will look like "https://www.1webicom/pkv/checkout_payment.php" it serves up an SSL version of the site page
"https://www.pkv.com/checkout_payment.php".
It will present the parent site's certificate, but we're all used to this.
The next problem is maintaing the "cart state". This is really best done using sessions rather than cookies in this case, because
cookies placed are intended to be read only by the site palcing them. Oscommerce has a mechanism to get around this but it's
effectiveness depends on the vesion of oscommerce you are using. We will need to convey the cart and the cart state between the non-secude www.pkv.com and the secure www.1webicom.com/pkv site. I would have to say, "Man up, and use sessions".
To do this THERE IS A SECOND Objective you will need to overcome. Most distros are coming with the Japanese hardening shell called "Suhosin".
You will also need to locate the suhosin.ini file. In my case it's at :
/etc/php5/conf.d/suhosin.ini
Look down it and find this area:
;suhosin.session.cryptkey =
;suhosin.session.cryptua = 1
;suhosin.session.cryptdocroot = 1
;suhosin.session.cryptraddr = 0
;suhosin.session.checkraddr = 0
Change it to:
;suhosin.session.cryptkey =
;suhosin.session.cryptua = 1
suhosin.session.cryptdocroot = Off
;suhosin.session.cryptraddr = 0
;suhosin.session.checkraddr = 0
Save all changes and then restart the Apache server... in my case:
# /etc/init.d/apache2 restart
Check SSL side then it's time for a glass of wine.
Have you heard about Frank Wines? http://www.vipvr.com/frank_wines.shtml
#39
Posted 26 March 2009 - 12:35 PM
kawie95, on Mar 19 2007, 12:28 AM, said:
define('HTTP_SERVER', 'http://toneworkmediamusic.c4.ixwebhosting.com'); // eg, http://localhost - should not be empty for productive servers
define('HTTPS_SERVER', 'https://toneworkmediamusic.c4.ixwebhosting.com'); // eg, https://localhost - should not be empty for productive servers
define('ENABLE_SSL', true); // secure webserver for checkout procedure?
define('HTTP_COOKIE_DOMAIN', 'toneworkmediamusic.c4.ixwebhosting.com');
define('HTTPS_COOKIE_DOMAIN', 'toneworkmediamusic.c4.ixwebhosting.com');
define('HTTP_COOKIE_PATH', '/');
define('HTTPS_COOKIE_PATH', '/');
Nothing stays in my cart Change the:
define('HTTPS_COOKIE_DOMAIN', 'toneworkmediamusic.c4.ixwebhosting.com');
to
define('HTTPS_COOKIE_DOMAIN', 'https://toneworkmediamusic.c4.ixwebhosting.com');
i.e. the same as your server https domain, seems to work ok then.
#40
Posted 08 April 2009 - 09:36 PM
Nothing helped me, I am sorry to say.
What I finally did was to upgrade to PHP 5 and now everything works.
Hope this helps for you.
Edited by OSCProblemHunter, 08 April 2009 - 09:39 PM.









