
Nurik
17.07.2017
09:42:16

Valeriy
17.07.2017
09:43:23
зачем посредник, Nginx прекрасно пишет логи ))

Nurik
17.07.2017
09:44:12

Valeriy
17.07.2017
09:44:44
https://goaccess.io/ :)

Google

Andru
17.07.2017
10:18:44

Valeriy
17.07.2017
10:52:50
Да ни в чем :)))

Andrey
17.07.2017
16:22:25
Слушайте, а как OAuth2.0 в симфони делается?

Sergey
17.07.2017
17:50:13
клиент или сервер?
если клиент то либо бандл https://github.com/hwi/HWIOAuthBundle
либо чистую либу и самому интегрировать как нужно http://oauth2-client.thephpleague.com/

Valeriy
17.07.2017
20:59:23
Серег лучше прикрепи про книжки)

Sergey
17.07.2017
21:01:51
сорян, проплачено
если честно не знаю о чем ты

Алексей
18.07.2017
06:54:56
есть цикл, в нем обработка изображений, на каком то изобржении возникает ошиька
можно ли узнать что за оно?

Andrey
18.07.2017
06:55:07
Можно.

Алексей
18.07.2017
06:55:20
Как?

Fayozjon [CybernatiC]
18.07.2017
06:57:21
Try catch не?

Google

Andrey
18.07.2017
07:03:57
Как?
Сохраняй последний обработанный элемент в переменную.

Алексей
18.07.2017
07:04:14
как?:)

Andrey
18.07.2017
07:20:12
Эм... Шаг первый - выучить php

Алексей
18.07.2017
07:21:24
Спасибо

Javharbek
18.07.2017
07:27:55

Andrey
18.07.2017
07:38:01
Спасибо
Не, ну смотри. сохрани изображение, которое обрабатывал последним и посмотри что внутри этой переменной.

$iD
18.07.2017
07:40:48
т.е. лучше мучаться с сохранением нежели обернуть в try-catch?
а вы знаете толк в извращениях

Javharbek
18.07.2017
07:41:18
Спасибо
Перед всем кодом задай это для вывода ошибки:
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
потом перед цыклам задай try-catch конструкцию
try{
//твой цыкл
$i++;
$massiv[] = "твоя фотка";
}
catch (Exception $e)
{
<pre>
print_r($e);
print_r($massiv);
</pre>
echo "<h1>Номер последней итерации".$i."</h1>";
}

Алексей
18.07.2017
07:53:11
try{
list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $image);
}
catch (Exception $e)
{
print_r($e);
echo "<h1>Номер последней итерации</h1>";
}
пусто

Javharbek
18.07.2017
07:53:26
или файл прикрепите
Что бы я смог просмотреть

Алексей
18.07.2017
07:53:46
protected function prepareImage($image) {
if ((strpos($image, 'http://') === 0) || (strpos($image, 'https://') === 0)) {
return $image;
}
if (is_file(DIR_IMAGE . $image)) {
try{
list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $image);
}
catch (Exception $e)
{
print_r($e);
echo "<h1>Номер последней итерации</h1>";
}
if ($width_orig < 600 || $height_orig < 600 || !$this->ORIGINAL_IMAGES) {
return $this->model_tool_image->resize($image, 600, 600);
} else {
$parts = explode('/', $image);
$new_url = implode('/', array_map('rawurlencode', $parts));
return HTTP_IMAGE . $new_url;
}
}
return false;
}


Javharbek
18.07.2017
07:54:43
protected function prepareImage($image) {
if ((strpos($image, 'http://') === 0) || (strpos($image, 'https://') === 0)) {
return $image;
}
if (is_file(DIR_IMAGE . $image)) {
try{
list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $image);
}
catch (Exception $e)
{
print_r($e);
echo "<h1>Номер последней итерации</h1>";
}
if ($width_orig < 600 || $height_orig < 600 || !$this->ORIGINAL_IMAGES) {
return $this->model_tool_image->resize($image, 600, 600);
} else {
$parts = explode('/', $image);
$new_url = implode('/', array_map('rawurlencode', $parts));
return HTTP_IMAGE . $new_url;
}
}
return false;
}
protected function prepareImage($image) {
try{
if ((strpos($image, 'http://') === 0) || (strpos($image, 'https://') === 0)) {
return $image;
}
//фильтер
if (is_file(DIR_IMAGE . $image)) {
list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $image);
if ($width_orig < 600 || $height_orig < 600 || !$this->ORIGINAL_IMAGES) {
return $this->model_tool_image->resize($image, 600, 600);
} else {
$parts = explode('/', $image);
$new_url = implode('/', array_map('rawurlencode', $parts));
return HTTP_IMAGE . $new_url;
}
}
return false;
}
catch (Exception $e)
{
echo "<pre>";
print_r($image);
echo "</pre>";
exit();
}
}


