--- a/admin/linkAmendments.php +++ b/admin/linkAmendments.php @@ -1,15 +1,29 @@ 0 "; -$result = mysql_query($query); -while ($row = mysql_fetch_array($result, MYSQL_BOTH)) { - $result2 = mysql_query("UPDATE contractnotice SET childCN = '" . - $row['CNID'] . "', amendmentReason = '" . - $row['amendmentReason'] . "' where CNID = '" . - $row['parentCN'] . "';"); - if ($result2) echo $row['CNID'] . " linked to parent " . $row['parentCN'] . +$query = 'SELECT c."CNID",c."parentCN",c."amendmentReason",p."childCN" FROM contractnotice as c LEFT OUTER JOIN contractnotice as p on c."parentCN" = p."CNID" +WHERE +c."parentCN" > 0 AND p."childCN" IS NULL '; +$query = $conn->prepare($query); + $query->execute(); + if (!$query) { + databaseError($conn->errorInfo()); + } +foreach ($query->fetchAll() as $row) { + $conn->exec('UPDATE contractnotice SET "childCN" = \'' . + $row['CNID'] . '\', "amendmentReason" = \'' . + $row['amendmentReason'] . '\' where "CNID" = \'' . + $row['parentCN'] . '\';'); + echo 'UPDATE contractnotice SET "childCN" = \'' . + $row['CNID'] . '\', "amendmentReason" = \'' . + $row['amendmentReason'] . '\' where "CNID" = \'' . + $row['parentCN'] . '\';'; + $errors = $conn->errorInfo(); + + if ($errors[1] == 7 || $errors[1] ==0) + echo $row['CNID'] . " linked to parent " . $row['parentCN'] . "
\n"; - else "error" . mysql_error(); + else print_r($errors); + } +// also need to eliminate CN 100528/100529 - check for double parent CNs with no childCN, latest sequent CN id wins childCN = 0 ?>