我正在使用laravel Artisan Commands从公共文件夹下载文件.
其实我想下载一个我在公共文件夹中成功制作的zip文件.
当我按下按钮点击方法时,我能够下载文件.
但是当我在控制台中执行命令时,它不起作用,也不会抛出任何错误.
public function downloadExportRawData() {
$a=public_path().'/temp/rawexport/rawexportproduct.zip';
$path='/temp/rawexport/rawexportproduct.zip';
if(file_exists('temp/rawexport/rawexportproduct.zip')){
return Response::download($a);
}else{
return "hello";
}
}
Run Code Online (Sandbox Code Playgroud)
试过这个......
public static function downloadZip($rand_folder, $zipname, $fileName) {
header('Content-Type: application/force-download');
header('Content-Disposition: attachment; filename="' . $fileName . '.zip"');
header('Content-Length: ' . filesize($zipname));
$handle = fopen($zipname, 'rb');
//exec("rm -r ".$temp);
while (!feof($handle)) {
echo fread($handle, 1048576);
ob_flush();
flush();
}
fclose($handle);
// exec("rm -r " . $rand_folder);
}
Run Code Online (Sandbox Code Playgroud)
而命令是
php artisan product:export --from=http://localhost/valuable-app/dev-master/rest_app/public/ --productid=5b273b0e4bb5995b108b4576 --tokenexport=354c3ddb2bd45aa6e5c4f749749b0b58cbacef48
Run Code Online (Sandbox Code Playgroud)
主要问题是它是通过控制器中的功能而不是下载它.我试图回应它以zip格式打印代码的响应意味着一个编码的表单,其中包含与我的zip文件相关的东西意味着它打印zip而不是下载它.我第一次使用Artisan.知道如何使用用户定义的Artisan命令下载该文件.
我在过去两周尝试这个但是无法做任何事情.
尝试迁移时出现以下错误。实际上,我有很多数据,所以我在laravel中使用了块。
我使用的是 MongoDB 而不是 SQL
** You must specify an orderBy clause when using this function.**
Run Code Online (Sandbox Code Playgroud)
我的迁移文件的 up 功能是
public function up()
{
ini_set('max_execution_time', 250);
ini_set('memory_limit', '1024M');
$product_array = DB::collection('product')->orderBy('created_at','asc');
$product_array->chunk(20, function($product_array)
{
$cotationPercentForecast=0;
$cotationPercent=0;
$quote_tpl = array();
foreach ($product_array as $key => $value) {
if (isset($value['quote_tpl'])) {
$quote_tpl = $value['quote_tpl'];
$defaultScoreCount = 0;
$realScoreCount = 0;
$forecastScoreCount = 0;
foreach ($quote_tpl as $idxPerimetre => $perimetre) {
if (isset($perimetre['families'])) {
foreach ($perimetre['families'] as $idxFamilies => $family) {
if (isset($family['subfamilies'])) { …Run Code Online (Sandbox Code Playgroud) 在尝试访问 mongodb 时,我收到连接失败的错误
在运行mongod命令时我得到
2019-02-25T11:05:05.870+0530 I CONTROL [initandlisten] MongoDB
starting : pid=2580 port=27017 dbpath=/data/db 64-bit host=gten
2019-02-25T11:05:05.870+0530 I CONTROL [initandlisten] db version
v3.6.3
2019-02-25T11:05:05.870+0530 I CONTROL [initandlisten] git
version: 9586e557d54ef70f9ca4b43c26892cd55257e1a5
2019-02-25T11:05:05.870+0530 I CONTROL [initandlisten] OpenSSL
version: OpenSSL 1.1.0g 2 Nov 2017
2019-02-25T11:05:05.870+0530 I CONTROL [initandlisten] allocator:
tcmalloc
2019-02-25T11:05:05.870+0530 I CONTROL [initandlisten] modules:
none
2019-02-25T11:05:05.870+0530 I CONTROL [initandlisten] build
environment:
2019-02-25T11:05:05.871+0530 I CONTROL [initandlisten]
distarch: x86_64
2019-02-25T11:05:05.871+0530 I CONTROL [initandlisten]
target_arch: x86_64
2019-02-25T11:05:05.871+0530 I CONTROL [initandlisten] options:
{}
2019-02-25T11:05:05.962+0530 …Run Code Online (Sandbox Code Playgroud)我有一个像这样的结构
<div onclick="first()">
//first div
<div onclick="second()">
//second div
<div onclick="third()">
//my content here inner div
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
当我点击任何div时,它正在调用第一个函数.如何实现只有我点击div然后调用相应函数的情况.我是javascript的新手.
laravel ×2
database ×1
file ×1
installation ×1
javascript ×1
laravel-5.4 ×1
mongodb ×1
php ×1
zip ×1