Files
web.ems/wxc2_omc/inc/lib.inc
2025-06-16 19:49:23 +08:00

2371 lines
74 KiB
PHP
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
//-----------本文件是omc php模块的函数库文件包含一些常用的自定义函数----------
require("../../inc/config.inc");
function sftp_connect($remote_ip)
{
$connection = ssh2_connect($remote_ip, 22);
if (!$connection)
echo "sftp_connect:Connect server[$remote_ip] failed<br>";
return $connection;
}
function sftp_login($connection, $logName, $logPass)
{
ssh2_auth_password($connection, $logName, $logPass);
$sftp_key = ssh2_sftp($connection);
return $sftp_key;
}
define("SFTP_ASCII", 0);
define("SFTP_BINARY", 1);
function sftp_put($key, $remote_file, $local_file, $mode)
{
$read_mode = "r";
$write_mode = "w";
if ($mode == SFTP_BINARY) {
$open_mode .= "b";
$write_mode .= "b";
}
$handle = fopen($local_file, $read_mode);
if (!$handle) {
echo "sftp_put:Can not open $local_file<br>";
return FALSE;
}
//echo "fopen(ssh2.sftp://".intval($key).$remote_file."a=$write_mode)";
$stream=fopen("ssh2.sftp://".intval($key).$remote_file, $write_mode);
if (!$stream) {
echo "sftp_put:Can not open $remote_file<br>";
return FALSE;
}
$content = stream_get_contents($handle);
fwrite($stream, $content);
fclose($handle);
fclose($stream);
return TRUE;
}
function sftp_get($connection, $local_file, $remote_file, $mode)
{
$remoteStream = ssh2_scp_recv($connection, $remote_file, $local_file);
if (!$remoteStream) {
$error = error_get_last();
echo "ssh2_scp_recv error: " . $error['message'] . "\n";
return FALSE;
}
fclose($remoteStream); // close remote download stream
//echo "ssh2_scp_recv sucessful" . "\n";
return TRUE;
}
function sftp_get_org($key, $local_file, $remote_file, $mode)
{
$read_mode="r";
$write_mode="w";
if($mode == SFTP_BINARY)
{
$open_mode.="b";
$write_mode.="b";
}
$handle=fopen($local_file,$write_mode);
if(!$handle)
{
echo "sftp_put:Can not open $local_file<br>";
return FALSE;
}
echo "$remote_file=$read_mode";
$stream=fopen("ssh2.sftp://$key"."$remote_file", $read_mode);
if(!$stream)
{
echo "sftp_put:Can not open $remote_file<br>";
return FALSE;
}
$content=stream_get_contents($stream);
fwrite($handle,$content);
fclose($handle);
fclose($stream);
return TRUE;
}
function checkWritePrivilege()
{
global $userInfo;
// echo "<pre>";
// print_r($userInfo);
// echo "<pre>";
if ($userInfo['privilege'] > 2)
return 1;
else
return 0;
}
function debug_log($file, $info)
{
$handle = fopen($file, "a+");
if ($handle == false)
return;
fwrite($handle, $info . "\n");
fclose($handle);
}
function get2GCLicenseAccount()
{
global $pubConn;
$default_user_name="agtuser";
$default_password="admin123";
$sql="select pubVarValue from OMC_PUB.omcPubVarConf where pubVarName='NeLicenseUser' ";
$res=mysqli_query($pubConn,$sql);
$row=mysqli_fetch_array($res);
if(strlen(trim($row['pubVarValue'])) > 0)
$ftpInfo['UserName']=$row['pubVarValue'];
else
$ftpInfo['UserName']=$default_user_name;
$sql="select pubVarValue from OMC_PUB.omcPubVarConf where pubVarName='NELicensePwd' ";
$res=mysqli_query($pubConn,$sql);
$row=mysqli_fetch_array($res);
if(strlen(trim($row['pubVarValue'])) > 0)
$ftpInfo['Password']=$row['pubVarValue'];
else
$ftpInfo['Password']=$default_password;
//echo "$ftpInfo[UserName], $ftpInfo[Password]";
return $ftpInfo;
}
//****************************************************************
//函数4 pageAccessChk($pageURL)
//函数说明:
// 检测用户是否可进入本页,
// 如果用户的权限包含$page_url所对应的权限则可进入该页面。
//
//变量说明:
// $page_url
//
//返回值: 1 = 可 -1 = 否
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间2002-03-26
//修改说明:修改了权限定义方式,该函数改变了大部分
//NO.2
//姓名:
//时间2002-04-09
//修改说明:修改了权限定义方式,该函数改变了大部分
//----------------------------------------------------------
function pageAccessChk($pageURL)
{
global $userInfo, $privilegeDefArr, $dirAccessDefArr;
$funcDebug = 0;
$privilege = $userInfo['privilege'];
if ($funcDebug) echo "<br>privilege:$privilege";
if (strlen($privilege) > 0) { //判断已登录的用户
//检查该权限编号是否存在
$isPass = 0;
for ($k = 0; $k < sizeof($privilegeDefArr); $k++) {
if ($privilege == $privilegeDefArr[$k]['permit']) {
$isPass = 1;
break;
}
}
if ($isPass == 0) {
if ($funcDebug) echo "<br>Invailed privilege";
return (-1);
}
//对比判断该编号对应的权限能否访问该目录
for ($p = 0; $p < sizeof($dirAccessDefArr[$privilege]); $p++) {
$tmpDir = $dirAccessDefArr[$privilege][$p];
$tmpLen = strlen($tmpDir);
if ($funcDebug) echo "<br>$tmpDir == substr($pageURL,0,$tmpLen)";
if ($tmpDir == substr($pageURL, 0, $tmpLen) && $tmpLen > 0) {
return (1);
}
}
//找不到,清掉这个无效权限代码
if ($funcDebug) echo "1:$userInfo[privilege]";
$userInfo['privilege'] = 0;
if ($funcDebug) echo "2:$userInfo[privilege]";
return (-1);
} else {//判断未登录的用户
for ($p = 0; $p < sizeof($dirAccessDefArr[0]); $p++) {
$tmpDir = $dirAccessDefArr[0][$p];
$tmpLen = strlen($tmpDir);
$thisDir = substr($pageURL, 0, $tmpLen);
if ($funcDebug) echo "<br>$tmpDir == $thisDir";
if ($tmpDir == $thisDir && $tmpLen > 0) {
return (1);
}
}
}
if ($funcDebug) echo "<br>??";
return (1);
}
//****************************************************************
//函数5
// function insertLog($operDesc,$operTypeNo='0',$OperNo='0')
//函数说明:
// 该函数用于记录日志
//
//变量说明:
// $operDesc ->操作说明
// $operTypeNo ->操作类型编号
// $OperNo ->操作代码
//
//返回值:
// 无
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间2003-04-09
//修改说明简化输入参数缺省操作类型为unknown
//----------------------------------------------------------
function insertLog($operDesc, $operTypeNo = '0', $OperNo = '0')
{
global $userInfo, $link, $pubConn;
$userName = $userInfo['ID'];
$operDesc = isset($operDesc) ? stripslashes($operDesc) : ''; //解码
$operDesc = addslashes($operDesc); //解码
$insertLogSql = "INSERT INTO sysOperLog
(operTypeNo,OperNo,remark,userName,datetime)
VALUES
('$operTypeNo','$OperNo','$operDesc','$userName',CURRENT_TIMESTAMP)
";
//echo "$insertLogSql";
$result = mysqli_query($pubConn, $insertLogSql);
//echo mysqli_error($pubConn);
if ($result < 0) {
echo "Error:Insert the log failed";
}
}
//****************************************************************
//函数6
// change_percent($num)
//函数说明:
// 该函数用于把两个数相除后得到的小数变为精确到百分位的百分数
// 如把0.91233456790变为91.23%
//
//变量说明:
// $num <= 1
//
//返回值:
// 一个带百分号的字符
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function change_percent($num)
{
if ($num >= 1) {
$num = 100;
} else {
$num = $num * 1000000;
$num = round($num);
$num = $num / 10000;
}
$string = $num . '%';
return ($string);
}
//****************************************************************
//函数7
// omc_keep_length($value,$add_value='0',$length='2',$position='1')
//函数说明:
// 该函数用于在字符串$value左边添$add_value,直到补足所需位数$length
// 例如:omc_keep_length(2,0,2)变为02
// 常用于获取系统编号。
//
//变量说明:
// $value 需要补足位数的字符
// $add_value 需要用什么去补足位数,默认为'0'
// $length 需要补足到多少位,默认为'2'系统编号的长度
//
//返回值:
// 被补足位数的字符串
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omc_keep_length($value, $add_value = '0', $length = '2', $position = '1')
{
while (strlen($value) < $length) {
if ($position)
$value = $add_value . $value;
else
$value = $value . $add_value;
}
//echo "<br>value=$value";
return ($value);
}
//****************************************************************
//函数8
// omc_table_name($sys_type,$table_type)
//函数说明:
// 该函数通过$sys_type,$table_type生成该系统的各种相关表名
// 根据$sys_id确定系统编号
// 根据$table_type确定要返回的表名
// 1、csta-h -->(每小时)话务统计表
// 2、csta-q -->(每15分钟)话务统计表
//
//
//
//变量说明:
// $sys_type 需要获取表名的系统
// $table_type 该表名的类型字符串
//
//返回值:
// 所需的表名字符串
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omc_table_name($sys_type, $table_type)
{
switch ($table_type) {
case 'csta-h':
$sys_type = strtolower($sys_type);
$table_name = $sys_type . 'Sum';
break;
case 'csta-q':
$sys_type = strtolower($sys_type);
$table_name = $sys_type . 'Detail';
break;
default:
echo "<br>database's table name can not be maked,please check table type";
break;
}
if ($table_name) {
return ($table_name);
} else {
exit();
}
}
//****************************************************************
//函数9
// omc_sys_type2code($sys_type)
//函数说明:
// 由系统简写获取系统编号,通过查询系统定义表$sysconf_table获取
// 例:omc_sys_type2code(TS) = '04'
//
//变量说明:
// $sys_type
//
//返回值:
// 成功: 系统编号
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omc_sys_type2code($sysTypeName)
{
global $omc_db, $sysconf_table;
$sel_sql = "SELECT sysTypeNo FROM $sysconf_table WHERE sysTypeName = '$sysTypeName'";
//echo "<br>$sel_sql";
$result = mysqli_query($pubConn, $sel_sql);
if ($result > 0) {
$result_rows = mysqli_fetch_array($result);
//echo "<br>result_rows[sysTypeNo]=$result_rows[sysTypeNo]";
return ($result_rows[sysTypeNo]);
} else {
echo mysqli_error($pubConn);
echo "<br>Can not get this device's code by omc_sys_type2code($sysTypeName)";
return (-1);
}
}
//****************************************************************
//函数10
// omc_sys_code2type($sys_code)
//函数说明:
// 由系统编号获取系统简写,通过查询系统定义表$sysconf_table获取
//
//
//变量说明:
// $sys_code
//
//返回值:
// 成功: 系统简写
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omc_sys_code2type($sysTypeNo)
{
global $omc_db, $sysconf_table;
$sel_sql = "SELECT sysTypeName FROM $sysconf_table WHERE sysTypeNo = '$sysTypeNo'";
//echo "$sel_sql";
$result = mysqli_query($pubConn, $sel_sql);
if ($result > 0) {
$result_rows = mysqli_fetch_array($result);
return ($result_rows[sysTypeName]);
} else {
echo mysqli_error($pubConn);
echo "<br>Can not get this device's code by omc_sys_code2type($sysTypeNo)";
return (-1);
}
}
//****************************************************************
//函数11
// get_subsys_total($sys_type)
//函数说明:
// 由系统类型获取系统每个系统的子系统总数,通过查询系统定义表$sysconf_table获取
//
//
//变量说明:
// $sys_type:系统类型
//
//返回值:
// 成功: 系统子系统个数
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function get_subsys_total($sys_type)
{
global $omc_db, $sysconf_table;
$sel_sql = "SELECT maxSubsysNum FROM $sysconf_table WHERE sysTypeName = '$sys_type'";
$result = mysqli_query($pubConn, $sel_sql);
if ($result > 0) {
$result_rows = mysqli_fetch_array($result);
return ($result_rows[maxSubsysNum]);
} else {
echo mysqli_error($pubConn);
echo "<br>Can not get this system's subsystem quantity by get_subsys_total($sys_type)";
return (-1);
}
}
//****************************************************************
//函数12
// get_e1_total($sys_type)
//函数说明:
// 由系统类型获取系统每个系统的e1总数通过查询系统定义表$sysconf_table获取
//
//
//变量说明:
// $sys_type:系统类型
//
//返回值:
// 成功: 系统子系统个数
// 失败: -1
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function get_e1_total($sys_type)
{
global $omc_db, $sysconf_table;
$sel_sql = "SELECT maxE1Num FROM $sysconf_table WHERE sysTypeName = '$sys_type'";
//echo "<br>sel_sql=$sel_sql";
$result = mysqli_query($pubConn, $sel_sql);
if ($result > 0) {
$result_rows = mysqli_fetch_array($result);
return ($result_rows[maxE1Num]);
} else {
echo mysqli_error($pubConn);
echo "<br>Can not get this system's e1 quantity by get_e1_total($sys_type)";
return (-1);
}
}
//****************************************************************
//函数13
// get_sys_total($sys_type)
//函数说明:
// 由系统类型获取系统系统总数,通过查询系统定义表$sysconf_table获取
//
//
//变量说明:
// $sys_type:系统类型
//
//返回值:
// 成功: 系统总数
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间: 2002-5-14
//修改说明: 表名、字段有变
//----------------------------------------------------------
function get_sys_total($sys_type)
{
global $omc_db, $sysconf_table;
$sel_sql = "SELECT maxSysNum FROM $sysconf_table WHERE sysTypeName = '$sys_type'";
//echo "<br>sel_sql=$sel_sql";
$result = mysqli_query($pubConn, $sel_sql);
if ($result > 0) {
$result_rows = mysqli_fetch_array($result);
return ($result_rows[maxSysNum]);
} else {
echo mysqli_error($pubConn);
echo "<br>Can not get this system's system quantity by get_sys_total($sys_type)";
return (-1);
}
}
//****************************************************************
//函数14
// get_sys_offset($sys_type)
//函数说明:
// 由系统类型获取该类系统的顺序编号offset通过查询系统定义表$sysconf_table获取
//
//
//变量说明:
// $sys_type :系统类型
//
//返回值:
// 成功: 系统顺序编号
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function get_sys_offset($sys_type)
{
global $omc_db, $sysconf_table;
$sel_sql = "SELECT ledOffset FROM $sysconf_table WHERE sysTypeName = '$sys_type'";
$result = mysqli_query($pubConn, $sel_sql);
if ($result > 0) {
$result_rows = mysqli_fetch_array($result);
return ($result_rows[0]);
} else {
echo mysqli_error($pubConn);
echo "<br>Can not get this system's offset by get_sys_offset($sys_type)";
return (-1);
}
}
//****************************************************************
//函数15
// omc_sys_id_info($sys_id,$info_type)
//函数说明:
// 该函数通过$sys_id的分析取得相应信息
// 例:由 "TS00_01" 可得系统编号为"00"
//
//变量说明:
// 参数$info_type对应要取得的信息
// sys_type -->系统类型
// sys_num -->系统编号
// subsys_num -->子系统编号
// led_num -->led offset
//
//返回值:
// 成功: 要取得的信息
// 失败: -1
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omc_sys_id_info($sys_id, $info_type)
{
global $sysconf_table, $omc_db;
$db = $omc_db;
$pieces = explode('_', $sys_id);
$sys_type = $pieces[0];
$sys_num = $pieces[1];
$subsys_num = $pieces[2];
//echo "<br>sys_type=$sys_type";
switch ($info_type) {
case 'sys_type':
$info = $sys_type;
break;
case 'sys_num':
$info = $sys_num;
break;
case 'subsys_num':
$info = $subsys_num;
break;
case 'led_num':
$sysTypeNo = omc_sys_type2code($sys_type);
$ledSql = " SELECT ledOffset FROM $sysconf_table WHERE sysTypeNo = '$sysTypeNo' ";
$ledRes = @mysqli_query($pubConn, $ledSql);
$ledRow = @mysqli_fetch_array($ledRes);
$info = $ledRow[0];
break;
default:
echo "<br>the $sys_id information can not be get,please check parameter: info_typ!";
break;
}
if ($info) {
return ($info);
} else {
return (0);
}
}
//****************************************************************
//函数16
// omc_uninstall_device($sys_id)
//函数说明:
// 删除系统
//
//变量说明:
// 删除系统的系统编号$sys_id
//
//返回值:
// 成功: 1
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间2002-5-17
//修改说明:
//----------------------------------------------------------------------------------
function omc_uninstall_device($sys_id)
{
global $omc_db, $sysStat_table;
//echo "<br>sys_id=$sys_id";
$sysType = omc_sys_id_info($sys_id, sys_type);
$sysTypeNo = omc_sys_type2code($sysType);
$sysNo = omc_sys_id_info($sys_id, sys_num);
$subSysNo = omc_sys_id_info($sys_id, subsys_num);
$del_sql = "DELETE FROM $sysStat_table WHERE
sysTypeNo='$sysTypeNo' AND sysNo='$sysNo' AND subSysNo='$subSysNo'";
if ($sys_id = 'all') {
$del_sql = " DELETE FROM $sysStat_table ";
}
//echo "<br>del_sql=$del_sql";
$result = mysqli_query($pubConn, $del_sql);
//echo "<br>result=$result";
if ($result) {
return (1);
} else {
return (-1);
}
}
//****************************************************************
//函数17
// omc_chk_load_in($file_info,$remark_style)
//函数说明:
// 导入文件检查函数
// 根据需导入文件的信息(包括文件名,需导入的服务器,数据库,表),导入文件的注释信息(指出该文的字段名列表所在行)
// 方法:一一比较数据库中表的字段和注释中列出的字段,如果互相匹配,返回成功
//
//变量说明:
// $file_info 所需导入文件的信息数组,包括:
// $file_info[db] 所需导入的数据库名
// $file_info[table] 所需导入的数据库中的表名
// $file_info[name] 所需导入数据库的文件名
// $remark_style 数据文件注释风格
// $remark_style[fields_seek] 文件开头需要忽略的行数一般为1
// $remark_style[sign] 注释符,一般为'#'
// $remark_style[fields_by] 字段分割符,一般为';'
//
//返回值:
// 成功: 1
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omc_chk_load_in($file_info, $remark_style)
{
//-------------1.get database's information---------------
global $link;
$field_sql = "SELECT * FROM {$file_info[table]} LIMIT 0,1";
//echo "<br>field_sql=$field_sql";
$field_result = mysqli_query($pubConn, $field_sql);
//-------------check the data file's fields-------------
//echo "<br>name={$file_info[name]}";
$fp = fopen($file_info[name], r);
for ($i = 1; $i <= $remark_style[fields_seek]; $i++) {
$field_line = fgets($fp, 4096); //4096 is a constant
}
//echo "<br>field_line=$field_line";
if (substr($field_line, 0, 1) != $remark_style[sign]) {
echo "the remark sign not exist"; //注释符错误
return (-1);
} else {
//echo "<br>field_line=$field_line";
$file_fields_line = substr($field_line, 1);
//echo "<br>file_fields_line=$file_fields_line";
$file_fields_rows = explode($remark_style[fields_by], $file_fields_line);
$fields_num = mysql_num_fields($field_result);
//echo "<br>fields_num=$fields_num";
for ($i = 0; $i < $fields_num; $i++) {
$this_field = mysql_field_name($field_result, $i);
//echo "<br>$file_fields_rows[$i] -- $this_field";
if ($file_fields_rows[$i] != $this_field && $this_field != '') {
echo "<br>error: fields is not matching.";//字段名不匹配
return (-1);
}
}
fclose($fp);
return (1);
}
}
//*******************************************************************
//函数18
// Get the content of $table as a CSV output.
// $sep contains the separation string.
// After every row, a custom callback function $handler gets called.
// $handler must accept one parameter ($sql_insert);
function get_table_csv($server_link, $db_name, $table, $where, $handler)
{
global $separator;
$sep = $separator;
if (strlen($where) > 1) {
$sel_sql = "SELECT * FROM $table $where";
$sel_sql = stripslashes($sel_sql);
} else {
$sel_sql = "SELECT * FROM $table ";
}
//echo "<br>sel_sql=$sel_sql<br>";
$result = mysqli_query($pubConn, $sel_sql, $server_link);
if ($result < 0) {
echo "$sel_sql /n";
echo mysqli_error($pubConn);
exit();
}
/*
//输出字段名
$schema_insert = "#";
for($j=0; $j<mysql_num_fields($result);$j++){
$schema_insert .= mysql_field_name($result,$j).$sep;
//echo "<br>schema_insert=$schema_insert<br>";
}
$handler(trim($schema_insert));//按某种方式处理后,输出一行
*/
$i = 0;
while ($row = mysqli_fetch_row($result)) {
set_time_limit(60); // HaRa
$schema_insert = "";
for ($j = 0; $j < mysql_num_fields($result); $j++) {
if (!isset($row[$j]))
$schema_insert .= "NULL" . $sep;
elseif ($row[$j] != "")
$schema_insert .= "$row[$j]" . $sep;
else
$schema_insert .= "" . $sep;
}
$schema_insert = str_replace($sep . "$", "", $schema_insert);
$handler(trim($schema_insert));
$i++;
}
return (true);
}
//****************************************************************
//函数19
// omc_die($warning_words)
//函数说明:
// 输出错误信息,退出
//
//变量说明:
// $warning_words 警告说明
//
//返回值:
// 无
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omc_die($warning_words)
{
echo "<br><font color=\"#FF0000\" size=\"3\"><b>$warning_words</b></font>";
exit();
}
//****************************************************************
//函数20
// change2point($number)
//函数说明:
// 将该数字按保留小数点后两位的规则转换,常用于货币的统一标示
//
//变量说明:
// $number ->所需转换的数字
//
//返回值:
// 成功: 返回转换后的字符
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间2003-07-10
//修改说明:干了蠢事,一句话的事,用了一个函数。
//----------------------------------------------------------
function change2point($number)
{
/*
$num = explode(".",$number);
$num_1 = $num[0];
$num_2 = substr($num[1],0,2);
if(strlen($num_2) < 2){
if(strlen($num_2) == 0){
$num_2 = '00';
}else{
$num_2 = $num_2.'0';
}
}
if($num_1==0 && $num_2 == 0){
$number = 0;
}else{
$number = $num_1.'.'.$num_2;
}
*/
$number = sprintf("%01.2f", $number);
return ($number);
}
//****************************************************************
//函数21
// Second2format($number)
//函数说明:
// 把秒数变成标准时间显示如17秒->00:00:17
//
//变量说明:
// $number 秒数
//
//返回值:
// 成功: 返回标准时间
// 失败: 返回0
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
//
function Second2format($number)
{
if ($number > 0) {
$number_h = floor($number / 3600);
if (strlen($number_h) < 2) {
$number_h = "0" . $number_h;
}
$number_ms = $number % 3600;
$number_m = floor($number_ms / 60);
if (strlen($number_m) < 2) {
$number_m = "0" . $number_m;
}
$number_s = $number_ms % 60;
if (strlen($number_s) < 2) {
$number_s = "0" . $number_s;
}
$format = $number_h . ":" . $number_m . ":" . $number_s;
return ($format);
} else {
return (0);
}
}
//****************************************************************
//函数22
// getDetailedStatus($sysTypeNo,$sysNo,$subSysNo,$getType)
// 得到详细状态信息或刷新时间
//
//变量说明:
// $sysTypeNo系统类型编号
// $sysNo系统编号
// $subSysNo子系统编号
// $getType详细状态(status)或刷新时间(time)
//
//返回值:
// 成功: 返回状态或时间
// 失败: 返回-1
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
//
function getDetailedStatus($sysTypeNo, $sysNo, $subSysNo, $getType = 'time')
{
global $omc_db, $sysStat_table;
$db = $omc_db;
$DEBUG = 0;
$sel_mes_sql = "SELECT detailStat,updateTime FROM $sysStat_table
WHERE
sysTypeNo='$sysTypeNo' AND sysNo='$sysNo'
";
if ($DEBUG) echo "<br>sel_mes_sql=$sel_mes_sql";
$sel_mes_res = mysqli_query($pubConn, $sel_mes_sql);
$sel_mes_row = @mysqli_fetch_array($sel_mes_res);
if ($getType == 'Time') {
$value = $sel_mes_row[detailStat];
} else {
$value = $sel_mes_row[updateTime];
}
if ($DEBUG) echo "<br>value=$value";
if (!$sel_mes_row) {
return (-1);
} else {
return ($value);
}
}
//****************************************************************
//函数23 omc_get_sysAlias($sysTypeNo,$sysNo,$subSysNo)
//
//功能说明:根据指定系统编号获取系统别名
//
//变量说明:
//
//返回值:
// 成功: 系统别名字符串
// 失败:-1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omc_get_sysAlias($sysTypeNo, $sysNo, $subSysNo)
{
$sysAliasSql = "SELECT sysAlias
FROM sysInfo
WHERE sysTypeNo='$sysTypeNo' AND sysNo='$sysNo'AND subSysNo='$subSysNo'
ORDER BY sysTypeNo,sysNo,subSysNo
";
$sysAliasResult = mysqli_query($pubConn, $sysAliasSql);
echo mysqli_error($pubConn);
$sysAliasRows = @mysqli_fetch_array($sysAliasResult);
$sysAlias = $sysAliasRows[sysAlias];
if (strlen($sysAlias) > 0) {
return ($sysAlias);
} else {
return (-1);
}
}
//****************************************************************
//函 数 名: omcProgressBar($allNum,$doneNum)
//功能说明: 显示进度条
//变量说明: $allNum总数,$doneNum已完成的数目
//返 回 值: 无
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function omcProgressBar($allNum, $doneNum)
{
if ($allNum > 0) {
if ($doneNum >= $allNum) {
$quoNum = 100;
} else {
$quoNum = $doneNum / $allNum * 100;
$quoNum = round($quoNum);
}
} else {
echo "omcProgressBar() Error:allNum cannot < 0!";
exit();
}
$big_width = 320;
$border = 10;
$lit_width = $big_width - 2 * $border;
$height = 10;
echo "<br>";
echo "\n";
echo "<table width=$big_width border=0 cellpadding=0 cellspacing=0 ><tr><td>";
echo "<font color=000000>$strProgressIsShowedAsFollowing</font>";
echo "</td></tr></table>";
echo "\n<table border=0 cellpadding=0 cellspacing=0 width=$big_width bgcolor=#0000FF>";
echo "\n<tr><td width=$big_width height=$height colspan=3><p align=center><font color=#FFFFFF>";
echo "\n$quoNum%";
echo "\n</font></td></tr>";
echo "\n<tr><td width=$border></td><td width=$lit_width height=$height bgcolor=#FFFFFF>";
$lineNum = $quoNum * 3;
echo "\n<table border=1 cellpadding=0 cellspacing=0 width=$lineNum height=$height bordercolor=#FF0000 bgcolor=#FFCC00>";
echo "\n<tr><td></td></tr></table> </td><td width=$border></td></tr>";
echo "\n<tr><td width=$big_width height=$height colspan=3></td></tr></table> ";
//echo "\n<br>";
}
//****************************************************************
//函 数 名: sysCommSend($sysId,$commType,$objIdStr,$selectedSysId=-1)
//功能说明: 系统参数维护发送命令
//变量说明: 略
//返 回 值:
// 成功: 命令编号字符串
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名cuiticun
//时间2005-7-13
//修改说明check the exist command num in the buffer
//----------------------------------------------------------
function sysCommSend($sysId, $commType, $objIdStr, $selectedSysId = -1, $selectedDPC = 0)
{
global $OMC_server;
$DEBUG = 0;
$pubDb = 'OMC_PUB';
$commTable = 'parameterComm';
$nGetComm = 0;
$nSetComm = 3;
$nSubSysParam = 0;
$nGlobalSubSysParam = 1;
$nGlobalSysParam = 2;
$sysIdArr = explode('_', $sysId);
$sysTypeNo = $sysIdArr[0];
$sysNo = $sysIdArr[1];
$subSysNo = $sysIdArr[2];
$objConn = mysqli_connect($OMC_server[0]['host'],$OMC_server[0]['user'],$OMC_server[0]['password'], 'OBJ_'.$sysTypeNo);
$pubConn = mysqli_connect($OMC_server[0]['host'],$OMC_server[0]['user'],$OMC_server[0]['password'], "OMC_PUB");
//insert the operation log into the database
$logStr = "";
if ($commType == 0)
$logStr .= "Get ";
else if ($commType == 3)
$logStr .= "Set ";
//=====get the LevelWhere
$levelArr = explode('.', $objIdStr);
for ($j = 0; $j < sizeof($levelArr); $j++) {
$levelNo = $j + 1;
${"level_$levelNo"} = $levelArr[$j];
if ($DEBUG) echo "<BR>levelArr[$j]={$levelArr[$j]}";
if ($j == 0) {
$levelWhere = "level_$levelNo='${"level_$levelNo"}'";
} else {
$levelWhere .= " AND level_$levelNo='${"level_$levelNo"}'";
}
}
$temp = $levelWhere;
$database = "OBJ_" . $sysTypeNo;
$ssql = "select name_2 from paramConf where $temp ";
$resultt = @mysqli_query($objConn, $ssql);
$rowss = @mysqli_fetch_array($resultt);
//==get the parameter name
$p_name = $rowss[name_2];
$p_name = str_replace("Entry", "", $p_name);
$sysName = getSystemNameBySysTypeNo($sysTypeNo);
$logStr .= "$sysName $p_name's parameter";
$logStr .= $p_name;
insertLog($logStr);
//end insert operation log
if ($sysNo == '99') {
$paramType = $nGlobalSysParam;
} else if ($subSysNo == '99') {
$paramType = $nGlobalSubSysParam;
} else {
$paramType = $nSubSysParam;
}
if ($selectedSysId != -1) {
$selectedSysIdArr = explode('_', $selectedSysId);
$selectedSysTypeNo = $selectedSysIdArr[0];
$selectedSysNo = $selectedSysIdArr[1];
$selectedSubSysNo = $selectedSysIdArr[2];
}
if ($DEBUG) echo "<br>selectedSysId=$selectedSysId";
if ($DEBUG) echo "<br>selectedSysNo=$selectedSysNo";
if ($DEBUG) echo "<br>selectedSubSysNo=$selectedSubSysNo";
//step 1: delete overtime and imcompetent command , check the exist command num
$overTime = date("Y-m-d H:i:s", mktime(date("H"), date("i") - 1, date("s"), date("m"), date("d"), date("Y")));
$delSql = "DELETE FROM $commTable
WHERE commState ='0' OR commState ='3' OR sendTime < '$overTime'
";
if ($DEBUG) echo "<br>delete command sql = $delSql";
mysqli_query($pubConn, $delSql);
echo mysqli_error($pubConn);
//check the exist command num
$chkSql = "SELECT commId FROM $commTable";
if ($DEBUG) echo "<br>check exist commands sql = $chkSql";
$chkResult = mysqli_query($pubConn, $chkSql);
echo mysqli_error($pubConn);
$existNum = @mysqli_num_rows($chkResult);
//step 2: check the command(不能同时操作同一个子系统,也不能同时读同一个系统的不同子系统的公共参数)
if (($paramType != $nSubSysParam) && ($commType == $nGetComm)) { //0=Get,2=response,3=Set
if ($selectedSysId == -1) {
$chkSql = "SELECT commId FROM $commTable
WHERE sysTypeNo='$sysTypeNo' AND sysNo='$sysNo' AND commType ='$nGetComm'
";
} else {
//选择指定子系统
$chkSql = "SELECT commId FROM $commTable
WHERE sysTypeNo='$selectedSysTypeNo' AND sysNo='$selectedSysNo'
AND subSysNo='$selectedSubSysNo' AND commType ='$nGetComm'
";
}
} else {
$chkSql = "SELECT commId FROM $commTable
WHERE sysTypeNo='$sysTypeNo' AND sysNo='$sysNo' AND subSysNo='$subSysNo'
";
}
if ($DEBUG) echo "<br>check command sql = $chkSql";
$chkResult = mysqli_query($pubConn, $chkSql);
echo mysqli_error($pubConn);
$rowsNum = @mysqli_num_rows($chkResult);
if ($rowsNum > 0) {
echo "<script language=\"javascript\"> ";
echo "alert('Command object is being operated by others,please try it later!'); ";
echo "</script>";
return (-1);
}
//step 3:insert commands into command table
if (($paramType != $nSubSysParam) && ($commType == $nSetComm)) { //写公共参数
//get maxSubSysNum
//$selSql="SELECT maxSysNum, maxSubSysNum FROM sysConf WHERE sysTypeNo = '$sysTypeNo'";
//$selResult=mysqli_query($pubConn,$selSql);
//$selRows=mysqli_fetch_array($selResult);
//echo mysqli_error($pubConn);
//$maxSysNum = $selRows[maxSysNum];
//$maxSubSysNum = $selRows[maxSubSysNum];
if ($selectedSysId == -1) {
if ($paramType == $nGlobalSysParam) {
if ($sysTypeNo[0] == '2') {
if ($sysTypeNo == '222' || $sysTypeNo == '223') {//MTP3,SCCP
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo' AND sysNo!='8' AND sysNo!='11'
AND DPC = '$selectedDPC'
ORDER BY sysNo,subSysNo,baseStat DESC
";
} else {
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo' AND sysNo='9'
AND DPC = '$selectedDPC'
ORDER BY sysNo,subSysNo,baseStat DESC
";
}
} else {
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo'
ORDER BY sysNo,subSysNo,baseStat DESC
";
}
} else {
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo'
AND sysNo='$sysNo'
ORDER BY sysNo,subSysNo,baseStat DESC
";
}
} else {
//选择指定子系统
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$selectedSysTypeNo'
AND sysNo ='$selectedSysNo'
AND subSysNo='$selectedSubSysNo'
ORDER BY baseStat DESC
";
}
if ($DEBUG) {
echo "<br>selSql=$selSql";
exit();
}
$selResult = mysqli_query($pubConn, $selSql);
$selRowsNum = mysqli_num_rows($selResult);
if ($selRowsNum + $existNum > 64) {
echo "<script language=\"javascript\"> ";
echo "alert('The command buffer is full,please try it later!'); ";
echo "</script>";
return (-1);
}
//echo "<br>$selRowsNum<br>";
if ($selRowsNum > 0) {
while ($selRows = mysqli_fetch_array($selResult)) {
$sysNo = $selRows[sysNo];
$subSysNo = $selRows[subSysNo];
$sendSql = "INSERT INTO $commTable
(commType,sysTypeNo,sysNo,subSysNo,paramType,objId,InstanceNo,commState,sendTime)
VALUES
('$commType','$sysTypeNo','$sysNo','$subSysNo','$paramType','$objIdStr','','1',CURRENT_TIMESTAMP)
";
if ($DEBUG) echo "<br>send command sql = $sendSql";
$sendResult = mysqli_query($pubConn, $sendSql);
echo mysqli_error($pubConn);
}
} else {
echo "<br><font size=3 color=red><b>Error:This canot get this system's IP</b></font>";
return (-1);
}
//写VPS 或PCR 参数
/*
}elseif(($sysTypeNo == 120 || $sysTypeNo == 130 || $sysTypeNo == 140) && ($commType == $nSetComm)){
$tmpLevelOne = $sysNo + 1;
$tmpLevelTwo = $subSysNo + 1;
switch($sysTypeNo){
case 120:
$sysParamOidPrefix=$tmpLevelOne.'.'.$tmpLevelTwo.'.7.2.1';
break;
case 130:
$sysParamOidPrefix=$tmpLevelOne.'.'.$tmpLevelTwo.'.6.2.1';
break;
case 140:
$sysParamOidPrefix=$tmpLevelOne.'.'.$tmpLevelTwo.'.8.2.1';
break;
default: echo "error sysTypeNo";
exit();
}
if($DEBUG) echo"<br>strstr($objIdStr, $sysParamOidPrefix)";
if(strstr($objIdStr, $sysParamOidPrefix)){//写VPS 或PCR的公共参数
//get maxSubSysNum
$selSql="SELECT maxSubSysNum FROM sysConf WHERE sysTypeNo = '$sysTypeNo'";
$selResult=mysqli_query($pubConn,$selSql);
$selRows=mysqli_fetch_array($selResult);
echo mysqli_error($pubConn);
$maxSubSysNum = $selRows[maxSubSysNum];
//get alive system
$selSql="SELECT DISTINCT subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo' AND sysNo='$sysNo'
ORDER BY sysNo,subSysNo,baseStat DESC
";
$selResult = mysqli_query($pubConn,$selSql);
$selRowsNum = mysqli_num_rows($selResult);
if($selRowsNum > 0){
while($selRows = mysqli_fetch_array($selResult)){
$subSysNo = $selRows[subSysNo];
$tmpLevelOne = $sysNo + 1;
$tmpLevelTwo = $subSysNo + 1;
$tmpOidLen = strlen($objIdStr);
$tmpSubfixOid = substr($objIdStr,3,$tmpOidLen);
$objIdStr = $tmpLevelOne.'.'.$tmpLevelTwo.$tmpSubfixOid;
if($DEBUG) echo"<br>VPS OR PCR'S system parameter Oid:$objIdStr";
$sendSql="INSERT INTO $commTable
(commType,sysTypeNo,sysNo,subSysNo,paramType,objId,InstanceNo,commState,sendTime)
VALUES
('$commType','$sysTypeNo','$sysNo','$subSysNo','$paramType','$objIdStr','0','1',CURRENT_TIMESTAMP)
";
if($DEBUG) echo"<br>send command sql = $sendSql";
$sendResult=mysqli_query($pubConn,$sendSql);
echo mysqli_error($pubConn);
}
}else{
echo "<br><font size=3 color=red><b>Error:This canot get this system's IP</b></font>";
return(-1);
}
}else{//写VPSPCR子系统参数
$sendSql="INSERT INTO $commTable
(commType,sysTypeNo,sysNo,subSysNo,paramType,objId,InstanceNo,commState,sendTime)
VALUES
('$commType','$sysTypeNo','$sysNo','$subSysNo','$paramType','$objIdStr','0','1',CURRENT_TIMESTAMP)
";
if($DEBUG) echo"<br>send command sql = $sendSql";
$sendResult=mysqli_query($pubConn,$sendSql);
echo mysqli_error($pubConn);
}
*/
} else {//读系统/子系统参数或写子系统参数
if ($paramType != $nSubSysParam) {//读公共参数
if ($selectedSysId == -1) {
//get baseStat 0=uninstalled, 1=nomal, 2=warning, 3=error
//先按状态排序,再按系统编号,子系统编号排序,同种状态优先选择编号小的
if ($paramType == $nGlobalSysParam) {
/*if($sysTypeNo == '222' || $sysTypeNo == '223'){//MTP3,SCCP
$selSql="SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo' AND sysNo='9'
AND DPC = '$selectedDPC'
ORDER BY baseStat DESC,updateTime DESC,sysNo DESC,subSysNo
";
}else{
$selSql="SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo' AND sysNo='9'
ORDER BY baseStat DESC,updateTime DESC,sysNo,subSysNo
";
}*/
if ($sysTypeNo[0] == '2') {//Platform
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo' AND sysNo='9'
ORDER BY baseStat DESC,sysNo DESC,subSysNo,updateTime DESC
";
} else {
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo'
ORDER BY baseStat DESC,updateTime DESC,sysNo,subSysNo
";
}
} else {
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo' AND sysNo='$sysNo'
ORDER BY baseStat DESC,updateTime DESC,sysNo,subSysNo
";
}
} else {
//选择指定子系统
$selSql = "SELECT sysNo,subSysNo FROM sysInfo
WHERE sysTypeNo = '$sysTypeNo' AND sysNo='$selectedSysNo' AND subSysNo='$selectedSubSysNo'
ORDER BY baseStat DESC,updateTime DESC
";
}
$selResult = mysqli_query($pubConn, $selSql);
if ($DEBUG) {
echo "<br>get system info sql = $selSql";
}
echo mysqli_error($pubConn);
if (@mysqli_num_rows($selResult) > 0) {
$selRows = @mysqli_fetch_array($selResult);
$sysNo = $selRows[sysNo];
$subSysNo = $selRows[subSysNo];
} else {
echo "<script language=\"javascript\"> ";
echo "alert('This system have not been installed'); ";
echo "</script>";
return (-1);
}
}
// special for sccp and mtp3 add by lilong 2004-6-11
if ($selectedSysId == -1) {
$DEBUG = 0;
if ($DEBUG) echo "sysTypeNo = $sysTypeNo, sysNo = $sysNo<br>";
if (($sysTypeNo == '222' || $sysTypeNo == '223') && ('8' != $sysNo) && ('11' != $sysNo)) {//MTP3,SCCP
$selSql_1 = "SELECT sysNo,subsysNo FROM sysInfo
WHERE baseStat=1 AND sysTypeNo=320";
if ($DEBUG) echo "selSql_1 = $selSql_1<br>";
$selRes_1 = mysqli_query($pubConn, $selSql_1);
if (mysqli_num_rows($selRes_1) > 0) {
$selRows_1 = @mysqli_fetch_array($selRes_1);
$sysNo = 9;
$subSysNo = $selRows_1[sysNo];
} else {
$selSql_2 = "SELECT sysNo,subsysNo FROM sysInfo
WHERE baseStat=1 AND sysTypeNo=0";
if ($DEBUG) echo "selSql_2 = $selSql_2<br>";
$selRes_2 = mysqli_query($pubConn, $selSql_2);
if (mysqli_num_rows($selRes_2) > 0) {
$selRows_2 = @mysqli_fetch_array($selRes_2);
$sysNo = 0;
$subSysNo = $selRows_2[subsysNo];
}
}
}
if ($DEBUG) {
echo "sysNo=$sysNo, subSysNo=$subSysNo<br>";
exit();
}
$DEBUG = 0;
//add end by lilong 2004-6-11
}
if (1 + $existNum > 64) {
echo "<script language=\"javascript\"> ";
echo "alert('The command buffer is full,please try it later!'); ";
echo "</script>";
return (-1);
}
$sendSql = "INSERT INTO $commTable
(commType,sysTypeNo,sysNo,subSysNo,paramType,objId,InstanceNo,commState,sendTime)
VALUES
('$commType','$sysTypeNo','$sysNo','$subSysNo','$paramType','$objIdStr','','1',CURRENT_TIMESTAMP)
";
if ($DEBUG) echo "<br>send command sql = $sendSql";
$sendResult = mysqli_query($pubConn, $sendSql);
echo mysqli_error($pubConn);
}
//step 4:Return commIdStr
if ($DEBUG) echo "<br>if(($paramType != $nSubSysParam) && ($commType == $nSetComm))";
if (($paramType != $nSubSysParam) && ($commType == $nSetComm)) {
if ($paramType == $nGlobalSysParam) {
$selSql = "SELECT commId FROM $commTable
WHERE paramType='$paramType' AND sysTypeNo='$sysTypeNo'
ORDER BY sysTypeNo,sysNo,subSysNo";
} else {
$selSql = "SELECT commId FROM $commTable
WHERE paramType='$paramType' AND sysTypeNo='$sysTypeNo' AND sysNo='$sysNo'
ORDER BY sysTypeNo,sysNo,subSysNo";
}
/*
//写VPS 或PCR 参数
}elseif(($sysTypeNo == 120 || $sysTypeNo == 130 || $sysTypeNo == 140) && ($commType == $nSetComm)){
$selSql = "SELECT commId FROM $commTable
WHERE sysTypeNo='$sysTypeNo' AND sysNo='$sysNo'
ORDER BY sysTypeNo,sysNo,subSysNo";
*/
} else {
$selSql = "SELECT commId FROM $commTable
WHERE sysTypeNo='$sysTypeNo' AND sysNo='$sysNo' AND subSysNo='$subSysNo'";
}
if ($DEBUG) echo "<br>get command id sql = $selSql";
$selResult = mysqli_query($pubConn, $selSql);
echo mysqli_error($pubConn);
$commIdStr = '';
while ($selRows = mysqli_fetch_array($selResult)) {
$commIdStr .= $selRows[commId] . '-';
}
if ($DEBUG) echo "<br>commIdStr = $commIdStr";
if ($DEBUG) exit();
return ($commIdStr);
}//end of function sysSendComm()
//****************************************************************
//函 数 名: setSysParamValue($sysId,$objIdStr,$instanceNo,$newValue)
//功能说明: 修改设备参数的initValue,为发送命令做准备
//变量说明: 略
//返 回 值:
// 成功: 命令编号字符串
// 失败: -1
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function setSysParamValue($sysId, $objIdStr, $instanceNo, $newValue)
{
global $paramConf_table,$OMC_server,$pubConn;
$DEBUG = 0;
if ($DEBUG) echo "<br>sysId=$sysId";
$tmpSysIdArr = explode('_', $sysId);
$sysTypeNo = $tmpSysIdArr[0];
$sysNo = $tmpSysIdArr[1];
$subSysNo = $tmpSysIdArr[2];
$paramDb = 'OBJ_' . $sysTypeNo;
$objConn = mysqli_connect($OMC_server[0]['host'],$OMC_server[0]['user'],$OMC_server[0]['password'], $paramDb);
if ($DEBUG) echo "<br>paramDb=$paramDb";
//获取参数定义表的表名根据oid取出参数定义
$tmpObjArr = explode('.', $objIdStr);
$objWhereStr = '';
for ($i = 0; $i < sizeof($tmpObjArr); $i++) {
$j = $i + 1;
$objWhereStr .= ' level_' . $j . "='{$tmpObjArr[$i]}' AND ";
}
$objWhereStr = substr($objWhereStr, 0, -5); //最后多了一个' AND ',将其去掉
$getParamDefSql = "SELECT paramType FROM $paramConf_table WHERE $objWhereStr";
if ($DEBUG) echo "<br>$getParamDefSql";
$getParamDefResult = mysqli_query($objConn, $getParamDefSql);
//echo mysqli_error($objConn);
if (mysqli_num_rows($getParamDefResult) <= 0) {
//echo "Cannot find this objId from paramConf";
return (-1);
}
$getParamDefRows = mysqli_fetch_array($getParamDefResult);
$paramType = $getParamDefRows[paramType];
//根据参数类型,推出参数表的表名
if ($paramType == 2) {
$paramTable = 'param_99';
} else {
$paramTable = 'param_' . $sysNo;
}
if ($paramType != 0) {
$subSysNo = '99';
}
//修改对应的参数值
$setParamValueSql = "UPDATE $paramTable
SET initValue='$newValue',readValue=''
WHERE subSysNo = '$subSysNo' AND instanceNo = '$instanceNo'
AND $objWhereStr
";
if ($DEBUG) echo "<br> $setParamValueSql <br>";
$setResult = mysqli_query($objConn, $setParamValueSql);
// echo mysqli_error($objConn); //bug
if ($setResult) {
return (1);
} else {
return (-1);
}
}//end of function setSysParamValue
//****************************************************************
//函 数 名: getSysParamValue($sysId,$objIdStr,$instanceNo,$valueName)
//功能说明: 获取指定的设备参数
//变量说明: 略
//返 回 值:
// 成功: 参数值
// 失败: exit()退出
//
//
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function getSysParamValue($sysId, $objIdStr, $instanceNo, $valueName)
{
global $paramConf_table;
$DEBUG = 0;
$tmpSysIdArr = explode('_', $sysId);
$sysTypeNo = $tmpSysIdArr[0];
$sysNo = $tmpSysIdArr[1];
$subSysNo = $tmpSysIdArr[2];
$paramDb = 'OBJ_' . $sysTypeNo;
//获取参数定义表的表名根据oid取出参数定义
$tmpObjArr = explode('.', $objIdStr);
$objWhereStr = '';
for ($i = 0; $i < sizeof($tmpObjArr); $i++) {
$j = $i + 1;
$objWhereStr .= ' level_' . $j . "='{$tmpObjArr[$i]}' AND ";
}
$objWhereStr = substr($objWhereStr, 0, -5); //最后多了一个' AND ',将其去掉
$getParamDefSql = "SELECT paramType FROM $paramConf_table WHERE $objWhereStr";
if ($DEBUG) echo "<br>$getParamDefSql";
$getParamDefResult = mysqli_query($pubConn, $getParamDefSql);
//echo mysqli_error($pubConn);
if (@mysqli_num_rows($getParamDefResult) <= 0) {
//echo "Cannot find this objId from paramConf";
return (-1);
}
$getParamDefRows = mysqli_fetch_array($getParamDefResult);
$paramType = $getParamDefRows[paramType];
//根据参数类型,推出参数表的表名
if ($paramType == 2) {
$paramTable = 'param_99';
} else {
$paramTable = 'param_' . $sysNo;
}
if ($paramType != 0) {
$subSysNo = '99';
}
//修改对应的参数值
$getParamValueSql = "SELECT $valueName FROM $paramTable
WHERE subSysNo = '$subSysNo' AND instanceNo = '$instanceNo'
AND $objWhereStr
";
if ($DEBUG) echo "<br> $getParamValueSql <br>";
$getResult = mysqli_query($pubConn, $getParamValueSql);
//echo mysqli_error($pubConn);
if (mysqli_num_rows($getResult) > 0) {
$paramRows = mysqli_fetch_array($getResult);
$paramValue = $paramRows[0];
return ($paramValue);
} else {
return (-1);
}
}//end of function getSysParamValue
//****************************************************************
//函数8
// getMoneyPara()
//函数说明:
// 该函数通过查询PPS系统配置得到显示的货币单位是最小货币单位的倍数
//
//
//
//
//变量说明:
// 无
//
//
//返回值:
// 显示的货币单位是最小货币单位的倍数
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function getMoneyPara()
{
global $pubConn;
$getSql = " SELECT pubVarValue FROM omcPubVarConf WHERE pubVarName='pssCardMinCount'";
$getRes = @mysqli_query($pubConn, $getSql);
$getRow = @mysqli_fetch_array($getRes);
echo mysqli_error($pubConn);
$multiple = $getRow[pubVarValue];
/*
if($multiple < 0.1)
{
$multiple = 100;
}
elseif($multiple < 1)
{
$multiple = 10;
}
*/
return ($multiple);
}
function getMoneyPara_forPpsReport()
{
global $omc_db,$pubConn;
$getSql = " SELECT pubVarValue FROM omcPubVarConf WHERE pubVarName='currency_decimal'";
$getRes = @mysqli_query($pubConn, $getSql);
$getRow = @mysqli_fetch_array($getRes);
echo mysqli_error($pubConn);
$multiple = $getRow[pubVarValue];
/*
if($multiple < 0.1)
{
$multiple = 100;
}
elseif($multiple < 1)
{
$multiple = 10;
}
*/
return ($multiple);
}
//****************************************************************
//函数:
// getBitValue($hexStr,$offset)
//功能说明:
//从一个十六进制字符串$hexStr中取出指定位置$offset的二进制字符
//例: getBitValue('F1','0.1')=1
// getBitValue('F1','1.0')=1
// getBitValue('F1','1.1')=0
//参数说明:
//
//返回值:
// 取出的二进制字符
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function getBitValue($hexStr, $offset)
{
$DEBUG = 0;
if ($DEBUG) echo "<br>hexStr=$hexStr";
if ($DEBUG) echo "<br>offset=$offset";
$tmpArr = explode('-', $offset);
$tmpBgnArr = explode('.', $tmpArr[0]);
$bgnByteOffset = $tmpBgnArr[0];
$bgnBitOffset = $tmpBgnArr[1];
if ($DEBUG) echo "<br>bgnByteOffset=$bgnByteOffset";
if ($DEBUG) echo "<br>bgnBitOffset=$bgnBitOffset";
if (sizeof($tmpArr) > 1 && $tmpArr[0] != $tmpArr[1]) {
$tmpEndArr = explode('.', $tmpArr[1]);
$endByteOffset = $tmpEndArr[0];
$endBitOffset = $tmpEndArr[1];
if ($bgnBitOffset == 0 && $endBitOffset == 7) {
$byteOffset = $endByteOffset - $bgnByteOffset + 1;
$selByte = substr($hexStr, $bgnByteOffset * 2, $byteOffset * 2);
return ($selByte);
} else {
$tmpByte_1 = substr($hexStr, 0, $bgnByteOffset * 2);
$tmpByte_2 = substr($hexStr, ($endByteOffset + 1) * 2);
$selByte = substr($hexStr, $bgnByteOffset * 2, ($endByteOffset - $bgnByteOffset + 1) * 2);
if (strlen($selByte) > 2) {//不能跨byte
return (-1);
}
if ($DEBUG) echo "<br>selByte=$selByte";
$tmpDec = HexDec($selByte);
$binStr = DecBin($tmpDec);
for ($i = strlen($binStr); $i < strlen($selByte) * 4; $i++) {
$binStr = '0' . $binStr;
}
if ($DEBUG) echo "<br>binStr=$binStr";
if ($bgnBitOffset == 0) {
$selBit = substr($binStr, -($endBitOffset + 1));
} else {
$selBit = substr($binStr, -($endBitOffset + 1), ($endBitOffset - $bgnBitOffset + 1));
}
return ($selBit);
}
} else {
if ($bgnByteOffset >= ceil(strlen($hexStr) / 2)) {
return (0);
} else {
$selByte = substr($hexStr, $bgnByteOffset * 2, 2);
if ($DEBUG) echo "<br>selByte=$selByte";
$tmpDec = HexDec($selByte);
$binStr = DecBin($tmpDec);
if ($DEBUG) echo "<br>binStr=$binStr";
$binStrLen = strlen($binStr);
if ($bgnBitOffset >= $binStrLen) {
return (0);
} else {
$tmpLen = 0 - $bgnBitOffset - 1;
$selBit = substr($binStr, $tmpLen, 1);
if ($DEBUG) echo "<br>selBit=$selBit=substr($binStr,$tmpLen,1)";
return ($selBit);
}
}
}
}
//****************************************************************
//函数:
// setBitValue($hexStr,$offset,$bitValue)
//功能说明:
//将一个十六进制字符串$hexStr中指定位置$offset的二进制字符设成指定的值$bitValue
//例: setBitValue('F1','1.1','1')=F3
// setBitValue('F1','0.1','0')=E1
//参数说明:
//
//返回值:
// 被改过的十六进制字符串$hexStr
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function setBitValue($hexStr, $offset, $bitValue)
{
$DEBUG = 0;
if ($DEBUG) echo "<br>====================";
if ($DEBUG) echo "<br>hexStr=$hexStr";
if ($DEBUG) echo "<br>offset=$offset";
$tmpArr = explode('-', $offset);
$tmpBgnArr = explode('.', $tmpArr[0]);
$bgnByteOffset = $tmpBgnArr[0];
$bgnBitOffset = $tmpBgnArr[1];
if ($DEBUG) echo "<br>bgnByteOffset=$bgnByteOffset";
if ($DEBUG) echo "<br>bgnBitOffset=$bgnBitOffset";
if (sizeof($tmpArr) > 1) {
$tmpEndArr = explode('.', $tmpArr[1]);
$endByteOffset = $tmpEndArr[0];
$endBitOffset = $tmpEndArr[1];
if ($DEBUG) echo "<br>endByteOffset=$endByteOffset";
if ($DEBUG) echo "<br>endBitOffset=$endBitOffset";
if ($bgnBitOffset == 0 && $endBitOffset == 7) {
//这时,$bitValue是16进值字符串其他情况下都是二进制字符串
$tmpByte_1 = substr($hexStr, 0, $bgnByteOffset * 2);
if ($DEBUG) echo "<br>tmpByte_1=$tmpByte_1";
$tmpByte_2 = substr($hexStr, ($endByteOffset + 1) * 2);
if ($DEBUG) echo "<br>tmpByte_2=$tmpByte_2";
$tmpHexStr = $tmpByte_1 . $bitValue . $tmpByte_2;
if ($DEBUG) echo "<br>tmpHexStr=$tmpHexStr";
return ($tmpHexStr);
} else {
$tmpByte_1 = substr($hexStr, 0, $bgnByteOffset * 2);
$tmpByte_2 = substr($hexStr, ($endByteOffset + 1) * 2);
$selByte = substr($hexStr, $bgnByteOffset * 2, ($endByteOffset - $bgnByteOffset + 1) * 2);
if (strlen($selByte) > 2) {//不能跨byte
return (-1);
}
if ($DEBUG) echo "<br>selByte=$selByte";
$tmpDec = HexDec($selByte);
$binStr = DecBin($tmpDec);
for ($i = strlen($binStr); $i < strlen($selByte) * 4; $i++) {
$binStr = '0' . $binStr;
}
if ($DEBUG) echo "<br>binStr=$binStr";
$tmpBit_1 = substr($binStr, 0, 8 - $endBitOffset - 1);
if ($DEBUG) echo "<br>tmpBit_1=$tmpBit_1";
if ($bgnBitOffset == 0) {
$tmpBit_2 = '';
} else {
$tmpBit_2 = substr($binStr, -($bgnBitOffset));
}
if ($DEBUG) echo "<br>tmpBit_2=$tmpBit_2";
$tmpBit = $tmpBit_1 . $bitValue . $tmpBit_2;
if ($DEBUG) echo "<br>tmpBit=$tmpBit";
$tmpByte = dechex(BinDec($tmpBit));
if ($DEBUG) echo "<br>tmpByte=$tmpByte";
for ($i = strlen($tmpByte); $i < strlen($selByte); $i++) {
$tmpByte = '0' . $tmpByte;
}
$tmpHexStr = $tmpByte_1 . $tmpByte . $tmpByte_2;
return ($tmpHexStr);
}
} else {
if ($bgnByteOffset >= ceil(strlen($hexStr) / 2)) {
return (-1);
} else {
$selByte = substr($hexStr, $bgnByteOffset * 2, 2);
if ($DEBUG) echo "<br>selByte=$selByte";
$tmpDec = HexDec($selByte);
$binStr = DecBin($tmpDec);
$binStr = omc_keep_length($binStr, '0', '8', '1');
if ($DEBUG) echo "<br>binStr=$binStr";
$tmpLen = 7 - $bgnBitOffset;
$tmpBit_1 = substr($binStr, 0, $tmpLen);
if ($DEBUG) echo "<br>tmpBit_1=$tmpBit_1=substr($binStr,0,$tmpLen)";
$tmpLen = 8 - $bgnBitOffset;
$tmpBit_2 = substr($binStr, $tmpLen);
if ($DEBUG) echo "<br>tmpBit_2=$tmpBit_2=substr($binStr,$tmpLen) ";
$newBitStr = $tmpBit_1 . $bitValue . $tmpBit_2;
if ($DEBUG) echo "<br>newBitStr=$newBitStr";
$tmpDec = BinDec($newBitStr);
$selByte = DecHex($tmpDec);
$selByte = omc_keep_length($selByte, '0', '2', '1');
if ($DEBUG) echo "<br>selByte=$selByte";
$tmpHexStr_1 = substr($hexStr, 0, $bgnByteOffset * 2);
$tmpHexStr_2 = substr($hexStr, $bgnByteOffset * 2 + 2);
if ($DEBUG) echo "<br>tmpHexStr_1=$tmpHexStr_1 / tmpHexStr_2=$tmpHexStr_2 ";
$tmpHexStr = $tmpHexStr_1 . $selByte . $tmpHexStr_2;
if ($DEBUG) echo "<br>tmpHexStr=$tmpHexStr";
return ($tmpHexStr);
}
}
}
//****************************************************************
//函数:
// getPubVar($pubVarName)
//功能说明:
//从表OMC_PUB.omcPubVarConf中取出对应变量名的值
//例: getPubVar('pssCardMinCount')=100
//参数说明:
//
//返回值:
// 成功:取出变量名的值,失败:-1
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function getPubVar($pubVarName)
{
$DEBUG = 0;
global $pubConn;
$db = 'OMC_PUB';
$tableName = 'omcPubVarConf';
$sql = " SELECT pubVarValue
FROM $tableName
WHERE pubVarName='$pubVarName'
";
if ($DEBUG) echo "<br>sql=$sql";
//$res = @mysqli_query($pubConn,$sql);
$res = mysqli_query($pubConn, $sql);
if (NULL == $res) return (-1);
if (mysqli_num_rows($res) > 0) {
$row = mysqli_fetch_array($res);
return ($row['pubVarValue']);
} else {
return (-1);
}
}
//****************************************************************
//函数:
// showComma($value)
//功能说明:如果值大于3位,加逗号显示
//
//参数说明:
//
//返回值:
// 成功:转换的值,失败:-1
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function showComma($value)
{
$sValue = explode("-", $value);
if (isset($sValue[1]))
$pValue = explode(".", $sValue[1]);
else
$pValue = explode(".", $sValue[0]);
$intValue = $pValue[0];
$len = strlen($intValue);
$temValue = '';
while ($len > 3) {
$value_1 = substr($intValue, -3);
$intValue = substr($intValue, 0, -3);
$temValue = "," . $value_1 . $temValue;
$len = strlen($intValue);
}
$temValue = $intValue . $temValue;
if (isset($pValue[1])) {
$temValue = $temValue . "." . $pValue[1];
}
if (isset($sValue[1]))
$temValue = "-" . $temValue;
return $temValue;
}
//****************************************************************
//函数:
// showHelp($helpId)
//功能说明:显示帮组文件
//
//参数说明:
//
//返回值:
// 成功:
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function showHelp($helpId)
{
echo "&nbsp;";
echo "<a href=\"javascript:openHelp('$helpId');\"><img id=\"helpId\" align=absBottom border=0 src=../../images/help.gif></a>";
//echo "<div onClick=\"openHelp('$helpId');\" style=\"cursor:hand\"><img align=absBottom border=0 src=../../images/help.gif></div>";
}
//****************************************************************
//函数:
// getSerial()
//功能说明:得到各模块的系列号,以及总的系列号.
//
//参数说明:
//
//返回值:
// 成功:
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function getSerial()
{
$DEBUG = 0;
$dbName = 'OMC_PUB';
$tbName = 'sysStat';
global $ttlSerial;
global $srlArr;
global $noSrlStt, $ttlSrlClr;
global $pubConn;
$selSql = " SELECT * FROM $tbName WHERE sysTypeNo = 0";
if ($DEBUG) echo "<br>selSql=$selSql";
$selRes = mysqli_query($pubConn, $selSql);
$selRow = mysqli_fetch_array($selRes);
$detailStat = $selRow['detailStat'];
$ttlSerial = substr($detailStat, 39 * 2, 8);
$ttlSrlClr = "#000000";
if ($DEBUG) echo "<br>ttlSerial=$ttlSerial<br>";
$selSql = " SELECT * FROM $tbName WHERE sysTypeNo=320 OR sysTypeNo = 330 OR sysTypeNo = 340 OR sysTypeNo = 360 OR sysTypeNo = 380 OR sysTypeNo = 390 OR sysTypeNo = 350 ";
if ($DEBUG) echo "<br>selSql=$selSql";
$selRes = mysqli_query($pubConn, $selSql);
$selRow = mysqli_fetch_array($selRes);
do {
if (!$selRow)
break;
$sysTypeNo = $selRow['sysTypeNo'];
$sysNo = $selRow['sysNo'];
if ($DEBUG) echo "<br>sysTypeNo=$sysTypeNo";
if ($DEBUG) echo "<br>sysNo=$sysNo";
$detailStat = $selRow['detailStat'];
if ($DEBUG) echo "<br>detailStat=$detailStat";
switch ($sysTypeNo) {
case '320': //MSC
$arrNum = 0;
$subBgn = 39;
break;
case '330': //HLR
$arrNum = 1;
$subBgn = 39;
break;
case '340': //AUC
$arrNum = 2;
$subBgn = 39;
break;
case '360': //PPS
$arrNum = 3;
$subBgn = 39;
break;
case '380': //EIR
$arrNum = 4;
$subBgn = 39;
break;
case '390': //VSS
$arrNum = 5;
$subBgn = 39;
break;
case '350': //SMSC
$arrNum = 6;
$subBgn = 39;
break;
default:
break;
}
$srlArr[$arrNum][$sysNo]['number'] = substr($detailStat, $subBgn * 2, 8);
$srlArr[$arrNum][$sysNo]['color'] = "#000000";
if ($DEBUG) echo "<br>srlArr[$arrNum][$sysNo] = {$srlArr[$arrNum][$sysNo]}<br> ";
if ($srlArr[$arrNum][$sysNo]['number'] != $ttlSerial) {
$srlArr[$arrNum][$sysNo]['color'] = "#FF0000";
$noSrlStt = 1;
}
if ($DEBUG) echo "<br>noSrlStt=$noSrlStt";
} while ($selRow = mysqli_fetch_array($selRes));
if ($DEBUG) echo "<br>ttlSerial=$ttlSerial";
if ($noSrlStt)
$ttlSrlClr = "#FF0000";
else
$ttlSrlClr = "#000000";
if ($DEBUG) echo "<br>ttlSrlClr=$ttlSrlClr<br>";
return 1;
}
function byte2ip($byteStr)
{
for ($i = 0; $i < 4; $i++) {
$unitIp = substr($byteStr, $i * 2, 2);
$unitIp = hexdec($unitIp);
if ($i == 0) {
$ipStr = $unitIp;
} else {
$ipStr .= ".$unitIp";
}
}
return ($ipStr);
}
function changeByteOrder($hex_byte)
{
while (strlen($hex_byte) % 2 == 1)
$hex_byte = "0" . $hex_byte;
$byte_len = strlen($hex_byte) / 2;
$res = "";
for ($i = 0; $i < $byte_len; $i++) {
$tmpstr = substr($hex_byte, $i * 2, 2);
$res = $tmpstr . $res;
}
return $res;
}
function getSystemNameBySysTypeNo($sysTypeNo)
{
global $pubConn;
$sqlstr = "select sysTypeName from OMC_PUB.sysConf where sysTypeNo = $sysTypeNo ";
$res = @mysqli_query($pubConn, $sqlstr);
$row = @mysqli_fetch_array($res);
return $row['sysTypeName'];
}
function getSystemState($sysTypeNo, $byteStart, $length)
{
global $pubConn;
$sql = "select detailStat from OMC_PUB.sysStat where sysTypeNo=$sysTypeNo order by updateTime DESC ";
if ($DEBUG) echo "$sql<br>";
$result = @mysqli_query($pubConn, $sql);
$record_num = 0;
$record_num = @mysqli_num_rows($result);
if ($record_num == 0)
return "";
$rows = @mysqli_fetch_array($result);
$allbin = $rows['detailStat'];
if (strlen($allbin) < $length)
return "";
$resbin = substr($allbin, $byteStart, $length);
return $resbin;
}
//****************************************************************
//函数:
// getParamOptionArray
//功能说明:返回参数选项值的数组
//
//参数说明:
// sysTypeNo: sysTypeNo
// value: parameter oid or name
// mode: PARAM_OID PARAM_NAME
//返回值:
// 成功:
//
//作者zhengjianhui
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
define("PARAM_OID", 0);
define("PARAM_NAME", 1);
function getParamOptionArray($sysTypeNo, $value, $mode)
{
$db = "OBJ_" . $sysTypeNo;
global $objDbConn;
if ($mode == PARAM_NAME) {
$sql = "select * from OBJ_$sysTypeNo.paramConf where name_2 like '%$value%' ";
} else {
$levelArr = explode('.', $value);
for ($j = 0; $j < sizeof($levelArr); $j++) {
$levelNo = $j + 1;
${"level_$levelNo"} = $levelArr[$j];
if ($DEBUG) echo "<BR>levelArr[$j]={$levelArr[$j]}";
if ($j == 0) {
$levelWhere = "level_$levelNo='${"level_$levelNo"}'";
} else {
$levelWhere .= " AND level_$levelNo='${"level_$levelNo"}'";
}
}
$sql = "select * from OBJ_$sysTypeNo.paramConf where $levelWhere ";
}
$res = @mysqli_query($objDbConn, $sql);
$row = @mysqli_fetch_array($res);
$template = $row['setTemplate_2'];
$options = explode(";", $template);
for ($i = 0; $i < sizeof($options); $i++) {
$tmp = explode("=", $options[$i]);
$n = $tmp[0];
$v = $tmp[1] + 0;
//echo "value=$v,name=$n<br>";
$arr[$v] = $n;
}
return $arr;
}
function getMSSFtpAccount()
{
global $pubConn;
$default_user_name = "subsManager";
$default_password = "iammanager";
$sql = "select * from OMC_PUB.omcPubVarConf where pubVarName='globalFTPUserName' ";
// $res=@mysqli_query($pubConn,$sql);
// $num=@mysqli_num_rows($res);
$res = @mysqli_query($pubConn, $sql);
$num = @mysqli_fetch_array($res);
if ($num == 0) {
$isql = "insert into OMC_PUB.omcPubVarConf(instance,pubVarName,pubVarValue,remark)values(18,'globalFTPUserName','subsManager','For Import subscriber, download PPS Tarriff, backup MSS subs data and MSS Configuration Synchronization');";
@mysqli_query($pubConn, $isql);
$isql = "insert into OMC_PUB.omcPubVarConf(instance,pubVarName,pubVarValue,remark)values(18,'globalFTPPassword','iammanager','For Import subscriber, download PPS Tarriff, backup MSS subs data and MSS Configuration Synchronization');";
@mysqli_query($pubConn, $isql);
}
$row = @mysqli_fetch_array($res);
if (strlen(trim($row['pubVarValue'])) > 0)
$ftpInfo['UserName'] = $row['pubVarValue'];
else
$ftpInfo['UserName'] = $default_user_name;
$sql = "select * from OMC_PUB.omcPubVarConf where pubVarName='globalFTPPassword' ";
$res = @mysqli_query($pubConn, $sql);
$row = @mysqli_fetch_array($res);
if (strlen(trim($row['pubVarValue'])) > 0)
$ftpInfo['Password'] = $row['pubVarValue'];
else
$ftpInfo['Password'] = $default_password;
return $ftpInfo;
}
//****************************************************************
//函数:
// alertMsgAndGoLastl()
//功能说明:使用JS提示一些信息.
//
//参数说明:
//
//返回值:
// 成功:
//
//作者:
//
//修改注释:
//NO.1
//姓名:
//时间:
//修改说明:
//----------------------------------------------------------
function alertMsgAndGoLast($msg)
{
echo "<script LANGUAGE=\"JavaScript\">";
echo "\n alert('$msg');";
echo "\n window.history.go(-1);";
echo "\n </script>";
exit();
}
//注意:下面的"? >"后面不能有空行否则cvs数据下载时会出错。
?>