Jump to content
ianhaney

shop by price

Recommended Posts

Hi

 

Can anyone please recommend a good shop by price add on for oscommerce 2.3.1 please

 

Thank you

 

Ian

Share this post


Link to post
Share on other sites

Share this post


Link to post
Share on other sites

can someone teach me how to use this addson on 2.3? i tried this http://addons.oscommerce.com/info/8297 but somehow it shows error.

 

What I did is, I added few lines in myphpadmin as per shop_by_price.sql

and copied all the files in catalog files and modified catalog/includes/filenames.php as well as per instruction

 

The error as below:

 

Fatal error: require() [function.require]: Failed opening required 'includes/languages/english/FILENAME_SHOP_BY_PRICE' (include_path='.:/usr/local/lib/php') in catalog/includes/modules/boxes/bm_shop_by_price.php on line 15

 

perhaps anyone have any clue how to modified the one that Nick suggest to use with 2.3?

I am a noob in php and html.. advice is very much appreciated..

 

TikkoSS

www.tikkoss.com

Edited by tikkoss

Share this post


Link to post
Share on other sites

The error indicates your catalog/includes/filenames.php hasn't beeb modified despite what you may think.


If I suggest you edit any file(s) make a backup first - I'm not perfect and neither are you.

 

"Given enough impetus a parallelogramatically shaped projectile can egress a circular orifice."

- Me -

 

"Headers already sent" - The definitive help

 

"Cannot redeclare ..." - How to find/fix it

 

SSL Implementation Help

 

Like this post? "Like" it again over there >

Share this post


Link to post
Share on other sites

Hi TikoSS,

 

I'm not sure that you should have added anything to your database even though the SQL file was included in the download. The instructions did not mention that this needed to be done. That said, I tried to install the contribution without the database addition and get exactly the same errors you have. I think that there is an error in the downloaded files somewhere.

 

I hope that the author of the contribution will know what went wrong, but I will try and fix this and if I can I'll post the fix here.

Share this post


Link to post
Share on other sites

Hi Jim, I have looked into the /filename.php and I have inputted as per the instructions. However, I still encounter the same problems.

 

Isa, thanks for trying out .. this time i did not try include the sql but still encountering the same problems. I am trying to rectify it at the moment. Will keep you posted if it works..

 

Thanks all..

 

TikkoSS

www.tikkoss.com

Share this post


Link to post
Share on other sites

Inside the admin boxes install page...i get this error

 

Warning: require(includes/languages/english/FILENAME_SHOP_BY_PRICE) [function.require]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php on line 15

 

Warning: require(includes/languages/english/FILENAME_SHOP_BY_PRICE) [function.require]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php on line 15

 

Fatal error: require() [function.require]: Failed opening required 'includes/languages/english/FILENAME_SHOP_BY_PRICE' (include_path='.:/usr/lib/php:/usr/local/lib/php') in/home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php on line 15

Share this post


Link to post
Share on other sites

Warning: include() [function.include]: Unable to access /home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php in /home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: include(/home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php) [function.include]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: include() [function.include]: Unable to access /home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php in /home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: include(/home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php) [function.include]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: include() [function.include]: Failed opening '/home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in/home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: require(includes/languages/english/FILENAME_SHOP_BY_PRICE) [function.require]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/includes/modules/boxes/bm_shop_by_price.php on line 15

 

Warning: require(includes/languages/english/FILENAME_SHOP_BY_PRICE) [function.require]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/includes/modules/boxes/bm_shop_by_price.php on line 15

 

Fatal error: require() [function.require]: Failed opening required 'includes/languages/english/FILENAME_SHOP_BY_PRICE' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/perpet19/public_html/savoircouture/includes/modules/boxes/bm_shop_by_price.php on line 15

Share this post


Link to post
Share on other sites

Ricky,

 

You have to upload the files to the correct directories.

 

 

Chris


:|: Was this post helpful ? Click the LIKE THIS button :|:

 

See my Profile to learn more about add ons, templates, support plans and custom coding (click here)

