Моя первоначальная проблема заключалась в том, чтобы попытаться загрузить 54MB TXT -файл с Laravel, и я получал posttoolargeExcpetion в этой строке:
$request->validate([
'file' => 'required|mimes:csv,txt',
]);
во времена WAMP изменение post_max_size и upload_max_filesize было легко, но теперь мне потребовалось время, чтобы обнаружить, что это должно быть сделано с чем -то подобным
RUN echo 'post_max_size = 64M' >> /usr/local/etc/php/conf.d/docker-php-post-max-size.ini
RUN echo 'upload_max_filesize = 64M' >> /usr/local/etc/php/conf.d/docker-php-upload-max-filesize.ini
< /code>
Теперь ошибка перестала быть брошена, но никакой ошибки вообще не было. By using xdebug I found that an error was being thrown (but not shown, idk why) and it was "given data was invalid".
I thought it was because both post and upload were initially equal, due to this restriction and increased upload to 100. But the error persisted.
RUN echo 'post_max_size = 64M' >> /usr/local/etc/php/conf.d/docker-php-post-max-size.ini
RUN echo 'upload_max_filesize = 100M' >> /usr/local/etc/php/conf.d/docker-php-upload-max-filesize.ini
< /code>
Теперь у меня нет идей. Почему эта ошибка бросается? Это исправлено?
@csrf
Select the file to reorder the columns
Upload
fileUploadController.php
public function showUploadForm()
{
return view('upload');
}
public function upload(Request $request)
{
//Log::info($request->file('file')->getClientMimeType());
$request->validate([
'file' => 'required|mimes:csv,txt',
]);
$file = $request->file('file');
// Process the file
$processedData = $this->processFile($file);
// Generate a new file name
$newFileName = 'reordered_' . $file->getClientOriginalName() . '_'.time().' . '.$file->getClientOriginalExtension();
// Write processed data into a new file
$handle = fopen(storage_path('app/processed/' . $newFileName), 'w');
foreach ($processedData as $rowData) {
//fputcsv($handle, $rowData, "\t");
fputs($handle, implode("\t", $rowData)."\n");
}
fclose($handle);
// Return a link to the processed file
return response()->download(storage_path('app/processed/' . $newFileName))->deleteFileAfterSend(true);
}
private function processFile($file)
{
$data = [];
$isHeader = true;
// Read the CSV file
if (($handle = fopen($file->getRealPath(), 'r')) !== false) {
while (($rowData = fgetcsv($handle, 0, "\t")) !== false) {
if ($isHeader) {
// Check if we reached the [Data] section
if ($rowData[0] === '[Data]') {
$isHeader = false;
}
// If still in the header section, simply push the row to data as is
//$data[] = $rowData;
} else {
$merged = $rowData[4] == 'Chr' ? 'Plus Strand' : $rowData[8].$rowData[9];
// Swap columns as required
$processedRow = [
$rowData[2], // SNP Name
$rowData[4], // Chr
$rowData[5], // Position
$merged
];
$data[] = $processedRow;
}
}
fclose($handle);
}
return $data;
}
Подробнее здесь: https://stackoverflow.com/questions/782 ... data-was-i
Увеличение docker post_max_size и opload_max_filesize, вызванные «данными, были ошибочными» ошибкой в Laravel ⇐ Php
Кемеровские программисты php общаются здесь
1750203202
Anonymous
Моя первоначальная проблема заключалась в том, чтобы попытаться загрузить 54MB TXT -файл с Laravel, и я получал posttoolargeExcpetion в этой строке:
$request->validate([
'file' => 'required|mimes:csv,txt',
]);
во времена WAMP изменение post_max_size и upload_max_filesize было легко, но теперь мне потребовалось время, чтобы обнаружить, что это должно быть сделано с чем -то подобным
RUN echo 'post_max_size = 64M' >> /usr/local/etc/php/conf.d/docker-php-post-max-size.ini
RUN echo 'upload_max_filesize = 64M' >> /usr/local/etc/php/conf.d/docker-php-upload-max-filesize.ini
< /code>
Теперь ошибка перестала быть брошена, но никакой ошибки вообще не было. By using xdebug I found that an error was being thrown (but not shown, idk why) and it was "given data was invalid".
I thought it was because both post and upload were initially equal, due to this restriction and increased upload to 100. But the error persisted.
RUN echo 'post_max_size = 64M' >> /usr/local/etc/php/conf.d/docker-php-post-max-size.ini
RUN echo 'upload_max_filesize = 100M' >> /usr/local/etc/php/conf.d/docker-php-upload-max-filesize.ini
< /code>
Теперь у меня нет идей. Почему эта ошибка бросается? Это исправлено?
@csrf
Select the file to reorder the columns
Upload
[b] fileUploadController.php[/b]
public function showUploadForm()
{
return view('upload');
}
public function upload(Request $request)
{
//Log::info($request->file('file')->getClientMimeType());
$request->validate([
'file' => 'required|mimes:csv,txt',
]);
$file = $request->file('file');
// Process the file
$processedData = $this->processFile($file);
// Generate a new file name
$newFileName = 'reordered_' . $file->getClientOriginalName() . '_'.time().' . '.$file->getClientOriginalExtension();
// Write processed data into a new file
$handle = fopen(storage_path('app/processed/' . $newFileName), 'w');
foreach ($processedData as $rowData) {
//fputcsv($handle, $rowData, "\t");
fputs($handle, implode("\t", $rowData)."\n");
}
fclose($handle);
// Return a link to the processed file
return response()->download(storage_path('app/processed/' . $newFileName))->deleteFileAfterSend(true);
}
private function processFile($file)
{
$data = [];
$isHeader = true;
// Read the CSV file
if (($handle = fopen($file->getRealPath(), 'r')) !== false) {
while (($rowData = fgetcsv($handle, 0, "\t")) !== false) {
if ($isHeader) {
// Check if we reached the [Data] section
if ($rowData[0] === '[Data]') {
$isHeader = false;
}
// If still in the header section, simply push the row to data as is
//$data[] = $rowData;
} else {
$merged = $rowData[4] == 'Chr' ? 'Plus Strand' : $rowData[8].$rowData[9];
// Swap columns as required
$processedRow = [
$rowData[2], // SNP Name
$rowData[4], // Chr
$rowData[5], // Position
$merged
];
$data[] = $processedRow;
}
}
fclose($handle);
}
return $data;
}
Подробнее здесь: [url]https://stackoverflow.com/questions/78281813/increasing-docker-post-max-size-and-upload-max-filesize-caused-given-data-was-i[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия