配列$solution
は2次元です。その内容をSQLテーブルに保存する必要があります。ただし、保存する前に$solution[i][0]
、クエリの結果に属するものを確認する必要がありますSELECT num_arr FROM Schedule WHERE num_arr<>''
。
問題は行にあり$vals = implode(...)
ます。配列のi番目の行にコンマを挿入するにはどうすればよい$solution
ですか?これで、この行0,0,0,0
は正しい値ではなく文字列になります。
$columns_land = array("`num_arr`","`start`","`fin`","`way`");
$cols_land = implode(",",$columns_land);
for($i=0; $i<sizeof($solution); $i++) {
$vals = implode(',', array_map('implode_comma', $solution[$i]));
query_land = "INSERT INTO `Sequence` (" . $cols_land . ")
VALUES " . $vals . "
WHERE num_arr='".$solution[$i][0]."'
AND num_arr IN (SELECT num_arr FROM Schedule WHERE num_arr<>'')";
$result_land = execute_query($query_land);
}
function implode_comma($arr) {
return '(' . implode(',', $arr) . ')';
}