import.php
来自「通达OA2007SE源代码 非常好的」· PHP 代码 · 共 185 行
PHP
185 行
<?
include_once 'inc/auth.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 == ''))
{
$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 CheckForm()
{
if(document.form1.CSV_FILE.value=="")
{ alert("请选择要导入的文件!");
return (false);
}
if (document.form1.CSV_FILE.value!="")
{
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);
docume';
echo 'nt.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">
</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 ();
}
$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;
}
$query = (((''.'DELETE FROM `SAL_DATA` WHERE `FLOW_ID` = \'').$FLOW_ID).'\'');
$cursor = 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]))
{
$DATA_INDEX[$Temp] = $I;
break;
}
}
if (($Temp == $count))
{
echo (('<font color=#FF6633><b>'.$DATA[$I]).'尚未在OA系统中的工资项目中定义!!</b></font><br>');
continue;
}
}
break;
}
$query = 'insert into SAL_DATA(FLOW_ID,USER_ID';
for ($I = 1; ($I <= $count); ++$I)
{
($query .= (',S'.$I));
}
$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 <= $count); ++$I)
{
if (($DATA_INDEX[($I - 1)] == -1))
{
($query .= ',0');
continue;
}
else
{
$INDEX = $DATA_INDEX[($I - 1)];
($query .= (','.(((''.'\'').$DATA[$INDEX]).'\'')));
continue;
}
}
($query .= ')');
echo (('员工'.$DATA[0]).'的工资导入完成!!<br>');
exequery ($connection, $query);
}
}
break;
}
fclose ($handle);
if (file_exists ($CSV_FILE))
{
unlink ($CSV_FILE);
}
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 + -
显示快捷键?