Dump Dan Restore MySQL

Monday, October 02, 2017

Dump Satu Database
mysqldump nama_db > nama_db.sql
Dump Dari remote database
mysqldump -u <db_username> -h <db_host> -p db_name table_name > table_name.sql
Dump satu table
mysqldump nama_db nama_table > nama_table.sql
Dump lebih dari satu table
mysqldump nama_db nama_table1 nama_table2 nama_table2 > banyak_table.sql
Restore
mysql -u username -p db_name < /path/to/table_name.sql

Datepicker Butang Today dan Tukar Bahasa

Tuesday, September 19, 2017

Bagi memamparkan butang TODAY pada pilihan datepicker, setkan btntoday = true.

Buka fail .../bootstrap-datepicker/js/bootstrap-datepicker.js, tukar setting di var defaults = $.fn.datepicker.defaults = { ... }

 var defaults = $.fn.datepicker.defaults = {
  autoclose: false,
  beforeShowDay: $.noop,
  calendarWeeks: false,
  clearBtn: false,
  daysOfWeekDisabled: [],
  endDate: Infinity,
  forceParse: true,
  format: 'mm/dd/yyyy',
  keyboardNavigation: true,
  language: 'ms',
  minViewMode: 0,
  orientation: "auto",
  rtl: false,
  startDate: -Infinity,
  startView: 0,
  todayBtn: true,
  todayHighlight: false,
  weekStart: 0
 };

Bagi menukar bahasa melayu, selain setting di atas tukar mode language: 'ms', tambah maklumat ms seperti di bawah. Tambah  ms selepas en pada var dates = $.fn.datepicker.dates = { en: { ... }, ms: { ... }};

 var dates = $.fn.datepicker.dates = {
  en: {
   ...
  },
  ms: {
   days: ["Ahad", "Isnin", "Selasa", "Rabu", "Khamis", "Jumaat", "Sabtu", "Ahad"],
   daysShort: ["Ahd", "Isn", "Sel", "Rbu", "Kha", "Jum", "Sab", "Ahd"],
   daysMin: ["Ahd", "Isn", "Sel", "Rbu", "Kha", "Jum", "Sab", "Ahd"],
   months: ["Januari", "Februari", "Mac", "April", "Mei", "Jun", "Julai", "Ogos", "September", "Oktober", "November", "Disember"],
   monthsShort: ["Jan", "Feb", "Mac", "Apr", "Mei", "Jun", "Jul", "Ogos", "Sep", "Okt", "Nov", "Dis"],
   today: "HARI INI",
   clear: "Clear"
  }
 };


Nota ini merujuk kepada datepicker versi di bawah.
 * Copyright 2012 Stefan Petre
 * Improvements by Andrew Rowls

Decrypt base64 Data Di Linux

Wednesday, February 08, 2017

Bila guna bash script, dan perlu sorokkan password, boleh guna encrypt base64, kemudian decrypt balik

#!/bin/sh

username='my_username'
password='my_password'

username_encoded=$(echo -n "$username" | openssl enc -base64)
password_encoded=$(echo -n "$password" | openssl enc -base64)

username_decoded=$(echo "$username_encoded" | openssl enc -d -base64)
password_decoded=$(echo "$password_encoded" | openssl enc -d -base64)

echo "username: $username"
echo "username_encoded: $username_encoded"
echo "username_decoded: $username_decoded"
echo "password: $password"
echo "password_encoded: $password_encoded"
echo "password_decoded: $password_decoded"
Output:
username: my_username
username_encoded: bXlfdXNlcm5hbWU=
username_decoded: my_username
password: my_password
password_encoded: bXlfcGFzc3dvcmQ=
password_decoded: my_password
Bila encode, ada hantar newline. Bila decode, tak new line, tak payah guna -n pada echo.
Contoh bila nak guna. Setkan awal-awal, hasilnya, masukkan dalam script untuk di decode kan semula.
mygpis@mygpis-db:~$ echo -n "mysecpassword" | openssl enc -base64
TXlHUElTMTIz
mygpis@mygpis-db:~$ vi task.sh

#!/bin/bash

DBHOST='localhost'
DBUSRN='root'
#DBPASS='mysecpassword'#commentkan
DBNAME='mygpis'
DBPASS=$(echo "TXlHUElTMTIz" | openssl enc -d -base64)

PHP Dapatkan URL semasa

Thursday, February 02, 2017

Contoh URL: http://example.com/folder1/folder2/yourfile.php?var=blabla#12345

$_SERVER["DOCUMENT_ROOT"] === /home/user/public_html
$_SERVER["SERVER_ADDR"]   === 10.34.12.123
$_SERVER['HTTP_HOST']     === example.com (atau dengan WWW)
$_SERVER["REQUEST_URI"]   === /folder1/folder2/yourfile.php?var=blabla
__FILE__                  === /home/user/public_html/folder1/folder2/yourfile.php
basename(__FILE__)        === yourfile.php
__DIR__                   === /home/user/public_html/folder1/folder2 [sama juga: dirname(__FILE__)]
$_SERVER["QUERY_STRING"]  === var=blabla

$_SERVER["REQUEST_URI"]   === /folder1/folder2/yourfile.php?var=blabla
parse_url($_SERVER["REQUEST_URI"], PHP_URL_PATH)  === /folder1/folder2/yourfile.php 
$_SERVER["PHP_SELF"]      === /folder1/folder2/yourfile.php

//jika file "yourfile.php" tu include dalam "parentfile.php" , dan "parentfile.PHP?abc" dibuka:
$_SERVER["PHP_SELF"]       === /parentfile.php
$_SERVER["REQUEST_URI"]    === /parentfile.php?abc
$_SERVER["SCRIPT_FILENAME"]=== /home/user/public_html/parentfile.php
str_replace($_SERVER["DOCUMENT_ROOT"],'', str_replace('\\','/',__FILE__ ) )  === /folder1/folder2/yourfile.php

Jadi, nak dapatkan URL semasa secara penuh
$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

Jika rasanya URL kita terlibat dengan https, sebaiknya check sekali.
$actual_link = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";