WebProWorld Part of WebProNews.com
Page One Link To Us Edit Profile Private Messages Archives FAQ RSS Feeds  
 

Go Back   WebProWorld > Webmaster, IT and Security Discussion > Database Discussion Forum
Subscribe to the Newsletter FREE!


Register FAQ Members List Calendar Arcade Chatbox Mark Forums Read

Database Discussion Forum This is the place to find help resolving those nagging questions you have about implementing and using all kinds of databases. Need help writing a query? Need an opinion on Oracle? Post here!

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 12-27-2007, 01:25 PM
dak888 dak888 is offline
WebProWorld Member
 

Join Date: Nov 2006
Posts: 69
dak888 RepRank 0
Default PHP & MySql if....

Hello all,

Here is the set-up.
MySql table that has 6 columns. Vend1, Vend2, Vend3 and odate1, odate2, odate3.

I want to update or insert a new record on submit. If can write an if statement in PHP no problem that will either update or insert the new record based on if one exists or not.

The problem:
If updating the record, I need it to check whether vend1,2,3 and odate1,2,3 has a value. If it does, then write to the next available column.

Ex: vend1 and odate1 have values but vend2 and odate2 do not. So it would go, vend1 and odate1 are not empty, write the information to vend2 and odate 2 which are empty.

Hopefully that makes sense. I just can't wrap my head around how to do it!

Thank you for any direction.

DaK
Reply With Quote
  #2 (permalink)  
Old 12-28-2007, 05:22 PM
LLFitness_Derek LLFitness_Derek is offline
WebProWorld Pro
 

Join Date: Nov 2004
Location: Davis, North Carolina
Posts: 197
LLFitness_Derek RepRank 0
Default Re: PHP & MySql if....

This post was a little confusing but after reading it several times I believe I can offer a solution. First I will repeat what you stated but a little clearer to make sure I am getting the picture.

Database [VEND_DATE]
Fields [Vend1, Vend2, Vend3, odate1, odate2, odate3]

You are updating VEND_DATE with the value $_GET['new_vend'] and $_GET['new_date'].

First I need to say you can not update a record based on this database structure. This table does not have a primary key used as an identifier. How do you identify the data that you are updating. How can you tell between data you have already entered and the data you are updating.

Would this database structure fit your purpose better:
Database [VEND_DATE]
Fields [Vend_id, Vend_name, Vend_date]

From here you can run your update query:
UPDATE VEND_DATE SET Vend_date='whatever_date' WHERE Vend_id='whatever_id'

Or a SELECT query such as:
SELECT Vend_date FROM VEND_DATE WHERE Vend_id='whatever_id'

Am I getting the picture? If not can you provide a little more information on what you are trying to do. Give a real world example to make things clearer.
Reply With Quote
  #3 (permalink)  
Old 01-02-2008, 09:25 AM
dak888 dak888 is offline
WebProWorld Member
 

Join Date: Nov 2006
Posts: 69
dak888 RepRank 0
Default Re: PHP & MySql if....

Hello LLFitness_Derek. Perhaps that's why I haven't got a lot of responses, lol!

The table actually has 22 columns with a column called ord_num (order number) that serves as it's unique identifier. The operation I'm trying to work on only updates the 6 columns that I mentioned in my first post.

Sorry for any confusion, still very new to this...

This table stores some extra information about a customers order.
vend1, 2 and 3 are for names of vendors and odate1, 2, 3 are dates in which orders are placed. Vendors and order dates are related to each other in that each vendor entry should have a corresponding order date. So if there is an entry in the vendor column (say vend1) then there should be a corresponding date in the order date (odate1). This way we know that the product was order from X vendor on X date.

What I'm trying to do is when one of our reps hits a submit button to send the order to the vendor, the vendor name and order date are updated in the table automatically.

Now I've made room for 3 vendors and corresponding order dates (which "should" be more than enough) in the table. However, on rare occasion, we do send orders to more than one vendor so I want to make sure we don't over write any information that is already in the table.

So that's where my original post comes from. I don't want to over write vendor and order date information if there is already some in the table. I just can't figure out how to do that.

Hopefully that makes a bit more sense.

Thanks,

DaK
Reply With Quote
  #4 (permalink)  
Old 01-15-2008, 02:09 PM
LLFitness_Derek LLFitness_Derek is offline
WebProWorld Pro
 

Join Date: Nov 2004
Location: Davis, North Carolina
Posts: 197
LLFitness_Derek RepRank 0
Default Re: PHP & MySql if....

Dak

I'm pretty sure I get most of the picture, unfortunately you will need to alter your database structure to get the desired results. First you need to familiarize with the database syntax: Database, Table, Field, records, etc... Makes it easier for you to understand exactly what I am suggesting.

About the structure... You should never create table fields by "Guessing" how many vendors and orders you will have.

It sounds like you need two tables:
1. Vendors
2. Orders

The table Vendors should have these type of fields(columns):
vendor_id(auto-increment) Primary Key
vendor_name
vendor_description
etc...

The table Orders should have these types of fields(columns):
order_id(auto-increment) Primary Key
vendor_id (reference to the vendor_id in table Vendors)
order_date
order_time
order_total
etc...

When a vendor is logged in he/she should have a vendor id. When they hit the submit button a query should run in your database:
INSERT INTO `Orders` VALUES(' ',vendor_id,date,time,total, etc)

When you want to view the data you would run queries such as:
SELECT order_id, order_date, etc... FROM `Orders` WHERE vendor_id="any_id" ORDER BY time DESC LIMIT 3

This would return the newest three orders from the vendor you specify. LIMIT controls the MAX number of results.

Is this more along the lines of what you are looking to do?

Hope im getting warmer.

Derek
Reply With Quote
  #5 (permalink)  
Old 04-04-2008, 11:23 PM
John Redfield John Redfield is offline
WebProWorld Member
 

Join Date: Jun 2006
Location: Third Stone from the Sun
Posts: 25
John Redfield RepRank 0
Default Re: PHP & MySql if....

I agree with Derek, you will run into trouble later on if you dont normalize your database atleast to 3NF.

If you are not familair with relational database design there are good tutoitals online, here is one: Database Normalization Basics for Developers

John
__________________
Peace
Reply With Quote
Reply

  WebProWorld > Webmaster, IT and Security Discussion > Database Discussion Forum


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Which one? PHP or MySQL dak888 Database Discussion Forum 17 11-29-2007 02:26 AM
CSV to mySQL richkoi Database Discussion Forum 14 09-14-2006 03:42 PM
mySQL 5 vs mySQL 4 chingumbe IT Discussion Forum 6 05-24-2006 06:54 PM
MySQL 5.0 is out TrafficProducer Database Discussion Forum 15 11-29-2005 10:12 AM
MySQL 4.1 case510 Database Discussion Forum 2 04-17-2004 05:42 PM


Search Engine Friendly URLs by vBSEO 3.0.0