Share this post


Link to post
Share on other sites

I guess this module is missing something in the installation pack,

I tried to follow the instruction, but some error as above,

i looked into the code, i found it is missing some language file which related when adding the module in the admin page.

i tried to remove the line 15 (which is point to load the language file), then i can install the module in the admin section.

 

but another problem came out.

After activitied the module, and return to the store, some error is displayed which is related to the database.

it forced me to deactivited the module to make the store work again.

 

btw, how to unistall the SQL staffs that goes to the database if i wanted to remove the module totally,

 

thanks

Alex

Share this post


Link to post
Share on other sites

The author has packaged it wrong and missed some language code, I have it working fine, I commented out in catalog/includes/modules/boxes/bm_shop_by_price.php:

 

require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SHOP_BY_PRICE);

 

to look like:

 

//require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SHOP_BY_PRICE);

 

and then created another file of the same name in catalog/includes/languages/english/modules/boxes/bm_shop_by_price.php containing this code:

 

<?php
/*
 $Id$
 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com
 Copyright (c) 2010 osCommerce
 Released under the GNU General Public License
*/
 define('MODULE_BOXES_SHOP_BY_PRICE', 'Shop By Price');
 define('MODULE_BOXES_SHOP_BY_PRICE_DESCRIPTION', 'Shop By Price');
 define('MODULE_BOXES_SHOP_BY_PRICE_BOX_TITLE', 'Shop By Price');
 define('BOX_HEADING_SHOP_BY_PRICE', 'Shop By Price');
?>

 

Remember box modules within osC 2.3.1 generally have their language files like above with the same name in the corresponding modukles/boxes folder, not stored in the languages/english/ folder

 

Another pain in this addon that will eventually need rewriting is that you need to change the database price ranges via phpmyadmin and also the price ranges present in the catalog/includes/modules/boxes/bm_shop_by_price.php too! Bad.. bad!

Share this post


Link to post
Share on other sites

after i installed this contrubution i got the error

 

1146 - Table 'divinefa_osc23.TABLE_PRICE_RANGES' doesn't exist

 

select price_range_id, price_range_values from TABLE_PRICE_RANGES order by price_range_values

 

[TEP STOP]

 

how do i fix this the table is in the data base

 

thanks

lenard

Share this post


Link to post
Share on other sites

Normally UPPERCASE_ERRORS_LIKE_THAT mean you are missing a define in a php file.

 

My guess is you didn't edit/upload your /includes/database_tables.php file to include the define for TABLE_PRICE_RANGES


If I suggest you edit any file(s) make a backup first - I'm not perfect and neither are you.

 

"Given enough impetus a parallelogramatically shaped projectile can egress a circular orifice."

- Me -

 

"Headers already sent" - The definitive help

 

"Cannot redeclare ..." - How to find/fix it

 

SSL Implementation Help

 

Like this post? "Like" it again over there >

Share this post


Link to post
Share on other sites

yep followed instructions Exactly as stated in the readme and also getting :

 

 

Warning: include() [function.include]: Unable to access /home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php in /home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: include(/home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php) [function.include]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: include() [function.include]: Unable to access /home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php in /home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: include(/home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php) [function.include]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: include() [function.include]: Failed opening '/home/perpet19/public_html/savoircouture/includes/languages/english/modules/boxes/bm_shop_by_price.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in/home/perpet19/public_html/savoircouture/moesc/modules.php on line 129

 

Warning: require(includes/languages/english/FILENAME_SHOP_BY_PRICE) [function.require]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/includes/modules/boxes/bm_shop_by_price.php on line 15

 

Warning: require(includes/languages/english/FILENAME_SHOP_BY_PRICE) [function.require]: failed to open stream: No such file or directory in /home/perpet19/public_html/savoircouture/includes/modules/boxes/bm_shop_by_price.php on line 15

 

Fatal error: require() [function.require]: Failed opening required 'includes/languages/english/FILENAME_SHOP_BY_PRICE' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/perpet19/public_html/savoircouture/includes/modules/boxes/bm_shop_by_price.php on line 15

 

 

 

