JS側からどうするのか?サラリーマンのすらすらIT日記IT関連を中心とした日々を綴ります。JS側からどうするのか?昨日の記事で、PHPからのCSV出力は簡単と書きました。$echoString;とすればいいということが、いろんなサイトを参考して比較的すぐにわかりました。ハマったのが、文字コードの問題。PHPファイルの文字コードがUTF-8では、CSVファイルの先頭にEF,BB,BFの3バイトがついてしまいます。BOMなしのUTF-8Nにしてやるとうまくいきました。このPHPファイルを直接実行すると、「ファイルをhoge.csvに保存します」というダイアログが表示され、必要であればファイル名を変更してCSVファイルを保存できます。JS側からどう呼び出すか。}でできると思っていたのですが、ダメ。hogehoge.phpにはアクセスされるのですが、ダイアログが表示されません。JSではなく普通のJavaScriptでwindow.openとすればいいことがわかりました。いえば「ダウンロード機能を持った多くのwebアプリは、ダウンロード時に新しいwindowを開く」ようになっています。このFC2ブログのアクセス解析ログのダウンロードでも、IEでやると新しいwindowが開きます。window.open("hogehoge.php")と書いて実行すると、新しいwindowが開いてダウンロードのダイアログが表示され、ファイル名を確認すると見事にダウンロードされました。これでCSV出力機能も完成です。[編集]コメントありがとうございます。お役に立てて幸いです。今後とも、よろしくお願いします。プロフィールAuthor:sookibizviz仕事の内容やソフトの紹介を交えながら、日々の悪戦苦闘を綴っていきます。