#!/usr/bin/php $name) { $ref[$name] = $idx; } print_r($ref); print_r($legenda); function check_col($ref, $col) { if (!isset($ref[$col])) fatal("column \"$col\" not found"); return $ref[$col]; } $llnr_idx = check_col($ref, 'Leerlingnummer'); $tv_idx = check_col($ref, 'Tijdvak'); //$tv_idx = 100; // for when data does not include tijdvak $subj_idx = check_col($ref, 'VakAfk'); $subj_long_idx = check_col($ref, 'Vak'); $cijfer_idx = check_col($ref, 'Cijfer'); $type_idx = check_col($ref, 'CijfertypeAfk'); $examen_idx = check_col($ref, 'Lichting'); while (($row = fgetcsv($fp, null, ',', '"', '\\'))) { //$row[$tv_idx] = 1; // for when data does not include tijdvak if ($row[$subj_long_idx] == 'rekenen 3F(rst)') continue; // negeer dit vak if ($row[$subj_idx] == 'maat') continue; // negeer dit vak if ($row[$subj_idx] == 'ckv') continue; // negeer dit vak $examen_id = db_get_id('examen_id', 'examen', 'examen', $row[$examen_idx], 'year_id', $year_id); $ppl_id = db_single_field("SELECT ppl_id FROM kldv.ppl WHERE ppl_login = ?", $row[$llnr_idx]); if (!$ppl_id) fatal("student {$row[$llnr_idx]} not found in kldv"); echo("ppl_id=$ppl_id\n"); $kandidaat_id = db_get_id('kandidaat_id', 'kandidaten', 'ppl_id', $ppl_id, 'examen_id', $examen_id); echo("kandidaat_id=$kandidaat_id\n"); if ($row[$subj_idx] == 'R3F') $row[$subj_idx] = 're'; else if ($row[$subj_idx] == 'Comb HAVO 1718' || $row[$subj_idx] == 'comb VWO 1718' || $row[$subj_idx] == 'comb VWO G 2021') $row[$subj_idx] = 'comb'; if ($row[$subj_idx] == 'ges-d') $row[$subj_idx] = 'ges'; if ($row[$subj_idx] == 'nat_i') $row[$subj_idx] = 'nat'; if ($row[$subj_idx] == 'gtc-p2') $row[$subj_idx] = 'gtc'; if ($row[$subj_idx] == 'gtc-p') $row[$subj_idx] = 'gtc'; $subj_id = db_single_field("SELECT subj_id FROM kldv.subj WHERE subj_abbrev = ?", $row[$subj_idx]); if (!$subj_id) { print_r($row); fatal("subject {$row[$subj_idx]} not found in kldv"); } /* eindcijfer berekenen we zelf */ if ($row[$type_idx] == 'EC') continue; $resultaat_id = db_get_id('resultaat_id', 'resultaat', 'kandidaat_id', $kandidaat_id, 'subj_id', $subj_id); $cijfer = trim(strtr($row[$cijfer_idx], ',', '.')); echo("cijfer=$cijfer\n"); switch ($row[$type_idx]) { case 'SE': echo("SE {$row[$cijfer_idx]}\n"); $old_cijfer = db_single_field("SELECT se FROM resultaat WHERE resultaat_id = ?", $resultaat_id); if ($old_cijfer == '' && $cijfer != '') db_exec("UPDATE resultaat SET se = ? WHERE resultaat_id = ?", $cijfer, $resultaat_id); else if ($old_cijfer != $cijfer) { print_r($row); fatal("cijfer resultaat_id=$resultaat_id subj_id=$subj_id ({$row[$subj_idx]}) kandidaat_id=$kandidaat_id is veranderd van $old_cijfer naar $cijfer?!?!"); } break; case 'CE': $tijdvak = $row[$tv_idx]; if ($tijdvak != 1 && $tijdvak != 2 && $tijdvak != 3) fatal("tijdvak must be 1 or 2"); $tijdvakresultaat_id = db_get_id('tijdvakresultaat_id', 'tijdvakresultaat', 'resultaat_id', $resultaat_id, 'tijdvak', $tijdvak); echo("CE {$row[$cijfer_idx]}\n"); $old_cijfer = db_single_field("SELECT ce FROM tijdvakresultaat WHERE tijdvakresultaat_id = ?", $tijdvakresultaat_id); echo("OLD cijfer {$old_cijfer}\n"); if ($old_cijfer == '' && $cijfer != '') db_exec("UPDATE tijdvakresultaat SET ce = ? WHERE tijdvakresultaat_id = ?", $cijfer, $tijdvakresultaat_id); else if ($old_cijfer != $cijfer) { print_r($row); fatal("cijfer resultaat_id=$resultaat_id tijdvakresultaat_id=$tijdvakresultaat_id subj_id=$subj_id ({$row[$subj_idx]}) kandidaat_id=$kandidaat_id is veranderd van $old_cijfer naar $cijfer?!?!"); } break; // case 'EC': // echo("CE {$row[$cijfer_idx]}\n"); // break; } //print_r($row); //break; } //echo("llnr_idx=$llnr_idx\n"); //$examen_id = db_get_id('examen_id', 'examen', 'examen', 'VWO 2019-2022', 'year_id', $year_id); // //echo("examen_id=$examen_id\n"); fclose($fp); ?>