Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

muskokee

Archived
  • Posts

    263
  • Joined

  • Last visited

Everything posted by muskokee

  1. Hi Terry, I'm glad you sorted the processing problem out. Everytime you get to checkout_confirmation a order is "pre-registered" in the database. If you check the database there will actually be 2 rows for each order, one blank and one populated (if the order was attempted at paypal). They will have 2 different order_history_status_ids but the same order number. If there was a problem or the customer backed out and left, then only the blank order will remain. Best, Sheri
  2. This is what I did, I hardcoded the address into the application top require: http://myaddress.com...... Then I put an email right after it. I got that email. Then I put an email inside EVERY if or else statement. I confirmed it was accessing the sandbox, cURL, that the parameters were verified and that the order number was correct. It was the call to the database that created the fatal error in app top because it cannot access configure.php properly from within the ext structure. The fatal error was located in an error log within the includes file where configure and application_top reside. After I fixed the chdir then all worked fine and I got the rest of the emails scattered throughout the file, and my order status was updated. Have you checked the .htaccess in the includes folder? I know that it is not supposed to make a difference, but do you have register globals On or Off? From PHP 4.2> register globals are automatically Off for security. I used to have the other IPN contrib installed but it "stopped" working for some reason and I couldn't figure it out why, so I installed this one that has greater support. But thinking back, there seems to be a correlation between the update of PHP offered by my host and IPN ceasing (I had stopped testing when I knew it worked!). Not sure what else to suggest. Sheri
  3. The PayPal Verified status has been updated by paypal (verified with amount can only come from Paypal). Hardcoded into the file is a "no notify" for the completed status, so that is also correct. You have one more additional status than I do - shipped (you must change this yourself?) If you always get "Processing" before your verified tag, then there is something wrong with that, unless it has been hardcoded into your file - check about line 111 in ipn.php for an array value of 'PayPal IPN Verified[' . $comment_status . ']'. If the word Processing is also there just remove it. If not then I don't have a guess. All in all your ipn seems to be working. Well, as far as I can tell after combing these files for two days!!LOL Sheri P.S. you can check your error logs for anything strange around 6/23 at the time of the test for what might have happened there.
  4. Hi Steve, As Terra explained it to me, the chdir is climbing out of the /ext/ folder structure towards the root in order to find app_top. So, my test site is in a folder in my root, so I needed to climb 4 (../../../../) levels to get to the "catalog" folder. If you have your shop in the root, then I would guess it would be 3 levels. HTH, Sheri
  5. I am about ready to jump for JOY (w00t) (w00t) It WORKS!!! So, everything I implemented so far...register globals, the shopping cart patch, allowing paypal to access the includes file and the final nail in the coffin of my IPN troubles was correctly using the chdir('../../../../'); at the beginning of the ipn.php file. While hardcoding the location of application top got me my debugging emails, it caused errors that were hidden in an error log and did not show up in my host's log. Once I discovered the error log in question, it let me know that although paypal was accessing ipn.php and initializing application_top.php...app_top was failing on the first require. PayPal IPN along with downloads controller works a treat at providing access to downloadable products when *actually* paid for and denying when not, or when bailing out of paypal at the last moment. Thank-you to this forum, thread and most importantly to Terra for taking the time to help a soul in need o:) Best, Sheri P.S. I hope to never see this thread again :P
  6. Just thought I would direct anyone else having problems getting this or any other contrib running to the debugging code that I inserted to discover that there was no order_id when retrieving the order from the database: http://www.oscommerce.com/forums/index.php?s=&...st&p=469630 and http://www.oscommerce.com/forums/index.php?s=&...st&p=681270
  7. UPDATE ON MY ISSUES! I installed the register globals patch (not needed to run this mod, but thought I would be secure anyway). This patch actually allowed me to receive an error message that was causing problems. There is an .htaccess within my includes file that was denying paypal access to application_top. My host advises this .htaccess is unnecessary, but I decided to keep it and allow only paypal access. adding "Allow from (paypal IP here)" brought my success with ipn.php all the way to this line in the file: if (isset($_POST['invoice']) && is_numeric($_POST['invoice']) && ($_POST['invoice'] > 0)) { which then failed :( But I am on my way!!! I also implemented this shopping cart patch as I discovered through a debugging code that when retreiving cart contents from the database there is no order_id. Sheri
  8. Thank you Terra for all your help. I sent you a PM. If I find the solution to my problem with this contrib I will post it in the thread. Sheri
  9. Hi Terra, Thanks once again for the info. I thought it must have been something like that (sorry to ask here, I usually google everything). I checked my errorlogs, both on the server (Apache) and scattered throughout the directory :blush: There are no fatal errors with regard to application top, or anything to do with the transaction (just a couple missing images). Not sure about "safe-mode". The test area I set up is a subdomain (I hope this is how I was supposed to set it up). I'll query my host about "safe". I have adjusted the chdir to reflect the number of folders needed to climb to get to application top. From your great link the directory looks like: home/user/public_html/test/catalog/includes/ translated to be ../../../../../../ , which is how it is now set up. I need to take a break now but I'll check back later to delve into the thread and/or see if you have any other notions ;) Sheri
  10. That's the address of paypal. The $server variable inserts your choice: live or sandbox. Sheri
  11. Hi Terra, Thanks for all the help!! The $_SESSION fix did not work for me either :( I installed the DEBUG ipn.php file and received only the first email indicating that the file had been correctly accessed. I inserted another email here: } else { // let's see if the PayPal result is not "Verified" mail($debugemail, 'Debug Test', 'PayPal has incorrectly verified each parameter'); // end if (tep_not_null(MODULE_PAYMENT_PAYPAL_IPN_DEBUG_EMAIL)) { but did not receive this email. So, started inserting emails at each line :lol: It didn't even get past "require application_top" :blink: Could anyone explain this line and it's purpose?: chdir('../../../../'); Sheri
  12. Hi Terra, Thank you very much for helping to support this contribution :thumbsup: I am having some similar problem with the order status not updating. From the questions you have asked others: The order is "prepared" in the admin section at checkout_confirmation. My IPN and redirects are turned off in my paypal account. I adjusted the location of the ipn.php file in paypal_ipn.php as I am running on a test site. My 'id=""' is empty on page source after the payment is made. My admin is updated on return from paypal but not on payment while still on paypal. The ordernumber is recorded on both paypal emails and checkout_process emails. I have implemented the "letter" fix for "this invoice has already been paid" problem, and this is working correctly as the paypal email retains the letter before the invoice# and the checkout_process email has the letter stripped. I have download controller installed and have transfered the one line : 'last_modified' => 'now()', that is changed in checkout_process.php over to paypal_ipn.php. The order is properly displaying in the customers account, it just never changes from "preparing"! I do not get the INVALID email. So, everything appears to be working up to a point. I am just not sure which point. I also need help with how to add emails at various points in the ipn.php to debug the location of the failure. Thanks again for your support :) :) Sheri
  13. Not sure if it's lazy, but I sure would'nt want to keep on clicking links with nothing to show for it! I've created this code to hide the link letters which have no products: in allprods.php find: <td align="center" class="smallText"><?php $firstletter_nav= '<a href="' . tep_href_link("allprods.php", 'fl=A', 'NONSSL') . '"> A |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=B', 'NONSSL') . '"> B |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=C', 'NONSSL') . '"> C |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=D', 'NONSSL') . '"> D |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=E', 'NONSSL') . '"> E |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=F', 'NONSSL') . '"> F |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=G', 'NONSSL') . '"> G |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=H', 'NONSSL') . '"> H |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=I', 'NONSSL') . '"> I |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=J', 'NONSSL') . '"> J |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=K', 'NONSSL') . '"> K |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=L', 'NONSSL') . '"> L |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=M', 'NONSSL') . '"> M |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=N', 'NONSSL') . '"> N |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=O', 'NONSSL') . '"> O |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=P', 'NONSSL') . '"> P |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=Q', 'NONSSL') . '"> Q |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=R', 'NONSSL') . '"> R |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=S', 'NONSSL') . '"> S |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=T', 'NONSSL') . '"> T |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=U', 'NONSSL') . '"> U |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=V', 'NONSSL') . '"> V |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=W', 'NONSSL') . '"> W |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=X', 'NONSSL') . '"> X |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=Y', 'NONSSL') . '"> Y |</A>' . '<a href="' . tep_href_link("allprods.php", 'fl=Z', 'NONSSL') . '"> Z</A> ' . '<a href="' . tep_href_link("allprods.php", '', 'NONSSL') . '"> FULL</A>'; echo $firstletter_nav; ?></td> and replace with: <td align="center" class="smallText"> <? $A=0; $B=0; $C=0; $D=0; $E=0; $F=0; $G=0; $H=0; $I=0; $J=0; $K=0; $L=0; $M=0; $N=0; $O=0; $P=0; $Q=0; $R=0; $S=0; $T=0; $U=0; $V=0; $W=0; $X=0; $Y=0; $Z=0; $prod_first_lett = tep_db_query("select p.products_id, pd.products_name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = pd.products_id order by pd.products_name"); while ($prod_display = tep_db_fetch_array($prod_first_lett)){ $prod_letter = $prod_display['products_name']; switch (($prod_letter{0})){ case A: $A++; continue 2; case B: $B++; continue 2; case C: $C++; continue 2; case D: $D++; continue 2; case E: $E++; continue 2; case F: $F++; continue 2; case G: $G++; continue 2; case H: $H++; continue 2; case I: $I++; continue 2; case J: $J++; continue 2; case K: $K++; continue 2; case L: $L++; continue 2; case M: $M++; continue 2; case N: $N++; continue 2; case O: $P++; continue 2; case Q: $Q++; continue 2; case R: $R++; continue 2; case S: $S++; continue 2; case T: $T++; continue 2; case U: $U++; continue 2; case V: $V++; continue 2; case W: $W++; continue 2; case X: $X++; continue 2; case Y: $Y++; continue 2; case Z: $Z++; continue 2; } } if ($A>0) { echo '<a href="' . tep_href_link("allprods.php", 'fl=A', 'NONSSL') . '"> A |</A>'; } if ($B>0) { echo '<a href="' . tep_href_link("allprods.php", 'fl=B', 'NONSSL') . '"> B |</A>'; } if ($C>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=C', 'NONSSL') . '"> C |</A>'; } if ($D>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=D', 'NONSSL') . '"> D |</A>'; } if ($E>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=E', 'NONSSL') . '"> E |</A>'; } if ($F>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=F', 'NONSSL') . '"> F |</A>'; } if ($G>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=G', 'NONSSL') . '"> G |</A>'; } if ($H>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=H', 'NONSSL') . '"> H |</A>'; } if ($I>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=I', 'NONSSL') . '"> I |</A>'; } if($J>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=J', 'NONSSL') . '"> J |</A>'; } if ($K>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=K', 'NONSSL') . '"> K |</A>'; } if ($L>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=L', 'NONSSL') . '"> L |</A>'; } if ($M>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=M', 'NONSSL') . '"> M |</A>'; } if ($N>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=N', 'NONSSL') . '"> N |</A>'; } if ($O>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=O', 'NONSSL') . '"> O |</A>'; } if($P>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=P', 'NONSSL') . '"> P |</A>'; } if ($Q>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=Q', 'NONSSL') . '"> Q |</A>'; } if ($R>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=R', 'NONSSL') . '"> R |</A>'; } if ($S>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=S', 'NONSSL') . '"> S |</A>'; } if ($T>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=T', 'NONSSL') . '"> T |</A>'; } if ($U>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=U', 'NONSSL') . '"> U |</A>'; } if ($V>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=V', 'NONSSL') . '"> V |</A>'; } if ($W>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=W', 'NONSSL') . '"> W |</A>'; } if ($X>0 ) { echo'<a href="' . tep_href_link("allprods.php", 'fl=X', 'NONSSL') . '"> X |</A>'; } if ($Y>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=Y', 'NONSSL') . '"> Y |</A>'; } if ($Z>0) { echo'<a href="' . tep_href_link("allprods.php", 'fl=Z', 'NONSSL') . '"> Z |</A>' ; } echo '<a href="' . tep_href_link("allprods.php", '', 'NONSSL') . '"> FULL</A>'; ?></td> Not sure if this will bog down sites with many products or not, as the code goes through EACH product to test the first letter in the name. I don't have that many products so I cannot test it on a full catalog. This adds one db query to the mix. I know this way is not ideal so any suggestions or modifications are WELCOME!! Sheri
  14. SOLVED IT!!! So, if this happens to anyone else this is what worked for me. It was that darn 'tep_get_prid' function! It was stripping the attributes from the product_id in the $wishlist query so that it was only passing the product id (29) and not the options(1) and attributes (15). Here is the line (about 141) $wishlist_id = tep_get_prid($wishlist['products_id']); Change to $wishlist_id = $wishlist['products_id']; Works like a charm now!! Thanks for being my sounding board guys! :thumbsup: I think I'll leave the public redirect to itself. I like the "Item In Cart" idea :P Sheri
  15. OK, so I have added the "debugging" code from this post in this thread. I redirected my wishlist public back to my wishlist public passing the public id along with the redirect like so: if (isset($HTTP_POST_VARS['add_wishprod'])) { if(isset($HTTP_POST_VARS['add_prod_x'])) { foreach ($HTTP_POST_VARS['add_wishprod'] as $value) { $product_id = tep_get_prid($value); $cart->add_cart($product_id, $cart->get_quantity(tep_get_uprid($product_id, $HTTP_POST_VARS['id'][$value]))+1, $HTTP_POST_VARS['id'][$value]); } tep_redirect(tep_href_link(FILENAME_WISHLIST_PUBLIC, 'public_id='.$public_id)); } } When I first open the public file from the link provided in the email I get this debugging at the top: When I "add to cart" I get this at the top: GET-> public_id = 1 the exact same thing! BUT when I do the same thing with my regular wishlist: On prod_info.php after selecting "add to wishlist" GET-> products_id = 29 Then after adding to the cart from wishlist: POST-> prod_link = Array POST-> prod_name = Array POST-> id = Array POST-> prod_att = Array POST-> add_wishprod = Array POST-> add_prod_x = 53 POST-> add_prod_y = 21 POST-> add_prod = add_prod POST-> your_name = POST-> your_email = POST-> friend = Array POST-> email = Array POST-> message = My regular wishlist works just fine, passing the product attributes etc. Not sure why nothing seems to be passing through $_POST on wishlist_public add to cart. BTW there was a discussion on this thread before about the x and y variables and what they meant. I believe they are the coordinates of where the mouse was triggered. I'll keep plugging away. :D Sheri
  16. I've had a look at the db and this code from the attributes section of the public file: // We now populate $id[] hidden form field with product attributes echo tep_draw_hidden_field('id['.$wishlist['products_id'].']['.$wishlist_products_attributes['po'].']', $wishlist_products_attributes['pov']); My db records the product id *with* the attributes attached. So the product_id in wishlist table is not just '29' but '29{1}15'. so the hidden field would produce: ''name=29{1}151 value=15", which is definately not a product in my catalog! How to rectify this? Sheri
  17. Hi Dennis et al, First off I LOVE this contribution. :wub: It is fabulous that even a visitor can email their wishlist to others or themselves to remember what items they have viewed and are interested in, with no space taken up on the db! The wishlist 3.5 is working perfectly, well almost. :blush: I have changed a couple of things that were needed to clear the list upon checkout and to pass the public id to the email. My issue is the wishlist_public.php. The product attributes are visable in the list, the item gets added to cart but the attribute values are not passed to the cart. Is there a fix for this that I have not found yet? Thanks very much. :thumbsup: Sheri
  18. Hi Rui, If you haven't solved the html "not valid" problem with image magic yet then here is the solution: replace the suspect code you quoted below with: //Return the html $image = '<img src="imagemagic.php?img='.$src.'&w='. tep_output_string($width).'&h='.tep_output_string($height).'&page='.$page.'"'; W3C returns no errors from imagemagic with this change. Sheri
  19. I've discovered the advanced cache class!! I have successfully cached an array as well as simple text in the form of my graphic header which doesn't ever seem to "load" anymore..it's just "there" all the time! BEAUTIFUL! I have created a template from my design and a modified BTS in order to cache it (a lot of background graphics). I have php within the template..requires and such. Reading Chemo's install instructions each separate form of data to be cached has a certain identifier as to the content of the cache, i.e. EVAL, RETURN,ARRAY. Q's? How can I cache my template in one cache file while still maintaining the if's and requires that are embeded into the design to be cached? I have tried to "skip" the code and append the simple html into one string, but this has thrown off my design. I set up a new page and cached each section of the design separately but that ended with 7 cached files which bumped up my queries and hindered more than it helped. :( Is there an identifier that uses EVAL and RETURN together? Or is there another way to do this? Thanks for reading :thumbsup: and for any insight you might offer :blush: Sheri
  20. This is a link to the Open Featured Sets Support thread where Todd helped me integrate New Products Icon into my featured sets. If you want to use the modification please read the entire exchange between myself and Todd. New Products Icon/Open Featured Sets Integration
  21. Hi Jared et. all! I am having trouble with this contribution in combination with all_prods.php. I have added the p.products_date_added to the query but am still coming up with this result: Warning: strtotime() [function.strtotime]: Called with an empty time parameter. in /home/*****/public_html/catalog/includes/modules/product_listing.php on line 40 From another integration I know this is because the date added is not being read (usually the p.products_date_added field). There must be some addition I am missing in the allprods module. Has anyone solved this yet (all prods is popular!) or are you willing/able to assist?? Thanks :thumbsup: :thumbsup: Sheri
  22. Sorry it took sooo long to get back! (Lost the thread :-" ) The contribution support for "New Products Icon" contribution. I ran across it the other day and I saw that there were post regarding integration of the contribution with other product contributions, but nothing on Open Featured Sets. I thought it might be nice to post the info there in case someone else wanted the "new icon" to be displayed with their featured sets. Let me know :thumbsup: Sheri
  23. Thanks Mark! It's really difficult to tell whether spiders are picking up the sids as different simulators return different results. This simulator ALWAYS returns sids http://www.webconfs.com/search-engine-spid...mulator.php While this one returned sids before I installed sid killer http://tools.summitmedia.co.uk/spider/ but it does not now, even for the new external link. This also returns sids http://www.1-hit.com/all-in-one/tool.searc...-viewer.htm This one does not show sids http://www.spannerworks.com/spidersimulator.0.html It is all very confusing! Which simulator should I take as valid? Do you recommend a specific simulator? The final results will come in when I go live but until then.... <_< Sheri :)
  24. What do you think about what I have done above? I just checked with the spider simulator and no sid was passed in the url link to the root home page. Sheri
×
×
  • Create New...