CSVダウンロードその2

MySQLダウンロードその2

MySQLのデータをphpでCSVダウンロード

テーブルデータを全てダウンロードする。

test_table.php

<?php
header(“Content-Type: application/octet-stream”);
header(“Content-Disposition: attachment; filename=test_table.csv”);

$server = “localhost”; // サーバー名
$id = “test_id”; // ユーザーID
$passwd = “pass”; // パスワード
$dbname = “test_db”; // データベース名

$sql = “SELECT * FROM test_table”; // SQL文

$db=mysql_connect($server,$id,$passwd);
mysql_select_db($dbname,$db);
mysql_query(“SET NAMES sjis”)
or die(“can not SET NAMES sjis”);

$rs=mysql_query($sql,$db);
$fields = mysql_num_fields($rs);
if(!$fields) return;
while($row = mysql_fetch_array($rs)) {
for($j=0; $j<$fields; $j++) {
echo ‘”‘.addslashes($row[$j]).'”‘;
if($j<$fields-1) echo ‘,’;
}
echo “\n”;
}
exit;

csvサンプルダウンロード

php MySQL CSVアップロード

 

 

csv.php
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=EUC-JP”>
<title>アップロードCSV</title>
</head>
<body>
<FORM enctype=”multipart/form-data”action=”csv.php”method=”POST” >
<INPUT type=”hidden” name=”MAX_FILE_SIZE” value=”200000″>
アップロードするファイル:
<INPUT name=”upfile” type=”file” >
<INPUT type=”submit” value=”CSV アップロードする”>
</FORM>
<?php
// データベース
$link mysql_connect(‘localhost’‘mysql_user’‘mysql_password’);
mysql_select_db(‘dbname’, $link);
// File Upload
if (is_uploaded_file($_FILES[“upfile”][“tmp_name”])) {
if (move_uploaded_file($_FILES[“upfile”][“tmp_name”], “csv/” . $_FILES[“upfile”][“name”])) {
chmod(“csv/” . $_FILES[“upfile”][“name”], 0777);
$upload = “./csv/”.$_FILES[“upfile”][“name”];
$res = $upload;
if ( $res ) {
$fp = fopen($upload, “r”);
while( ! feof($fp) ) {
$csv = fgets($fp);
$csv = trim($csv,’\”‘);
$csv = mb_convert_encoding($csv, “EUC-JP”, “shift_jis”);
$csv = str_replace(‘”‘, ”, $csv);
$csv_array = explode(“,”,$csv);
//$csv_array = explode(“””,$csv);
//DB
mysql_query(“SET NAMES ujis”)
or die(“can not SET NAMES ujis”);
$sql = sprintf(
“INSERT IGNORE INTO test (test1,test2,test3)
VALUES(‘%d’,’%s’,’%s’)”,
$csv_array[0],$csv_array[1],$csv_array[2]);
mysql_query($sql);
}
echo $_FILES[“upfile”][“name”] . “をアップロードしました。”.$upload;
if (file_exists($upload)) {
unlink(“$upload”);
}
}
} else {
echo “ファイルをアップロードできません。”;
}
} else {
echo “ファイルが選択されていません。”;
}
?>

 

php MySQL CSVダウンロード

MySQLデータをCSVでダウンロードする。

CSVダウンロード

ファイル  csv.php

<?php

header(“Content-type: application/x-csv; charset=Shift_JIS-win”);

header(“Content-Disposition: attachment; filename=address.csv”);

// DB接続

$link = mysql_connect(“ホスト”, “ユーザー”, “パス”);mysql_select_db(“データベース”, $link);

echo “フィールド1,フィールド2,フィールド3,フィールド4”;echo “\n”;
// MYSQL呼び出しmysql_query(“SET NAMES sjis”)or die(“can not SET NAMES sjis”);$result = mysql_query(“SELECT * FROM テーブル”);
while (($row = mysql_fetch_array($result, MYSQL_ASSOC)) != NULL) {
echo ‘”‘.$row[‘フィールド1’].'”‘.’,’.'”‘.$row[‘フィールド2’].'”‘.’,’.'”‘.$row[‘フィールド3’].'”‘.’,’.'”‘.$row[‘フィールド4’].'”‘.’,’;echo “\n”;
}
mysql_free_result($result);
mysql_close($link);

?>

csvダウンロード2の下にファイルある