import.php
来自「通达OA2007SE源代码 非常好的」· PHP 代码 · 共 232 行
PHP
232 行
<?
include_once 'inc/auth.php';
include_once 'fun_allcompute.php';
echo '<html>
<head>
<title>导入数据</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body class="bodycolor" topmargin="5">
';
if (($FILE_NAME == ''))
{
$operate = '0';
$query = (((''.'SELECT count(*) from SAL_DATA where FLOW_ID=\'').$FLOW_ID).'\'');
$cursor = exequery ($connection, $query);
if ($ROW = mysql_fetch_array ($cursor))
{
$ROW_COUNT = $ROW[0];
}
echo '<s';
echo 'cript Language="JavaScript">
function chk(input)
{
for(var i=0;i<document.form1.c1.length;i++)
{
document.form1.c1[i].checked = false;
}
input.checked = true;
return true;
}
function CheckForm()
{
if(document.form1.CSV_FILE.value=="")
{ alert("请选择要导入的文件!");
return (false);
}
if (document.form1.CSV_FILE.value!="")
{
';
echo ' var file_temp=document.form1.CSV_FILE.value,file_name;
var Pos;
Pos=file_temp.lastIndexOf("\\\\");
file_name=file_temp.substring(Pos+1,file_temp.length);
document.form1.FILE_NAME.value=file_name;
}
return (true);
}
</script>
<table border="0" width="100%" cellspacing="0" cellpadding="3" class="small">
<tr>
';
if (($ROW_COUNT != 0))
{
echo ' <td class="Big"><img src="/images/sys_config.gif" align="absmiddle">';
echo '<s';
echo 'pan class="big3"> 导入CSV工资数据(该流程已录入过数据)</span><br>
</td>
';
}
else
{
echo ' <td class="Big"><img src="/images/sys_config.gif" align="absmiddle">';
echo '<s';
echo 'pan class="big3"> 导入CSV工资数据</span><br>
</td>
';
}
echo ' </tr>
</table>
<br>
<br>
<div align="center" class="Big1">
<b>请指定用于导入的CSV文件:</b>
<form name="form1" method="post" action="import.php?FLOW_ID=';
echo $FLOW_ID;
echo '" enctype="multipart/form-data" onsubmit="return CheckForm();">
<input type="file" name="CSV_FILE" class="BigInput" size="30">
<input type="hidden" name="FILE_NAME">
<input type="hidden" name="GROUP_ID" value="';
echo $GROUP_ID;
echo '">
<input type="submit" value="导入" class="BigButton">
<br><br>
';
if (($ROW_COUNT != 0))
{
echo ' <input type="checkbox" name="c1" id="Id_c1" value="1" onclick="return chk(this);" checked><label for="Id_c1">插入新数据</label>
<input type="checkbox" name="c1" id="Id_c2" value="2" onclick="return chk(this);" ><label for="Id_c2">更新已有的数据</label>
';
}
echo ' <br><br>
<input type="checkbox" name="compute" id="Id_compute" value="1" ><label for="Id_compute">导入的同时计算所有的计算项</label>
</form>
<br>
<input type="button" value="返回" class="BigButton" onclick="location=\'index.php\'">
';
if (($FILE_NAME == ''))
{
message ('说明', '1)EXECL的工资报表的列顺序为姓名、工资项目,将部门、职务等列删除;<BR>2)将改好的EXECL工资报表另存为CSV格式的文件;');
}
echo '
</div>
';
exit ();
}
if ((strtolower (substr ($FILE_NAME, -3)) != 'csv'))
{
message ('错误', '只能导入CSV文件!');
button_back ();
exit ();
}
$ROW_COUNT = 0;
$handle = fopen ($CSV_FILE, 'r');
if (!$handle)
{
message ('错误', '打开文件错误!');
button_back ();
exit ();
}
echo $c1;
$count = 0;
$query = 'SELECT ITEM_ID ,ITEM_NAME from SAL_ITEM';
$cursor = exequery ($connection, $query);
while ($ROW = mysql_fetch_array ($cursor))
{
$DATA_ITEM[$count] = $ROW['ITEM_NAME'];
$DATA_ID[$count] = $ROW['ITEM_ID'];
$DATA_INDEX[$count] = -1;
++$count;
}
$operate = '0';
if (($c1 == '2'))
{
$operate = '1';
}
else
{
$query = (((''.'delete from SAL_DATA where FLOW_ID=\'').$FLOW_ID).'\'');
exequery ($connection, $query);
}
while (true)
{
while ($DATA = fgetcsv ($handle, 10000, ','))
{
$DATA_NUM = count ($DATA);
if (($ROW_COUNT == 0))
{
for ($I = 1; ($I < $DATA_NUM); ++$I)
{
for ($Temp = 0; ($Temp < $count); ++$Temp)
{
if (($DATA_ITEM[$Temp] == $DATA[$I]))
{
$UPDATA_ITEMID[$I] = $DATA_ID[$Temp];
$DATA_INDEX[$Temp] = $I;
break;
}
}
if (($Temp == $count))
{
echo (('<font color=#FF6633><b>'.$DATA[$I]).'尚未在OA系统中的工资项目中定义!!</b></font><br>');
$UPDATA_ITEMID[$I] = '-1';
continue;
}
}
break;
}
if (($operate == '0'))
{
$query = 'insert into SAL_DATA(FLOW_ID,USER_ID';
for ($I = 1; ($I < $DATA_NUM); ++$I)
{
if (($UPDATA_ITEMID[$I] == '-1'))
{
continue;
}
else
{
($query .= (',S'.$UPDATA_ITEMID[$I]));
continue;
}
}
$query1 = (((''.'SELECT USER_ID from USER where USER_NAME=\'').$DATA['0']).'\'');
$cursor1 = exequery ($connection, $query1);
if (!$ROW = mysql_fetch_array ($cursor1))
{
echo (('<font color=#FF6633><b>员工'.$DATA[0]).'尚未在OA系统中注册!!</b></font><br>');
continue;
}
else
{
($query .= (((((''.') values (\'').$FLOW_ID).'\',\'').$ROW['0']).'\''));
for ($I = 1; ($I < $DATA_NUM); ++$I)
{
if (($UPDATA_ITEMID[$I] == '-1'))
{
continue;
}
else
{
($query .= (','.(((''.'\'').$DATA[$I]).'\'')));
continue;
}
}
($query .= ')');
echo (('员工'.$DATA[0]).'的工资导入完成!!<br>');
exequery ($connection, $query);
break;
}
continue;
}
}
break;
}
fclose ($handle);
if (file_exists ($CSV_FILE))
{
unlink ($CSV_FILE);
}
if (($compute == '1'))
{
comput_allitem ($FLOW_ID);
}
message ('', (('共'.($ROW_COUNT - 1)).'条数据导入!'));
echo '<div align="center">
<input type="button" value="返回" class="BigButton" onClick="location=\'index.php\';" title="返回">
</div>
</body>
</html>
';
?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?