Читалище Шумен CMS

Това е един проект направен по време на Code4.Tech в Шумен състезание 2016 г. Цели подготвяне на ученици, студенти и професионалисти за интервю. С тази платформа може да получите информация за читалищата в област Шумен, да допринесете с информация за събития, новини, снимки и да бъдете част от една локална общност.

Това е един малко по-различен CMS, за който идеята е публично да може да се дава информация и всеки който иска да публикува информация. Не са използвани готови компоненти, а редакцията и авторизацията е правена само с Phalcon.

Все още като прототип и има много незавършена фукционалност, но базовите неща може да ги видите като си заредите платформата като следвате стъпките в хранилището.

Ето и линк към пълния код:

https://github.com/ibpavlov/chitalishte-shumen

, , , , , ,

Няма коментари

Interview-U (подготовка за интервю)

Това е един публичен проект направен по време на Code4.Tech в Русе състезание 2016 г. Цели подготвяне на ученици, студенти и професионалисти за интервю. С тази платформа може да получите полезни съвети, да направите IQ тест (в разработка), да се подготвите с въпросник, който се оценява (в разработка) и видео интервю (за лична подготовка). Възможно е да управлявате записаните видеа, както и всички въпроси на сайта.

Използвани технологии:

  • PHP 5.5+
  • Phalcon 2+
  • Composer
  • Mysql server

Link: https://github.com/ibpavlov/Interview-U

 

 

, , , ,

Няма коментари

JSON_NUMERIC_CHECK round-fix

Ако искате автоматично да преобразувате низове в числа при json_encode тогава един от начините е с JSON_NUMERIC_CHECK.

Но при него има доста често срещани проблеми като изрязването на телефоните и големите числа.

Това се отнася най-вече за запазени в някакъв обект, база от данни, или други които са пресметнати и са представени в консистентен формат. Например: при запазване на числата +123, 0123, 123 винаги ще се запазят като 123. Когато взимаме тези данни ние знаем, че подадените ни данни ще са вече изчислени, обработени и +123 не може да срещнем ако числото наистина не е низ от символи.

Ето една реализация на същата функционалност както при JSON_NUMERIC_CHECK, която не създава такива проблеми. Числата се заменят само ако не са толкова големи и ако не започват с „+“ или „0“ (т.е. са изчислени числа).


Опростената версия на кода:

function stringToNumeric(&$element)
{
    if(is_string($element) && is_numeric($element)) {
        //Check if normal int or float and change format
        if (ctype_digit($element) && strval(intval($element)) === $element) {
            $element = intval($element);
        } elseif(strval(doubleval($element)) === $element) {
            $element = doubleval($element);
        }
    }
}

function arrayStringsToNumeric(&$array) 
{
    array_walk_recursive($array, "stringToNumeric");
}

function jsonNumericEncode($data, $options = 0, $depth = 512)
{
    //if Has Numberic check and is_array do proper check
    if(($options & JSON_NUMERIC_CHECK) == JSON_NUMERIC_CHECK && is_array($data)) {
        //Remove numeric check
        $options = $options ^ JSON_NUMERIC_CHECK;
        //Make proper type
        array_walk_recursive($data, "stringToNumeric");
    }
    json_encode($data, $options, $depth);
}
jsonNumericEncode

Функцията замества използването на JSON_NUMERIC_CHECK, но може и да се ползва директно като премахнете тази проверка.

function prepareJsonData($data)
{
    //if Has Numberic check and is_array do proper check
    if((is_array($data) && !empty($data)) {
        //Make proper type
        array_walk_recursive($data, "stringToNumeric");
    }
}
$data = prepareJsonData($data);
json_encode($data);

Така накрая в данните може да получите

{
    "phone": "+525526262",
    "number: 12512521, 
    "phone2": "0025542424252",
    "money": 22.23
}

вместо

{
    "phone": 525526262,
    "number: 12512521, 
    "phone2": 25542424252,
    "money": 22.23
}

Има и друго решение, което според мен не е толкова ефективно. Можете да продължите с използването на JSON_NUMERIC_CHECK, но да промените малко данните за да се запазят все пак като низ от символи:

function prepareJsonWithNumberCheck(&$data) {
array_walk_recursive($data, function(&$element) {
    //Check if big int or number and add space
    $same = strval(intval($element)) == $element;
    if (ctype_digit($element) && !$same) {
        $element = "" . $element . " ";
    } elseif(!$same && !preg_match('/^(\+|0)[0-9]+$/', $element)) {
        $element = "" . $element . " ";
    }
});
}

, , ,

Няма коментари

Открийте лицата

image

Колко лица можете да откриете на тази снимка?

, ,

Няма коментари

Сложна задача

Дадено ви е, че A = 1, B = 2A, C = 3B, …, Z = 26Y. Намерете (X – A) * (X – B) * (X – C) * … * (X – Z) = ?.

2 коментара

  • Страница 1 от 45
  • 1
  • 2
  • 3
  • 4
  • ...
  • 45
  • >

Лични проекти

Мои проекти или такива в които съм взимал активно участие

Читалище Шумен CMS

На 22.12.2016
Phalcon, Важни, Проекти, Сайтове

, , , , , ,

Interview-U (подготовка за интервю)

На 07.08.2016
Phalcon, Важни, Проекти, Публичен код, Сайтове

, , , ,

Menu Android Апликация

На 10.05.2014
Android, Java, Важни, Проекти

Bebeshko.com

На 10.03.2014
Проекти, Сайтове

Компютърна графика Javascript

На 21.01.2014
Java-Script Код, JavaScript, Код

Imotiko.com

На 13.01.2013
JavaScript, Проекти, Сайтове

, , ,




Код

Примерни фрагменти, функции, модули за различни програмни езици

JSON_NUMERIC_CHECK round-fix

На 01.08.2016
PHP Код, Важни, Код

, , ,

Разделяне на локация в 2 отделни полета

На 16.12.2015
MySQL/SQL, Код

Bootstrap качване на файл

На 17.03.2015
Bootstrap, Java-Script Код, Код

, ,

Активна навигация

На 05.05.2014
PHP Код, Код

Проверка за съществуване на Google Play Services – Android

На 02.03.2014
Android Код, Код

Анимация, чрез снимка – jQuery

На 01.03.2014
HTML5 Код, Код, Публичен код

, ,