timo-71

Рейтинг
63
Регистрация
19.09.2018
ArbNet #:
До меня многие выдумывали на PHP шаблонизаторы

У вас не очень похоже на шаблонизатор.  Там сначала

{"title":"cms"}

а потом

<title>{{ title }}</title>

Твиг, в итоге что то типа

class __TwigTemplate_0de10fedb6bb039471c859d4b11d7dec41656e920490443199642f1f2de3f9b5 extends \Twig\Template

Генерит.  И более/менее быстро в итоге.


Dram :
Как проще все дать возможность юзеру обрезать фото

https://www.google.com/search?q=js+cropper

Как угодно. А там под свои нужды.

Можно, как

data:image/png;base64,iV

Или

onCropEnd: function(value) {
  console.log(value.x, value.y, value.width, value.height);
}

И https://www.php.net/manual/ru/imagick.cropimage.php на сервере


Dram :
аналог var_dump() в Питоне?

Не уверен, но загуглил. Есть

pip install var_dump
$ python
Python 3.9.0 (default, Nov 14 2020, 12:28:09)
[GCC 8.3.1 20191121 (Red Hat 8.3.1-5)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> a = [{'m':'q'}, 1, 77, 'ddd', {'pr':print}]
>>> from var_dump import var_dump
>>> a = [{'m':'q'}, 1, 77, 'ddd', {'pr':print}]
>>> var_dump(a)
#0 list(5)
    [0] => dict(1)
        ['m'] => str(1) "q"
    [1] => int(1)
    [2] => int(77)
    [3] => str(3) "ddd"
    [4] => dict(1)
        ['pr'] => object(builtin_function_or_method) (<built-in function print>)

А так,

>>> print(globals())
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, 'a': [{'m': 'q'}, 1, 77, 'ddd', {'pr': <built-in function print>}], 'var_dump': <function var_dump at 0x7f439e1858b0>}
>>> print(type(__name__))
<class 'str'>
>>> print(isinstance(a,dict))
False
>>> print(isinstance(a,list))
True

Dram #:
Опять пусто

Там понять надо сначала, куда кликать.


кнопко - мышкины эвенты


див - клик, где проверяется какой то стейтОфбаттон и далее по списку.

Ну и, нет нет, маленько ждать надо. Дом, аякс и т.д.

wait.until(lambda driver: driver.execute_script('return document.readyState') == 'complete')
Dram :
Выдает пустую строку, хотя если вывести в принт page - то там есть h1
print('innerHTML', elem.get_attribute("innerHTML"))

Ибо

.b-arbitr-header-title h1 {
        padding: 9px 0 0 10px;
        font-size: 15px;
        font-weight: normal;
        display: none;
}
webinfo #:
приходится использовать костыль в виде  php://input

Это не костыль

 $p = fopen("php://input", "rb"); $re = 0;
while( $data = fread($p, 2048) ) {;
   $re += file_put_contents( $this->dest, $data, FILE_APPEND  );
}

Года 3 назад с пыха спрыгнул на питон. Сейчас нашел . Загузка файла 1с. Просто файлик может быть, например таким:


Полгига, это где то 12-15 тыс позиций с картинками. А так и на шареде работает.

webinfo #:
даже само название  POSTFIELDS об этом говорит

Может и так, но и такой вариант есть

  curl_setopt($ch, CURLOPT_INFILE, $fp);
  curl_setopt($ch, CURLOPT_INFILESIZE, $filesize);
  curl_setopt($ch, CURLOPT_PUT, true);
  curl_setopt($ch, CURLOPT_UPLOAD, true);

Так или иначе, вариант отправки/чтения потока  на урл у пхп есть.


webinfo #:
что использование  $_POST в данном случае некорректно

Вы первый упомянули $_POST в этом топике. Ну так, навскидку - https://www.google.com/search?q=php+1%D1%81+%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0+%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2+%22php%3A%2F%2Finput%22

webinfo #:
В любом случае данные ожидаются как набор пар  "имя: значение"
Не обязательно.
timo-71 #:
CURLOPT_CUSTOMREQUEST => "PUT"

Ну и версия php. На 8 все хорошо и с ПОСТ.

php клиент


php сервер


Python сервер


Результат


Всего: 541