Forum Moderators: open

Message Too Old, No Replies

Newbie - help me start off on the right direction!

         

artsygal

11:02 pm on Mar 23, 2006 (gmt 0)

10+ Year Member



I have an idea for a site - and plain HTML just isn't going to cut it any more. Guess I'm going to have to venture into the land of databases. Unfortunately, all I know aobut them comes from tweaking my phpBB forum a bit. I am however, willing and able to learn, if I just knew WHERE to start from.

I'm essentially trying to create a crafting site - several common projects will be listed, and people will come and enter data about their version of that project - which specific materias used, changes made, etc. Visitors to the site should be able to search by project and see all the variations others have submitted - OR search by a specific material and find all the projects it was used in.

That's about it - sounds fairly simple on paper - can someone suggest a good starting point for me on what I need to read/download/learn to make this happen? At the moment, the only thing I have found is PHPMagic, from websitedatabases.com .. from what I can see, it will help me do all this, generate the webpages for me, etc etc. Is this the best route for a newbie at databases like me to go at it from, or is there a better way?

Looking forward to learning more!
J

Demaestro

12:00 am on Mar 24, 2006 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member Top Contributors Of The Month



I would start with attempting to get a free version of MySql up running on your server and do a few tests with setting up a connection to the database from your php code.

Then I would set up a fake table or two and write a few methods that will insert and update data as well as a few that will select data and then you can practice drawing the selected data to the screen. Once you can do these above things, then you are half way to glory.

If you need any help with SQL syntax please post back and I would love to help.

marcmesa

8:34 pm on Mar 25, 2006 (gmt 0)

10+ Year Member



Hello, it sounds like a CVS repository system. You can search for CVS.

FourDegreez

12:52 am on Mar 26, 2006 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



PHP and a SQL database like MySQL could easily do what you want to do. As in all things there is a bit of a learning curve, but once you learn it you can apply it to anything you need to do. As a simple example, you could have four tables in the database:

project
-------
project_id
name

project_version
---------------
project_version_id
project_id
creator_name
creator_email
description

material
--------
material_id
name
description

version_uses_material
---------------------
material_id
project_version_id

So your project table holds the list of projects. The different versions of projects that people create would be kept in the project_version table, which has a reference to the project table.

SELECT project_version_id, creator_name FROM project_version WHERE project_id = 123

..would return all instances that are a user created version of project #123.

Your material table would be a master list of all materials, and the version_uses_material table would be a mapping between materials and project versions. So say you have a material #100:

SELECT a.project_version_id, a.creator_name FROM project_version a, project_uses_material b WHERE b.material_id = 100 AND a.project_version_id=b.project_version_id

..that would return all project versions using material #100.

Anyway, just tossing some ideas out there.

artsygal

11:11 pm on Mar 27, 2006 (gmt 0)

10+ Year Member



Thanks for the feedback everyone...

So far it seems my ideas are on track - what I need help with is the actual implementation of this. I'm one of those people who can dance circles around others when it comes to planning out what the program is going to do - and get stuck with the actual syntax of the code. Can anyone point me to a couple of good resources on where I can learn the actual syntax of whatever language it is that I'll be best of using to do something like this? I already kinda sorta have my tables and fields planned out - it's a matter of actually learning how to write and interact with the database that I don't know how to do.

Thanks again!
Jas