echo ''."\n"; $jednotky = Array(); function Najdi($ind, $text){ global $jednotky; $hodnota = ''; if (StrPos (' '.$text, "WU name: ")) { $hodnota = str_replace("WU name: ", "", $text); $jednotky[$ind][2] = $hodnota; } elseif (StrPos (' '.$text, "name: ")) { $hodnota = str_replace("name: ", "", $text); $jednotky[$ind][1] = $hodnota; } elseif (StrPos (' '.$text, "project URL: ")) { $hodnota = str_replace("project URL: ", "", $text); $jednotky[$ind][3] = $hodnota; } elseif (StrPos (' '.$text, "report deadline: ")) { $hodnota = str_replace("report deadline: ", "", $text); $jednotky[$ind][4] = $hodnota; } elseif (StrPos (' '.$text, "ready to report: ")) { $hodnota = str_replace("ready to report: ", "", $text); $jednotky[$ind][5] = $hodnota; } elseif (StrPos (' '.$text, "got server ack: ")) { $hodnota = str_replace("got server ack: ", "", $text); $jednotky[$ind][6] = $hodnota; } elseif (StrPos (' '.$text, "final CPU time: ")) { $hodnota = str_replace("final CPU time: ", "", $text); $jednotky[$ind][7] = $hodnota; } elseif (StrPos (' '.$text, "scheduler state: ")) { $hodnota = str_replace("scheduler state: ", "", $text); $jednotky[$ind][9] = $hodnota; } elseif (StrPos (' '.$text, "active_task_state: ")) { $hodnota = str_replace("active_task_state: ", "", $text); $jednotky[$ind][13] = $hodnota; } elseif (StrPos (' '.$text, "state: ")) { $hodnota = str_replace("state: ", "", $text); $jednotky[$ind][8] = $hodnota; } elseif (StrPos (' '.$text, "exit_status: ")) { $hodnota = str_replace("exit_status: ", "", $text); $jednotky[$ind][10] = $hodnota; } elseif (StrPos (' '.$text, "signal: ")) { $hodnota = str_replace("signal: ", "", $text); $jednotky[$ind][11] = $hodnota; } elseif (StrPos (' '.$text, "suspended via GUI: ")) { $hodnota = str_replace("suspended via GUI: ", "", $text); $jednotky[$ind][12] = $hodnota; } elseif (StrPos (' '.$text, "stderr_out: ")) { $hodnota = str_replace("stderr_out: ", "", $text); $jednotky[$ind][14] = $hodnota; } elseif (StrPos (' '.$text, "app version num: ")) { $hodnota = str_replace("app version num: ", "", $text); $jednotky[$ind][15] = $hodnota; } elseif (StrPos (' '.$text, "checkpoint CPU time: ")) { $hodnota = str_replace("checkpoint CPU time: ", "", $text); $jednotky[$ind][16] = $hodnota; } elseif (StrPos (' '.$text, "current CPU time: ")) { $hodnota = str_replace("current CPU time: ", "", $text); $jednotky[$ind][17] = $hodnota; } elseif (StrPos (' '.$text, "fraction done: ")) { $hodnota = str_replace("fraction done: ", "", $text); $jednotky[$ind][18] = $hodnota; } elseif (StrPos (' '.$text, "swap size: ")) { $hodnota = str_replace("swap size: ", "", $text); $jednotky[$ind][19] = $hodnota; } elseif (StrPos (' '.$text, "working set size: ")) { $hodnota = str_replace("working set size: ", "", $text); $jednotky[$ind][20] = $hodnota; } elseif (StrPos (' '.$text, "estimated CPU time remaining: ")) { $hodnota = str_replace("estimated CPU time remaining: ", "", $text); $jednotky[$ind][21] = $hodnota; } elseif (StrPos (' '.$text, "supports graphics: ")) { $hodnota = str_replace("supports graphics: ", "", $text); $jednotky[$ind][22] = $hodnota; } else { } } $soubor = current($_POST); $index = 0; $pole = explode ("\n", $soubor); $radku = count($pole); echo 'POCET=['.$radku.']'; for($i=0;$i<$radku;$i++) { $radek = trim($pole[$i]); if (StrPos ($radek, ") -----------")) { $index = str_replace(") -----------", "", $radek); } else { if ($index != 0) { Najdi($index, $radek); } } } $conn = MySQL_Connect(CNT_HOST, CNT_USERNAME, CNT_PASSWORD) or Die(MySQL_Error()); MySQL_Select_Db(CNT_DBNAME) or Die(MySQL_Error()); MySQL_Query("SET NAMES 'utf8';"); MySQL_Query("DELETE FROM `TEAM_PC_WU` WHERE `PC_NAME` = \"".$_GET["pc_name"]."\""); $chyba = mysql_error(); if ( $chyba == "" ) { echo 'SMAZANO_WU '."\n"; } else { echo 'NESMAZANO_WU CHYBA ['.$chyba.'] '."\n"; } MySQL_Query("DELETE FROM `TEAM_PC_WU_OTHER` WHERE `PC_NAME` = \"".$_GET["pc_name"]."\""); $chyba = mysql_error(); if ( $chyba == "" ) { echo 'SMAZANO_OTHER '."\n"; } else { echo 'NESMAZANO_OTHER CHYBA ['.$chyba.'] '."\n"; } /* 1 name: 2 WU name: 3 project URL: 4 report deadline: 5 ready to report: 6 got server ack: 7 final CPU time: 8 state: 9 scheduler state: 10 exit_status: 11 signal: 12 suspended via GUI: 13 active_task_state: 14 stderr_out: 15 app version num: 16 checkpoint CPU time: 17 current CPU time: 18 fraction done: 19 swap size: 20 working set size: 21 estimated CPU time remaining: 22 supports graphics: */ $ostatni = array(); for($i=1;$i<=$index;$i++) { if ( ($jednotky[$i][9] != 0) || ($jednotky[$i][8] == 5) ) { /* state: 5 ... je hotova active_task_state: <> 0 ... je aktivni ... povita se */ /* echo 'Hodnota 1.1 = '.$jednotky[$i][1]."\n"; // Nazev (zkratit na unosnou miru) echo 'Hodnota 1.2 = '.$jednotky[$i][2]."\n"; echo 'Hodnota 1.3 = '.$jednotky[$i][3]."\n"; // Projekt (dohledat v seznamu) echo 'Hodnota 1.4 = '.$jednotky[$i][4]."\n"; // Odevdat do "Thu Sep 10 13:11:00 2009" echo 'Hodnota 1.5 = '.$jednotky[$i][5]."\n"; echo 'Hodnota 1.6 = '.$jednotky[$i][6]."\n"; echo 'Hodnota 1.7 = '.$jednotky[$i][7]."\n"; // Celkovy procesorovy cas (state:5 ... je hotovo) echo 'Hodnota 1.8 = '.$jednotky[$i][8]."\n"; echo 'Hodnota 1.9 = '.$jednotky[$i][9]."\n"; echo 'Hodnota 1.10 = '.$jednotky[$i][10]."\n"; echo 'Hodnota 1.11 = '.$jednotky[$i][11]."\n"; echo 'Hodnota 1.12 = '.$jednotky[$i][12]."\n"; echo 'Hodnota 1.13 = '.$jednotky[$i][13]."\n"; // Stav (1 - Pocitam, 9 - Cekam na zpracovani) echo 'Hodnota 1.14 = '.$jednotky[$i][14]."\n"; echo 'Hodnota 1.15 = '.$jednotky[$i][15]."\n"; echo 'Hodnota 1.16 = '.$jednotky[$i][16]."\n"; echo 'Hodnota 1.17 = '.$jednotky[$i][17]."\n"; // Procesorovy cas "6821.719000" echo 'Hodnota 1.18 = '.$jednotky[$i][18]."\n"; // Prubeh % (vynasobit 100) "0.801600" echo 'Hodnota 1.19 = '.$jednotky[$i][19]."\n"; echo 'Hodnota 1.20 = '.$jednotky[$i][20]."\n"; echo 'Hodnota 1.21 = '.$jednotky[$i][21]."\n"; // Dokonci za "1799.276498" echo 'Hodnota 1.22 = '.$jednotky[$i][22]."\n"; echo '--------------------------------'."\n"; */ $set = array(); $set["PC_NAME"] = "'".$_GET["pc_name"]."'"; $set["PORADI"] = "'".$i."'"; $set["NAME"] = "'".addslashes($jednotky[$i][1])."'"; $set["PROJEKT"] = "'".addslashes($jednotky[$i][3])."'"; $odevzdat_do = strtotime($jednotky[$i][4]); $odevzdat_do = StrFTime("%Y-%m-%d %H:%M:%S", $odevzdat_do); $set["ODEVZDAT_DO"] = "'".$odevzdat_do."'"; $set["CPU_CAS_CELKEM"] = "'".$jednotky[$i][7]."'"; $set["CPU_CAS"] = "'".$jednotky[$i][17]."'"; $set["STAV"] = "'".$jednotky[$i][13]."'"; $set["PRUBEH"] = "'".$jednotky[$i][18]."'"; $set["DOKONCI_ZA"] = "'".$jednotky[$i][21]."'"; MySQL_Query("INSERT INTO `TEAM_PC_WU` (" . implode(", ", array_keys($set)) . ") VALUES (" . implode(", ", $set) . ")"); $chyba = mysql_error(); if ( $chyba == "" ) { echo 'VLOZENO_WU '."\n"; } else { echo 'NEVLOZENO_WU CHYBA ['.$chyba.'] '."\n"; } } else { $l_projekt = addslashes($jednotky[$i][3]); if (array_key_exists($l_projekt, $ostatni)) { $ostatni[$l_projekt] = 1 + $ostatni[$l_projekt]; } else { $ostatni[$l_projekt] = 1; } } } while(list($l_ind, $l_val) = each($ostatni)) { echo ($l_ind." - ".$l_val."\n"); $set = array(); $set["PC_NAME"] = "'".$_GET["pc_name"]."'"; $set["PROJEKT"] = "'".$l_ind."'"; $set["POCET"] = "'".$l_val."'"; MySQL_Query("INSERT INTO `TEAM_PC_WU_OTHER` (" . implode(", ", array_keys($set)) . ") VALUES (" . implode(", ", $set) . ")"); $chyba = mysql_error(); if ( $chyba == "" ) { echo 'VLOZENO_OTHER '."\n"; } else { echo 'NEVLOZENO_OTHER CHYBA ['.$chyba.'] '."\n"; } } MySQL_Close($conn); echo ''."\n";