would it be to much to ask for the author to repack and redocument this addon.

Share this post


Link to post
Share on other sites

Hi Everyone,

 

I just download and install this addon and get all the same error as you guys. But now I fixed them all. All solution are came from this support thread. And I just put everything together, Please follow below info to fixed your error and I hope I didn't miss anythings. 3 step to solve error from original Addon file.

 

1) On admin page, you install the modules and will get this error,

 

Fatal error: require() [function.require]: Failed opening required 'catalog/includes/languages/english/FILENAME_SHOP_BY_PRICE' (include_path='.:/usr/local/lib/php') in catalog/includes/modules/boxes/bm_shop_by_price.php on line 15

 

To fix it, open catalog/includes/modules/boxes/bm_shop_by_price.php and remove the following line

 

require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SHOP_BY_PRICE);

 

2) When you finish installed, and go to your online store, you will get the following error

 

1146 - Table 'mysql.table_price_ranges' doesn't exist

 

select price_range_id, price_range_values from TABLE_PRICE_RANGES order by price_range_values

 

To fix it, open catalog/includes/datebase_tables.php and add the following before the last ?>

 

//Start - Shop by price

define('TABLE_PRICE_RANGES', 'price_ranges');

//End - Shop by price

 

3) Finally, you will have another error something like this

 

Warning: include(includes/languages/english/modules/boxes/bm_shop_by_price.php) [function.include]: failed to open stream: No such file or directory inC:\xampp\htdocs\includes\classes\osc_template.php on line 86

 

Warning: include() [function.include]: Failed opening 'includes/languages/english/modules/boxes/bm_shop_by_price.php' for inclusion (include_path='.;C:\xampp\php\PEAR') inC:\xampp\htdocs\includes\classes\osc_template.php on line 86

 

This is because the author haven't attached one file called bm_shop_by_price.php

 

To fix it, please create a file called bm_shop_by_price.php by notepad or any editor you are using, and save it into

 

catalog/includes/languages/english/modules/boxes/

 

place the following line into your new created file bm_shop_by_price.php

 

<?php

/* $Id$ osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com Copyright © 2010 osCommerce

Released under the GNU General Public License

*/

define('MODULE_BOXES_SHOP_BY_PRICE', 'Shop By Price');

define('MODULE_BOXES_SHOP_BY_PRICE_DESCRIPTION', 'Shop By Price');

define('MODULE_BOXES_SHOP_BY_PRICE_BOX_TITLE', 'Shop By Price');

define('BOX_HEADING_SHOP_BY_PRICE', 'Shop By Price');

define('NAVBAR_TITLE', 'Shop by Price');

// the following $range references come from catalog/shop_by_price.php

?>

 

That is it, Enjoy!!

Edited by veego

Share this post


Link to post
Share on other sites

Hi All,

 

When playing this addon, i found that the shop_by_price page has a back button at the bottom left of the page, and will redirect you to Advance page when you click on it. It seem non-sense for me, so I just change the redirect location of the file and make the back bottom redirect you to the default page. which is https://www.yourdomain.com/

 

open catalog/shop_by_price.php

 

Search

<?php echo tep_draw_button(IMAGE_BUTTON_BACK, 'triangle-1-w', tep_href_link(FILENAME_ADVANCED_SEARCH, tep_get_all_get_params(array('sort', 'page')), 'NONSSL', true, false)); ?>

 

And replace by

<?php echo tep_draw_button(IMAGE_BUTTON_BACK, 'triangle-1-w', tep_href_link(FILENAME_DEFAULT, tep_get_all_get_params(array('sort', 'page')), 'NONSSL', true, false)); ?>

 

Enjoy.

Edited by veego

Share this post


Link to post
Share on other sites

Hi, everyone!

 

With much agony, and by following the instructions in this thread, I have managed to get Shop by Price installed and more-or-less running on my store. (Quick side note: I agree with Sars that it would be nice if the developer would fix all these things and re-post the contribution!) Anyway...

 

