<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>サンプル</title>
<script src="jquery-1.11.1.min.js"></script>
<script src="jquery.upload-1.0.2.min.js"></script>
<script>
//ファイルアップロードされたときのイベント。
$(function() {
$('#medaka').change(function() {
//ファイル名
var fn="test.php";
//☆非同期通信で画像ファイルをアップロードする。
$(this).upload(fn, function(res) {
//▽以下はファイルアップロードに成功したときの処理。
$("#res").html(res);
}, 'html');
});
});
</script>
</head>
<body>
<h2>サンプル</h2>
<input type="file" name="upload_file" id="medaka"><br />
<hr>
<h3>結果</h3>
<div id="res" style="color:red"></div>
</body>
</html>
<?php
require_once 'CsvIo2.php';
$start_tm=microtime();//時間測定用
$tmpFn=$_FILES["upload_file"]["tmp_name"];
//一時的にアップロードしたファイル名が空でないかチェック。(キャンセルを押された時など)
if(empty($tmpFn)){
echo 'no_data';
}
//CSVファイルからデータを取り出し、さらにアクセスデータを抽出
$data=null;
try {
$cio=new CsvIo2();
//指定CSVであるか識別する
$idents=array(array("テストIDダミー","テストID別名","テストID"),"注文日","売上");
//抽出列を指定する。
$targets=array(array("テストIDダミー","テストID"),"フラグA");
//★CSV読込
$results=$cio->load3($_FILES["upload_file"],$idents,$targets);
$res=$results['res'];
$err_msg=$results['err_msg'];
$data=$results['data'];
@unlink($_FILES["upload_file"]["tmp_name"]);//一時ファイルを削除
} catch (Exception $e) {
@unlink($_FILES["upload_file"]["tmp_name"]);//一時ファイルを削除
echo 'no_data';
}
$res_tm=microtime()-$start_tm;//時間測定用
echo "<div>{$res_tm}ms</div>";
echo "res=".$res."<br>";
echo "err_msg=".$err_msg."<br>";
echo var_dump($data);
?>
| テストID | 注文日 | 売上 | フラグA |
|---|---|---|---|
| 1 | 2012/12/12 | 100 | 100 |
| 2 | 2012/12/13 | 11 | 101 |
| 3 | 2012/12/14 | 30 | 102 |
| 4 | 2012/12/15 | 50 | 103 |
| 5 | 2012/12/16 | 60 | 104 |
| 6 | 2012/12/17 | 120 | 105 |
(c)wacgance 2015-04-16