ここから本文です

phpMyAdminを使ったプログラムを作成中です。 phpMyAdminで作成したテーブルに対...

sen********さん

2017/7/1317:53:06

phpMyAdminを使ったプログラムを作成中です。
phpMyAdminで作成したテーブルに対して書き込み、更新することはコーディング出来ました。

上記テーブルをエクスポート・インポートするコーデ

ィングをしたいのですが、
サンプルがみつからず、困っています。

手動でエクスポート・インポートすることはできるので、それをコーディングしたいです。
【エクスポート】ボタンをクリックして、CSVファイル形式でダウンロードするような形です。


サンプルコードや参考になるサイトがあれば教えてください。

閲覧数:
19
回答数:
1

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

shi********さん

2017/7/1318:37:52

CSV形式となるとfputcsvでも借りて正しいフォーマットに組み立てないとダメでしょうね。

こんな感じですかねぇ・・・。


(MySQLに接続する部分は割愛)
// いったんファイルに書き出すので、その準備
$file = tempnam('', 'tmp');
$fp = fopen($file, 'w');

// 全件取得
$stmt = $pdo->query('select * from テーブル名');
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
if (!isset($head)) { // ヘッダ未出力だったら
$head = array_keys($row);
fputcsv($fp, $head);
}
fputcsv($fp, $row);
}
fclose($fp);

// ブラウザに返す
header('content-type: text/csv');
readfile($file);
unlink($file);


utf-8のままじゃイヤ(CSVファイルをMS-Excelで開くとか)ならfputcsvの直前でmb_convert_variables()でまとめてcp932に変換してから書き込むことになりますね。

  • 質問者

    sen********さん

    2017/7/1319:37:42

    いつもありがとうございます。
    1レコードずつ処理するしかないんですね。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この回答は投票によってベストアンサーに選ばれました!

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる