2017 m. lapkričio 15 d., trečiadienis

no composer

https://github.com/CurosMJ/NoConsoleComposer

or simple function https://gist.github.com/subbysnake/734eb37b14edd718d6c656b9e1a855fc

arba leisti tokia cmd
php -d allow_url_fopen=on composer.phar require google/auth

2017 m. liepos 2 d., sekmadienis

rsync backup from remote server using SSL keys

https://www.contentecontent.com/blog/2015/01/automated-rsync-backups-from-a-webserver-to-qnap-nas/

2017 m. gegužės 29 d., pirmadienis

Tobulesnis žemėlapių framework

https://www.skobbler.com/  paremtas penstreetmap, nbet veikiantis greičiau, su papildomomis f-jomis

GREP paieska failuose, reikiamoje direktorijoje, su exclude

grep -rnw --exclude={*.gz,*.wav,*.pdf} '/home/website/public_html/' -e 'paieksosfraze'

2017 m. balandžio 12 d., trečiadienis

centos 6 php versijos ijungimas

https://doc.owncloud.org/server/8.2/admin_manual/installation/php_55_installation.html

Disable loading the old PHP Apache modules by changing their names:
mv /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php54.off
mv /etc/httpd/conf.modules.d/10-php.conf /etc/httpd/conf.modules.d/10-php54.off
Copy the PHP 5.5 Apache modules into place:
cp /opt/rh/httpd24/root/etc/httpd/conf.d/php55-php.conf /etc/httpd/conf.d/
cp /opt/rh/httpd24/root/etc/httpd/conf.modules.d/10-php55-php.conf /etc/httpd/conf.modules.d/
cp /opt/rh/httpd24/root/etc/httpd/modules/libphp55-php5.so /etc/httpd/modules/
Then restart Apache:
service httpd restart

2017 m. kovo 30 d., ketvirtadienis

mysql panasumo matavimas su levenshtein

The Levenshtein distance between two strings is the minimum number of operations needed to transform one string into the other, where an operation may be insertion, deletion or substitution of one character. Jason Rust published this MySQL algorithm for it at http://www.codejanitor.com/wp/.

CREATE FUNCTION levenshtein( s1 VARCHAR(255), s2 VARCHAR(255) )
  RETURNS INT
  DETERMINISTIC
  BEGIN
    DECLARE s1_len, s2_len, i, j, c, c_temp, cost INT;
    DECLARE s1_char CHAR;
    -- max strlen=255
    DECLARE cv0, cv1 VARBINARY(256);
    SET s1_len = CHAR_LENGTH(s1), s2_len = CHAR_LENGTH(s2), cv1 = 0x00, j = 1, i = 1, c = 0;
    IF s1 = s2 THEN
      RETURN 0;
    ELSEIF s1_len = 0 THEN
      RETURN s2_len;
    ELSEIF s2_len = 0 THEN
      RETURN s1_len;
    ELSE
      WHILE j <= s2_len DO
        SET cv1 = CONCAT(cv1, UNHEX(HEX(j))), j = j + 1;
      END WHILE;
      WHILE i <= s1_len DO
        SET s1_char = SUBSTRING(s1, i, 1), c = i, cv0 = UNHEX(HEX(i)), j = 1;
        WHILE j <= s2_len DO
          SET c = c + 1;
          IF s1_char = SUBSTRING(s2, j, 1) THEN 
            SET cost = 0; ELSE SET cost = 1;
          END IF;
          SET c_temp = CONV(HEX(SUBSTRING(cv1, j, 1)), 16, 10) + cost;
          IF c > c_temp THEN SET c = c_temp; END IF;
            SET c_temp = CONV(HEX(SUBSTRING(cv1, j+1, 1)), 16, 10) + 1;
            IF c > c_temp THEN 
              SET c = c_temp; 
            END IF;
            SET cv0 = CONCAT(cv0, UNHEX(HEX(c))), j = j + 1;
        END WHILE;
        SET cv1 = cv0, i = i + 1;
      END WHILE;
    END IF;
    RETURN c;
  END; 

Helper function:
 
