vietboy505 Posted March 24, 2006 Share Posted March 24, 2006 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()); ?><?phpmysql_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 memorymysql_free_result($result2);?>[/code] Quote Link to comment Share on other sites More sharing options...
ober Posted March 24, 2006 Share Posted March 24, 2006 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. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.