Allen,
Use mysql_insert_id(). This will return the id of the last record
inserted.
Take care,
Floyd
On Oct 28, 2009, at 3:21 PM, Allen McCabe wrote:
Hey everyone, I have an issue.
I need my (employee) users to be able to insert shows into the our
MySQL
database and simultaneously upload an image file (and store the path
in the
table).
I have accomplished this with a product-based system (adding
products and
uploading images of the product), and accomplished what I needed
because the
product name was unique; I used the following statements:
$prodName = $_POST['prodName'];
$prodDesc = $_POST['prodDesc'];
$prodPrice = $_POST['prodPrice'];
$query2 = "INSERT INTO product (pID, pName) VALUES (NULL,
'$prodName');";
$result2 = mysql_query($query2) or die(mysql_error());
$query = "SELECT pID FROM product WHERE pName = '$prodName';";
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result) or die (mysql_error());
$prodID = $row['pID'];
I had to select the new product to get the product id to use in the
new
unique image name.
The problem I am facing now, is that with the shows that my users
add will
have multitple show times; this means non-unique titles. In fact,
the only
unique identifier is the show id. How can I insert something
(leaving the
show_id field NULL so that it is auto-assigned the next ID number),
and then
immediately select it?
PHP doesn't seem to be able to immediately select something it has
just
inserted, perhaps it needs time to process the database update.
Here is the code I have now (which does not work):
$query2 = "INSERT INTO afy_show (show_id, show_title, show_day_w,
show_month, show_day_m, show_year, show_time, show_price,
show_description,
show_comments_1, show_seats_reqd) VALUES (NULL, '{$show_title}',
'{$show_day_w}', '{$show_month}', '{$show_day_m}', '{$show_year}',
'{$show_time}', '{$show_price}', '{$show_description}',
'{$show_comments_1}', '{$show_seats_reqd}');";
$result2 = mysql_query($query2) or die(mysql_error());
$query3 = "SELECT * FROM afy_show WHERE *show_id = '$id'*;";
$result3 = mysql_query($query3) or die('Record cannot be located!' .
mysql_error());
$row3 = mysql_fetch_array($result3);
$show_id = $row3['show_id'];
How do I select the item I just inserted to obtain the ID number??
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php