Алексей
18.07.2017
08:00:58
ошибка в getimagesize позникает

Google

Valeriy
18.07.2017
08:01:00
слеш перед ексепшеном поставь
если метод класса то в неймспейсе наверняка

Алексей
18.07.2017
08:07:42
пусто
2017-07-18 11:10:54 - PHP Notice: getimagesize(): Read error! in system_library_image.php on line 11
а ошибка продолжает

Valeriy
18.07.2017
08:15:16
нотис всеже )

Алексей
18.07.2017
08:15:30
он и до этого был

Valeriy
18.07.2017
08:17:00
open cart?

Алексей
18.07.2017
08:17:51
+

Valeriy
18.07.2017
08:18:14
версия?

Алексей
18.07.2017
08:20:43
1,5
имеет значение в данном случае?:)

Valeriy
18.07.2017
08:21:38
смотрю исходник
кароче там родная гд функция падает с ошибкой что файл не может быть прочитан
вероятнее всего его нет
хотя нет
перед этим проверка на существование
у файла проблема с правами наверное
пхп работает от юзера а файл, например, залит тобой под рут
и все

Google

Valeriy
18.07.2017
08:24:53
сделай chown на веб юзера

Алексей
18.07.2017
08:26:13
а если в файле пробелы и другие спец символы?

Valeriy
18.07.2017
08:27:19
это ткт нипричем
я надеюсь )))

Алексей
18.07.2017
08:33:15
ну тогда бы все изображения были бы недоступны

Вова
18.07.2017
15:04:47
ребят, кто писал бота на пыхе используя telegram-bot/api? будьте добры пролить свет на пару деталей.

Dima
18.07.2017
16:05:35
А такое URL: http://site/categor/?g это ошибка?

Admin
ERROR: S client not available

Andrey
18.07.2017
17:45:16
Сервер.

Vladislav
18.07.2017
18:21:26
Сервер помнит.
https://fondbot.com/docs/en/master/introduction

Андрэ
18.07.2017
19:09:27
Дошли таки руки до конца подразобраться с ansible и deployer. Но как же клево, когда в итоге приложение двумя командами на голый, только что созданный сервер деплоится. Это я для таких, как я, любящих по привычке руками на серваках настраивать то да се)

Sergey
18.07.2017
19:24:58
eval $(docker-machine use my-host)
docker-compose pull
docker-compose up -d
для простеньких проектов самое оно

Андрэ
18.07.2017
19:30:49
Да, глянул сегодня на докер с утра (я его раньше чуть чуть трогал, без machine, compose) но решил таки с ансибла и деплоера начать, давно их хотел до ума довести
Ансибл прям очень понравился

Sergey
18.07.2017
19:31:21
ансибл хорошо, но я на него не вернусь
ну то есть как, я как бы его все еще юзаю но уже не так радует как года 2 назад

Андрэ
18.07.2017
19:32:15
А вот докер, если машинка в 512 Мб памяти небольшая - он же не полетит там норм?
Я имею ввиду, обычное php приложение хотя бы, nginx, mysql, php-fpm, supervisor (опционально)

Google

Sergey
18.07.2017
19:33:12
ну вот смотри, ты можешь поднять на одной машинке nginx, mysql, php-fpm?
supervisord вообще ничего не жрет особо, да и докер и так неплохой супервизор
ставишь restart: always и вуаля
сам по себе немного отжирает docker demon, а еще он при частых рестартах контейнера любит подвисать но редко
а на сами контейнеры не много ресурсов уходит
это ж не виртуализация
ну и для любителей экономить есть rkt
он умеет образы докеровские запускать

Андрэ
18.07.2017
19:35:21
Ну суть я понимаю, я игрался с ним плотно так. Правда когда дело дошло до ~10 контейнеров тяжелых на такой маленькой машинке - ему конечно пополохело)
Да, надо будет попозже свою же задачу теперь с докером решить, построить все

Evgeniy
18.07.2017
21:07:57
поревьюте код кому не сложно https://github.com/smpl/mydi
если возникнут вопросы или найдете косяки то можно прямо в issue на русском писать

Sergey
18.07.2017
21:08:48
final class ObjectFactory implements LoaderInterface
{
use ObjectTrait;
}
краткость сестра таланта
ты пишешь библиотеку для DI и тебе было лень общую зависимость выделить

Evgeniy
18.07.2017
21:09:55
это ненавесть к наследованию)
зачем выделять абстрактный класс если все что надо хранится в трейте?)
и он переиспользуется еще в одно есте
Сергей из того что важно эт провайдеры)