affordit Posted January 12, 2008 Share Posted January 12, 2008 I am inserting into two tables with one insert but I am getting two records in the first table and one in the other. Here is the code <? include("k_falls_dbinfo2.inc.php"); mysql_connect(mysql,$username,$password); @mysql_select_db($database) or die( "Unable to select database"); $query = "INSERT INTO products VALUES ('','$bname','$sphone','$category','$upc','$brand','$model','$description','$extra','$price','$website')"; mysql_query($query); $result = mysql_query( $query ); # if the user submitted a CATEGORY if( isset($category) ) { # get the user id $id = mysql_insert_id( ); # and insert the CATEGORY details $query = "INSERT INTO categories VALUES ('$id','$category')"; $result = mysql_query( $query ); } mysql_free_result( $result ); mysql_close(); // ----------------------------- ?> Link to comment https://forums.phpfreaks.com/topic/85627-solved-geting-duplicate-records-with-one-insert-help/ Share on other sites More sharing options...
twostars Posted January 12, 2008 Share Posted January 12, 2008 I am inserting into two tables with one insert but I am getting two records in the first table and one in the other. Here is the code <? include("k_falls_dbinfo2.inc.php"); mysql_connect(mysql,$username,$password); @mysql_select_db($database) or die( "Unable to select database"); $query = "INSERT INTO products VALUES ('','$bname','$sphone','$category','$upc','$brand','$model','$description','$extra','$price','$website')"; mysql_query($query); $result = mysql_query( $query ); # if the user submitted a CATEGORY if( isset($category) ) { # get the user id $id = mysql_insert_id( ); # and insert the CATEGORY details $query = "INSERT INTO categories VALUES ('$id','$category')"; $result = mysql_query( $query ); } mysql_free_result( $result ); mysql_close(); // ----------------------------- ?> mysql_query($query); $result = mysql_query( $query ); You're executing it twice. Link to comment https://forums.phpfreaks.com/topic/85627-solved-geting-duplicate-records-with-one-insert-help/#findComment-436973 Share on other sites More sharing options...
Ken2k7 Posted January 12, 2008 Share Posted January 12, 2008 This line: mysql_connect(mysql,$username,$password); Is mysql a constant? If not, it needs to be in quotes. Link to comment https://forums.phpfreaks.com/topic/85627-solved-geting-duplicate-records-with-one-insert-help/#findComment-436974 Share on other sites More sharing options...
twostars Posted January 12, 2008 Share Posted January 12, 2008 This line: mysql_connect(mysql,$username,$password); Is mysql a constant? If not, it needs to be in quotes. Due to the fact that he said it was INSERTing rows, I'm assuming the connection is 100% okay. Missed mysql_query($query); $result = mysql_query( $query ); When going through it twice. When testing, I also noted that the ID couldn't be retrieved. Probably just how my temporary table was set out, but all looked fine. So, I wrote the query explicitly. ID is now retrieved. $query = "INSERT INTO products (bname, sphone, category, upc, brand, model, description, extra, price, website) VALUES ('$bname','$sphone','$category','$upc','$brand','$model','$description','$extra','$price','$website')"; Obviously change the column names. Link to comment https://forums.phpfreaks.com/topic/85627-solved-geting-duplicate-records-with-one-insert-help/#findComment-436976 Share on other sites More sharing options...
affordit Posted January 12, 2008 Author Share Posted January 12, 2008 When my customers enter a new product they enter a category for that product. When the query runs it inserts the product and checks to see if a category was entered and if it was it inserts it into the other table. But for some reason it inserts the product twice. Link to comment https://forums.phpfreaks.com/topic/85627-solved-geting-duplicate-records-with-one-insert-help/#findComment-436978 Share on other sites More sharing options...
twostars Posted January 12, 2008 Share Posted January 12, 2008 When my customers enter a new product they enter a category for that product. When the query runs it inserts the product and checks to see if a category was entered and if it was it inserts it into the other table. But for some reason it inserts the product twice. As I've already said, you're executing the same INSERT query twice: --v mysql_query($query); $result = mysql_query( $query ); Link to comment https://forums.phpfreaks.com/topic/85627-solved-geting-duplicate-records-with-one-insert-help/#findComment-436980 Share on other sites More sharing options...
affordit Posted January 12, 2008 Author Share Posted January 12, 2008 Thanks all Im new at this and it took me awhile to figure out what twostars was refering to but I got it. THANKS Link to comment https://forums.phpfreaks.com/topic/85627-solved-geting-duplicate-records-with-one-insert-help/#findComment-437034 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.