wartpro Posted September 12, 2013 Share Posted September 12, 2013 Hello everyone, I'm new to this forum and I am a developer. I have a shop with Prestashop (v. 1.5.3.1) and I really can't figure out what's goin on with this shop. The problem is the 5 steps checkout process, using paypal (with express checkout activated). But first let me tell you that if I use the 1 step checkout process, everything goes fine. Obviously, as in several links on the web recommend to mitigate this issue, that's not the solution I want (and I have to) choose. With the 5 steps checkout process, that's the workflow: 1) Login on the frontend as a registered customer 2) Add a product to the cart 3) Go on the checkout process 4) Rewiew the cart (checkout process step 1) 5) Choose the delivery address (checkout process step 2) 6) Choose the carrier: there is (and there will be) only one carrier and it's free. (checkout process step 3) 7) Final step: choose the payment method and choose PayPal, but not by clicking on the annoying paypal image, but on the "in shop" paypal icon. (checkout process step 4) 8) We are redirected on paypal page: insert all needed data (as a unregistered paypal user) and submit. ... 9) After being redirected back to the shop, the shop shows (with developer mode activated, sql bla bla activated and all other debugging stuffs activated) a PDO exception (2 identical errors): Warning: PDO::query() [pdo.query]: SQLSTATE[HY093]: Invalid parameter number: mixed named and positional parameters in {path}/classes/db/DbPDO.php on line 81 AND after these two lines the following errors appears: Warning: Invalid argument supplied for foreach() in {path}/classes/Cart.php on line 2347Warning: Invalid argument supplied for foreach() in {path}/classes/Cart.php on line 2410 --- Now, note that after issuing the error, Prestashop will show in every page the warning of the foreach. I have investigated and I noted that in the database, in "ps_cart" table and in "delivery_address" column, there are some php-serialized strings that reports the following value: a?:{i?;s? ... } AFAIK, the "?" symbol is crucial in PDO. So I think that MAYBE this is going to cause the error...maybe. An other thing to note is that the foreach warning receives (after tried to buy the product) a *false* value coming from the *Tools::unserialize( $blabla )*. Now, the main questions: What is goin'on on the whole shop that's causing the error? Why the 1 step checkout process works and why the 5 step checkout process doesn't? Is that serialize/unserialize stuff that isn't working? Thanks in advance. W Link to comment Share on other sites More sharing options...
Nsyem Posted March 3, 2014 Share Posted March 3, 2014 Hi i have the same problem as you ,any help would be greatly appreciated Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now