I need to keep track of my customers

customer data
when they were billed last
what they were billed for

I want them to be able to access their statements online for what they were billed

obviously I need a backend- i was thinking about mySQL cause it is free and i will have less than 5000 customers.....

can i get away with access for something like this?

is there a simple and cheap software out there that has these features that i dont need to re-invent the wheel here?


Who is Participating?
You could use any database backend but MySQL is in my opinion the most widely supported application with PHP.  There is no question that the preference of the community is with MySQL and PHP ... and thus, the more opportunity for you to get the help you need in the future.  Cheers.

I wouldn't touch Access with a ten yard pole.
It is great for prototyping, ok for desktop applications, even for departmental tasks, but it is not robust enough nor secure enough for the internet.
Mysql is suitable for your task.
You can find hosting with MySql, even with MS-SQL, for a reasonable price.

Hi OptionsMM,

There are a ton of scripts available out there that could fit your needs.  You just need to go to ... I think what you will be looking for is a PHP + MySQL script as those are the most common.  You will need to have both installed
in order to make the scripts work.  You can check out to see how to install PHP + MySQL.  Good luck.  

Cloud Class® Course: CompTIA Cloud+

The CompTIA Cloud+ Basic training course will teach you about cloud concepts and models, data storage, networking, and network infrastructure.

OptionsMMAuthor Commented:
Do you think it is better to go with SQL server?  Would it be okay to use the Standard edition for this?
As well, MySQL is free!
OptionsMMAuthor Commented:
yes but is it true MySql does nor support relationships?  no referential integrety, etc?
You can use Access, provided the server supports it AND you don't have a lot of concurrent users. The number of records isn't the problem -- the number of concurrent users can be. As long as you're not expecting to have more than 25-50 simultaneous users (preferably fewer), Access would work fine.

However, that would mean that you'd need a Windows server, and that is usually more expensive than a Linux/Unix one.

Also, if you're planning on considerable growth, you would need to convert to something else later -- so it makes sense in that case to just go with MySQL or SQL from the start.

Security is also something to consider. You should go with SSL for checking financial records of any kind.
Since you have got only around 500 customers, you can very much use MS Access as a back end. It has got everything to manipulate the data required to be handled for those users. When it comes to reporting, you can do it using Crystal Report. If the data is not that sensitive( I understand its going to be only viewing of details) you dont need to bother much about security Issues. I can give you the best directory structure to avoid other ananymous users accessing database

          |------> DATA
          |                |--------> Access Data Files
          |------> WWWROOT
                            |-------->HTML & ASP Files

The website should be configured as to point to the WWWROOT folder. So that the Data Folder is not accesible by the Intruders. Internally u can refer the location of file as

Any further queries welcome

OptionsMM > yes but is it true MySql does nor support relationships?  no referential integrety, etc?

Not true. You can use the InnoDB Table type in MySQL to enforce referential integrity and foreign key constraints:

A good tutorial to get you started on MySQL Foreign Keys:
Not bothering with security? Hmm.

Use MySQL, it's free, fast and there are tons of friendly people willing to help you out if you get stuck. Open Source is great stuff.

To manage your db use a FREE utility called phpMyAdmin. You can download it, put it in a directory, and away you go, configuration is simple. Using phpMyAdmin I would just create a text-file and upload it probably in CSV format. Using php to format your results it would be easy.

this code would generate a page displaying your customer information.
$query = "SELECT * FROM customerTable WHERE custNumber = '$custNum'";
$result = mysql_query($query);
$row = mysql_fetch_row($result);

echo ''.$row[custNum].', '.$row[custName].''; // or any other fields that you want to display

If you already have a website that your customers are using, you probably already have some templates that you can throw a few PHP scripts in.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.