dynamoeffects Posted November 1, 2005 Author Share Posted November 1, 2005 Kurt, you didn't install the pear modules properly. Glen, he's receiving that error because he doesn't have a state selected in his account settings. This module is very US centric. Quote Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail. Link to comment Share on other sites More sharing options...
Guest Posted November 1, 2005 Share Posted November 1, 2005 Hi Dynamo, What is the right way of installing the pear.....Can I ftp the files to my server ? Quote Link to comment Share on other sites More sharing options...
ken.yong Posted November 1, 2005 Share Posted November 1, 2005 Hi, Kurt, I got the same errors too yesterday. If you are using Dynamo's provided pear module, you need to click on the pear folder first, then you will see the catalog folder inside, then you will see the "real" pear folder you need. Copy this second pear folder onto your catalog directory. I forgot to click into the folders to get the "real" pear folder yesterday and I got the same errors. Hope this help! Ken Quote Link to comment Share on other sites More sharing options...
Guest Posted November 1, 2005 Share Posted November 1, 2005 Ken I did what you told me.. I downloaded Dynamo's pear's module and copied it into the includes folder and I am getting the same error hmmmm Quote Link to comment Share on other sites More sharing options...
dunnca Posted November 1, 2005 Share Posted November 1, 2005 Hello, I had no problems installing this module and testing it in PayPal's sandbox. However, when I switched to the live environment, test orders were being declined in osCommerce even though payments were received through PayPal. I edited the $timeout variable in catalog/pear/Services/PayPal/SOAP/Transport/HTTP.php and now the order is processed in both osCommerce and PayPal, but the checkout_success page is blank. Any ideas? Quote Link to comment Share on other sites More sharing options...
dynamoeffects Posted November 1, 2005 Author Share Posted November 1, 2005 Kurt, put them in: /catalog/ So you should have a diretory called /pear/ with all your modules in them. It doesn't matter where you put them, make sure the location is correct in the module's configuration panel. Colin, open /catalog/includes/modules/payment/paypal_wpp.php and change the line: $this->enableDebugging = '0'; to: $this->enableDebugging = '1'; Then do another test order and email me the vardump that it sends back. It shouldn't send back any personal information, so don't worry about that. Quote Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail. Link to comment Share on other sites More sharing options...
Guest Posted November 1, 2005 Share Posted November 1, 2005 Hey Dynamo, I did what you told me and the following errors can up Warning: main(PEAR.php): failed to open stream: No such file or directory in /var/www/html/pear/Services/PayPal.php on line 11 Fatal error: main(): Failed opening required 'PEAR.php' (include_path='/var/www/html/pear/:.:/php/includes:/usr/share/php') in /var/www/html/pear/Services/PayPal.php on line 11 Thanks for you continuous help -Kurt Quote Link to comment Share on other sites More sharing options...
ken.yong Posted November 1, 2005 Share Posted November 1, 2005 (edited) Hi, Kurt, Go to the Admin screen where you install your new WPP module. Go down to where you adjust the location Pear Modules: If you installed the included pear modules, where are they stored? Should be: /var/www/html/pear/ Leaving this blank will use the server's default include path. (Like Dynamo said, it doesn't matter where you put them, make sure the location is correct in the module's configuration panel.) The module has correctly identified the path. However, I just copied whatever is showing there, in this case /var/www/html/pear/ into the box below anyway. Click "Update". I encountered the same error and this is my novice way of resolving things. Hopefull it works out. Ken Edited November 1, 2005 by ken.yong Quote Link to comment Share on other sites More sharing options...
djmonkey1 Posted November 1, 2005 Share Posted November 1, 2005 Hey Dynamo, I did what you told me and the following errors can up Warning: main(PEAR.php): failed to open stream: No such file or directory in /var/www/html/pear/Services/PayPal.php on line 11 Fatal error: main(): Failed opening required 'PEAR.php' (include_path='/var/www/html/pear/:.:/php/includes:/usr/share/php') in /var/www/html/pear/Services/PayPal.php on line 11 Thanks for you continuous help -Kurt I had a question about this myself- my way of solving it was uploading the file PEAR.php which I happened to have lying around and which I noticed is not included with the pear files that come with this contribution. Line 11 of Services/PayPal.php reads require_once 'PEAR.php'; so I don't think I'm imagining this. But not too many people have had a problem with this? I don't know what's up here. Quote Do, or do not. There is no try. Order Editor 5.0.6 "Ultra Violet" is now available! For support or to post comments, suggestions, etc, please visit the Order Editor support thread. Link to comment Share on other sites More sharing options...
ken.yong Posted November 1, 2005 Share Posted November 1, 2005 Also, for those hosting with GoDaddy, here is the link that can help to resolve the proxy issue: http://help.godaddy.com/article.php?article_id=288&topic_id It should contain all the info you need to adjust your proxy settings. <? $URL="https://www.paypal.com"; if (isset($_GET["site"])) { $URL = $_GET["site"]; } $ch = curl_init(); echo "URL = $URL <br>\n"; curl_setopt($ch, CURLOPT_VERBOSE, 1); //curl_setopt ($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE); curl_setopt ($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); curl_setopt ($ch, CURLOPT_PROXY,"http://64.202.165.130:3128"); curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt ($ch, CURLOPT_URL, $URL); curl_setopt ($ch, CURLOPT_TIMEOUT, 120); $result = curl_exec ($ch); echo "<hr><br>\n"; echo 'Errors: ' . curl_errno($ch) . ' ' . curl_error($ch) . '<br><br>'; echo "<hr><br>\n"; curl_close ($ch); print "result - $result"; echo "<hr><br>\n"; ?> Quote Link to comment Share on other sites More sharing options...
dunnca Posted November 1, 2005 Share Posted November 1, 2005 I had a question about this myself- my way of solving it was uploading the file PEAR.php which I happened to have lying around and which I noticed is not included with the pear files that come with this contribution. I had to do the same thing. Quote Link to comment Share on other sites More sharing options...
seanjohnson Posted November 1, 2005 Share Posted November 1, 2005 Also, for those hosting with GoDaddy, here is the link that can help to resolve the proxy issue: http://help.godaddy.com/article.php?article_id=288&topic_id It should contain all the info you need to adjust your proxy settings. <? $URL="https://www.paypal.com"; if (isset($_GET["site"])) { $URL = $_GET["site"]; } $ch = curl_init(); echo "URL = $URL <br>\n"; curl_setopt($ch, CURLOPT_VERBOSE, 1); //curl_setopt ($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE); curl_setopt ($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); curl_setopt ($ch, CURLOPT_PROXY,"http://64.202.165.130:3128"); curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt ($ch, CURLOPT_URL, $URL); curl_setopt ($ch, CURLOPT_TIMEOUT, 120); $result = curl_exec ($ch); echo "<hr><br>\n"; echo 'Errors: ' . curl_errno($ch) . ' ' . curl_error($ch) . '<br><br>'; echo "<hr><br>\n"; curl_close ($ch); print "result - $result"; echo "<hr><br>\n"; ?> I saw this information also on godaddy, and I put a test page in that runs the above code. That works just fine. However, when I put the additional curl_setopt calls in HTTP.php for this contrib, I go to check out (or click the EC button), and I just get a blank page (very quickly) - it is definitely doing something different than when I just have the stock HTTP.php, but still no luck getting past the blank page issue. Ken (or anyone else), are you using godaddy? If so, did you put these settings in? Where did you put them? My theory is that instead of hard-coding in the curl_setopt for PROXY, the proxy_host and proxy_port have to be set in variables such that they are available in other areas of the code. I haven't been able to figure out how to set $options['proxy_host'] and $options['proxy_port']... Sean Quote ----------------- Sean Johnson Link to comment Share on other sites More sharing options...
webman48 Posted November 2, 2005 Share Posted November 2, 2005 Hi, I'm getting the following error message only when I click on a category or product link. Error! Unable to determine the page link! Has anyone else gotten this message? Quote Link to comment Share on other sites More sharing options...
djmonkey1 Posted November 2, 2005 Share Posted November 2, 2005 I had to do the same thing. Ha! I'm not the only one! Brian? Hi, I'm getting the following error message only when I click on a category or product link. Error! Unable to determine the page link! Has anyone else gotten this message? I can't see how this problem has anything to do with this contribution. Quote Do, or do not. There is no try. Order Editor 5.0.6 "Ultra Violet" is now available! For support or to post comments, suggestions, etc, please visit the Order Editor support thread. Link to comment Share on other sites More sharing options...
seanjohnson Posted November 2, 2005 Share Posted November 2, 2005 Okay, I finally figured out the Proxy settings!! For godaddy hosted sites (or any site that requires use of a proxy server for curl), you must set the curl proxy options in order to get this contribution to work. I found this information on the paypal developer forums: You should not modify the HTTP.php file. The correct code to set the variables without messing with the original file is by calling the function that sets the variables for you. Do the following: /* this is the instance of your caller object */ $caller =& Services_PayPal::getCallerServices($profile); //Create a caller object /* set the parameters with the setOpt('curl', option, value); */ /* set the proxy type */ $caller->setOpt('curl', CURLOPT_PROXYTYPE, CURLPROXY_HTTP); /* set proxy in the format: "http(s)://host:port" - specify the protocol http or https - the host may be a string or an ip - proxy port is optional (default 8080) */ $caller->setOpt('curl', CURLOPT_PROXY, "http://64.202.165.130:3128"); /* set verifyeer ssl sertificate true/fralse */ $caller->setOpt('curl', CURLOPT_SSL_VERIFYPEER, FALSE); /* set the timeout time in seconds */ $caller->setOpt('curl', CURLOPT_TIMEOUT, time); Instead of changing the file, use the method. Based on this recommendation, I modified paypal_wpp.php as follows... Before: $caller =& Services_PayPal::getCallerServices($profile); //Create a caller object. Ring ring, who's there? After: $caller =& Services_PayPal::getCallerServices($profile); //Create a caller object. Ring ring, who's there? $caller->setOpt('curl', CURLOPT_PROXYTYPE, CURLPROXY_HTTP); $caller->setOpt('curl', CURLOPT_PROXY, "http://64.202.165.130:3128"); $caller->setOpt('curl', CURLOPT_SSL_VERIFYPEER, FALSE); $caller->setOpt('curl', CURLOPT_TIMEOUT, 60); Once I do this, everything seems to be working for me. I still have more testing to do, but this seems to solve my timeouts and blank page issues. Hope this helps save someone else some time. Thanks, Sean By the way, great contribution - thank you Quote ----------------- Sean Johnson Link to comment Share on other sites More sharing options...
SteveDallas Posted November 2, 2005 Share Posted November 2, 2005 Glen, he's receiving that error because he doesn't have a state selected in his account settings. This module is very US centric. Then I'm going to have to look at it more closely, as a large percentage of my customers live outside the US. All transactions are in US Dollars, though, so it shouldn't be an issue. In any case, there should be a definition for MODULE_PAYMENT_PAYPAL_DP_TEXT_STATE_ERROR in the language file. --Glen Quote Link to comment Share on other sites More sharing options...
dynamoeffects Posted November 2, 2005 Author Share Posted November 2, 2005 (edited) Then I'm going to have to look at it more closely, as a large percentage of my customers live outside the US. All transactions are in US Dollars, though, so it shouldn't be an issue. Post what he has entered for a state in his account. PayPal requires a two letter state/prov/region, so the code will take whatever state is in $orders->billing['state'] and try to find the two letter equivalent. If a match is not found, it generates that error. It could just be that he mistyped his state/province/region name and it couldn't find that location. As that zone table is pretty comprehensive, I can't imagine that his location isn't in there. In any case, there should be a definition for MODULE_PAYMENT_PAYPAL_DP_TEXT_STATE_ERROR in the language file. Glad you caught that. It's already fixed in the inevitable v0.6. :-" Until then, you can put this in your /catalog/includes/languages/english/modules/payment/paypal_wpp.php file: define('MODULE_PAYMENT_PAYPAL_DP_TEXT_STATE_ERROR', 'The state assigned to your account is not valid. Please go into your account settings and change it.'); Ha! I'm not the only one! Brian? I'm guessing that my server already had a base set of PEAR modules installed and your servers don't. Is that PEAR.php file the only one that seems to be missing? Edited November 2, 2005 by dynamoeffects Quote Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail. Link to comment Share on other sites More sharing options...
dynamoeffects Posted November 2, 2005 Author Share Posted November 2, 2005 (edited) $caller =& Services_PayPal::getCallerServices($profile); //Create a caller object. Ring ring, who's there? $caller->setOpt('curl', CURLOPT_PROXYTYPE, CURLPROXY_HTTP); $caller->setOpt('curl', CURLOPT_PROXY, "https://64.202.165.130:3128"); $caller->setOpt('curl', CURLOPT_SSL_VERIFYPEER, FALSE); $caller->setOpt('curl', CURLOPT_TIMEOUT, 60); Thanks, I'll put it into the codebase. Be sure to change "http" to "https" though. Edited November 2, 2005 by dynamoeffects Quote Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail. Link to comment Share on other sites More sharing options...
djmonkey1 Posted November 2, 2005 Share Posted November 2, 2005 I'm guessing that my server already had a base set of PEAR modules installed and your servers don't. Is that PEAR.php file the only one that seems to be missing? My server has a base set of PEAR modules installed, but it's outside of my catalog tree and I don't really have access to it. Since it doesn't include the PayPal SDK stuff, for simplicity I uploaded the PEAR modules to my catalog folder. As for missing files in the pear tree (ha!), that's the only one that I've noticed. Quote Do, or do not. There is no try. Order Editor 5.0.6 "Ultra Violet" is now available! For support or to post comments, suggestions, etc, please visit the Order Editor support thread. Link to comment Share on other sites More sharing options...
meandleo Posted November 2, 2005 Share Posted November 2, 2005 Yeah, I could swear I included the 0.2 patch, but apparently didn't. Download the 0.2 patch or download version 0.4 that I just uploaded. paccoral, you didn't set the path to your pear files or the path to your certificate is incorrect. I just re-installed version 0.5 - had it working before but got a new domain name - and now when I go to create an account, fill in all the required info, and click on the continue button, the create account page just loads again like new. No errors, no notification of account created, etc. I tried logging in, but the account was not created. Do I need a newer version of the create account file? Is there some other setting in admin I need to change? Thanks in advance! Quote Link to comment Share on other sites More sharing options...
Sid04 Posted November 2, 2005 Share Posted November 2, 2005 Finally got time to install this beast this morning. Ran into some problem.....gonna go back through the posts here and see if I find a fix but also post here: Using SANDBOX. Direct checkout seems to work fine. Express checkout doesnt work at all. Here's whats happening: If you login to your account in OSC first and then opt to use EC, I get the following error: An error occured when we tried to process your credit card. Transaction cannot complete. The transaction cannot complete successfully. Instruct the customer to use an alternative payment method. (10417) If I add items to OSC and then opt to checkout using EC/PAYPAL without having an existing account in the OSC store.....first I get this error on the order confirmation page in the delivery address section(where the customers address should be): Warning: htmlspecialchars() expects parameter 1 to be string, array given in /home/mydomain/public_html/catalog/includes/functions/general.php on line 43 and then this error after attempting order completion: An error occured when we tried to process your credit card. Shipping Address Invalid City State Postal Code A match of the Shipping Address City, State, and Postal Code failed. (10736) The above happens if the paypal accounts city/town i spelled wrong in relation to the zip code. After I corrected the address in the sandbox paypal account I still get the "Warning: htmlspecialchars() expects parameter 1 to be string, array given in /home/mydomain/public_html/catalog/includes/functions/general.php on line 43" error, but then gives me a different one when attempting order completion: An error occured when we tried to process your credit card. Transaction cannot complete. The transaction cannot complete successfully. Instruct the customer to use an alternative payment method. (10417) Also worth noting......no way that I have attempted yet has successfully added the customers state abbreviation into the created OSC customer account when using the express checkout method. When viewing the new account created in the admin section, the new users STATE box is blank. Now on to a couple minor questions. Why is the paypal option on the delivery confirmation page? My understanding was that the paypal method had to be offered BEFORE the customer was forced to enter their info into the store. Since the customer already would have supplied their info in order to have an account and login.....why have the paypal option on the delivery confirmation page and not just on the payment option page? Honestly, I think it looks rather poor on this page. Also, It would be better to have teh paypal option on the payment page(if opted to use it in the admin section) to be in a seperate box. I think its confusing having it in the same box as the direct payment boxes. Can the following statements be modified without violating paypal TOS? Fast, Secure Checkout with PayPal Save time. Checkout securely. Pay without sharing your financial information. IMO it underminds the security of YOUR store, making it sound as if the store itself isnt secure unless you use paypal payment method. Thanks for any and all help! :thumbsup: Quote Link to comment Share on other sites More sharing options...
Guest Posted November 2, 2005 Share Posted November 2, 2005 where do I find the pear.php file ? -Kurt Quote Link to comment Share on other sites More sharing options...
Sid04 Posted November 2, 2005 Share Posted November 2, 2005 well, here's pretty much my one issue I noticed.....but there was never a solution given anywhere. http://www.oscommerce.com/forums/index.php?sho...75entry728375 Quote Link to comment Share on other sites More sharing options...
djmonkey1 Posted November 2, 2005 Share Posted November 2, 2005 Can the following statements be modified without violating paypal TOS? Fast, Secure Checkout with PayPal Save time. Checkout securely. Pay without sharing your financial information. Not that I know of. Those statements come directly from on high. But if you change them, who will know? You can add the word "secure" to the description of your other options. Quote Do, or do not. There is no try. Order Editor 5.0.6 "Ultra Violet" is now available! For support or to post comments, suggestions, etc, please visit the Order Editor support thread. Link to comment Share on other sites More sharing options...
support01 Posted November 2, 2005 Share Posted November 2, 2005 First, let me say you guys are doing a great jub supporting this contrib. It is appreicated! (has to be said, at least, I have read through this board for two days great info) Unfortunately, I have not been about to resolve my current error: An error occured when we tried to contact PayPal's servers. () I have set my timeout setting to 600 I have downloaded my cert from Pay Pal I have uploaded my cert to /catalog/includes/modules/payment/wpp_cert/ I have verified in the module that the path to the cert is correct I have entered in my API username and API password, which is of course different from the reg PayPal UN and PW Currently I am working in the live environment. And I get the error when I click the express checkout, direct payment does not go to paypal either. Are there any steps I left out or missed? I feel like I am so close. Any help would be great! P.S. I had to download pear.php and upload it separately as well. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.