CREATE FUNCTION levenshtein_ratio( s1 VARCHAR(255), s2 VARCHAR(255) )
  RETURNS INT
  DETERMINISTIC
  BEGIN
    DECLARE s1_len, s2_len, max_len INT;
    SET s1_len = LENGTH(s1), s2_len = LENGTH(s2);
    IF s1_len > s2_len THEN 
      SET max_len = s1_len; 
    ELSE 
      SET max_len = s2_len; 
    END IF;
    RETURN ROUND((1 - LEVENSHTEIN(s1, s2) / max_len) * 100);
  END; 





You have to override your ; delimiter with something like $$ to avoid this kind of error.
After your function definition, you can set the delimiter back to ;.
This should work:

DELIMITER $$
CREATE FUNCTION F_Dist3D (x1 decimal, y1 decimal) 
RETURNS decimal
DETERMINISTIC
BEGIN 
  DECLARE dist decimal;
  SET dist = SQRT(x1 - y1);
  RETURN dist;
END$$
DELIMITER ;

2017 m. kovo 8 d., trečiadienis

php desktiop app

Kaip kad yra android/ios frameworkai, kurie padaro appsus iš html+css+js+sqlite taip yra ir windows desktop app padarymo glaimybe. placiau apie frameworkus https://github.com/cztomczak/phpdesktop bei https://www.sitepoint.com/3-ways-develop-cross-platform.../

2017 m. kovo 3 d., penktadienis

2017 m. vasario 23 d., ketvirtadienis

2017 m. vasario 8 d., trečiadienis

linux cmd delete files in subdirectories older than x days

Be careful with special file names (spaces, quotes) when piping to rm.

There is a safe alternative - the -delete option:

find /path/to/directory/ -mindepth 1 -mtime +5 -delete
That's it, no separate rm call and you don't need to worry about file names.

Replace -delete with -depth -print to test this command before you run it (-delete implies -depth).

shareimprove this answer
edited May 25 '15 at 18:10

Stephen Kitt
59k9104140
answered May 25 '15 at 16:44

basic6
1,5951018
6
Also use -type f to delete files only (and keep sub directories) – Oleg Mar 4 '16 at 8:44
1
Alternatively, if you want to do the same for all files NEWER than five days: find /path/to/directory/ -mindepth 1 -mtime -5 -delete – zmonteca Apr 19 '16 at 17:29

2017 m. sausio 30 d., pirmadienis

UUID

mysql uuid() arba PHP https://gist.github.com/dahnielson/508447/b271e314c3c3190b0e31bc7f2f4f35da3c04f91c

Version 1 (date-time and MAC address)
Version 2 (date-time and MAC Address, DCE security version)
Versions 3 and 5 (namespace name-based)
Version 4 (random)

2017 m. sausio 26 d., ketvirtadienis

test http requests

https://www.hurl.it/ , support oauth, get, post, put, custom headers,  etc...

Mobile app frameworks

http://ionicframework.com/  (angularjs,html5)
http://mobileangularui.com/ (bootstrap based)
https://framework7.io/ (material theme, ui components)
https://coronalabs.com/  (fot x10 times faster coding)
https://www.nativescript.org/  (native UI, JS - gera)
http://phonegap.com/

htaccess gzip kompresijos ijungimas ir cookies isjungimas

paspartinti krovimui, tikslinga js,css ir paveikslus iskelti i cookieles domena. Kitiems ouslapiams tikslinga ijungti gzip kompresija.

http://www.xpertdeveloper.com/2012/04/htaccess-gzip-compression/
https://css-tricks.com/snippets/htaccess/active-gzip-compression/

Del cookie htaccess suvesti
  Header unset Cookie
  Header unset Set-Cookie

<FilesMatch "\.(js|css|jpg|png|jpeg|gif|xml|json|txt|pdf|mov|avi|otf|woff|ico|swf)$">
RequestHeader unset Cookie
Header unset Cookie
  Header unset Set-Cookie
</FilesMatch>

Additional options

Here are other settings that you can add to the .htaccess file that can help reduce the request header even more. Also you may want to use a subdomain (cname) to load all your static content.

Header unset Pragma
FileETag None
Header unset ETag

kad websaitas pasileistu kaip app is mob darbalaukio

tam pakanka deti tokia zymas
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">