hello there, i need to duplicate some items from 2 tables but at the same time update one of the fields to a reference id of another table.
I'm midway from building a function for it but it seems a bit long winded and think there' maybe a better way of doing it. Always keen to improve my scripting!
If anyone has any pointers or ideas please let me know. The function in progress is below.
function duplicateEmail($emailID){
$query = "SELECT * FROM email WHERE email_ID='$emailID'";
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
while ($row = mysql_fetch_array($result)) {
$emailTitle = $row['email_subject'];
$emailMailinglist = $row['email_mailinglist'];
$emailTemplate = $row['email_template'];
$emailTestAddress = $row['email_testAddress'];
$emailNotes = $row['email_notes'];
$newEmailQuery ="INSERT INTO email
(email_created,email_subject,email_mailinglist,email_template,email_notes,email_testAddress)
VALUES
('".date('YmdGi')."','$emailTitle copy','$emailMailinglist','$emailTemplate','$emailNotes','$emailTestAddress')";
$newEmailresult = mysql_query($newEmailQuery) or die ("Error in query: $query. " . mysql_error());
$duplicateId=mysql_insert_id();
$dupElementsQuery = "SELECT * FROM emailcontent, emailsubcontent WHERE emailcontent_emailID='$emailID' AND emailsubcontent_emailID='$emailID'";
$dupElementsResult = mysql_query($dupElementsQuery) or die ("Error in query: $query. " . mysql_error());
while ($row = mysql_fetch_array($dupElementsResult)) {
// select relevent rows, duplicate them and set *_emailID to $duplicateId
}
}
return $duplicateId;
}