I found two problems, one that I was able to fix and the another one that's still driving me nuts.

 

The problem I found and how to fix it:

 

When the box loads, it displays "Shop by Price" in the input field instead of the values for the first price range (in my case "Under 10.00"). IMHO, this is confusing to the user (at least it was to me!) as it's not clear that this is where the user selects a price range they want to filter by. To change this...

 

Find this in catalog/includes/languages/modules/boxes/shop_by_price.php:

 

define('BOX_HEADING_SHOP_BY_PRICE', 'Shop by Price');

 

Change it to this:

 

define('BOX_HEADING_SHOP_BY_PRICE', 'Under 10.00');

 

The problem I can't figure out how to fix:

 

When the box is first loaded and displayed, the first price range (in my case "Under 10.00") is displayed (with the above fix) but is not active. In other words, the user sees "Under $10.00" but if he/she clicks on that nothing happens. If the user clicks on another price range and then clicks on "Under 10.00" then the program does work properly.

 

Again, this is confusing to the user, IMHO, especially if the input field is displaying "Shop by Price" instead of the first price range (i.e. you haven't applied the above fix).

 

So, could someone please figure-out how to get the first price range to be active (i.e. clickable) when the box is first loaded and post the solution here? I tried for several hours to figure it out but I'm just not that skilled at php programming. (I know enough to be able to break stuff, but not enough to fix it! LOL!)

 

Thanks, in advance, for any help provided!

 

Regards,

 

Chris

Edited by Chrison

Share this post


Link to post
Share on other sites

Thank you everyone, especially George on how to tackle the errors.

 

I also implement this with support multiple language ~ ^.^

Share this post


Link to post
Share on other sites

I think I made it work in 2.3.1 without adding the bew tables in the database. At least with a quick test on my site it works.

 

You have to create the extra language file that chrish123 mentions:

 

catalog/includes/languages/english/modules/boxes/bm_shop_by_price.php

containing:

 

<?php
/*
 $Id$
 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com
 Copyright (c) 2010 osCommerce
 Released under the GNU General Public License
*/
 define('MODULE_BOXES_SHOP_BY_PRICE', 'Shop By Price');
 define('MODULE_BOXES_SHOP_BY_PRICE_DESCRIPTION', 'Shop By Price');
 define('MODULE_BOXES_SHOP_BY_PRICE_BOX_TITLE', 'Shop By Price');
 define('BOX_HEADING_SHOP_BY_PRICE', 'Shop By Price');
?>

 

After that in catalog/includes/modules/boxes/bm_shop_by_price.php

 

comment out the following:

require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SHOP_BY_PRICE);

 

and:

$price_ranges_query = tep_db_query("select price_range_id, price_range_values from " . TABLE_PRICE_RANGES . " order by price_range_values");

 

It seems to work and there is no need to change the price ranges from the databse, but only from the files.

Edited by vourlismenos

Share this post


Link to post
Share on other sites

hello i would like make Under 5 in array, i try add "Under 5" in the file "includes/modules/boxes/bm_shop_by_price.php": and in sql price_range_id price_range_values

2 10

3 20

4 30

5 50

1 5

 

and in the file "includes/languages/french/shop_by_price.php i try this

$price_min = Array( 0,

5,

10,

20,

30,

50,

0);

$price_max = Array( 5,

10,

20,

30,

50,

0,

0);

 

but this don't work please how add "under 5" ? THANKS TO REPLY

Edited by rafa84

Share this post


Link to post
Share on other sites

I have the under 5 problem as well. Hoping to see an answer here soon.

Also I had to turn off caching because it crashes here in bm_shop_by_price.php:

 

 

function execute() {

global $SID, $oscTemplate;

if ((USE_CACHE == 'true') && empty($SID)) {

$output = tep_cache_SHOP_BY_PRICE_box(); <+++++ WHAT IS THIS DOING? Its undefined

} else {

$output = $this->getData();

}

I need to have caching!

Share this post


Link to post
Share on other sites

Hi Everyone,

 

I just download and install this addon and get all the same error as you guys. But now I fixed them all. All solution are came from this support thread. And I just put everything together, Please follow below info to fixed your error and I hope I didn't miss anythings. 3 step to solve error from original Addon file.

 

1) On admin page, you install the modules and will get this error,

 

