$_SESSION['login_data'] = UtilString::buildQueryString($SESS_DATA); UtilLog::writeLog('ログイン成功:' . $U_SID, 'ACCESS'); header("Location: menu.php"); exit; } else { $ERROR_MSG = "ログイン名、または、パスワードが違います。"; UtilLog::writeLog('ログイン失敗:' . print_r($POST_DATA, true), 'ACCESS'); } } else { $ERROR_MSG = "ログイン名、または、パスワードが違います。"; UtilLog::writeLog('不正ユーザ:' . print_r($POST_DATA, true), 'ACCESS'); } } } // ログアウト if (isset($POST_DATA['btn_action']) && $POST_DATA['btn_action'] == "ログアウト") { $SESS_DATA = array(); $_SESSION['login_data'] = ""; unset($_SESSION['login_data']); UtilLog::writeLog('ログアウト', 'ACCESS'); header("Location: {$_SERVER['SCRIPT_NAME']}"); exit; } } // Smarty処理 $SMARTY->assign('home_url', HOME_URL); $SMARTY->assign('sess_data', $SESS_DATA); $SMARTY->assign('post_data', $POST_DATA); $SMARTY->assign('inform_msg', $INFORM_MSG); $SMARTY->assign('error_msg', $ERROR_MSG); $SMARTY->display('index.html');
} $SMARTY->assign('confirm_param', UtilString::buildQueryString($param)); } else { $SMARTY->assign('inform_msg', 'パラメータが不正です。'); } break; // デバイス起動 // デバイス起動 case 'wake': if (isset($GET_DATA['mac_addr']) && $GET_DATA['mac_addr'] != '') { if (isset($GET_DATA['ip_addr']) && $GET_DATA['ip_addr'] != '') { $device_name = $GET_DATA['ip_addr']; } else { $device_name = $DEV_LIST[$GET_DATA['mac_addr']]; } UtilLog::writeLog('WOLパケットを送信 Name:' . $device_name . ' MAC:' . $GET_DATA['mac_addr'], 'ACCESS'); $ipObj = new UtilIPv4(CIDR_INFO); if (!WakeOnLan($ipObj->broadcast(), $GET_DATA['mac_addr'])) { $SMARTY->assign('inform_msg', "「{$device_name}」の起動に失敗しました。"); } else { $SMARTY->assign('inform_msg', "「{$device_name}」の起動に成功しました。"); } } else { $SMARTY->assign('inform_msg', 'パラメータが不正です。'); } break; // 追加フォーム(手動) // 追加フォーム(手動) case 'append_form1': $SMARTY->assign('input_msg', 'MACアドレスとデバイス名を入力してください。'); $param = array();
/** * ベンダー情報を更新 * @return bool */ public static function updateVendorInfo($is_download = false) { $retval = false; try { $db_obj = new self(); // トランザクション開始 $db_obj->db->beginTransaction(); if ($is_download) { $oui_file = 'http://standards.ieee.org/develop/regauth/oui/oui.txt'; $sql = "DELETE FROM wol_vendor"; $stmt = $db_obj->db->prepare($sql); $stmt->execute(); $stmt->closeCursor(); } else { $oui_file = INSTALL_PATH . '/libs/oui.txt'; } $oui_list = @file_get_contents($oui_file); if ($oui_list === FALSE) { return false; } $line = explode("\n", $oui_list); foreach ($line as $item) { if (strpos($item, '(base 16)') !== false) { $oui = explode(' ', $item); $realitem = explode("\t\t", $item); $sql = "INSERT INTO wol_vendor ("; $sql .= "mac_header, vendor_name"; $sql .= ") VALUES (?, ?)"; $stmt = $db_obj->db->prepare($sql); $stmt->bindValue(1, trim($oui[0])); $stmt->bindValue(2, $realitem[1]); $stmt->execute(); $stmt->closeCursor(); } } // コミット $db_obj->db->commit(); $retval = true; } catch (PDOException $e) { UtilLog::writeLog($e->getMessage()); } return $retval; }