Re: エクスプレスエントリーデータダウンロードを外部フォームから実行したい

2021年2月17日 at 10:58

hissyさん

おはようございます。ありがとうございます!!できました!!
昨日投稿した「ページが表示できません」メッセージについては、
参照するクラスが抜けていたことが原因のようでございます。
ご迷惑をおかけいたしました(;^_^A

hissyさんのお教え通りに、$response = StreamRsponse::create(function () use...)
と致しまして、
$response->send(); を実行することで、ダイアログが表示され、無事ダッシュボード
と同じ機能が実現できました。
気になったところと致しましては、この方法でダウンロードしたcsvファイルを
ExcelからUTF-8で読み込んでみますと、
HTMLタグが一緒に吐き出されておりました。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" type="text/css" href="/tkp_system/concrete/themes/elemental/css/bootstrap-modified.css">
<link href="/tkp_system/application/files/cache/css/elemental/main.css?ts=1599545416" rel="stylesheet" type="text/css" media="all">・・・

そこで、
$response->send();
の後にdie関数をかませることで、防止することができました。

$response->send();
die();

これで何とか解決できました。
hissyさん、katzさん、aniyaさん、フォーラムの皆さん、本当に
ありがとうございました。

Re: エクスプレスエントリーデータダウンロードを外部フォームから実行したい

2021年2月17日 at 11:05
die(); で強制するより \Core::shutdown(); の方が望ましいです。
適切に処理を終了してくれます。
 

Re: エクスプレスエントリーデータダウンロードを外部フォームから実行したい

2021年2月17日 at 11:10
hissyさん

 ご教示ありがとうございます。
さっそく、そのように実装させていただきます。
ありがとうございました!!
 

Re: Re: エクスプレスエントリーデータダウンロードを外部フォームから実行したい

2021年2月17日 at 11:35
hissyさん

 ありがとうございました。
無事、できました。

$response->send();
\Core::shutdown();
//die();
とすることで、HTMLタグもなく、CSVファイルが無事
ダウンロードできました。