Fatal error: require() [function.require]: Failed opening required 'catalog/includes/languages/english/FILENAME_SHOP_BY_PRICE' (include_path='.:/usr/local/lib/php') in catalog/includes/modules/boxes/bm_shop_by_price.php on line 15

 

To fix it, open catalog/includes/modules/boxes/bm_shop_by_price.php and remove the following line

 

require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_SHOP_BY_PRICE);

 

2) When you finish installed, and go to your online store, you will get the following error

 

1146 - Table 'mysql.table_price_ranges' doesn't exist

 

select price_range_id, price_range_values from TABLE_PRICE_RANGES order by price_range_values

 

To fix it, open catalog/includes/datebase_tables.php and add the following before the last ?>

 

//Start - Shop by price

define('TABLE_PRICE_RANGES', 'price_ranges');

//End - Shop by price

 

3) Finally, you will have another error something like this

 

Warning: include(includes/languages/english/modules/boxes/bm_shop_by_price.php) [function.include]: failed to open stream: No such file or directory inC:\xampp\htdocs\includes\classes\osc_template.php on line 86

 

Warning: include() [function.include]: Failed opening 'includes/languages/english/modules/boxes/bm_shop_by_price.php' for inclusion (include_path='.;C:\xampp\php\PEAR') inC:\xampp\htdocs\includes\classes\osc_template.php on line 86

 

This is because the author haven't attached one file called bm_shop_by_price.php

 

To fix it, please create a file called bm_shop_by_price.php by notepad or any editor you are using, and save it into

 

catalog/includes/languages/english/modules/boxes/

 

place the following line into your new created file bm_shop_by_price.php

 

<?php

/* $Id$ osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com Copyright © 2010 osCommerce

Released under the GNU General Public License

*/

define('MODULE_BOXES_SHOP_BY_PRICE', 'Shop By Price');

define('MODULE_BOXES_SHOP_BY_PRICE_DESCRIPTION', 'Shop By Price');

define('MODULE_BOXES_SHOP_BY_PRICE_BOX_TITLE', 'Shop By Price');

define('BOX_HEADING_SHOP_BY_PRICE', 'Shop By Price');

define('NAVBAR_TITLE', 'Shop by Price');

// the following $range references come from catalog/shop_by_price.php

?>

 

That is it, Enjoy!!

 

Worked like a charm...........

 

Perfect..... !!

 

Thanx. :)


A man is great by Deeds, not by Birth....

Share this post


Link to post
Share on other sites

New Version uploaded:

Shop By Price for osc2.3.4 Bootstrap, Ver. 4.0

http://addons.oscommerce.com/info/9301

 

All credit goes to the original developer: Matt Davies and all other contributers of previous versions
This version tested on Oscommerce osc-2.3.4 BS Master package from 08_03_2015
This version is NOT backward compatible to previous osc2.x releases,

New Features in Shop By Price v4.0 BS
- Shop by price box updated to 2.3.4 BS version.
- Added Shop by price header module for 2.3.4 BS.
- All configuration entries added to the modules
- Search in categories and manufactures added
- Multi currency support
- Price ranges entry for each currency added to the modules
- Show prices with tax query improved
- Language files cleaned up
- spanish and german language files added
- shop_by_price.php updated for 2.3.4 BS
- filenames and database table names hardcoded
- all sql installation queries included in the modules


NOTE: I will only give support for this Bootstrap version

Share this post


Link to post
Share on other sites

@@raiwa

 

Hi

 

Just installed this addon looks good,

However what have I done, as when selecting a price category, shows in List view only, if I click to show in either Grid/List view I get taken back to the index page.

Any thoughts

 

Many thanks

 

Cheers

Grandpa

BS234

Edited by grandpaj

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×