<?php
set_time_limit(0);
ignore_user_abort(true);
include
(
'sgk.php'
);
echo
"<br><br>"
;
?>
<?php
function
array_iconv(
$data
,
$output
=
'GBK'
) {
$encode_arr
=
array
(
'UTF-8'
,
'ASCII'
,
'GBK'
,
'GB2312'
,
'BIG5'
,
'JIS'
,
'eucjp-win'
,
'sjis-win'
,
'EUC-JP'
);
$encoded
= mb_detect_encoding(
$data
,
$encode_arr
);
if
(!
is_array
(
$data
)) {
return
mb_convert_encoding(
$data
,
$output
,
$encoded
);
}
else
{
foreach
(
$data
as
$key
=>
$val
) {
if
(
is_array
(
$val
)) {
$data
[
$key
] = array_iconv(
$val
,
$input
,
$output
);
}
else
{
$data
[
$key
] = mb_convert_encoding(
$data
,
$output
,
$encoded
);
}
}
return
$data
;
}
}
function
microtime_float(){
return
microtime(true);
}
if
(
$_SESSION
[
'id'
]<>
''
){
if
(@
$_POST
[
"submit"
]<>
""
){
if
(((
$_FILES
[
"file"
][
"type"
] ==
"text/plain"
)
|| (
$_FILES
[
"file"
][
"type"
] ==
"application/vnd.ms-excel"
) || (
$_FILES
[
"file"
][
"type"
] ==
"application/octet-stream"
)
|| (
$_FILES
[
"file"
][
"type"
] ==
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
))
&& (
$_FILES
[
"file"
][
"size"
] < 198102805))
{
if
(
$_FILES
[
"file"
][
"error"
] > 0)
{
echo
"Return Code: "
.
$_FILES
[
"file"
][
"error"
] .
"<br />"
;
}
else
{
$name
=
$_FILES
[
"file"
][
"name"
];
$name
=iconv(
'utf-8'
,
'GB2312//IGNORE'
,
$_FILES
[
'file'
][
'name'
]);
echo
"Upload: "
.
$_FILES
[
"file"
][
"name"
] .
"<br />"
;
echo
"Size: "
. (
$_FILES
[
"file"
][
"size"
] / 1048576) .
" Mb<br />"
;
$exit
=
pathinfo
(
$_FILES
[
"file"
][
"name"
], PATHINFO_EXTENSION);
$exit
=
'.'
.
$exit
;
if
(
$exit
==
".asp"
or
$exit
==
".php"
or
$exit
==
".jsp"
OR
$exit
==
".aspx"
){
echo
"我擦,你想做什么?"
;
exit
;
}
$size
=
filesize
(
$_FILES
[
"file"
][
"tmp_name"
]);
$_FILES
[
"file"
][
"name"
]=md5(
$_FILES
[
"file"
][
"name"
].
$size
).
$exit
;
if
(
file_exists
(
"uploadhehe/"
.
$_FILES
[
"file"
][
"name"
]))
{
echo
$_FILES
[
"file"
][
"name"
] .
" 已经存在 "
;
}
else
{
move_uploaded_file(
$_FILES
[
"file"
][
"tmp_name"
],
"uploadhehe/"
.
$_FILES
[
"file"
][
"name"
]);
echo
"<br>开始自动处理文件<br>"
;
$begin
= microtime_float();
$file
=
"uploadhehe/"
.
$_FILES
[
"file"
][
"name"
];
$handle
= @
fopen
(
$file
,
"r"
);
$total
=0;
$over
=0;
if
(
$handle
) {
$sql
=
"INSERT INTO [dbo].[own_user_data1] ([Name],[Context],[md5],[data]) VALUES"
;
$num
=0;
$_FILES
[
'file'
][
'name'
]=iconv(
'utf-8'
,
'GB2312//IGNORE'
,
$_FILES
[
'file'
][
'name'
]);
while
(!
feof
(
$handle
)) {
$buffer
=
fgets
(
$handle
, 2000);
$buffer
=
str_replace
(
"\n"
,
""
,
$buffer
);
$line_array
=
explode
(
"\r\n"
,
$buffer
);
$Context
=htmlspecialchars(
addslashes
(
$line_array
[0]));
$Context
=
str_replace
(
"'"
, ',',
$Context
);
$Context
=
str_replace
(
'"'
,
','
,
$Context
);
$Context
=array_iconv(
$Context
);
$date
=
date
(
'y-m-d h:i:s'
,time());
if
(
$num
<999){
$sql
.=
"('{$name}','{$Context}','{$_FILES['file']['name']}','{$date}'),"
;
}
else
{
$sql
.=
"('{$name}','{$Context}','{$_FILES['file']['name']}','{$date}')"
;
$a
=sqlsrv_query(
$conn
,
$sql
);
$num
=0;
$sql
=
"INSERT INTO [dbo].[own_user_data1] ([Name],[Context],[md5],[data]) VALUES"
;
}
$num
++;
$total
++;
}
}
fclose(
$handle
);
$sql1
=
"INSERT INTO [dbo].[own_user_info] ([uid],[md5],[date],[name],[size],[gold]) VALUES ('{$_SESSION["
id
"]}','{$_FILES["
file
"]["
name
"]}','{$date}','{$name}','{$total}','1')"
;
sqlsrv_query(
$conn
,
$sql1
);
if
(
$a
=== false ) {
die
( print_r( sqlsrv_errors(), true));
}
if
(
substr
(
$sql
,
strlen
(
$sql
)-1,1)==
","
){
$sql
=
substr
(
$sql
, 0,
strlen
(
$sql
)-1);
sqlsrv_query(
$conn
,
$sql
);
}
$end
= microtime_float();
$time
=
$end
-
$begin
;
echo
"共导入{$total}条记录,耗时{$time}秒"
;
}
}
}
else
{
echo
"上传失败!"
;
}
}
}
else
{
header(
"Location: login.php"
);
}
?>