@RainbowSpike

Тег PHP в блоге RainbowSpike

RainbowSpike
07 Jul 2017
RainbowSpike

есть скрипт для объединения БД, который колотит на строки 1.txt с содержимым вида
0001.jpg|бла
0002.jpg|блабла
и 2.txt с
0001.jpg|кусь
0002.jpg|куськусь
оббегает через foreach в foreach, попутно рвя на две части по | и если 0001.jpg == 0001.jpg то 2.txt[ключ] = trim(0001.jpg)."|".trim(бла)."|".trim(кусь), то есть в памяти вместо массива 2.txt собирается модификат, который пишется в 3.txt

проблема. пока в обоих исходниках одинаковое число строк - всё нормально, но если в 1.txt не хватает строк, то в 3.txt следом за недозаполненной строчкой появляется пустая строка. где-то, может, это и удобно, чтоб видеть недозаполненную строку, но меня мучает творческий вопрос - как бы убить перенос? preg_replace ("/\n|\r/","",тримка) не помогает. повторный вызов preg_replace тоже ничего не дал, из чего я понял, что preg_replace бесполезен в любых количествах. сделать итоговому файлу preg_replace на "(/\n|\r/){2,}","\n" и не париться?

RainbowSpike
21 Jun 2017
RainbowSpike

маленький ребрендинг. хотя со смартфона пока ещё тяжеловато, логотип в экран лезет из-за position: absolute;, но хотя бы боковое меню не мешается со старта страницы. убрал социалкнопки, основная загрузка страницы ускорилась с 12 до 4,5 секунд вне кэша. с менюшкой было около 30. подумываю ещё и счётчик яндекса убрать, 2,2 секунды будет

RainbowSpike
26 Jul 2016
RainbowSpike

вдогонку #oozuns

[21:28:51] <michael_ul> markvincent, в каком месте виснет?
[21:29:00] <Rainbow Spike> не твиттер. псто по 4 кб можно
[21:29:24] <markvincent> michael_ul: не то чтобы зависает. Идет AJAX запрос. аля сделай выгрузку. Запускается класс. Он вызывает метод. Метод в цикле берет список товаров и вызывает метод Сохрани картинку.

В базе товаров на 100 тысяч. но картинок для этих товаров на 16 тысяч товаров. По логике вещей оно должно пройти и медленно проверить каждый товар - есть картинка или нет.
[21:31:52] <michael_ul> Если я правильно понимаю, ты из базы select'ом выбираешь записи с неким баркодом
[21:32:33] <markvincent> В базе картинок на 2 гигабайта. Но скрипт умудряется выгрузить только 300 мегабайт фото.

Я дебажил скрипт. вставлял костыли аля - проверь что вернет функция если ID Такой то. На этапе запроса $qw = $this->PDO->query("SELECT BARCODE, IMAGE, PHOTO_NUM FROM photo WHERE BARCODE='".$barcode."' LIMIT 0, 32");

Оно тупо не возвращает запись. Хотя если этот SQL напрямую вбить и выполнить все возвращается. Я просто чувствую что чего то не то с PDO, или я чего то не так сделал.
[21:33:18] <markvincent> На вход подается barcode - это уникальный номер товара. Но для таблицы фото это не уникальное значение.

После выборке из столбика IMAGE выдается сама картинка. Это BLOB
[21:33:40] <michael_ul> А, у тебя запрос не отрабатывет
[21:33:59] <michael_ul> LIMIT 0, 32 - какой смысл имеет?

RainbowSpike
26 Jul 2016
RainbowSpike

[21:24:29] <markvincent> Редко спрашиваю, но тут попробую.
Суть проблемы - метод класса/функция иногда не возвращает результат, хотя в базе он есть.

Метод вызывается в цикле и по логике должен выбирать картинку из базы, используя несколько ключей для поиска (Barcode это ключ для фото, плюс порядковый номер картинки PHOTO_NUM).
Но увы метод останавливается где то в середине цикла. В базе всего 2 гигабайта фото. Оно может выгрузить только 300 мегабайт. Скрипт не падает, исключений не вызывает, ошибок не выводит. Памяти хватает, времнеи на исполнение тоже. Просто тупо проходит в цикле и выборочно возвращает значения.

Вот почему так? Это какие то особенности PDO? Или я криворикий рукожоп и где то чего то не указал?

Метод класса, который вызывает в цикле, для вызова данных. → http://pastebin.com/6ETqWUgX

Структур базы данных:


RainbowSpike
19 Jun 2016
RainbowSpike

хочу на смарт воткнуть веб-сервер, а в нём Докувики - чтоб на работе комиксы свои размечать во время пауз

попробовал поставить KSWeb, но он требует лицензию, иных каких-то рычагов там не вижу. поставил kWS - тоже что-то непонятное, в настройках прописал sdcard/www, сделал www на смарте, сунул туда чистый билд докувики, в браузере пишу localhost:8080/install.php - а мне вываливает kWSный экран, в нём - строчку Сегодня, а в ней - бегущая полоска...

кто-нибудь пробовал веб-сервер на андроида втыкать? ни MySQL ни PHPMyAdmin для докувики не нужен, только PHP 5.3.3

RainbowSpike
29 Feb 2016
RainbowSpike

вырвалось

Вижу в тестовом косяк,
Что-то явно тут не так!
Забегаю в код - а там
Нарисованный фигвам!

Пару строчек переставил -
Охренеть сервак заставил:
Только выделен контент -
Его сносит конкурент!

По итогу - хвост и грива,
Некорректна перспектива.
Уж, конечно, "тут не так"!
Хвать за голову: "Дураак!"

RainbowSpike
18 Oct 2014
RainbowSpike

йей. PHP-сортировалка чуток улучшена, отчётность на экране пишет.
заголовок такой echo '<html><H1>Сортировщик девиантартовских картинок по подпапкам</H1>';
после rename ещё строка echo $file.' → '.$newdir[0].'<br />'; //пишет отчёт на экране
и хвост такой echo '<br /><br />Всё!</html>';

RainbowSpike
18 Oct 2014
RainbowSpike

йей. PHP-сортировалка девиантартовских картинок http://pastebin.com/9QNUtsdL
работает куда резче автоита. сразу что-то не подумалось, что я могу на PHP написать. работает так свирепо, что у меня не нашлось столько файлов, чтоб ощутимо притормознуть и объективнее оценить. за 12 секунд рассортировал 1188 файлов весом 850 мб. это намного быстрее, чем даже сделал бы тотал коммандер при всей доступной ему памяти. однопоточность же. мой вебсервер (древнейший апач 1) располагает всего 128 мб рамы, так что я подозреваю, что он менял прямо таблицу NTFS. это опасно.

RainbowSpike
04 May 2014
RainbowSpike

имеется сайт, показывающий картинки. картинки могут находиться вне сайта или быть загруженными оттуда в локальную папку сайта. есть ли в природе скрипт, проверяющий локальный путь на существование картинки и выбирающий, что загрузить? предполагаю, этим должен заниматься пхп, но если джава тоже справляется, то и он годится

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.