[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 メーリングリストの案内