Jump to content

Archived

This topic is now archived and is closed to further replies.

vietboy505

move data from table to another

Recommended Posts

I want to move the row from OLD TABLE to NEW TABLE where:
the OLD TABLE, status == 'S' & the dateModify is over a week, move that row (all data to the NEW TABLE).
Then delete that row on the OLD TABLE.
I try the code below, nothing happen, no data is output. I try to change to +1 day, it's still same but it should display the data a day old.

How can I fix that?

[code]
<?php include("config.php"); ?>
<?php
//INFO from mySQL
//id INT NOT NULL AUTO_INCREMENT,
//PRIMARY KEY(id),
//name VARCHAR(30),
//status VARCHAR(1),
//dateModify TIMESTAMP,  
$overWeek=date('Y-m-d H:i:s', strtotime('+1 week'));
$statusCheck="S";
mysql_select_db($dbnameNAME) or die(mysql_error());

$result = mysql_query("INSERT INTO $tableNEW
        (name, status, dateModify)
        SELECT name,status,dateModify FROM $tableOLD WHERE status = '$statusCheck' AND dateModify >= '$overWeek' " )
    or die($errCon . mysql_error());  

?>

<?php

mysql_select_db($dbnameNAME) or die(mysql_error());
$result2 = mysql_query("SELECT * FROM $tableNEW ")
or die(mysql_error());

while($row2 = mysql_fetch_array($result2)) {

    echo $row2['name'];
    echo $row2['status'];
    echo $row2['dateModify'];

}

//free up memory
mysql_free_result($result2);
?>
[/code]

Share this post


Link to post
Share on other sites
You cannot combine queries like that. You have to run the SELECT query, store the values in variables and then create a second query for the insert.

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.