[PHP-users 19273]Re: PHPからMYSQLのエクスポートについて

kohei-w kohei-w @ wd6.so-net.ne.jp
2003年 12月 9日 (火) 08:01:06 JST


自己レスです。

Setoさん、アドバイスありがとうございました。
やはり、パーミッションを下げることが不安で
もう少し探していたら、

「SQLからSELECTしたデータをcsvファイルとしてダウンロードする」

という仕組みがありましたので、
これで進めたいとおもいます。

アドバイスありがとうございました。

kohei.W
----------------------------------------------------------------------------
------------------------------
<?php

//ダウンロード前に表示するダイアログの指定
header("Content-Type: application/octet-stream");

//ダウンロード前に表示するダイアログの指定 ファイル名を bu+日付.csv
//と指定
header("Content-Disposition: attachment; filename=bu".date(ymd).".csv");

//DBへ接続開始 サーバー名--localhost ユーザー名--root パスワード--root
$dbHandle = mysql_connect("localhost","root","root");

//DBの接続に失敗した場合はエラー表示をおこない処理中断
if ($dbHandle == False) {
	print ("can not connect db\n");
	exit;
}

//db名  test
$db = "cate2";

//SQL文 tab1表からnumber列の値の昇順にソートした全行を取り出す
$sql = "select * from table_name order by number1";

//SQL文を実行する
$rs = mysql_db_query($db,$sql);

//mysql_num_fields 関数を使用し列数を取得する
$fields = mysql_num_fields($rs);

//mysql_num_rows 関数を使用し行数を取得する
$rows = mysql_num_rows($rs);

//取り出した行数分繰り返す
for($i=0;$i<$rows;$i++){

//列数分繰り返す
	for($j=0;$j < $fields;$j++){

//列の内容出力する
		print(mysql_result($rs,$i,$j));

//最終列でない場合は カンマ を出力する
		if ($j < $fields - 1)
			print(",");
	}

//改行コードを出力する
	print("\n");
}

?>




PHP-users メーリングリストの案内