@yii2ru

Страница 1070 из 1721
NVlad
19.03.2018
08:46:45
по частям разбирай

Артур
19.03.2018
08:46:49
прайс загружается на сервак

Максим
19.03.2018
08:46:51
оптимизировать скрипт или добавить памяти. я на 512 мегабайт озу 100мб файлы гонял

Артур
19.03.2018
08:46:56
по частям разбирай
руками типа ?

Google
Ad.x ??
19.03.2018
08:47:14
прайс загружается на сервак
просто показывай код

Ad.x ??
19.03.2018
08:47:28
твои тз неинформативны вообще

Артур
19.03.2018
08:48:04
https://pastebin.com/zLL5UJdS

вот контроллер

Максим
19.03.2018
08:49:16
и шо нам даст тот контроллер? мы не будем у себя поднимать его и файлы им парсить, чтобы найти узкое место)

где то память течет, надо это устранить

Ad.x ??
19.03.2018
08:50:18
https://pastebin.com/zLL5UJdS
ну вот первая ошибка. разбор файлов

ты все файлы грузишь в память. Можно сделать подругому

http://php.net/manual/ru/splfileobject.fgetcsv.php

массив файлов также делаешь через форычь, но открываешь через эту штуку

//со всех файлов получаем единный массив со всеми нужными нам данными $dataMas = []; foreach($params['files'] as $csv) { if (!is_file($csv)) { continue; } $file = new SplFileObject($csv);

Google
Ad.x ??
19.03.2018
08:54:14
как-то так

Ad.x ??
19.03.2018
08:56:24
60-я строчка. не обязательно грузить модель, чтоб проверить есть ли она в базе. можно чота типа: $inWarehouse = WarehouseProduct::find()->where(['product_id' => $product->id, 'warehouse_id' => 1])->exists();

но это мелочи. основной косяк с файлами в массиве

Артур
19.03.2018
08:57:28
Creating default object from empty value

на вот эту строку

$house_product->in_warehouse = (float)$dat['quantity'];

хотя количество есть

и столбик тоже в базе есть

пришлось поставить условие, что бы заработало(

с теме же параметрами ?

Ad.x ??
19.03.2018
09:00:01
понял. не доглядел значит

то есть мне заместь file юзнуть объект ?
вообще убрать кусок с 9 по 13 строчку

Максим
19.03.2018
09:00:44
так а что ты хотел увидеть ?)))
ну более конкретный вопрос, а не полотно с сотней строк кода и вопросом "пацаны, памяти не хватает, че делать")

Максим
19.03.2018
09:01:41
CSV файлы можно и построчно парсить. первую строку как заголовки таблицы спарсил, а потом по 50-100 строк фигачишь и подчищаешь хвосты, и памяти будет хватать даже на гигабайтные файлы

Google
Maxim
19.03.2018
09:04:19
задача добавляется но не выполняется
может по событию куда-нибудь в очередь добавляться, а выполняться в другое время по крону

Артур
19.03.2018
09:05:00
этот файлобъект из спл как раз построчно парсит
а не будет ли вылетать ошибка ? мол долго работает скрипт

ведь в браузере 30 сек

вроде только

Ad.x ??
19.03.2018
09:05:46
будет

если и вправду долго работает

Maxim
19.03.2018
09:06:18
вот контроллер
может генератор заюзаешь?

Ad.x ??
19.03.2018
09:06:30
но это не зависит от того все файлы ты грузишь в файл или построчно читаешь

может генератор заюзаешь?
с генератором ты получишь ровно тоже самое что и http://php.net/manual/ru/splfileobject.fgetcsv.php

тока больше кода )

Maxim
19.03.2018
09:08:26
Ad.x ??
19.03.2018
09:08:37
я пробовал. одно и тоже

и по времени сопоставимо

не забудь тока локнуть файл на запись перед обработкой )

Oligarch
19.03.2018
09:32:33
если кто вакансии найдет на юии2 москва или удаленно - кидайте

Evgeny
19.03.2018
09:33:59
https://t.me/yiijobs

Maks
19.03.2018
10:12:31
Ребят привет, а по вопросу vps может кто подсказать, переодически ловлю: MySQL server has gone away;

Хотя предпосылок по идеи к этому быть не должно

Максим
19.03.2018
10:13:46
логи сервера надо читать однозначно

Google
first
19.03.2018
10:32:54
Ребзя, всем привет. Может кто подсказать, как накатить миграции на изменение тип столбца. $this->alterColumn('table','column',$this->string()); Сейчас в третьем аргументе стоит varchar тип, как изменить на longtext? Заранее благодарю

first
19.03.2018
10:57:01
затупил :D благодарю

Konstantin
19.03.2018
11:09:17
Ruslan
19.03.2018
11:09:38
ну дык и json раньше не было)

Антон
19.03.2018
11:30:41
всем привет. кто-нибудь делал wizard form? как их грамотно сделать?) к примеру, форма "выберите, страну", жмакаем "далее", выводится другая форма "выберите город", причем список городов зависит от страны и т.д.

Admin
ERROR: S client not available

mrG1K
19.03.2018
11:34:10
dependency dropdown есть такие.. если хочешь на одной странице

Антон
19.03.2018
11:34:27
знаю, не подходит

про страну и город - это я на ходу придумал, чтобы суть понятна была)

Максим
19.03.2018
11:36:15
знаю, не подходит
почему не подходит? Разве этот плагин не делает то, что надо?

SiZE
19.03.2018
11:36:18
ну и желательно через сервисный слой это все залепить

Антон
19.03.2018
11:37:27
почему не подходит? Разве этот плагин не делает то, что надо?
изначально начал с depdrop. Но он подходит для селектов, а у меня еще дополнительная логика есть... в общем одним depdrop не выкрутиться...

Антон
19.03.2018
11:38:51
не) это понятно)) я к тому, что тупо link на следующий action?)

Google
SiZE
19.03.2018
11:39:13
в котором на соновании полученных данных ты будешь выводить следующую форму или возвращать ошибку

Антон
19.03.2018
11:43:58
public fucntion actionIndex() { $model = new Model(); if ($model-load(Yii::$app->request->post()) { switch ($model->step) { case 1: return $this->stepOne($model); case 2: return $this->stepTwo($model); } } }

к примеру

правильно понял твою мысль?

Артур
19.03.2018
11:49:45
Class 'app\modules\data\controllers\SplFileObject' not found

на чистом пхп норм работает(

SplFileObject

Максим
19.03.2018
11:50:00
обратный слеш перед классом поставь

Артур
19.03.2018
11:50:05
понял)

Vladislav
19.03.2018
12:25:29
Всем привет. Не подскажите как в GridView ActionColumn добаить ещё один экшен?

Ad.x ??
19.03.2018
12:27:01
на стековерфлоу дохуя примеров

потрудись поискать плс

Vladislav
19.03.2018
12:29:56
@kohone благодарю

@AlDexor не благодарю =D

Артур
19.03.2018
12:41:55
такс снова я с csv )

https://pastebin.com/dvhCQF2R

вот мой код)

у меня скрипт падает ( 504 ошибка вылетает

по тайму(

Страница 1070 из 1721