Jump to content

datazen

Members
  • Content count

    17
  • Joined

  • Last visited

1 Follower

Profile Information

  • Real Name
    Michael Logsdon
  1. I have noticed a problem with the Links Manager contrib. I'm not sure which Links Manager contrib this is but it's the one that uses redirect.php. On the links page, the actual URL's of the partner sites always redirect you to the index page and not the partner site. After researching, I noticed that there was no switch for this in the redirect.php file. The POST data coming from the links.php page is similar to: http://www.mystore.com/catalog/redirect.php?action=links&goto=5 So I added: case 'links': if (isset($HTTP_GET_VARS['goto']) && tep_not_null($HTTP_GET_VARS['goto'])) { $link_query = "select links_url from " . TABLE_LINKS . " where links_id=" . tep_db_input($HTTP_GET_VARS['goto']) . " limit 1"; $link_url = tep_db_query($link_query); // debug code echo 'table= ' . TABLE_LINKS . '<br>'; echo 'goto= ' . $HTTP_GET_VARS['goto'] . '<br>'; echo 'action= ' . $HTTP_GET_VARS['action'] . '<br>'; echo 'query= ' . $link_query . '<br>'; echo 'url= ' . $link_url . '<br>'; if (tep_db_num_rows($link_url)) { // tep_redirect('http://' . $HTTP_GET_VARS['goto']); } } break; The query string is correct but the tep_db_query never returns the url information. No matter what link I clik on the information for the url is returned as: url= Resource id #67 when it should have been: http://whatever_the_link_is.com I can manually do the query from phpMyAdmin with no problems. Why won't this db_query return the correct info? I simply want to query the links database for the url corresponding to the link_id. Any help is greatly appreciated. ;)
  2. datazen

    Seach Engine Friendly URL Support

    Has anyone got this to work with CRE Loaded 6.15? CRE uses a different template system than BTS and the index.php file is completely different due to it being split into different sections. Any help is greatly appreciated. ;)
  3. willross, I also love this contrib and have had success with it. I did have a problem recently on one server. It did not have mod_rewrite for secure Apache installed. I was getting an Internal Server error when hitting checkout (ssl). It's installed now. Now all works normal except for one glitch. I can go through the entire checkout process without errors until the very last stage. When you hit the "Confirm Order" button, it goes back to the Shopping Cart and says "your cart is empty". The order does go through and emails get sent but gets the wrong message at the end. Any ideas? Check out http://akcessories.net/shop/ Running CRE 6.15. Any help is appreciated. Sincerely, Michael.
  4. I noticed when using the mod_rewrite method, all worked great until you clicked the checkout button and went to the secure url. I just got an Internal Server error. When i asked the NOC about it, I was informed that my server does not have mod_rewrite installed for secure Apache. My question is this: Why does the checkout page need mod_rewrite? Once you hit the secure URL, doesn't it revert back to the old type URL with the osCsid? Is there a fix for this? Everything works 100% as long as the url is http:// and not https://. Check out the store at http://akcessories.net/shop/ Running CRE Loaded 6.15 + SEO URL's & a few others. Thanks in advance for any help. ;)
  5. Hello all, Having another very weird problem. I got the 2 mods (SEO URL's 2.0b and GoogleSiteMap) to work well on a CRE 6.15 site. However, when I installed the same on a default MS2 version (slightly modded - no page cache), the SEO URL's work ok until I run the GoogleSiteMap. I use the cName method (can't use mod_rewrite). When I run GoogleSiteMap, I get this error: and then the configuration data for SEO URL's gets updated to 2.1 (which does not support cName) and SEO URL's are broken. I have to delete the SEO_ fields from the configuration tables and run install-cache.php / install-seo.php again to setup the database. Why is GoogleSiteMap updating my SEO URL's configuration data? Is there any fix for this? I didn't have this problem when I installed both contribs on a CRE 6.15 site. Any help is always appreciated.
  6. Reinstalled Version 2.0b to use cName method and Google Sitemap now works ok. Must have been something I missed in the original install. Thanks again for the help.
  7. Chemo, I added this contrib to my site containing SEO URL's Version 2 (Jan 05) and get this error when running googlesitemap: The tep_get_parent_categories() function is present but becomes undefined when running googlesitemap. This is my seo_cache.php: <?php /*=======================================================================*\ || #################### //-- SCRIPT INFO --// ########################## || || # Script name: includes/seo_cache.php || # Contribution: Ultimate SEO URLs || # Version: 2.0 || # Date: 30 January 2005 || # ------------------------------------------------------------------ # || || #################### //-- COPYRIGHT INFO --// ######################## || || # Copyright (C) 2005 Bobby Easland # || || # Internet moniker: Chemo # || || # Contact: chemo@mesoimpact.com # || || # Commercial Site: http://gigabyte-hosting.com/ # || || # GPL Dev Server: http://mesoimpact.com/ # || || # # || || # This script is free software; you can redistribute it and/or # || || # modify it under the terms of the GNU General Public License # || || # as published by the Free Software Foundation; either version 2 # || || # of the License, or (at your option) any later version. # || || # # || || # This script is distributed in the hope that it will be useful, # || || # but WITHOUT ANY WARRANTY; without even the implied warranty of # || || # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # || || # GNU General Public License for more details. # || || # # || || # Script is intended to be used with: # || || # osCMax Power E-Commerce # || || # http://oscdox.com # || || # Copyright (c) 2003 osCommerce # || || ###################################################################### || \*========================================================================*/ # strip functon # if anyone can help with international translations please correct the file and upload function strip($convert_me) { $strip_array = array("'",chr(33),chr(34),chr(35),chr(36),chr(37),chr(38),chr(39),chr(40),chr(41),chr(42),chr(43),chr(44),chr(45),chr(46),chr(47),chr(58),chr(59),chr(60),chr(61),chr(62),chr(63),chr(91),chr(92),chr(93),chr(94),chr(95),chr(96),chr(123),chr(124),chr(125),chr(126) ); $convert_me = str_replace($strip_array, '', $convert_me); $convert_me = str_replace(array(' ', ' ', '__', '--'), '-', $convert_me); $convert_me = strtolower($convert_me); return $convert_me; } # Set the cache name $cache_file = $cache_dir . 'seo_urls_'; # if the cache is not stored in the database $cache->is_cached($cache_file . 'products', $is_cached, $is_expired); if ( !$is_cached || $is_expired ) { // it's not cached so create it # Query for the products $product_query = tep_db_query("select p.products_id, pd.products_name from products p left join products_description pd on p.products_id=pd.products_id and pd.language_id='".(int)$languages_id."' where p.products_status='1'"); # Initialize the product array $prod_array = array(); # Loop the returned rows while ($product = tep_db_fetch_array($product_query)) { $prod_array[$product['products_id']] = array('name' => strip($product['products_name']), 'id' => $product['products_id']); } # Free the memory - could be large, clean as we go! tep_db_free_result($product_query); # Initialize the container used to check for duplicate names $prod_container = array(); # Loop the product array $prod_cache = ''; foreach($prod_array as $record){ $id = $record['id']; # If the product name hasn't been set if ( !isset($prod_container[ $record['name'] ]) ){ $name = $record['name']; } else { # This is a duplicate - get the counter and append # Increase the counter $prod_container[ $record['name'] ]['counter']++; $prod_counter = $prod_container[ $record['name'] ]['counter']; # Append the counter to the product name $name = $record['name'] . '-' . $prod_counter; } # Add the defines to the output string $prod_cache .= 'define(\'PRODUCT_NAME_' . $id . '\', \'' . $name . '\'); ' . "\n"; $prod_cache .= 'define(\'' . $name . '\', \'products_id=' . $id . '\'); ' . "\n"; # Add the product name to the container array $prod_container[$name] = array('name' => $name, 'counter' => 1); } # Save the cached data to database # Params: [ cache name, cache data, compressed, global ] $cache->save_cache($cache_file . 'products', $prod_cache, 'EVAL', 1 , 1); # Unset the variables used - could be large, clean as we go! unset($prod_array, $prod_container, $prod_cache); } # end if products is not cached /************************************************************\ End of the product definitions - start of the manufacturers \************************************************************/ # if the cache is not stored in the database $cache->is_cached($cache_file . 'manufacturers', $is_cached, $is_expired); if ( !$is_cached || $is_expired ) { // it's not cached so create it # Query for the manufacturers $manufacturers_query = tep_db_query("select m.manufacturers_id, m.manufacturers_name from manufacturers m left join manufacturers_info md on m.manufacturers_id=md.manufacturers_id and md.languages_id='".(int)$languages_id."'"); # Initialize the product array $man_array = array(); # Loop the returned rows while ($manufacturer = tep_db_fetch_array($manufacturers_query)) { $man_array[$manufacturer['manufacturers_id']] = array('name' => strip($manufacturer['manufacturers_name']), 'id' => $manufacturer['manufacturers_id']); } # Free the memory - could be large, clean as we go! tep_db_free_result($manufacturers_query); # Initialize the container used to check for duplicate names $man_container = array(); # Loop the product array $man_cache = ''; foreach($man_array as $record){ $id = $record['id']; # If the product name hasn't been set if ( !isset($man_container[ $record['name'] ]) ){ $name = $record['name']; } else { # This is a duplicate - get the counter and append # Increase the counter $man_container[ $record['name'] ]['counter']++; $man_counter = $man_container[ $record['name'] ]['counter']; # Append the counter to the product name $name = $record['name'] . '-' . $man_counter; } # Add the defines to the output string $man_cache .= 'define(\'MANUFACTURER_NAME_' . $id . '\', \'' . $name . '\'); ' . "\n"; $man_cache .= 'define(\'' . $name . '\', \'manufacturers_id=' . $id . '\'); ' . "\n"; # Add the manufacturer name to the container array $man_container[$name] = array('name' => $name, 'counter' => 1); } # Save the cached data to database # Params: [ cache name, cache data, compressed, global ] $cache->save_cache($cache_file . 'manufacturers', $man_cache, 'EVAL', 1 , 1); # Unset the variables used - could be large, clean as we go! unset($man_array, $man_container, $man_cache); } # end if manufacturers is not cached /************************************************************\ End of the manufacturers definitions - start of the categories \************************************************************/ # if the cache is not stored in the database $cache->is_cached($cache_file . 'categories', $is_cached, $is_expired); if ( !$is_cached || $is_expired ) { // it's not cached so create it # Query for the categories $category_query = tep_db_query("select c.categories_id, c.parent_id, c.sort_order, cd.categories_name from categories c left join categories_description cd on c.categories_id=cd.categories_id and cd.language_id='".(int)$languages_id."' order by c.parent_id, c.sort_order ASC"); # Initialize the cat array $cat_array = array(); # Loop the returned rows while ($category = tep_db_fetch_array($category_query)) { $cat_array[$category['categories_id']] = array('name' => strip($category['categories_name']), 'id' => $category['categories_id'], 'parent' => $category['parent_id']); } # Free the memory - could be large, clean as we go! tep_db_free_result($category_query); # Initialize the container used to check for duplicate names $cat_container = array(); # Loop the cat array $cat_cache = ''; foreach ($cat_array as $record){ $name = $record['name']; $id = $record['id']; # If the category name hasn't been set if ( !isset($cat_container[ $cat_array[$record['parent']]['name'] .'-'.$name ]) ){ $parent_name = ($record['parent']=='0' ? '' : $cat_array[$record['parent']]['name'].'-'); } else { # This is a duplicate category - get the counter and append # Increase the counter $cat_container[ $cat_array[$record['parent']]['name'] .'-'.$name ]['counter']++; $parent_counter = $cat_container[ $cat_array[$record['parent']]['name'] .'-'.$name ]['counter']; # Append the counter to the parent name $parent_name = ($record['parent']=='0' ? '' : $cat_array[$record['parent']]['name'].'-'.$parent_counter.'-'); } # Initialize the array to hold the category path $c = array(); # Get the category path tep_get_parent_categories($c, $record['id']); # For some reason it seems to return in reverse order so reverse the array $c = array_reverse($c); # Implode the array to get the full category path $id = (implode('_', $c) ? implode('_', $c) . '_' . $record['id'] : $record['id']); # Add the defines to the output string $cat_cache .= 'define(\'CATEGORY_NAME_' . $id . '\', \'' . $parent_name . $name . '\'); ' . "\n"; $cat_cache .= 'define(\'' . $parent_name . $name . '\', \'cPath=' . $id . '\'); ' . "\n"; # Add the category name to the container array $cat_container[$parent_name . $name] = array('id' => $id, 'counter' => 1); } # Save the cached data to the database # Params: [ cache name, cache data, compressed, global ] $cache->save_cache($cache_file . 'categories', $cat_cache, 'EVAL', 1 , 1); # Unset the arrays used - could be large, clean as we go! unset($cat_array, $cat_container, $cat_cache); }# end if categories is not cached ?> Any suggestions? Thanks in advance for the help.
  8. All Fixed. I found the solution to my osCsid problem in this thread: http://forums.oscommerce.com/index.php?sho...23entry667323 Thanks for all the help.
  9. I switched to cName method and now the URL's are ok EXCEPT for the osCsid which is still there. I noticed that my CRE 6.15 version does not use the session ID in the URL and after adding this contrib, it worked perfect. However, on a site with standard MS2, the session ID remains. Is there another contrib that takes care of removing this from the URL until checkout? I have checked my Admin settings and both sites are set the same. Examples: http://cartxpress-demo.com/catalog/ && contains osCsid http://64.177.57.205/CREw/ && has no osCsid until checkout. beautiful! Any suggesstions? I searched the Contribs section to no avail. Thanks in advance.
  10. wayoutpost, It all worked prior. If I comment out the .htaccess file, the problem goes away but the URL's don't get rewritten of course. I think it may be something with my server setup and mod_rewrite because if the "shared" ssl. Any suggesstions? I had this problem on another site and switched to "cname" method and got it to work. I will more than likely switch this site over if I cannot find a solution. Thanks for the help
  11. Chemo, Thanks for the contribution. After installing, the site URL's seem to work ok however, when I go to checkout, I get an Internal 500 Server error. I have narrowed it down to something in the .htaccess file. I am using a shared SSL on this site . The regular URL is: http://cartxpress-demo.com SSL URL is: https://host.thisisourserver.com/cartxpress-demo All works ok until you hit the secure side. Any suggesstions would be appreciated. I looked through the forum and did not see this particular problem. Also, what is the best ay to remove the OSCsid from the URL without "forcing cookies"? Thanks again for the contribution and thanks in advance for any help.
  12. datazen

    Official thread for Great Categories

    Hi Will. Thanks for the great contribution! Do you happen to know why the categories box goes blank if Sessions->Force Cookie Use=True ? I have a few sites now getting SEO work done and are asking for this option. Here is an exerpt from an article that the SEO staff is pointing me to: When I try this, the categories box is blank. works ok with default categories.php file. Any ideas? Thanks in advance.
  13. datazen

    Master Products - MS2

    Hello, Thanks for the great contribution. I have it installed and it is working fine with the exception of 2 things. 1. When editing a "slave" product, in the input section: Product Listing Display * Show Product * Hide Product Neither radio button is selected. Although you can select "Show Product" or "Hide Product" and the changes ARE saved in the database, everytime you go back to edit, there is no button selected. So you don't know whether the slave item was set to show or hide. 2. When you select a Master product from the storefront, the next screen displays the master product and slave products with quantity drop down boxes for each. The default has these set to 0 however when I click the Continue button, the next screen shows qty of 1 where there was a zero on the previous page. I can change the quantity to a number greater than 1 and the changes are correct on the next page. It only happens when I select 0 for the quantity. Happens on both master and slave items. For instance, I order Master Product-A which consists of 2 slave items, Slave1 and Slave2. I ordered 1 Master Product and 1 Slave1 and 0 Slave2. The next screen shows qty 1 for all. I can't select 0 qty and have it carry to the shopping_cart.php page. Any suggestions? Thanks again for the contrib. :thumbsup:
×