Archive | Без рубрики

Delphi. MySQL. InsertSelect всех полей для реализации Copy Paste

Делал для своего компонента TPSDBTreeView функцию “вырезать, копировать, вставить” на основе InsertSelect. Проблема в том, что если пытаться копировать все поля, скажем так

то получим

Что же делать в таком случае? Нашёл такой выход Вот пример из проекта

  При вставке в Delphi TFDQuery

Что происходит в коде? Мы просто составляем запрос на уровне базы, выкидывая ненужные колонки, в нашем случае id и исполняем его там. И далее обращаться, скажем так […]

MySQL. Простейший триггер на BEFORE INSERT заполняющий creationDateTime

Всегда делал это из клиента, как то так, а оно оказывается всё проще. Век живи, век учись! Триггер

И вот он результат  

Борьба со спамерством на Linux сервере

 Заразили мой блог спамерским вирусом

Боролся несколько часов). Вроде как нагрузка на сервер упала. Очень помогла статья с блога. Привожу здесь копипаст, чтобы не потерять. Источник. Забанить спамера по IP диапазону Запретить доступ в админку Запретить доступ к файлам по IP В заключение Здравствуйте. Если вас интересует, как заблокировать доступ по IP к сайту нежелательным личностям, спамерам и прочим, то вам надо создать или отредактировать файл .htaccess и воспользоваться командой Order Allow,Deny либо Order […]

C#. HelloWorld. I love you C#

Попрактикуемся в C#. Традиционный Hello world

 

Delphi. UniGUI. Делаем витрину (showcase) 2 часть

В прошлом посте мы сделали подготовочку. Структуру базы данных, определили основные сущности программы, создали под них таблицы в базе и модули в прекрасной IDE Delphi. В данном посте добавим функцию добавления товара, выделения товара, удаления товара, а также наладим листание страниц товаров, перестройку витрины в зависимости от новой ширины. Ну и исправим пару мелких глюков в алгоритме. Вот что у нас получится. Общий вид витрины Выделение товара Добавление товара Перелистнем на следующую страницу Изменим размер […]

Delphi. Uploading to Keep2Share. Half Successfull Atempt…

Поступил ко мне небольшой заказ на автоматизацию заливки файлов на файлообменник Keep2Share.cc Всего было у меня 2 попытки делания данного проекта. Сначала опишу неудачную попытку, а в другом посте удачную. Задача стояла таким образом, чтобы сделать заливку напрямую из Delphi программы на сервере Keep2Share.cc К счастью, у Keep2Share.cc есть API.  Это API работает прекрасно со скриптами PHP,  о чем приводится пример на той же странице с API. Вот моя попытка, скажу сразу, удалось почти всё, кроме […]

Delphi. Как подменить и зашифровать произвольный url в браузере, загрузив контент на свой хостинг ?

Данная задача возникла в связи с тем, что понадобилось зашифровать url. Решил её частично. То есть, для простых сайтов без горы скриптов – все будет работать идеально. С горой скриптов все будет работать почти идеально, если сервер сайта наш и там можно будет разрешить кроссдоменные запросы. Это почти – означает тонкую работу со скриптами. Вообще, как я понял, такие трюки запрещены в целях безопасности. Но задачу решать как-то надо было. Способ №1 – независимый Спрятать одну […]

Delphi. FireMonkey. Первое приложение под Android – “Позвони маме”

В Delphi, насколько я вижу, под Android можно писать на Firemonkey – и тогда мы получим нативное приложение. А можно писать при помощи UniGUI фрэймворка и тогда мы получим приложение работающее через браузер, основанное на популярной библиотеке jQueryMobile. Плюс первого подхода (приложения на FireMonkey), насколько я понимаю в скорости, производительности программы, а также в том, что есть доступ к железу (вспышка, датчики и др.), минус в том, что такое приложение запустится не на всех устройствах, […]

Delphi. TRichView. Как записать контрол в базу и прочитать его оттуда?

Код для примера, без обработки ошибок. Предполагается, что подключение у нас уже создано в отдельном модуле и на форме добавлен компонент FDQuery. Также в базе создано BLOB поле. Запись в базу через поток MemoryStream

Чтение из базы через поток MemoryStream

Какие тонкие места могут быть? -Опущу здесь обработку ошибок. -Во-первых memory stream, если данных будет слишком много, memorystream может не справиться, возможно лучше будет использовать filestream. -Во-вторых BLOB поле. Чтобы сервер БД не […]

Delphi. TRichView. Сохранение добавленных картинок в определенную директорию

Для меня работа с картинками, в TRichView не была очевидна, поэтому пару дней пришлось поразбираться с тонкостями и нюансами. Мне был интересен аспект сохранения картинок при экспорте в HTML формат (например, методы SaveHTMLEx и SaveHTMLToStreamEx). В данном посте предлагается решение, которое будет нумеровать картинки с определенным префиксом и сохранять их в определенную папку. То есть, можно будет брать из базы максимальный номер последней добавленной картинки перед сохранением, и начинать с него. Я также пробовал искать возможность сохранения […]

« Older posts