MiniVend—the Electronic Shopping Cart
At the heart of MiniVend is the Products database. Normally, it is just an ASCII file with fields separated by tabs. The field names are given in the first row and MiniVend indexes the database with GDBM (GNU Database Manager) automatically. You can even hook up to a real SQL database through Perl's unique DBI interface, if you already have one.
You can update the database on the command line with the offline command, or if you just want to change one record, you can use the update command.
It is possible to import data from any source, provided the data can be formatted with the fields separated by tabs. If you want to adjust all the prices in the system, it is easy to do so with the commonadjust feature.
MiniVend records all sessions for future use. Obviously, some session data will become obsolete after a while, so it is a good idea to put an expire script in your crontab file:
44 4 * * * /home/httpd/mvend/bin/expireall -r
This will prevent your session databases from growing too large.
MiniVend is very impressive, almost awesome. This is software of a kind that other companies ask thousands of dollars (or euros) for, and MiniVend is free through the GPL. It is also a showpiece, demonstrating the versatility of Perl. A shopping cart system is not a small piece of code; MiniVend is a full-featured, powerful example.
MiniVend is a big system, not something you can cover in one session. It has scores of features I didn't even have time to try out yet. I've had a few problems with it, but I firmly believe that MiniVend is a system that can be used for any kind of electronic commerce. As I learn the features and study the code, I will become more familiar with it and can make it do all the things I want it to do.
If you're looking for a turn-key system, MiniVend is not it. On the other hand, if you are looking for a powerful, flexible and easy-to-use system, MiniVend is for you. The documentation is great, the source code is all there and if the support on the mailing list scales up a bit, there is nothing to fear.
Kaare Rasmussen (firstname.lastname@example.org) is a software engineer and developer, responsible for the software direction of a small Danish ISP known as Webline when work, family and other duties allow the time. Kaare has been working with almost all aspects of the IT industry for the last twenty years or so. He has written several books in Danish during the past five years—the latest one about using the Intranet with Linux.
|Reglue: Opening Up the World to Deserving Kids, One Linux Computer at a Time||Jul 29, 2014|
|diff -u: What's New in Kernel Development||Jul 23, 2014|
|Great Scott! It's Version 13!||Jul 21, 2014|
|Adminer—Better Than Awesome!||Jul 17, 2014|
|It Actually Is Rocket Science||Jul 16, 2014|
|Android Candy: Repix, Not Just Another Photo App||Jul 14, 2014|
- Download "Linux Management with Red Hat Satellite: Measuring Business Impact and ROI"
- Reglue: Opening Up the World to Deserving Kids, One Linux Computer at a Time
- Use Linux as a SAN Provider
- diff -u: What's New in Kernel Development
- NSA: Linux Journal is an "extremist forum" and its readers get flagged for extra surveillance
- Numerical Python
- RSS Feeds
- Tech Tip: Really Simple HTTP Server with Python
- Linux Systems Administrator
- Senior Perl Developer