Building Online Stores with osCommerce 146
Stephanie Brain writes "Have you ever considered building your own online store and entering into the booming e-commerce arena? If you have, you may have come across some of the many open-source software available for downloading from the Internet. One of the most popular of these is OsCommerce which has been developed since March 2000 and has a full team of staff dedicated to its development. It is overseen by the founder, Harald Ponce de Leon and today there are around 6000 live, registered OsCommerce sites and 70000 registered community members, many of whom are active on the OSC forum you can log on to. This forum can provide a wealth of information when you come up against any obstacle when developing your own OsCommerce website." Read the rest of Stephanie's review.
Building Online Stores with osCommerce: Professional Edition | |
author | David Mercer |
pages | 372 |
publisher | Packt Publishing |
rating | 9 |
reviewer | Stephanie Brain |
ISBN | 1-904811-14-0 |
summary | Practical guide to building online stores with osCommerce |
Back in October I started working with someone who had already downloaded the OSC software and had the basis of an online store installed. I will be running the store, however my first task was to change the whole look of the site and make improvements to it before launching NetTechShop properly. Having read the OsCommerce blurb which promotes the simplicity of using OSC, I felt sure that I could quickly get to grips with the "simple" programming language of PhP and HTML and have the site ready in a month or two. I was sadly disappointed! By the end of November last year I was getting desperate, having spent hours making modifications to the coding on the database only to either break the site completely or find it had not made one jot of difference to the look of the site. I searched in vain for OsCommerce For Dummies.
My pain was somewhat relieved when I discovered that a book was going to be published on OsCommerce by Packt Publishing and I put my order in immediately and breathed a great sigh of relief.
Strangely such a book has been lacking until now. You can find plenty of books about Php programming and MySQL or HTML, but try to find a book which is easy to understand for someone with less than a University or College IT qualification background and about OsCommerce in particular and you will search long and hard.
David Mercer's book is the book you have been looking for and is available in either a beginner's or professional edition. It is written in a straightforward, easy to understand manner, yet does not compromise on technical knowledge and provides all the essentials of getting your website up and running with OsCommerce.
The book covers: installing MySQL, PHP, Apache and OsCommerce and testing them, configuration and customization of your store, working with data, taxes, payment and shipping, securing your store, installing more advanced feature using contributions from the OsCommerce website and deployment and maintenance of your site.
Before going onto the technical aspects and explanation of OsCommerce, Mercer explores the whole area of e-Commerce, what is required of a website store to make it a success, the arguments for using an open-source solution such as OsCommerce and the decision making issues any business faces when deciding if OsCommerce is right for them.
This manual was everything I hoped it would be and with its many illustrations, including screenshots of the files you will be changing on an OsC website, I found that anyone with even the most basic understanding of website design, would be able to get to grips with designing a website store using OsCommerce. I had the professional edition and found it really easy to just dip into when I needed to know some aspect of the design process. The book's content is well laid out, in manageable chunks with bold headings, which are clear about the content and the index is comprehensive.
One of the things I really liked about the book was that it addressed the problems, error messages and frustrations you are likely to come up against in the process of building your OsCommerce site. Those were the things that made my head spin the most before I got the book and although you should be able to find out about many of your error messages and problems on the OsCommerce forums, it can take quite a time to search and plough through all the replies. It is much better to find the most common problems in one place with practical solutions.
Another important chapter which is covered in depth is the installation and testing of a payment module. The most popular of these, Paypal is covered in the book and detailed instructions are given on how to get it working correctly, again something which sounds easy on paper, but can cause endless problems if you do it wrong. There are other payment providers and gateways which can be integrated onto your OsCommerce site by installing other so-called "contributions" from the OsCommerce website and Mercer explains fully how to download these contributions and get them functioning correctly.
I am sure that this book will prove to be an essential resource for anyone contemplating starting an online business with open-source OsCommerce software and hopefully will avoid them spending wasted energy in the initial stages just trying to figure it all out. After I received my book, the only wasted energy I spent was wondering why the front cover was emblazoned with juicy oranges!"
You can purchase Building Online Stores with osCommerce from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
Eh (Score:3, Insightful)
Re:Eh (Score:1)
Re:Eh (Score:2)
Re:Eh (Score:2)
Re:They don't. (Score:1)
Perhaps it's changed... (Score:5, Informative)
Then I discovered http://www.rubyonrails.org/ [rubyonrails.org] and life is now good!
Re:Perhaps it's changed... (Score:2, Informative)
Re:Perhaps it's changed... (Score:5, Informative)
Re:Perhaps it's changed... (Score:2)
Re:Perhaps it's changed... (Score:2)
So, it does allow for a quick and easy store. It was just that customizing it was hard (back then -- perhaps stuff has changed since 2003/04).
Shopify -- http://www.shopify.com/ [shopify.com] -- is looking interesting now as well, and is also built using Ruby on Rails.
Re:Perhaps it's changed... (Score:4, Interesting)
Not bad (Score:3, Interesting)
Drupal is a well designed system. The ecommerce module is not in the core. It's an add on and for the most part it's also well-designed.
Drupal and the ecomm modules have pluginability as a key feature, which has lead to very quick development. However, I think that touting ecomm as a good offering is premature. It is improving very quickly, but it's not ready yet to compete with professional solutions. For instance - it only
Re:Perhaps it's changed... (Score:2)
seriously, if anyone trusts such information to the browser then their books are really good - for making fire into fireplaces and to cook marshmellows on them
besides what's worth a book on a platform that was probably at first designed on a transactionless database and in a language which had nearly zero seriously takeable oop support features ?
it's year 2006, unless you can overhype your code with xml/oop/ajax/ it's hardly even worth to
Re:Perhaps it's changed... (Score:1)
Re:Perhaps it's changed... (Score:2)
Re:Perhaps it's changed... (Score:2, Insightful)
osCommerce for now, build better for the future (Score:3, Insightful)
The appeal of osC is the 2000 contributions that are available for free as extensions. Having helped several people set up stores with it, basically whatever customization people want, someone else has already made it and published it for free, so there has been a very low cost to get started with osCommerce for each store.
Still, I agree it can be painful and scary to work with. I miss automated test suite, like I'm using to
Re:osCommerce for now, build better for the future (Score:2)
osCommerce is crap. The code is awful. There is a low cost to get started but...you end up with an amateur piece of rubbish.
I am seriously tempted to take time out of work and write something based on Handel (which I liked) which will take more out of my life but will leave me feeling alot less stressed about having to edit spaghetti code.
No I'm no programming gur
Re:Perhaps it's changed... (Score:2)
how exactly did RoR help with the "jumbled mess" and lack of "separation of logic from the presentation" from osCommerce? did it automagically refactor the code for you? or are you living under the impression that all PHP is written like that?
Re:Perhaps it's changed... (Score:4, Interesting)
I know that there is much better PHP code out there than what's in osCommerce, my comment wasn't about PHP. It was about osCommerce and its difficulties.
Re:Perhaps it's changed... (Score:2, Informative)
Re:Perhaps it's changed... (Score:2, Interesting)
Very Painful software (Score:2, Insightful)
Re:Perhaps it's changed... (Score:3, Insightful)
What they considered to be the worst feature of osCommerce were its "modules". Like many software products, you can install "modules" for added functionality. There were dozens of "modules" available. Imagine our surprise when we found out that osCommerce "modules" were really just patches against the already horrible code base. M
Re:Perhaps it's changed... (Score:1)
Not only is all the HTML deeply baked into the PHP code, it's quite crappy HTML as well. To be honest, the standard layout looks like utter crap and I pity anyone who uses it. Well, atleast if you don't have a fondness for the worst freeware clipart this planet has to offer. If you add plugins to the code you'll find yourself in a world of pain when a new version of osCommerce is released
Re:Perhaps it's changed... (Score:2)
Considering that 2.2 hasn't been released yet, that's quite an accomplishment. The most recent release was a patch on milestone 2 (of 4) of the 2.2 project: http://www.oscommerce.com/about/news,121 [oscommerce.com]
Re:Perhaps it's changed... (Score:2)
Re:Perhaps it's changed... (Score:2)
Re:Perhaps it's changed... (Score:2)
I ended up using ZenCart, which turned out to be pretty much exactly the same thing, with very few updates to its osCommerce predecessor.
Eventually I just used the ZenCart back-end, and developed my own front-end, using templates to at least make it sane.
Horrible so
Re:So, whats the easiest then? (Score:1)
b) Paid for budget software such as Pinnacle cart [pinnaclecart.com] - Best if you can't be bothered, and/or it needs to be maintained by a non-techie.
With all paid for software, it'll be difficult to get it *very* different from the default layout the first time round unless you are prepared to put loads of time into learning the software *and* layout.
Re:Perhaps it's changed... (Score:1)
At best his site is pretty ordinary for an e-commerce site.
At worst his site is pretty ordinary for an e-commerce site.
There are easier options (Score:3, Informative)
Which SMB? (Score:1)
Re:Which SMB? (Score:1)
Fraud (Score:2)
Re:Fraud (Score:1)
Re:Fraud (Score:2)
Re:Fraud (Score:2)
Re:Fraud (Score:2)
Yeah, but it looks like canned ass right now because I'm in the middle of dicking around with sIFR and figuring out theming. I'm also still trying to remember how CSS works - I just became a webmaster on Monday and it's been months since I've messed around with web content besides typing slashdot comments in xhtml :D
In the last month or so, I've taught myself [basic but quite functional] javascript, ASP, and learned about several CSS features I've never used before. Right now, I'm about to delve into br
Re:Fraud (Score:2)
I wouldn't worry too much. You post on slashdot; you must be a little savvy. You just have to be careful which sites you use.
Buying porn from an xxx site? Yes, kiss your card details goodbye.
Buying some hardware from a new source? You'll check them out first.
It's the vast number of complete fools out there who have the problems.
Re:Fraud (Score:1)
As a merchant, if you send out $1000 worth of goods and it turns out the cc was stolen, you have to eat it.
Re:Fraud (Score:2)
From his comment:
>>Maybe Google purchases will offer some protection without costing as much as paypal.
Don't think so mate.
Link... (Score:3, Informative)
PCI Compliancy (Score:2, Insightful)
Re:PCI Compliancy (Score:2)
Re:PCI Compliancy (Score:3, Informative)
Re:PCI Compliancy (Score:2, Informative)
Not this webmaster (Score:1)
They do quite a bit, but they're a NIGHTMARE to customize to a particular site. Forget leaving it up to your designers to implement the layout -- while they do use Smarty templates (wise choice) for their frontend, the code is sloppy and difficult to work with.
osCommerce, bad for developers (Score:4, Informative)
Re:osCommerce, bad for developers (Score:2)
It would be really nice to just rewrite the thing in a decent language, with a bit of structure and clarity, and maybe some useful debugging information. But because it basically works, it hasn't happened yet.
Re:osCommerce, bad for developers (Score:3, Insightful)
Re:osCommerce, bad for developers (Score:2)
Re:osCommerce, bad for developers (Score:2, Insightful)
I did an osCommerce site for an artist (http://www.bydon.org/shop [bydon.org]) and modifying the layout was a nightmare. Because of the fact there is no separation between PHP code and layout, it is a case of traversing through nearly 50 jumbled files and manually changing many lines. It is a thing I never want to repeat EVER.
Re:osCommerce, bad for developers (Score:2)
osCommerce is also fine for non-developers who don't mind using the base install/look or paying someone to make changes.
Where osCommerce sucks is for people who code HTML for a living and want to just change some HTML templates to change the design. Or for people who want to turn functionality on and off at whim. Or for people who can code, but don't want to s
Zen Cart (Score:2)
Re:Zen Cart (Score:2)
Bullshit. (Score:2)
No, it's is a "fork" in which much of the code base has been extensivly rewritten. But it's still crap next to Interchange [icdevgroup.org]
Re:Bullshit. (Score:3, Insightful)
add to that the extreme unhelpfulness/bitchiness of the mailing lists/core devs, lack of 'how do i get started' documentation, and the lack of modules to support many payment methods (afaik, there's still no good, supported, paypal option!) has always discouraged me from using IC.
my sense is tha
Re:Bullshit. (Score:2)
Re:Zen Cart (Score:2)
Interchange (Score:3, Informative)
osCommerce to me has always seemed to me like a "Your Mom can set it up and maintain it" type of application. And therefore has many issues when you try to do more advanced types of layout and flow.
Re:Interchange (Score:1)
Interchange is a very powerful solution, but like the parent said: steep learning curve! We had a contractor in at work for our Interchange project, and you might like to consider that option too.
FYI: At one point Red Hat funded it (for good or bad I don't know).
Re:Interchange (Score:2)
Re:Interchange (Score:1)
Unfortunately, the reasons why it is so powerful are the same reasons why it has a high learning curve and a lot of people get turned off of using it.
Re:Interchange (Score:2)
Language? DB? (Score:2)
Searched all over their homepage. Lovely demo, but nothing on language or database support anywhere.
Re:Language? DB? (Score:1)
And since it's written in perl it supports whatever database you can access with DBI.
Re:Interchange (Score:2, Interesting)
Re:Dumping Interchange (Score:3, Insightful)
Keep in mind Interchange grew out of a time when the web was wild and young, and pre-packaged e-commerce options were few.
These days, Perl's CPAN offers a tremendous amount more in th
osCommerce is OK ... but! (Score:1)
You've got to be kidding me (Score:3, Informative)
Link To The Software? (Score:1)
Re:Link To The Software? (Score:1)
Looks like someone else already did post the URL to osCommerce. Thanks.
Re:Link To The Software? (Score:4, Funny)
Google? Maybe the name of the app joined with ".com"? Would you like me to wipe your ass, too?
I run osC and I hate it (Score:4, Informative)
A store with no ability to do coupon codes? (Without massive modification, which can't easily be done if your store is already running)
I find it loses orders sometimes
I've never gotten shipping to work right - hard to do shipping cost per item (with different items having different costs) per country (or even, just North America v. International, per item).
Admin panel navigation is... strange, to say the least. Once you go into the pending orders, and leave, you can't then go back to just pending orders - you have to go to all orders (unless yous tart back on
Generally it's just inflexible, even with all the plugins you can put in.
Re:I run osC and I love it (Score:3, Interesting)
Shipping is nowhere near as complicated as it is for other sites. There are more than a few cart applications where stores just spout 'FREE SHIPPPING' because they couldn't figure out how some goofy table sytem. OsCommerce is a lot easier.
THe admin menu isn't the greatest, but so what? It's just a bunch of links so you can always create your own
Have you ever considered... (Score:1)
Yes, until I realized I have nothing to sell. Booming or no, mine would be an empty storefront. Same with my blog and forum. PHP/MySQL/free software is great and all, but I find that it languishes unused and underutilized for the most part.
You see what Harald wants you to see (Score:5, Insightful)
Also censored from the forum is any mention of other cart software, especially those derived from osCommerce such as Zen Cart and CRE. Want to show how to interface osCommerce to a free API that also has a commercial version? Censored. Want to talk about your experience with a web host or SSL certificate provider? Censored. I once had an extended exchange with one of the forum moderators who seemed to equate "open source" to "one source".
In any event, osCommerce is "not for wimps". A lot of people think the same way the reviewer did - that you download it, install it, and have an instant web store suitable for your customers. It took me about four months the first time to where I had something I would be willing to let customers see, and another year before I learned enough about it to customize it for the particular business and create something of a unique look. (I'm a software engineer with more than 25 years of experience and twenty or so languages under my belt.) You need to understand at least basic PHP, and some familiarity with MySQL wouldn't hurt either. One of the worst features is that making changes to the overall "look" of an osCommerce store requires editing some thirty or more source files.
The current version of osCommerce was released three years ago. A small set of bug fixes was released last November. There has been ongoing work on a "Milestone 3" version that appears to introduce significant incompatibilities with the current and popular MS2. Personally, I'm skeptical that MS3 will ever be released, and even if it is, I think that most of the current MS2 users will ignore it.
Again, I love osCommerce. It is great software and I do what I can to support the community. If you don't mind getting your hands dirty, there's so much you can do with it and hundreds of user add-ons and modifications. You should also look at the derivatives such as Zen and CRE. (These are two that come to mind, there may be others.) But if the letters PHP scare you, then you're better off looking elsewhere.
Re:You see what Harald wants you to see (Score:1)
Re:You see what Harald wants you to see (Score:2)
This alone tells me all I need to know. If OSC could compete on its own merits, he wouldn't have to do this. There's more open commerce solutions out there than I have time to even install in a day. I'll pick something else.
Re:You see what Harald wants you to see (Score:2)
This is the majority of why I don't like OSCommerce. The concept of templates is negligible at best, and nearly all the layout markup is tables. Same thing goes for Gallery and Gallery2. I've set up two OSC sites, and on the first (about three years ago) I remember having to make the same visual change in 11 (!) different files.
OSCommerce = Spaghetti - Eeew!! (Score:5, Informative)
Current version (2.2MS2) is worthy of being designed by the Flying Spaghetti Monster: There are no tiers, SQL queries are embedded in the middle of HTML output - and there are tons of similar queries around different modules - so if you want to change one SQL, you'd have to SEARCH FOR and change ALL OF THEM. I'd recommend you to start using printf with the thing.
Also, the same php file is used for both displaying and validating input fields, and there are tons of duplicated functions across the whole thing.
OSCommerce apparently doesn't know that there is something called "associative arrays", and there is very little OOP in there, but most of it is used to implement very primitive data objects (which, btw, could be replaced with a single associative array).
If that wasn't enough, you can't search and modify input fields or tags, you have to use the predefined functions tep_draw_input_field, which aren't very user friendly either.
Some of the configuration variables aren't defined in PHP, but stored in SQL tables so you'd have to modify the original SQL or add new configuration variable manually if you want to add a field to a table.
The input fields for the admin section aren't stored in associative arrays, but are hardwired among the HTML code (which makes the html output functions a hinderance rather than a help).
So if you want a version that looks *JUST EXACTLY* like your typical OSCommerce site, and don't plan to add ANY NEW features, sure, go ahead, use the prefabricated store. But if you plan to add any field, table, or whatever,
I strongly advise to wait for v3, or to rewrite the whole thing using your favorite multi-tier framework.
Want to change the HTML? Good luck! The thing isn't standards compliant, and was written when nested tables were the norm. For spaces, there's the classical spacer gif consuming your bandwidth.
OSCommerce, is, IMHO, an example of "Open Source gone wrong". Instead of being the work of a community, with strategic planning and all that, it's the work of one man who did it his way, and later open sourced it.
As for security, the credit card info is stored unencrypted in SQL tables, and the admin section can only be secured via htaccess. That means the password is sent unencrypted unless you really know apache security and know to implement it the right way.
Thanks, but no thanks.
State of OSC / Zencart (Score:3, Informative)
We recently (five weeks ago) switched to a Zencart based storefront. For those who don't know, Zencart is an OSC fork.
Apparently Zencart is much cleaner than OSC, which makes me shudder in fear at the idea of OSC's source code.
I like nice, clean, documented, tested code.
Zencart is a mess. The documentation is close to non-existent, there are no comments, there's no MVC distinctions, we found several major security holes in a code audit before going live, weird little UI bugs abound (e.g. in the admin interface when you edit a customer's addr, you're *forced* to specify his phone number, or you can not proceed), there are places where code chunk A generates SQL, then passes it to code chunk B, which passes it to C, which *LOOKS AT THE SQL* and edits it, then executes it.
With code like this, try editing an SQL query just a little bit, and you get a complaint on a web page with error messages pointing to an entirely different place.
On the "security" topic, I note that once we got a demo of Zencart installed on a testing machine, with the tell-tale URL (<machinename>/catalog), I started noticing that a lot of the phishing spam I was receiving directed folks to <domainname>/catalog...yes, the phishers were using hacked OSC accounts, which they had (presumably) gotten into through SQL injection attacks on OSC.
This is not to minimize the work of the OSC and Zencart developers - either package is a huge improvement over nothing...but if you want to do surgery on the code, it's a disaster. At Technical Video Rental, we need to track individual serial numbers of copies as they go in and out, and we needed to present sets of videos in a certain way.
This work took two pretty darned good software engineers (me and the CTO of the company) about four man weeks.
I'm not going to say something inflammatory and stupid like "I could have written an operating system in less time", but four man weeks is a pretty major investment of time to do something fairly simple like this.
We're doing a lot of interesting stuff with the code base: we've spliced in WordPress for the corporate blog, I'm writing some AJAX stuff right now to allow customers to report problems with their orders from the order status page, etc.
There's a good chance that over the next 6-9 months we'll end up preserving the OSC/Zencart db schema and data (for continuity with the running site), and dumping major components of the package.
To boil it down: I give OSC / Zencart a grade of "C minus". It's like a decent looking house with a lot of rot inside the walls. As long as you're content to never look inside the cabinets or crawlspaces, you're OK, but once you do some poking, or decide to add an addition, you'll realize how much work you've got in store, and you'll start to wonder if you should just buy a new house.
passed on osCommerce (Score:2)
Stay away from OSC! (Score:1)
Go with something like X-Cart. The $200 will be well worth it.
Do yourself a favor and do not use osCommerce (Score:1)
osCommerce was programmed without any planning, thought or clue of anything; the code is hardly documented or commented. After a few weeks I started to understand how it all works, and believe me: I have never seen anything this big programmed so badly. I am talking about os
Re:Do yourself a favor and do not use osCommerce (Score:1)
This is what gets to me about people doing stuff that runs on *nix systems. UnixODBC http://www.unixodbc.org/ [unixodbc.org] gives you the database abstraction layer. Why Heck! Using UnixODBC in a PHP project like OsCommerce should allow it to run unfettered on Windows servers. The only problem I've run into with UnixODBC is some vendors
Zen-Cart option (Score:2)
I would definitely consider myself a beginner to php. I personally found that this was not important since the forums at zen-cart.com had specific answers to everything I needed to know to tweak my pages. They spell out the pages you need to modify and specifically which values need to be changed. I mean my grandmother could do that.
Now perhaps osCommerce does not have the community backin
Trash code (Score:1)
Barely useable (Score:2)
How does something like this compare to Agoracart? (Score:2)
I thought it was really easy to get going and really easy for someone who didn't know HTML to get a basic shopping cart up and running.
In fact, I thought it would be a piece of cake for me to take care of the store, but have someone else, like our secretary, put together a product spreadsheet for me to simply import and have an
GladI passed on OSCommerce (Score:2)
After looking at what the client wanted and what OSCommerce offered, I recommended going with Drupal [drupal.org] instead. Admittedly, the e-commerce side of Drupal wasn't as robust as what OSCommerce offered, but Drupal's superior API, highly-customizable theming engine, and well-documented codebase made it the preferred choice IMO. I had to write some custom code to support the e-commerce options the client wanted, but it didn't take mo
Doesn't osCommerce use CSS's (Score:2)
I just read that osCommerce's overall design is hard to change...
ie, without having to fiddle with over 10 source files.
So, I wonder if osCommerce may not be utilizing the magic of CSS?
Cf: http://www.csszengarden.com/ [csszengarden.com]
I continue to be impressed (when not amazed) how much a CSS change
can influence a site's look, if not its feel...
Re:hax (Score:2)
The problem with keeping osCommerce "up to date" is that they do not separate design from logic (templates), so it is impossible to customize your site from the default without editing A LOT of code. Combine that with any "mods" you install, once you get to the point where you have something that is useful and presentable, it just isn't practic
Re:hax (Score:2)
Re:We can't have "solutions" like this. (Score:5, Insightful)
Re:We can't have "solutions" like this. (Score:3, Insightful)
I have to disagree with this. What you're saying is "PHP sucks but everything sucks because you can write bad code there, too." Of course bad code can come in any language; the point isn't about other languages, it's about PHP and the serious lack of attention to detail.
The recent XMLRPC security flaw comes to mind -- that would have (probably) never happened in
Re:We can't have "solutions" like this. (Score:2)
Perl has this powerful open() function that not only opens files, but can start whole process pipelines.
Any cgi-bin written in Perl has to be very careful not to allow user-passed data to be used to construct pathnames for file opens without very stringent checking of bad characters in names, and this checking can be difficult in environments that support Unicode. Ask Microsoft.
Sure it may be that more Perl developers are aware of this than PHP deve
Re:We can't have "solutions" like this. (Score:2)
Re:We can't have "solutions" like this. (Score:2)