Hi Paul!
Well, I tested it here and got results as expected, see:
Code: Select all
<?php
$td1_docNum = "a32516t"; // instrument
$td1 = "150000"; // amount
$td1_date = "12/17/73"; // date
$td2_docNum = "eeet53421"; // instrument2
$td2 = "15000"; // amount2
$td2_date = "12/17/79"; // date2
$td3_docNum = "333";
$td3 = "";
$td3_date = "";
$td4_docNum = "444";
$td4 = "";
$td4_date ="";
$td5_docNum = "555";
$td5 = "";
$td5_date = "";
$td6_docNum = "666";
$td6 = "";
$td6_date = "";
$td7_docNum = "777";
$td7 = "";
$td7_date = "";
$td8_docNum = "888";
$td8 = "";
$td8_date = "";
$td9_docNum = "999";
$td9 = "";
$td9_date = "";
$td10_docNum = "101010";
$td10 = "";
$td10_date = "";
// This array was grabbed from db1:
$array = array($td1_docNum, $td1, $td1_date,
$td2_docNum, $td2, $td2_date,
$td3_docNum, $td3, $td3_date,
$td4_docNum, $td4, $td4_date,
$td5_docNum, $td5, $td5_date,
$td6_docNum, $td6, $td6_date,
$td7_docNum, $td7, $td7_date,
$td8_docNum, $td8, $td8_date,
$td9_docNum, $td9, $td9_date,
$td10_docNum, $td10, $td10_date);
$size = sizeof($array) / 3;
$data_sets = array();
for ($i = 0; $i < $size; $i++) {
$slice = array_slice($array, 3*$i, 3);
$date = explode('/', $slice[2]);
if (empty($slice[2]))
$data_sets[] = $slice;
else {
$slice[2] = date('Y-m-d', strtotime($slice[2]));
$data_sets[$slice[2]] = $slice;
}
}
ksort($data_sets);
$size = sizeof($data_sets);
$i = 0;
$values = '';
foreach ($data_sets as $set)
$values .= implode("', '", $set) . ((++$i < $size) ? "', '" : "");
$sql = "INSERT INTO table_name_on_db2 VALUES(null, '$values');";
echo "$sql\n";
?>
<?php
$td1_docNum = "a32516t"; // instrument
$td1 = "150000"; // amount
$td1_date = "12/17/73"; // date
$td2_docNum = "eeet53421"; // instrument2
$td2 = "15000"; // amount2
$td2_date = "12/17/79"; // date2
$td3_docNum = "333";
$td3 = "";
$td3_date = "";
$td4_docNum = "444";
$td4 = "";
$td4_date ="";
$td5_docNum = "555";
$td5 = "";
$td5_date = "";
$td6_docNum = "666";
$td6 = "";
$td6_date = "";
$td7_docNum = "777";
$td7 = "";
$td7_date = "";
$td8_docNum = "888";
$td8 = "";
$td8_date = "";
$td9_docNum = "999";
$td9 = "";
$td9_date = "";
$td10_docNum = "101010";
$td10 = "";
$td10_date = "";
// This array was grabbed from db1:
$array = array($td1_docNum, $td1, $td1_date,
$td2_docNum, $td2, $td2_date,
$td3_docNum, $td3, $td3_date,
$td4_docNum, $td4, $td4_date,
$td5_docNum, $td5, $td5_date,
$td6_docNum, $td6, $td6_date,
$td7_docNum, $td7, $td7_date,
$td8_docNum, $td8, $td8_date,
$td9_docNum, $td9, $td9_date,
$td10_docNum, $td10, $td10_date);
$size = sizeof($array) / 3;
$data_sets = array();
$empty_data_sets = array();
for ($i = 0; $i < $size; $i++) {
$slice = array_slice($array, 3*$i, 3);
$date = explode('/', $slice[2]);
if (empty($slice[2]))
$empty_data_sets[] = $slice;
else {
$slice[2] = date('Y-m-d', strtotime($slice[2]));
$data_sets[$slice[2]] = $slice;
}
}
ksort($data_sets);
$data_sets = array_merge($data_sets, $empty_data_sets);
$size = sizeof($data_sets);
$i = 0;
$values = '';
foreach ($data_sets as $set)
$values .= implode("', '", $set) . ((++$i < $size) ? "', '" : "");
$sql = "INSERT INTO table_name_on_db2 VALUES(null, '$values');";
echo "$sql\n";
?>
output:
Code: Select all
INSERT INTO table_name_on_db2 VALUES(null, '333', '', '', '444', '', '', '555', '', '', '666', '', '', '777', '', '', '888', '', '', '999', '', '', '101010', '', '', 'a32516t', '150000', '1973-12-17', 'eeet53421', '15000', '1979-12-17');
INSERT INTO table_name_on_db2 VALUES(null, 'a32516t', '150000', '1973-12-17', 'eeet53421', '15000', '1979-12-17', '333', '', '', '444', '', '', '555', '', '', '666', '', '', '777', '', '', '888', '', '', '999', '', '', '101010', '', '');
Um grande abraço,
Pablo.