Ecoer Logo
VOTING POWER100.00%
DOWNVOTE POWER100.00%
RESOURCE CREDITS100.00%
REPUTATION PROGRESS85.08%
Net Worth
0.868USD
STEEM
0.010STEEM
SBD
1.520SBD
Effective Power
5.001SP
├── Own SP
2.166SP
└── Incoming Deleg
+2.835SP

Detailed Balance

STEEM
balance
0.010STEEM
market_balance
0.000STEEM
savings_balance
0.000STEEM
reward_steem_balance
0.000STEEM
STEEM POWER
Own SP
2.166SP
Delegated Out
0.000SP
Delegation In
2.835SP
Effective Power
5.001SP
Reward SP (pending)
0.000SP
SBD
sbd_balance
1.520SBD
sbd_conversions
0.000SBD
sbd_market_balance
0.000SBD
savings_sbd_balance
0.000SBD
reward_sbd_balance
0.000SBD
{
  "balance": "0.010 STEEM",
  "savings_balance": "0.000 STEEM",
  "reward_steem_balance": "0.000 STEEM",
  "vesting_shares": "3527.502475 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "4616.157331 VESTS",
  "sbd_balance": "1.520 SBD",
  "savings_sbd_balance": "0.000 SBD",
  "reward_sbd_balance": "0.000 SBD",
  "conversions": []
}

Account Info

nametechfree
id444944
rank480,049
reputation26783342197
created2017-11-12T23:31:39
recovery_accountsteem
proxyNone
post_count314
comment_count0
lifetime_vote_count0
witnesses_voted_for0
last_post2018-07-26T03:20:24
last_root_post2018-07-26T03:20:24
last_vote_time2018-07-19T04:05:27
proxied_vsf_votes0, 0, 0, 0
can_vote1
voting_power0
delayed_votes0
balance0.010 STEEM
savings_balance0.000 STEEM
sbd_balance1.520 SBD
savings_sbd_balance0.000 SBD
vesting_shares3527.502475 VESTS
delegated_vesting_shares0.000000 VESTS
received_vesting_shares4616.157331 VESTS
reward_vesting_balance0.000000 VESTS
vesting_balance0.000 STEEM
vesting_withdraw_rate0.000000 VESTS
next_vesting_withdrawal1969-12-31T23:59:59
withdrawn0
to_withdraw0
withdraw_routes0
savings_withdraw_requests0
last_account_recovery1970-01-01T00:00:00
reset_accountnull
last_owner_update1970-01-01T00:00:00
last_account_update2017-11-30T01:59:48
minedNo
sbd_seconds0
sbd_last_interest_payment2018-06-08T07:06:57
savings_sbd_last_interest_payment1970-01-01T00:00:00
{
  "id": 444944,
  "name": "techfree",
  "owner": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM8mS8yzmPeFcs4RELg343kzZiDxmnH2k8yWZ4tkbfKYkitNYsan",
        1
      ]
    ]
  },
  "active": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6FEcE8yUfCzPCMKCoaBsTBcCfQ7h5BLMcNMA2gVSR5B2rTbZVB",
        1
      ]
    ]
  },
  "posting": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6pyjyGDUSdEQezXWJHnUY5LiqaBiaXbFEM7dSysVxRdZX2RHiB",
        1
      ]
    ]
  },
  "memo_key": "STM5zmmdVC7ZQ1bTct24kD49smihu8tNiJ5hZSCCepwqcvRdYaCGy",
  "json_metadata": "{\"profile\":{\"name\":\"TechFree\",\"location\":\"Cambodia\",\"website\":\"https://www.techfree.info/\",\"cover_image\":\"https://lh3.googleusercontent.com/tLCb8evAXHhhk5mbqmWBQFIHrRCOYihEXPMBpOOfpQayesWATh6kPzGtOmMpNOsUKQB1Ey4Da8Tfzjs_e7F33dwW7bQerNXkstsdwzdhXZTM1wIfDuyVWXnk6xyJaCVVua9K4OVH0ILBjxTajj_h_emcJanU5jmv1J6Ag3_HJSDC2fkNhNhGyhIAWdSfgtIIKl6UyrH_QRV6TJOUtTNZyq-CAlfeqXg_iZlD697YnQVE92IDbIHRmbsEoTQm9ZsE9g4nOi-REhVPhxHJmDDvfI1i3-bLBH2qRE0YtS3rLPKhDoUZggr6TIzTQjBXPfdS4megdd1OrXfTOQ-wb81f5pye3vftex8nWQa_jIzL8G_oULQ0ddaZw0Q9IEN8CrznNqcUEAnD8vpc3WEwXEaejrCDR0alZZJdcJPeRdhsBZfpr6IagqFNq27Wl_-RdjUjbbjl64qVYqhcAn0AuJmSEXsmJ3S2p4FH-zYV1UTib3WzGejVxDjTja8e6y1Q27rG0NjEe3i1YuEl8PkvH7pAQxmgCLXHajH7F8apSCvA_8Nkl7rExj1PnkSzuAUT3x50GyVnaxzLnVFteR9zbcaqmMBAlqdFMuGRQ60F71ywIw=w1076-h134-no\"}}",
  "posting_json_metadata": "{\"profile\":{\"name\":\"TechFree\",\"location\":\"Cambodia\",\"website\":\"https://www.techfree.info/\",\"cover_image\":\"https://lh3.googleusercontent.com/tLCb8evAXHhhk5mbqmWBQFIHrRCOYihEXPMBpOOfpQayesWATh6kPzGtOmMpNOsUKQB1Ey4Da8Tfzjs_e7F33dwW7bQerNXkstsdwzdhXZTM1wIfDuyVWXnk6xyJaCVVua9K4OVH0ILBjxTajj_h_emcJanU5jmv1J6Ag3_HJSDC2fkNhNhGyhIAWdSfgtIIKl6UyrH_QRV6TJOUtTNZyq-CAlfeqXg_iZlD697YnQVE92IDbIHRmbsEoTQm9ZsE9g4nOi-REhVPhxHJmDDvfI1i3-bLBH2qRE0YtS3rLPKhDoUZggr6TIzTQjBXPfdS4megdd1OrXfTOQ-wb81f5pye3vftex8nWQa_jIzL8G_oULQ0ddaZw0Q9IEN8CrznNqcUEAnD8vpc3WEwXEaejrCDR0alZZJdcJPeRdhsBZfpr6IagqFNq27Wl_-RdjUjbbjl64qVYqhcAn0AuJmSEXsmJ3S2p4FH-zYV1UTib3WzGejVxDjTja8e6y1Q27rG0NjEe3i1YuEl8PkvH7pAQxmgCLXHajH7F8apSCvA_8Nkl7rExj1PnkSzuAUT3x50GyVnaxzLnVFteR9zbcaqmMBAlqdFMuGRQ60F71ywIw=w1076-h134-no\"}}",
  "proxy": "",
  "last_owner_update": "1970-01-01T00:00:00",
  "last_account_update": "2017-11-30T01:59:48",
  "created": "2017-11-12T23:31:39",
  "mined": false,
  "recovery_account": "steem",
  "last_account_recovery": "1970-01-01T00:00:00",
  "reset_account": "null",
  "comment_count": 0,
  "lifetime_vote_count": 0,
  "post_count": 314,
  "can_vote": true,
  "voting_manabar": {
    "current_mana": "8143659806",
    "last_update_time": 1779088497
  },
  "downvote_manabar": {
    "current_mana": 2035914951,
    "last_update_time": 1779088497
  },
  "voting_power": 0,
  "balance": "0.010 STEEM",
  "savings_balance": "0.000 STEEM",
  "sbd_balance": "1.520 SBD",
  "sbd_seconds": "0",
  "sbd_seconds_last_update": "2018-06-08T07:06:57",
  "sbd_last_interest_payment": "2018-06-08T07:06:57",
  "savings_sbd_balance": "0.000 SBD",
  "savings_sbd_seconds": "0",
  "savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
  "savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
  "savings_withdraw_requests": 0,
  "reward_sbd_balance": "0.000 SBD",
  "reward_steem_balance": "0.000 STEEM",
  "reward_vesting_balance": "0.000000 VESTS",
  "reward_vesting_steem": "0.000 STEEM",
  "vesting_shares": "3527.502475 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "4616.157331 VESTS",
  "vesting_withdraw_rate": "0.000000 VESTS",
  "next_vesting_withdrawal": "1969-12-31T23:59:59",
  "withdrawn": 0,
  "to_withdraw": 0,
  "withdraw_routes": 0,
  "curation_rewards": 5,
  "posting_rewards": 2412,
  "proxied_vsf_votes": [
    0,
    0,
    0,
    0
  ],
  "witnesses_voted_for": 0,
  "last_post": "2018-07-26T03:20:24",
  "last_root_post": "2018-07-26T03:20:24",
  "last_vote_time": "2018-07-19T04:05:27",
  "post_bandwidth": 0,
  "pending_claimed_accounts": 0,
  "vesting_balance": "0.000 STEEM",
  "reputation": "26783342197",
  "transfer_history": [],
  "market_history": [],
  "post_history": [],
  "vote_history": [],
  "other_history": [],
  "witness_votes": [],
  "tags_usage": [],
  "guest_bloggers": [],
  "rank": 480049
}

Withdraw Routes

IncomingOutgoing
Empty
Empty
{
  "incoming": [],
  "outgoing": []
}
From Date
To Date
steemdelegated 2.835 SP to @techfree
2026/05/18 07:14:57
delegatorsteem
delegateetechfree
vesting shares4616.157331 VESTS
Transaction InfoBlock #106151809/Trx 82892440a16370b932193b563a28d46d2d6ae55e
View Raw JSON Data
{
  "trx_id": "82892440a16370b932193b563a28d46d2d6ae55e",
  "block": 106151809,
  "trx_in_block": 6,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-18T07:14:57",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "4616.157331 VESTS"
    }
  ]
}
steemdelegated 1.169 SP to @techfree
2026/05/13 08:16:00
delegatorsteem
delegateetechfree
vesting shares1903.946926 VESTS
Transaction InfoBlock #106009743/Trx a3f3c85432eda8cc0519606eb303c9ecdab0e714
View Raw JSON Data
{
  "trx_id": "a3f3c85432eda8cc0519606eb303c9ecdab0e714",
  "block": 106009743,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-13T08:16:00",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "1903.946926 VESTS"
    }
  ]
}
steemdelegated 2.842 SP to @techfree
2026/04/26 06:25:27
delegatorsteem
delegateetechfree
vesting shares4628.673087 VESTS
Transaction InfoBlock #105519267/Trx ce3125f9e6bc4e8bcd7590d50ec99571fa771b4a
View Raw JSON Data
{
  "trx_id": "ce3125f9e6bc4e8bcd7590d50ec99571fa771b4a",
  "block": 105519267,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-04-26T06:25:27",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "4628.673087 VESTS"
    }
  ]
}
steemdelegated 1.195 SP to @techfree
2026/01/24 02:38:12
delegatorsteem
delegateetechfree
vesting shares1945.493745 VESTS
Transaction InfoBlock #102874366/Trx 114a2032965f4c67812dc26ca1b3f1c076be8ed2
View Raw JSON Data
{
  "trx_id": "114a2032965f4c67812dc26ca1b3f1c076be8ed2",
  "block": 102874366,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-24T02:38:12",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "1945.493745 VESTS"
    }
  ]
}
klaisreplied to @techfree / t5kgce
2025/11/11 14:31:27
parent authortechfree
parent permlink7kyzr
authorklais
permlinkt5kgce
title
bodyបាទ ការចំហៀងក្នុងផ្ទាល់គឺជាសុបិនអាក្រក់ដែលសម្លាប់ភាពរំភើប។ កំណែទូរស័ព្ទរបស់ BK8 គឺជាមេដែក៖ ស្រាលដោយគ្មានកម្មវិធីបង្ខំ ជាមួយតុផ្ទាល់ដែលធ្វើឱ្យអ្នកមានអារម្មណ៍ក្នុងកាស៊ីណូ និងគុណភាពក្នុងពេលពិត។ គ្រប់ព័ត៌មានអំពីទូរស័ព្ទ និងសตรีម HD មាននៅទីនេះ៖ https://bk8khmer.com/ ។ ខ្ញុំសាកល្បងលើ Samsung របស់ខ្ញុំ បើកដៃប៉ុកឺជាមួយគ្រូបន្លឺក្នុងសាច់ និងឈាម ហើយលេងដូចជាមេរៀនក្នុងសម្រាកអាហារថ្ងៃត្រង់ – ការដាក់ប្រាក់ជាមួយកាតក្នុងពេលខ្លី ការដកប្រាក់ថ្ងៃបន្ទាប់ដោយគ្មានការនិយាយ។
json metadata{"links":["https://bk8khmer.com/"],"app":"steemit/0.2"}
Transaction InfoBlock #100762631/Trx a57941ff4f0b5eebe3c6995754356c027ac794e7
View Raw JSON Data
{
  "trx_id": "a57941ff4f0b5eebe3c6995754356c027ac794e7",
  "block": 100762631,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-11T14:31:27",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "7kyzr",
      "author": "klais",
      "permlink": "t5kgce",
      "title": "",
      "body": "បាទ ការចំហៀងក្នុងផ្ទាល់គឺជាសុបិនអាក្រក់ដែលសម្លាប់ភាពរំភើប។ កំណែទូរស័ព្ទរបស់ BK8 គឺជាមេដែក៖ ស្រាលដោយគ្មានកម្មវិធីបង្ខំ ជាមួយតុផ្ទាល់ដែលធ្វើឱ្យអ្នកមានអារម្មណ៍ក្នុងកាស៊ីណូ និងគុណភាពក្នុងពេលពិត។ គ្រប់ព័ត៌មានអំពីទូរស័ព្ទ និងសตรีម HD មាននៅទីនេះ៖ https://bk8khmer.com/ ។ ខ្ញុំសាកល្បងលើ Samsung របស់ខ្ញុំ បើកដៃប៉ុកឺជាមួយគ្រូបន្លឺក្នុងសាច់ និងឈាម ហើយលេងដូចជាមេរៀនក្នុងសម្រាកអាហារថ្ងៃត្រង់ – ការដាក់ប្រាក់ជាមួយកាតក្នុងពេលខ្លី ការដកប្រាក់ថ្ងៃបន្ទាប់ដោយគ្មានការនិយាយ។",
      "json_metadata": "{\"links\":[\"https://bk8khmer.com/\"],\"app\":\"steemit/0.2\"}"
    }
  ]
}
klaisreplied to @techfree / t5kgbu
2025/11/11 14:31:06
parent authortechfree
parent permlink7kyzr
authorklais
permlinkt5kgbu
title
bodyសូមអរគុណសម្រាប់ព័ត៌មាន!
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #100762624/Trx dc3647052f273da996f229a78a89174065cf3ae9
View Raw JSON Data
{
  "trx_id": "dc3647052f273da996f229a78a89174065cf3ae9",
  "block": 100762624,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-11T14:31:06",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "7kyzr",
      "author": "klais",
      "permlink": "t5kgbu",
      "title": "",
      "body": "សូមអរគុណសម្រាប់ព័ត៌មាន!",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
steemdelegated 1.296 SP to @techfree
2024/12/17 21:47:06
delegatorsteem
delegateetechfree
vesting shares2109.712942 VESTS
Transaction InfoBlock #91320564/Trx 571e996adf9c9d9e16f89ff16f0a962c27a4ca93
View Raw JSON Data
{
  "trx_id": "571e996adf9c9d9e16f89ff16f0a962c27a4ca93",
  "block": 91320564,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2024-12-17T21:47:06",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "2109.712942 VESTS"
    }
  ]
}
steemdelegated 1.399 SP to @techfree
2023/11/14 13:26:18
delegatorsteem
delegateetechfree
vesting shares2278.846474 VESTS
Transaction InfoBlock #79874669/Trx 441fc5e8ac802c929ab6b79f9d8ad0f42bd17dab
View Raw JSON Data
{
  "trx_id": "441fc5e8ac802c929ab6b79f9d8ad0f42bd17dab",
  "block": 79874669,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2023-11-14T13:26:18",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "2278.846474 VESTS"
    }
  ]
}
steemdelegated 3.203 SP to @techfree
2023/09/22 11:31:54
delegatorsteem
delegateetechfree
vesting shares5215.755260 VESTS
Transaction InfoBlock #78364228/Trx 982edce123dac46eb69d170be0ac62c3c59cf407
View Raw JSON Data
{
  "trx_id": "982edce123dac46eb69d170be0ac62c3c59cf407",
  "block": 78364228,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2023-09-22T11:31:54",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "5215.755260 VESTS"
    }
  ]
}
steemdelegated 3.339 SP to @techfree
2022/11/03 18:51:21
delegatorsteem
delegateetechfree
vesting shares5437.806698 VESTS
Transaction InfoBlock #69121803/Trx 3700542d9958f1d2c55c9a7b3d5edafe29190077
View Raw JSON Data
{
  "trx_id": "3700542d9958f1d2c55c9a7b3d5edafe29190077",
  "block": 69121803,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-11-03T18:51:21",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "5437.806698 VESTS"
    }
  ]
}
steemdelegated 3.475 SP to @techfree
2022/01/17 23:57:21
delegatorsteem
delegateetechfree
vesting shares5657.914299 VESTS
Transaction InfoBlock #60824937/Trx e6358b3362c57d873a2265696405c6e5c065623c
View Raw JSON Data
{
  "trx_id": "e6358b3362c57d873a2265696405c6e5c065623c",
  "block": 60824937,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-01-17T23:57:21",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "5657.914299 VESTS"
    }
  ]
}
steemdelegated 3.588 SP to @techfree
2021/06/14 07:05:48
delegatorsteem
delegateetechfree
vesting shares5842.108587 VESTS
Transaction InfoBlock #54615206/Trx 03ac94a796f2f5070ff09361688377b9937ac837
View Raw JSON Data
{
  "trx_id": "03ac94a796f2f5070ff09361688377b9937ac837",
  "block": 54615206,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2021-06-14T07:05:48",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "5842.108587 VESTS"
    }
  ]
}
steemdelegated 3.703 SP to @techfree
2020/12/11 17:17:12
delegatorsteem
delegateetechfree
vesting shares6029.530561 VESTS
Transaction InfoBlock #49362443/Trx 08662ce779e451147018d8c52f3b85c4a829956f
View Raw JSON Data
{
  "trx_id": "08662ce779e451147018d8c52f3b85c4a829956f",
  "block": 49362443,
  "trx_in_block": 8,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-12-11T17:17:12",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "6029.530561 VESTS"
    }
  ]
}
steemdelegated 1.174 SP to @techfree
2020/12/06 10:52:33
delegatorsteem
delegateetechfree
vesting shares1912.543513 VESTS
Transaction InfoBlock #49213954/Trx f90aac20a120d962786171b8792d3b69658a66a1
View Raw JSON Data
{
  "trx_id": "f90aac20a120d962786171b8792d3b69658a66a1",
  "block": 49213954,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-12-06T10:52:33",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "1912.543513 VESTS"
    }
  ]
}
steemdelegated 3.707 SP to @techfree
2020/12/05 20:55:09
delegatorsteem
delegateetechfree
vesting shares6035.738415 VESTS
Transaction InfoBlock #49197527/Trx 98792c17ebdf60c4e1085e2681d7e5c1d0865f40
View Raw JSON Data
{
  "trx_id": "98792c17ebdf60c4e1085e2681d7e5c1d0865f40",
  "block": 49197527,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-12-05T20:55:09",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "6035.738415 VESTS"
    }
  ]
}
steemdelegated 1.179 SP to @techfree
2020/11/03 04:27:15
delegatorsteem
delegateetechfree
vesting shares1920.017158 VESTS
Transaction InfoBlock #48272888/Trx ac8669c933e46a21c05a33c09c60bdec728230ed
View Raw JSON Data
{
  "trx_id": "ac8669c933e46a21c05a33c09c60bdec728230ed",
  "block": 48272888,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-11-03T04:27:15",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "1920.017158 VESTS"
    }
  ]
}
steemdelegated 3.831 SP to @techfree
2020/05/09 11:56:30
delegatorsteem
delegateetechfree
vesting shares6238.543774 VESTS
Transaction InfoBlock #43224298/Trx 5e57b08aa699ce44ce841560c949bb303ad4026f
View Raw JSON Data
{
  "trx_id": "5e57b08aa699ce44ce841560c949bb303ad4026f",
  "block": 43224298,
  "trx_in_block": 18,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-05-09T11:56:30",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "6238.543774 VESTS"
    }
  ]
}
steemdelegated 1.200 SP to @techfree
2020/05/08 16:28:15
delegatorsteem
delegateetechfree
vesting shares1953.311140 VESTS
Transaction InfoBlock #43201490/Trx 1f63688d967ebf43c844ce0b351aa5f4b40ca86e
View Raw JSON Data
{
  "trx_id": "1f63688d967ebf43c844ce0b351aa5f4b40ca86e",
  "block": 43201490,
  "trx_in_block": 14,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-05-08T16:28:15",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "1953.311140 VESTS"
    }
  ]
}
2019/11/13 00:16:06
parent authortechfree
parent permlinklogin-logout-php-mysql
authorsteemitboard
permlinksteemitboard-notify-techfree-20191113t001605000z
title
bodyCongratulations @techfree! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@techfree/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table> <sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@techfree) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=techfree)_</sub> **Do not miss the last post from @steemitboard:** <table><tr><td><a href="https://steemit.com/steemfest/@steemitboard/steemfest-meet-the-stemians-contest-the-mysterious-rule-revealed"><img src="https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmasWw4jQHwxng82DKxY6Q6tVg9mWcto4xcDURs8knFgCa/image.png"></a></td><td><a href="https://steemit.com/steemfest/@steemitboard/steemfest-meet-the-stemians-contest-the-mysterious-rule-revealed">SteemFest Meet The Stemians Contest - The mysterious rule revealed</a></td></tr></table> ###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!
json metadata{"image":["https://steemitboard.com/img/notify.png"]}
Transaction InfoBlock #38124076/Trx d7ec0b5559fcf7eb0227e4ab46b1cf3099250e49
View Raw JSON Data
{
  "trx_id": "d7ec0b5559fcf7eb0227e4ab46b1cf3099250e49",
  "block": 38124076,
  "trx_in_block": 7,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-11-13T00:16:06",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "login-logout-php-mysql",
      "author": "steemitboard",
      "permlink": "steemitboard-notify-techfree-20191113t001605000z",
      "title": "",
      "body": "Congratulations @techfree! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@techfree/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table>\n\n<sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@techfree) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=techfree)_</sub>\n\n\n**Do not miss the last post from @steemitboard:**\n<table><tr><td><a href=\"https://steemit.com/steemfest/@steemitboard/steemfest-meet-the-stemians-contest-the-mysterious-rule-revealed\"><img src=\"https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmasWw4jQHwxng82DKxY6Q6tVg9mWcto4xcDURs8knFgCa/image.png\"></a></td><td><a href=\"https://steemit.com/steemfest/@steemitboard/steemfest-meet-the-stemians-contest-the-mysterious-rule-revealed\">SteemFest Meet The Stemians Contest - The mysterious rule revealed</a></td></tr></table>\n\n###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}"
    }
  ]
}
steemdelegated 3.896 SP to @techfree
2019/11/01 09:45:48
delegatorsteem
delegateetechfree
vesting shares6344.942857 VESTS
Transaction InfoBlock #37790493/Trx fba8485c89be71bb6e788aea54b13d188f769fc6
View Raw JSON Data
{
  "trx_id": "fba8485c89be71bb6e788aea54b13d188f769fc6",
  "block": 37790493,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-11-01T09:45:48",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "6344.942857 VESTS"
    }
  ]
}
steemdetectivesent 0.001 STEEM to @techfree- "Hy @techfree check out https://steemdetective.com"
2019/06/05 08:34:06
fromsteemdetective
totechfree
amount0.001 STEEM
memoHy @techfree check out https://steemdetective.com
Transaction InfoBlock #33528527/Trx ef15d33ec222c02c978990509d67cbca985a304b
View Raw JSON Data
{
  "trx_id": "ef15d33ec222c02c978990509d67cbca985a304b",
  "block": 33528527,
  "trx_in_block": 24,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-06-05T08:34:06",
  "op": [
    "transfer",
    {
      "from": "steemdetective",
      "to": "techfree",
      "amount": "0.001 STEEM",
      "memo": "Hy @techfree check out https://steemdetective.com"
    }
  ]
}
steemdetectivesent 0.001 STEEM to @techfree- "Hy @techfree check out https://steemdetective.com"
2019/04/25 07:49:51
fromsteemdetective
totechfree
amount0.001 STEEM
memoHy @techfree check out https://steemdetective.com
Transaction InfoBlock #32347676/Trx 429b8fa434fb36cc2c23217766fc70460c766002
View Raw JSON Data
{
  "trx_id": "429b8fa434fb36cc2c23217766fc70460c766002",
  "block": 32347676,
  "trx_in_block": 20,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-04-25T07:49:51",
  "op": [
    "transfer",
    {
      "from": "steemdetective",
      "to": "techfree",
      "amount": "0.001 STEEM",
      "memo": "Hy @techfree check out https://steemdetective.com"
    }
  ]
}
steemdetectivesent 0.001 STEEM to @techfree- "Hy @techfree check out https://steemdetective.com"
2019/02/22 09:45:36
fromsteemdetective
totechfree
amount0.001 STEEM
memoHy @techfree check out https://steemdetective.com
Transaction InfoBlock #30567119/Trx e2f343b3d95267614a44147802ad10db6bca3298
View Raw JSON Data
{
  "trx_id": "e2f343b3d95267614a44147802ad10db6bca3298",
  "block": 30567119,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-02-22T09:45:36",
  "op": [
    "transfer",
    {
      "from": "steemdetective",
      "to": "techfree",
      "amount": "0.001 STEEM",
      "memo": "Hy @techfree check out https://steemdetective.com"
    }
  ]
}
steemdelegated 4.018 SP to @techfree
2018/11/26 19:42:45
delegatorsteem
delegateetechfree
vesting shares6542.418234 VESTS
Transaction InfoBlock #28046596/Trx 8c5d51b4a79469eb4b545d54a3cbf42216dabe51
View Raw JSON Data
{
  "trx_id": "8c5d51b4a79469eb4b545d54a3cbf42216dabe51",
  "block": 28046596,
  "trx_in_block": 19,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-26T19:42:45",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "6542.418234 VESTS"
    }
  ]
}
2018/11/13 03:21:54
parent authortechfree
parent permlinklogin-logout-php-mysql
authorsteemitboard
permlinksteemitboard-notify-techfree-20181113t032153000z
title
bodyCongratulations @techfree! You have received a personal award! [![](https://steemitimages.com/70x70/http://steemitboard.com/@techfree/birthday1.png)](http://steemitboard.com/@techfree) 1 Year on Steemit <sub>_Click on the badge to view your Board of Honor._</sub> **Do not miss the last post from @steemitboard:** <table><tr><td><a href="https://steemit.com/steemfest/@steemitboard/steemfest3-and-steemitboard-meet-the-steemians-contest"><img src="https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmeLukvNFRsa7RURqsFpiLGEZZD49MiU52JtWmjS5S2wtW/image.png"></a></td><td><a href="https://steemit.com/steemfest/@steemitboard/steemfest3-and-steemitboard-meet-the-steemians-contest">SteemFest3 and SteemitBoard - Meet the Steemians Contest</a></td></tr></table> > Support [SteemitBoard's project](https://steemit.com/@steemitboard)! **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**!
json metadata{"image":["https://steemitboard.com/img/notify.png"]}
Transaction InfoBlock #27652808/Trx 67217e5ab2c8c1718e013e1033ebf2ec3b91d8e7
View Raw JSON Data
{
  "trx_id": "67217e5ab2c8c1718e013e1033ebf2ec3b91d8e7",
  "block": 27652808,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-13T03:21:54",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "login-logout-php-mysql",
      "author": "steemitboard",
      "permlink": "steemitboard-notify-techfree-20181113t032153000z",
      "title": "",
      "body": "Congratulations @techfree! You have received a personal award!\n\n[![](https://steemitimages.com/70x70/http://steemitboard.com/@techfree/birthday1.png)](http://steemitboard.com/@techfree)  1 Year on Steemit\n<sub>_Click on the badge to view your Board of Honor._</sub>\n\n\n**Do not miss the last post from @steemitboard:**\n<table><tr><td><a href=\"https://steemit.com/steemfest/@steemitboard/steemfest3-and-steemitboard-meet-the-steemians-contest\"><img src=\"https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmeLukvNFRsa7RURqsFpiLGEZZD49MiU52JtWmjS5S2wtW/image.png\"></a></td><td><a href=\"https://steemit.com/steemfest/@steemitboard/steemfest3-and-steemitboard-meet-the-steemians-contest\">SteemFest3 and SteemitBoard - Meet the Steemians Contest</a></td></tr></table>\n\n> Support [SteemitBoard's project](https://steemit.com/@steemitboard)! **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}"
    }
  ]
}
steemdelegated 16.452 SP to @techfree
2018/09/22 01:53:06
delegatorsteem
delegateetechfree
vesting shares26789.670209 VESTS
Transaction InfoBlock #26154704/Trx c2647bb6cf1b1e02332861bc4076fb25019f040a
View Raw JSON Data
{
  "trx_id": "c2647bb6cf1b1e02332861bc4076fb25019f040a",
  "block": 26154704,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-09-22T01:53:06",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "techfree",
      "vesting_shares": "26789.670209 VESTS"
    }
  ]
}
2018/07/26 09:44:30
votersteemitboard
authortechfree
permlinklogin-logout-php-mysql
weight100 (1.00%)
Transaction InfoBlock #24510492/Trx fb83fd6b337a6f59800358add4cb817818a2d64a
View Raw JSON Data
{
  "trx_id": "fb83fd6b337a6f59800358add4cb817818a2d64a",
  "block": 24510492,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-26T09:44:30",
  "op": [
    "vote",
    {
      "voter": "steemitboard",
      "author": "techfree",
      "permlink": "login-logout-php-mysql",
      "weight": 100
    }
  ]
}
2018/07/26 09:44:27
parent authortechfree
parent permlinklogin-logout-php-mysql
authorsteemitboard
permlinksteemitboard-notify-techfree-20180726t094429000z
title
bodyCongratulations @techfree! You have completed the following achievement on Steemit and have been rewarded with new badge(s) : [![](https://steemitimages.com/70x80/http://steemitboard.com/notifications/posts.png)](http://steemitboard.com/@techfree) Award for the number of posts published <sub>_Click on the badge to view your Board of Honor._</sub> <sub>_If you no longer want to receive notifications, reply to this comment with the word_ `STOP`</sub> To support your work, I also upvoted your post! > Do you like [SteemitBoard's project](https://steemit.com/@steemitboard)? Then **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**!
json metadata{"image":["https://steemitboard.com/img/notify.png"]}
Transaction InfoBlock #24510491/Trx f83154f61f1b341ea24f3876320d9422c4d47cf8
View Raw JSON Data
{
  "trx_id": "f83154f61f1b341ea24f3876320d9422c4d47cf8",
  "block": 24510491,
  "trx_in_block": 20,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-26T09:44:27",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "login-logout-php-mysql",
      "author": "steemitboard",
      "permlink": "steemitboard-notify-techfree-20180726t094429000z",
      "title": "",
      "body": "Congratulations @techfree! You have completed the following achievement on Steemit and have been rewarded with new badge(s) :\n\n[![](https://steemitimages.com/70x80/http://steemitboard.com/notifications/posts.png)](http://steemitboard.com/@techfree) Award for the number of posts published\n\n<sub>_Click on the badge to view your Board of Honor._</sub>\n<sub>_If you no longer want to receive notifications, reply to this comment with the word_ `STOP`</sub>\n\n\nTo support your work, I also upvoted your post!\n\n\n> Do you like [SteemitBoard's project](https://steemit.com/@steemitboard)? Then **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}"
    }
  ]
}
2018/07/26 03:41:33
votergirlplaying21
authortechfree
permlinklogin-logout-php-mysql
weight10000 (100.00%)
Transaction InfoBlock #24503247/Trx 817b96d25e5de7f33ab021196e0e316984e7d775
View Raw JSON Data
{
  "trx_id": "817b96d25e5de7f33ab021196e0e316984e7d775",
  "block": 24503247,
  "trx_in_block": 17,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-26T03:41:33",
  "op": [
    "vote",
    {
      "voter": "girlplaying21",
      "author": "techfree",
      "permlink": "login-logout-php-mysql",
      "weight": 10000
    }
  ]
}
techfreepublished a new post: login-logout-php-mysql
2018/07/26 03:20:24
parent author
parent permlinkcambodia
authortechfree
permlinklogin-logout-php-mysql
titleរបៀបបង្កើត ទម្រង់ Login និង Logout ដោយប្រើប្រាស់ PHP ជាមួយ MySql
body![how-to-create-form-login-and-logout-php-with-mysql.jpg](https://cdn.steemitimages.com/DQmP8zWiPXTy7SCPMabkR2x7S4HuNr5rvVekkxqRVUjksHp/how-to-create-form-login-and-logout-php-with-mysql.jpg) អត្ថបទនេះនឹង និយាយអំពីរបៀបបង្កើតទម្រង់ Login និង Logout ដោយប្រើប្រាស់ ភាសា php ជាមួយ Mysql ។ របៀបបង្កើតទម្រង់ Login និង Logout ដោយប្រើប្រាស់ ភាសា php ជាមួយ Mysql ។ ១) ធ្វើការបង្កើត Database និង ដាក់ឈ្មោះអោយ Database ព្រមទាំងបង្កើត Table បន្ថែម Field ទៅអោយ Table បន្ទាប់មកបញ្ចូលនិន្នន័យ សូមមើលឧទាហរណ៍៖ ![1-10.jpg](https://cdn.steemitimages.com/DQmYC4PtXZcGwZstyL4FNKTRKWVWMo44iwgu91NWe57Vu8r/1-10.jpg) ២) ធ្វើការបង្កើតទម្រង់ Login ដោយធ្វើការសរសេរកូដដូចខាងក្រោម៖ **index.php** ![pdo_login.jpg](https://cdn.steemitimages.com/DQmUAHF4bbRb4X973WXF23CM6Li5t6RQoPkYJRXNY22R7Ho/pdo_login.jpg) ![pdo_login1.jpg](https://cdn.steemitimages.com/DQmVBHJqz9SiXjBWt6j4nNdrHTV7nDMc3LJh4B7vbVvLe7x/pdo_login1.jpg) ![pdo_login2.jpg](https://cdn.steemitimages.com/DQmVD5EFY8Q8Ufq2vnbwGgiC9gVFKF1BQounFKykfopuuqd/pdo_login2.jpg) **file login_success.php** ![new_login_success.jpg](https://cdn.steemitimages.com/DQmUAZBTbwkHv6e1gAMe25fiA5AHBwoZ3kgyKFUK8jgaqQZ/new_login_success.jpg) **file logout.php** ![logout.jpg](https://cdn.steemitimages.com/DQmd1gqauZSDxSxavfyN8srqAzLk3JwZs7TaTsGFPJDv8RJ/logout.jpg) សូមមើលលទ្ធផល៖ username: admin password: 123 ប្រសិនបើយើងមិនបានបញ្ចូល Username and Password នឹងចេញលទ្ធផល៖ ![if_not_input_usename_and_password.jpg](https://cdn.steemitimages.com/DQmd9kohJcUu2GEYdHm5jAExwsFvCnGx9K4b8qQG5SUtCtk/if_not_input_usename_and_password.jpg) បន្ទាប់ពីយើងចុច Login នឹងចេញលទ្ធផល៖ ![after_we_login_success.jpg](https://cdn.steemitimages.com/DQma6aL7ZMvw2rynimNrLAqW64jqsTDTvH9xSmtTmyfJycA/after_we_login_success.jpg) ពេលដែលយើងចុច Logout វានឹងចេញទៅកាន់ ទំព័រ Login វិញ ![after_we_logout.jpg](https://cdn.steemitimages.com/DQmPywKfrM1JsSeZD9wnEHzSvTiXriyk1jsPnrW6hxp5btn/after_we_logout.jpg) [ប្រភពដើម](https://www.techfree.info/2016/10/26/how-to-create-login-logout-by-php-with-mysql/)
json metadata{"tags":["cambodia","khmer","login","logout","php"],"image":["https://cdn.steemitimages.com/DQmP8zWiPXTy7SCPMabkR2x7S4HuNr5rvVekkxqRVUjksHp/how-to-create-form-login-and-logout-php-with-mysql.jpg","https://cdn.steemitimages.com/DQmYC4PtXZcGwZstyL4FNKTRKWVWMo44iwgu91NWe57Vu8r/1-10.jpg","https://cdn.steemitimages.com/DQmUAHF4bbRb4X973WXF23CM6Li5t6RQoPkYJRXNY22R7Ho/pdo_login.jpg","https://cdn.steemitimages.com/DQmVBHJqz9SiXjBWt6j4nNdrHTV7nDMc3LJh4B7vbVvLe7x/pdo_login1.jpg","https://cdn.steemitimages.com/DQmVD5EFY8Q8Ufq2vnbwGgiC9gVFKF1BQounFKykfopuuqd/pdo_login2.jpg","https://cdn.steemitimages.com/DQmUAZBTbwkHv6e1gAMe25fiA5AHBwoZ3kgyKFUK8jgaqQZ/new_login_success.jpg","https://cdn.steemitimages.com/DQmd1gqauZSDxSxavfyN8srqAzLk3JwZs7TaTsGFPJDv8RJ/logout.jpg","https://cdn.steemitimages.com/DQmd9kohJcUu2GEYdHm5jAExwsFvCnGx9K4b8qQG5SUtCtk/if_not_input_usename_and_password.jpg","https://cdn.steemitimages.com/DQma6aL7ZMvw2rynimNrLAqW64jqsTDTvH9xSmtTmyfJycA/after_we_login_success.jpg","https://cdn.steemitimages.com/DQmPywKfrM1JsSeZD9wnEHzSvTiXriyk1jsPnrW6hxp5btn/after_we_logout.jpg"],"links":["https://www.techfree.info/2016/10/26/how-to-create-login-logout-by-php-with-mysql/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #24502824/Trx c5ce9ad32efb79282a7153ee746b828a86586a3b
View Raw JSON Data
{
  "trx_id": "c5ce9ad32efb79282a7153ee746b828a86586a3b",
  "block": 24502824,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-26T03:20:24",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "login-logout-php-mysql",
      "title": "របៀបបង្កើត ទម្រង់ Login និង Logout ដោយប្រើប្រាស់ PHP ជាមួយ MySql",
      "body": "![how-to-create-form-login-and-logout-php-with-mysql.jpg](https://cdn.steemitimages.com/DQmP8zWiPXTy7SCPMabkR2x7S4HuNr5rvVekkxqRVUjksHp/how-to-create-form-login-and-logout-php-with-mysql.jpg)\n\nអត្ថបទនេះនឹង និយាយអំពីរបៀបបង្កើតទម្រង់ Login និង Logout ដោយប្រើប្រាស់ ភាសា php ជាមួយ Mysql ។\n\n\nរបៀបបង្កើតទម្រង់ Login និង Logout ដោយប្រើប្រាស់ ភាសា php ជាមួយ Mysql ។\n\n១) ធ្វើការបង្កើត Database និង ដាក់ឈ្មោះអោយ Database ព្រមទាំងបង្កើត Table បន្ថែម Field ទៅអោយ Table បន្ទាប់មកបញ្ចូលនិន្នន័យ\n\nសូមមើលឧទាហរណ៍៖\n\n![1-10.jpg](https://cdn.steemitimages.com/DQmYC4PtXZcGwZstyL4FNKTRKWVWMo44iwgu91NWe57Vu8r/1-10.jpg)\n\n២) ធ្វើការបង្កើតទម្រង់ Login ដោយធ្វើការសរសេរកូដដូចខាងក្រោម៖\n\n**index.php**\n\n![pdo_login.jpg](https://cdn.steemitimages.com/DQmUAHF4bbRb4X973WXF23CM6Li5t6RQoPkYJRXNY22R7Ho/pdo_login.jpg)\n![pdo_login1.jpg](https://cdn.steemitimages.com/DQmVBHJqz9SiXjBWt6j4nNdrHTV7nDMc3LJh4B7vbVvLe7x/pdo_login1.jpg)\n![pdo_login2.jpg](https://cdn.steemitimages.com/DQmVD5EFY8Q8Ufq2vnbwGgiC9gVFKF1BQounFKykfopuuqd/pdo_login2.jpg)\n\n**file login_success.php**\n\n![new_login_success.jpg](https://cdn.steemitimages.com/DQmUAZBTbwkHv6e1gAMe25fiA5AHBwoZ3kgyKFUK8jgaqQZ/new_login_success.jpg)\n\n**file logout.php**\n\n![logout.jpg](https://cdn.steemitimages.com/DQmd1gqauZSDxSxavfyN8srqAzLk3JwZs7TaTsGFPJDv8RJ/logout.jpg)\n\nសូមមើលលទ្ធផល៖\n\nusername: admin\n\npassword: 123\n\nប្រសិនបើយើងមិនបានបញ្ចូល Username and Password នឹងចេញលទ្ធផល៖\n\n![if_not_input_usename_and_password.jpg](https://cdn.steemitimages.com/DQmd9kohJcUu2GEYdHm5jAExwsFvCnGx9K4b8qQG5SUtCtk/if_not_input_usename_and_password.jpg)\n\nបន្ទាប់ពីយើងចុច Login នឹងចេញលទ្ធផល៖\n\n![after_we_login_success.jpg](https://cdn.steemitimages.com/DQma6aL7ZMvw2rynimNrLAqW64jqsTDTvH9xSmtTmyfJycA/after_we_login_success.jpg)\n\nពេលដែលយើងចុច Logout វានឹងចេញទៅកាន់ ទំព័រ Login វិញ\n\n![after_we_logout.jpg](https://cdn.steemitimages.com/DQmPywKfrM1JsSeZD9wnEHzSvTiXriyk1jsPnrW6hxp5btn/after_we_logout.jpg)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/26/how-to-create-login-logout-by-php-with-mysql/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"login\",\"logout\",\"php\"],\"image\":[\"https://cdn.steemitimages.com/DQmP8zWiPXTy7SCPMabkR2x7S4HuNr5rvVekkxqRVUjksHp/how-to-create-form-login-and-logout-php-with-mysql.jpg\",\"https://cdn.steemitimages.com/DQmYC4PtXZcGwZstyL4FNKTRKWVWMo44iwgu91NWe57Vu8r/1-10.jpg\",\"https://cdn.steemitimages.com/DQmUAHF4bbRb4X973WXF23CM6Li5t6RQoPkYJRXNY22R7Ho/pdo_login.jpg\",\"https://cdn.steemitimages.com/DQmVBHJqz9SiXjBWt6j4nNdrHTV7nDMc3LJh4B7vbVvLe7x/pdo_login1.jpg\",\"https://cdn.steemitimages.com/DQmVD5EFY8Q8Ufq2vnbwGgiC9gVFKF1BQounFKykfopuuqd/pdo_login2.jpg\",\"https://cdn.steemitimages.com/DQmUAZBTbwkHv6e1gAMe25fiA5AHBwoZ3kgyKFUK8jgaqQZ/new_login_success.jpg\",\"https://cdn.steemitimages.com/DQmd1gqauZSDxSxavfyN8srqAzLk3JwZs7TaTsGFPJDv8RJ/logout.jpg\",\"https://cdn.steemitimages.com/DQmd9kohJcUu2GEYdHm5jAExwsFvCnGx9K4b8qQG5SUtCtk/if_not_input_usename_and_password.jpg\",\"https://cdn.steemitimages.com/DQma6aL7ZMvw2rynimNrLAqW64jqsTDTvH9xSmtTmyfJycA/after_we_login_success.jpg\",\"https://cdn.steemitimages.com/DQmPywKfrM1JsSeZD9wnEHzSvTiXriyk1jsPnrW6hxp5btn/after_we_logout.jpg\"],\"links\":[\"https://www.techfree.info/2016/10/26/how-to-create-login-logout-by-php-with-mysql/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2018/07/19 04:05:27
votertechfree
authorgraceavenz
permlinkulog-10-keeping-the-good-vibes-early-morning-for-an-ice-cream-and-bonding-time-with-my-cousins
weight10000 (100.00%)
Transaction InfoBlock #24302259/Trx 3792b2f288284ef868dc93ab32c7e0e92cf58f92
View Raw JSON Data
{
  "trx_id": "3792b2f288284ef868dc93ab32c7e0e92cf58f92",
  "block": 24302259,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-19T04:05:27",
  "op": [
    "vote",
    {
      "voter": "techfree",
      "author": "graceavenz",
      "permlink": "ulog-10-keeping-the-good-vibes-early-morning-for-an-ice-cream-and-bonding-time-with-my-cousins",
      "weight": 10000
    }
  ]
}
2018/07/19 04:05:09
parent authortechfree
parent permlinkyii-framework
authorcheetah
permlinkcheetah-re-techfreeyii-framework
title
bodyHi! I am a robot. I just upvoted you! I found similar content that readers might be interested in: https://www.techfree.info/2016/10/26/how-to-install-yiiframework/
json metadata
Transaction InfoBlock #24302253/Trx 1eb872e6803e9fc7b5001110fd8d78d9fc3e3761
View Raw JSON Data
{
  "trx_id": "1eb872e6803e9fc7b5001110fd8d78d9fc3e3761",
  "block": 24302253,
  "trx_in_block": 24,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-19T04:05:09",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "yii-framework",
      "author": "cheetah",
      "permlink": "cheetah-re-techfreeyii-framework",
      "title": "",
      "body": "Hi! I am a robot. I just upvoted you! I found similar content that readers might be interested in:\nhttps://www.techfree.info/2016/10/26/how-to-install-yiiframework/",
      "json_metadata": ""
    }
  ]
}
2018/07/19 04:05:03
votercheetah
authortechfree
permlinkyii-framework
weight8 (0.08%)
Transaction InfoBlock #24302251/Trx fb182dc84240053e122fdaa46b2d7caeb0e46448
View Raw JSON Data
{
  "trx_id": "fb182dc84240053e122fdaa46b2d7caeb0e46448",
  "block": 24302251,
  "trx_in_block": 50,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-19T04:05:03",
  "op": [
    "vote",
    {
      "voter": "cheetah",
      "author": "techfree",
      "permlink": "yii-framework",
      "weight": 8
    }
  ]
}
techfreepublished a new post: yii-framework
2018/07/19 04:04:51
parent author
parent permlinkcambodia
authortechfree
permlinkyii-framework
titleរបៀបដំឡើង Yii Framework
body![yiiframework.jpg](https://cdn.steemitimages.com/DQmeGxweVxTxbdyh41CG3ZAxvG6Y78oksTsfwhhMdWx5wWT/yiiframework.jpg) Yii គឺជាបណ្ដុំនៃកូដ រឺបណ្ណាល័យ(Framework) មួយរបស់ភាសាកុំព្យូទ័រ PHP ដែលជាភាសាសំរាប់បង្កើតជាប្រព័ន្ធ(System) នៅក្នុងគេហទំព័រ ដែលកំពុងពេញនិយម ។ Yii ក៏ដូចជាបណ្ដុំនៃកូដរបស់ PHP ផ្សេងទៀតដែរគឺ វាជួយសំរួលនិងមានភាពរហ័សក្នុងការបង្កើតប្រព័ន្ធនៅក្នុងគេហទំព័រផងដែរ ។លើសពីនេះទៀតវាថែមទាំងមានសុវត្ថិភាពខ្ពស់ដែលអាចការពារពីការជ្រៀតចូលរំខានពីអ្នកចង់បំផ្លាញប្រព័ន្ធនោះ (Hacker) ។ ថ្ងៃនេះ TechFree សូមបង្ហាញពីការដំឡើង (Install) និងណែនាំអំពីការប្រើប្រាស់ Yii Framework នេះ ដែលអាចចាត់ទុកថាវាគឺជាគន្លឹះមួយសំរាប់អ្នកដែលចង់ចេះអំពីវា ។ ម្យ៉ាងវិញទៀត វាក៏មានលក្ខណៈស្មុគ្រស្មាញបន្តិចផងដែរនៅក្នុងការដំឡើងវាហើយ យើងត្រូវដំឡើងវាជាមួយកម្មវិធីផ្ទុកទិន្នន័យមួយរបស់គេហទំព័រ (Web Server) មានដូចជា Wamp និង Xampp Server ជាដើម។ យើងខ្ញុំសូមបង្ហាញនូវការដំឡើងជាមួយ Wamp Server ។ ១) ការទាញយក មុននឹងធ្វើការដំឡើង Yii យើងត្រូវទាញយក វាជាមុនសិនតាមរយៈ [www.yiiframework.com](http://www.yiiframework.com/) ។ សូមមើលរូបខាងក្រោម ៖ ![yii1.png](https://cdn.steemitimages.com/DQmU2kmA6XczHAyWcMyo1XfKN4t7f9HJyHJrKiSTqedVaVE/yii1.png) ក្រោយពីការទាញយករួចយើងត្រូវប្ដូរឈ្មោះទៅជា yii ដើម្បីងាយស្រួលមើល និងថតចម្លង (copy) ឯកសារ (file) នោះទៅដាក់នៅទីតាំងរបស់ Wamp Server ។ សូមមើលរួប ៖ ![yii2.png](https://cdn.steemitimages.com/DQmPfPseYuKij2kD2JLaroAhLUCckmRVBGohyBorf6eQfPs/yii2.png) បន្ទាប់មកទៀតត្រូវចម្លងអាស័យដ្ឋានរបស់ PHP ទៅដាក់នៅក្នុង yiic.bat ![yii4.png](https://cdn.steemitimages.com/DQmcicKYd26ZYKfn4fij5aVUngf6UMWUsNDRrvSZ7QvxupG/yii4.png) <center>រូបទី១</center> ![yii3.png](https://cdn.steemitimages.com/DQmSoH3G6rv1Z9Dbupa22gZsoEh7nm5p4AeXUcxwiLGrJmJ/yii3.png) <center>រូបទី២</center> ![yii5.png](https://cdn.steemitimages.com/DQmRrCC9JXw6yy7V91KCEEbRcLBc3s8t42ioACJiRbqKXJR/yii5.png) <center>រូបទី៣</center> ២) ការបង្កើតគេហទំព័រ បន្ទាប់ពីរៀបចំនៅខាងលើរួចរាល់ហើយមក យើងអាចបង្កើតគំរូគេហទំព័ររបស់ Yii បានតាមរយៈ Command Prompt របស់ Window។ ![yii6.png](https://cdn.steemitimages.com/DQmYHbjBZpuZdNdK71ws9NpAXLv77RCEzP2jDUC8vGD548g/yii6.png) <center>រូបទី១</center> បន្ទាប់ពីរូបទី១ យើងត្រូវបញ្ចូលពាក្យដូចខាងក្រោម ៖ * yiic webapp គឺបញ្ជាក់ថាយើងចង់បង្កើតគេហទំព័រមួយ * C:\wamp\www\yiitest គឺជាកន្លែងដែលដាក់គេហទំព័រគំរូរបស់យើង ហើយមានឈ្មោះថា yiitest * yes គឺជាចម្លើយបញ្ជាក់ថា យើងពិតជាបង្កើតគេហទំព័រគំរូមែន ![yii7.png](https://cdn.steemitimages.com/DQmS3DV3QJ8ZmvhQDsca2mv3ujLAnMFJC53eRt18RibKfwb/yii7.png) <center>រូបទី២</center> បន្ទាប់មកទៀត យើងនឹងឃើញកន្លែងផ្ទុកឯកសារ (folder)មួយឈ្មោះថា yiitest ដែល យើងបានដាក់។ ![yii8.png](https://cdn.steemitimages.com/DQmXtyLJzLKYrB3cUwjwLnwFkgL4znDWNZzTCWK2i1DXZTD/yii8.png) ៣) លទ្ធផល ក្រោយពីការរៀបចំខាងលើរួចរាល់ហើយមកនោះ យើងនឹងទទួលបានលទ្ធផលដូចខាងក្រោម ៖ ![yii9.png](https://cdn.steemitimages.com/DQmeoLRzv7xu3Y2rFKHbXgik1CQ6r6oNb1rKRtVyPLCUU4C/yii9.png) [ប្រភពដើម](https://www.techfree.info/2016/10/26/how-to-install-yiiframework/)
json metadata{"tags":["cambodia","khmer","yii","framework"],"image":["https://cdn.steemitimages.com/DQmeGxweVxTxbdyh41CG3ZAxvG6Y78oksTsfwhhMdWx5wWT/yiiframework.jpg","https://cdn.steemitimages.com/DQmU2kmA6XczHAyWcMyo1XfKN4t7f9HJyHJrKiSTqedVaVE/yii1.png","https://cdn.steemitimages.com/DQmPfPseYuKij2kD2JLaroAhLUCckmRVBGohyBorf6eQfPs/yii2.png","https://cdn.steemitimages.com/DQmcicKYd26ZYKfn4fij5aVUngf6UMWUsNDRrvSZ7QvxupG/yii4.png","https://cdn.steemitimages.com/DQmSoH3G6rv1Z9Dbupa22gZsoEh7nm5p4AeXUcxwiLGrJmJ/yii3.png","https://cdn.steemitimages.com/DQmRrCC9JXw6yy7V91KCEEbRcLBc3s8t42ioACJiRbqKXJR/yii5.png","https://cdn.steemitimages.com/DQmYHbjBZpuZdNdK71ws9NpAXLv77RCEzP2jDUC8vGD548g/yii6.png","https://cdn.steemitimages.com/DQmS3DV3QJ8ZmvhQDsca2mv3ujLAnMFJC53eRt18RibKfwb/yii7.png","https://cdn.steemitimages.com/DQmXtyLJzLKYrB3cUwjwLnwFkgL4znDWNZzTCWK2i1DXZTD/yii8.png","https://cdn.steemitimages.com/DQmeoLRzv7xu3Y2rFKHbXgik1CQ6r6oNb1rKRtVyPLCUU4C/yii9.png"],"links":["http://www.yiiframework.com/","https://www.techfree.info/2016/10/26/how-to-install-yiiframework/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #24302247/Trx fbb57ffb0bdced4fc83b7c1528575bf44b4add2f
View Raw JSON Data
{
  "trx_id": "fbb57ffb0bdced4fc83b7c1528575bf44b4add2f",
  "block": 24302247,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-19T04:04:51",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "yii-framework",
      "title": "របៀបដំឡើង Yii Framework",
      "body": "![yiiframework.jpg](https://cdn.steemitimages.com/DQmeGxweVxTxbdyh41CG3ZAxvG6Y78oksTsfwhhMdWx5wWT/yiiframework.jpg)\n\nYii គឺជាបណ្ដុំនៃកូដ រឺបណ្ណាល័យ(Framework) មួយរបស់ភាសាកុំព្យូទ័រ PHP ដែលជាភាសាសំរាប់បង្កើតជាប្រព័ន្ធ(System) នៅក្នុងគេហទំព័រ ដែលកំពុងពេញនិយម ។ Yii ក៏ដូចជាបណ្ដុំនៃកូដរបស់ PHP ផ្សេងទៀតដែរគឺ វាជួយសំរួលនិងមានភាពរហ័សក្នុងការបង្កើតប្រព័ន្ធនៅក្នុងគេហទំព័រផងដែរ ។លើសពីនេះទៀតវាថែមទាំងមានសុវត្ថិភាពខ្ពស់ដែលអាចការពារពីការជ្រៀតចូលរំខានពីអ្នកចង់បំផ្លាញប្រព័ន្ធនោះ (Hacker) ។\n\n\nថ្ងៃនេះ TechFree សូមបង្ហាញពីការដំឡើង (Install) និងណែនាំអំពីការប្រើប្រាស់ Yii Framework នេះ ដែលអាចចាត់ទុកថាវាគឺជាគន្លឹះមួយសំរាប់អ្នកដែលចង់ចេះអំពីវា ។ ម្យ៉ាងវិញទៀត វាក៏មានលក្ខណៈស្មុគ្រស្មាញបន្តិចផងដែរនៅក្នុងការដំឡើងវាហើយ យើងត្រូវដំឡើងវាជាមួយកម្មវិធីផ្ទុកទិន្នន័យមួយរបស់គេហទំព័រ (Web Server) មានដូចជា Wamp និង Xampp Server ជាដើម។ យើងខ្ញុំសូមបង្ហាញនូវការដំឡើងជាមួយ Wamp Server ។\n\n១) ការទាញយក\n\nមុននឹងធ្វើការដំឡើង Yii យើងត្រូវទាញយក វាជាមុនសិនតាមរយៈ [www.yiiframework.com](http://www.yiiframework.com/)  ។\n\nសូមមើលរូបខាងក្រោម ៖\n\n![yii1.png](https://cdn.steemitimages.com/DQmU2kmA6XczHAyWcMyo1XfKN4t7f9HJyHJrKiSTqedVaVE/yii1.png)\n\nក្រោយពីការទាញយករួចយើងត្រូវប្ដូរឈ្មោះទៅជា yii ដើម្បីងាយស្រួលមើល និងថតចម្លង (copy) ឯកសារ (file) នោះទៅដាក់នៅទីតាំងរបស់ Wamp Server ។ សូមមើលរួប ៖\n\n![yii2.png](https://cdn.steemitimages.com/DQmPfPseYuKij2kD2JLaroAhLUCckmRVBGohyBorf6eQfPs/yii2.png)\n\nបន្ទាប់មកទៀតត្រូវចម្លងអាស័យដ្ឋានរបស់ PHP ទៅដាក់នៅក្នុង yiic.bat\n\n![yii4.png](https://cdn.steemitimages.com/DQmcicKYd26ZYKfn4fij5aVUngf6UMWUsNDRrvSZ7QvxupG/yii4.png)\n<center>រូបទី១</center>\n\n![yii3.png](https://cdn.steemitimages.com/DQmSoH3G6rv1Z9Dbupa22gZsoEh7nm5p4AeXUcxwiLGrJmJ/yii3.png)\n<center>រូបទី២</center>\n\n![yii5.png](https://cdn.steemitimages.com/DQmRrCC9JXw6yy7V91KCEEbRcLBc3s8t42ioACJiRbqKXJR/yii5.png)\n<center>រូបទី៣</center>\n\n២) ការបង្កើតគេហទំព័រ\n\nបន្ទាប់ពីរៀបចំនៅខាងលើរួចរាល់ហើយមក យើងអាចបង្កើតគំរូគេហទំព័ររបស់ Yii បានតាមរយៈ  Command Prompt របស់ Window។\n\n![yii6.png](https://cdn.steemitimages.com/DQmYHbjBZpuZdNdK71ws9NpAXLv77RCEzP2jDUC8vGD548g/yii6.png)\n<center>រូបទី១</center>\n\nបន្ទាប់ពីរូបទី១ យើងត្រូវបញ្ចូលពាក្យដូចខាងក្រោម ៖\n\n* yiic webapp គឺបញ្ជាក់ថាយើងចង់បង្កើតគេហទំព័រមួយ\n* C:\\wamp\\www\\yiitest គឺជាកន្លែងដែលដាក់គេហទំព័រគំរូរបស់យើង ហើយមានឈ្មោះថា yiitest\n* yes គឺជាចម្លើយបញ្ជាក់ថា យើងពិតជាបង្កើតគេហទំព័រគំរូមែន\n\n![yii7.png](https://cdn.steemitimages.com/DQmS3DV3QJ8ZmvhQDsca2mv3ujLAnMFJC53eRt18RibKfwb/yii7.png)\n<center>រូបទី២</center>\n\nបន្ទាប់មកទៀត យើងនឹងឃើញកន្លែងផ្ទុកឯកសារ (folder)មួយឈ្មោះថា yiitest ដែល យើងបានដាក់។\n\n![yii8.png](https://cdn.steemitimages.com/DQmXtyLJzLKYrB3cUwjwLnwFkgL4znDWNZzTCWK2i1DXZTD/yii8.png)\n\n៣) លទ្ធផល\n\nក្រោយពីការរៀបចំខាងលើរួចរាល់ហើយមកនោះ យើងនឹងទទួលបានលទ្ធផលដូចខាងក្រោម ៖\n\n![yii9.png](https://cdn.steemitimages.com/DQmeoLRzv7xu3Y2rFKHbXgik1CQ6r6oNb1rKRtVyPLCUU4C/yii9.png)\n\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/26/how-to-install-yiiframework/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"yii\",\"framework\"],\"image\":[\"https://cdn.steemitimages.com/DQmeGxweVxTxbdyh41CG3ZAxvG6Y78oksTsfwhhMdWx5wWT/yiiframework.jpg\",\"https://cdn.steemitimages.com/DQmU2kmA6XczHAyWcMyo1XfKN4t7f9HJyHJrKiSTqedVaVE/yii1.png\",\"https://cdn.steemitimages.com/DQmPfPseYuKij2kD2JLaroAhLUCckmRVBGohyBorf6eQfPs/yii2.png\",\"https://cdn.steemitimages.com/DQmcicKYd26ZYKfn4fij5aVUngf6UMWUsNDRrvSZ7QvxupG/yii4.png\",\"https://cdn.steemitimages.com/DQmSoH3G6rv1Z9Dbupa22gZsoEh7nm5p4AeXUcxwiLGrJmJ/yii3.png\",\"https://cdn.steemitimages.com/DQmRrCC9JXw6yy7V91KCEEbRcLBc3s8t42ioACJiRbqKXJR/yii5.png\",\"https://cdn.steemitimages.com/DQmYHbjBZpuZdNdK71ws9NpAXLv77RCEzP2jDUC8vGD548g/yii6.png\",\"https://cdn.steemitimages.com/DQmS3DV3QJ8ZmvhQDsca2mv3ujLAnMFJC53eRt18RibKfwb/yii7.png\",\"https://cdn.steemitimages.com/DQmXtyLJzLKYrB3cUwjwLnwFkgL4znDWNZzTCWK2i1DXZTD/yii8.png\",\"https://cdn.steemitimages.com/DQmeoLRzv7xu3Y2rFKHbXgik1CQ6r6oNb1rKRtVyPLCUU4C/yii9.png\"],\"links\":[\"http://www.yiiframework.com/\",\"https://www.techfree.info/2016/10/26/how-to-install-yiiframework/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
girlplaying21upvoted (100.00%) @techfree / vue-js
2018/07/13 07:41:18
votergirlplaying21
authortechfree
permlinkvue-js
weight10000 (100.00%)
Transaction InfoBlock #24133865/Trx 3bc69b3c33abd2d99c1a8e162363f82f3ff12a9d
View Raw JSON Data
{
  "trx_id": "3bc69b3c33abd2d99c1a8e162363f82f3ff12a9d",
  "block": 24133865,
  "trx_in_block": 30,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-13T07:41:18",
  "op": [
    "vote",
    {
      "voter": "girlplaying21",
      "author": "techfree",
      "permlink": "vue-js",
      "weight": 10000
    }
  ]
}
techfreepublished a new post: vue-js
2018/07/13 07:20:48
parent author
parent permlinkcambodia
authortechfree
permlinkvue-js
titleរបៀបទទួលទិន្នន័យពីអ្នកប្រើជាមួយ Vue.Js
body![Feacture_image_input_on_input.jpg](https://cdn.steemitimages.com/DQmb4NR9Ns8YEbZTsbCvsvGs1TZzuyzPgr2y3DqN2LsDQJy/Feacture_image_input_on_input.jpg) អត្ថបទនេះជាអត្ថបទទី៣ បន្ទាប់ពីអត្ថបទរបៀបប្រើប្រាស់ Vue.js Javscript Framework ហើយនៅក្នុងអត្ថបទនេះ នឹង បង្រៀនលោកអ្នកពីរបៀបប្រើ User input។ដើម្បីអោយអ្នកប្រើ អាចទំនាក់ទំនងនឹងកម្មវិធីនេះបាន លោកអ្នកអាចប្រើ v-on ធ្វើការសារាចរណ៍ទៅនឹង Event ដែលជា Methods នៅលើ Vue។ ឧទាហរណ៍៖ Techfree នឹងធ្វើការបង្រៀនលោកអ្នកអំពីការ ត្រឡប់អក្សរដោយប្រើជាមួយ v-on ។ លោកអ្នកធ្វើការបង្កើត index.html សរសេរកូដដូចខាងក្រោម៖ ![vue_inverst_text.jpg](https://cdn.steemitimages.com/DQmaCHyC3ctW3pg6yLduNgjqXbCBi5xMLTr53cD8SnGeYXn/vue_inverst_text.jpg) នៅលើបន្ទាត់ទី 10 v-on:click មានន័យថា User ចុចលើ button នោះ function reverseMessage នឹងដំណើការ។លោកអ្នកធ្វើការបង្កើត user.js ហើយសរសេរកូដដូចខាងក្រោម៖ ![vue_inverst_text2.jpg](https://cdn.steemitimages.com/DQmcbxS8RQ8enm65LPJPWi7SkZuyABJcn1H1m6Xbesi4asf/vue_inverst_text2.jpg) នៅក្នុង Methods មាន function 1 គឺreverseMessage វាធ្វើនៅពេលដែល user ចុច ហើយ this.message.split(‘ ‘) មានន័យថា វាធ្វើការបំបែកអក្សរដោយអមដោយសញ្ញា “” ។Method reverse គឺសំរាប់ធ្វើការត្រលប់អក្សរ ហើយ Method join(‘ ‘) គឺសំរាប់ធ្វើការភ្ជាប់ អក្សរដែលនៅក្នុងសញ្ញា “” ។ លទ្ធផលនឹងបង្ហាញដូចខាងក្រោម ![Result_reverse_string1.jpg](https://cdn.steemitimages.com/DQmbX53ua6nLCa7MYchBba3sH9MmXRDvpn3Kdti2ZAn3awY/Result_reverse_string1.jpg) * របៀបបញ្ចូលទិន្នន័យ (user Input) vue ត្រូវបានផ្តល់ v-model ដែលជាProperty សំរាប់ធ្វើការទៅលើ Form input។ ១) New file > user_input.html សរសេកូដដូចខាងក្រោម ![code_input.jpg](https://cdn.steemitimages.com/DQmQvp3k7kuJqJKTWhhnYvhWZFFd43qUbsjJjX6JbtNN2qn/code_input.jpg) ២) New File > user_input.js សរសេកូដដូចខាងក្រោម ![code_input2.jpg](https://cdn.steemitimages.com/DQmcK6B7mEsMekeekkEJ6Tdc97ZYGT7Vt6ywZ521xx6EBBV/code_input2.jpg) * el: គឺជា Element សំរាប់ធ្វើការជាមួយ ID ដែលបានផ្តល់នៅលើ Template * message គឺជាអញ្ញាត់ដែលតាងសំរាប់ទទួលតំលៃ ដែលយើងបានផ្តល់អោយ កូដនៅខាងលើនឹងបង្ហាញដូចខាងក្រោម ![Result_form_input.jpg](https://cdn.steemitimages.com/DQmWK7BRSw2tgaig4TAksat2X5uh166tVoHTFcAqAZ4eKDH/Result_form_input.jpg) [ប្រភពដើម](https://www.techfree.info/2016/10/26/how-to-handling-user-input-with-vue-js/)
json metadata{"tags":["cambodia","khmer","vuejs","data"],"image":["https://cdn.steemitimages.com/DQmb4NR9Ns8YEbZTsbCvsvGs1TZzuyzPgr2y3DqN2LsDQJy/Feacture_image_input_on_input.jpg","https://cdn.steemitimages.com/DQmaCHyC3ctW3pg6yLduNgjqXbCBi5xMLTr53cD8SnGeYXn/vue_inverst_text.jpg","https://cdn.steemitimages.com/DQmcbxS8RQ8enm65LPJPWi7SkZuyABJcn1H1m6Xbesi4asf/vue_inverst_text2.jpg","https://cdn.steemitimages.com/DQmbX53ua6nLCa7MYchBba3sH9MmXRDvpn3Kdti2ZAn3awY/Result_reverse_string1.jpg","https://cdn.steemitimages.com/DQmQvp3k7kuJqJKTWhhnYvhWZFFd43qUbsjJjX6JbtNN2qn/code_input.jpg","https://cdn.steemitimages.com/DQmcK6B7mEsMekeekkEJ6Tdc97ZYGT7Vt6ywZ521xx6EBBV/code_input2.jpg","https://cdn.steemitimages.com/DQmWK7BRSw2tgaig4TAksat2X5uh166tVoHTFcAqAZ4eKDH/Result_form_input.jpg"],"links":["https://www.techfree.info/2016/10/26/how-to-handling-user-input-with-vue-js/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #24133455/Trx 9c286df03500f857a42e80af4f5690a8ec49d94b
View Raw JSON Data
{
  "trx_id": "9c286df03500f857a42e80af4f5690a8ec49d94b",
  "block": 24133455,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-13T07:20:48",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "vue-js",
      "title": "របៀបទទួលទិន្នន័យពីអ្នកប្រើជាមួយ Vue.Js",
      "body": "![Feacture_image_input_on_input.jpg](https://cdn.steemitimages.com/DQmb4NR9Ns8YEbZTsbCvsvGs1TZzuyzPgr2y3DqN2LsDQJy/Feacture_image_input_on_input.jpg)\n\nអត្ថបទនេះជាអត្ថបទទី៣ បន្ទាប់ពីអត្ថបទរបៀបប្រើប្រាស់ Vue.js Javscript Framework ហើយនៅក្នុងអត្ថបទនេះ នឹង បង្រៀនលោកអ្នកពីរបៀបប្រើ User input។ដើម្បីអោយអ្នកប្រើ អាចទំនាក់ទំនងនឹងកម្មវិធីនេះបាន លោកអ្នកអាចប្រើ v-on ធ្វើការសារាចរណ៍ទៅនឹង Event  ដែលជា Methods នៅលើ Vue។\n\nឧទាហរណ៍៖ Techfree នឹងធ្វើការបង្រៀនលោកអ្នកអំពីការ ត្រឡប់អក្សរដោយប្រើជាមួយ v-on ។ លោកអ្នកធ្វើការបង្កើត index.html សរសេរកូដដូចខាងក្រោម៖\n\n![vue_inverst_text.jpg](https://cdn.steemitimages.com/DQmaCHyC3ctW3pg6yLduNgjqXbCBi5xMLTr53cD8SnGeYXn/vue_inverst_text.jpg)\n\nនៅលើបន្ទាត់ទី 10 v-on:click មានន័យថា User ចុចលើ button នោះ function reverseMessage នឹងដំណើការ។លោកអ្នកធ្វើការបង្កើត user.js ហើយសរសេរកូដដូចខាងក្រោម៖\n\n![vue_inverst_text2.jpg](https://cdn.steemitimages.com/DQmcbxS8RQ8enm65LPJPWi7SkZuyABJcn1H1m6Xbesi4asf/vue_inverst_text2.jpg)\n\nនៅក្នុង Methods មាន function 1 គឺreverseMessage វាធ្វើនៅពេលដែល user ចុច ហើយ this.message.split(‘ ‘) មានន័យថា វាធ្វើការបំបែកអក្សរដោយអមដោយសញ្ញា “” ។Method reverse គឺសំរាប់ធ្វើការត្រលប់អក្សរ ហើយ Method join(‘ ‘) គឺសំរាប់ធ្វើការភ្ជាប់ អក្សរដែលនៅក្នុងសញ្ញា “” ។\n\nលទ្ធផលនឹងបង្ហាញដូចខាងក្រោម\n\n![Result_reverse_string1.jpg](https://cdn.steemitimages.com/DQmbX53ua6nLCa7MYchBba3sH9MmXRDvpn3Kdti2ZAn3awY/Result_reverse_string1.jpg)\n\n* របៀបបញ្ចូលទិន្នន័យ (user Input)\nvue ត្រូវបានផ្តល់ v-model ដែលជាProperty សំរាប់ធ្វើការទៅលើ Form input។\n\n១) New file  > user_input.html សរសេកូដដូចខាងក្រោម\n\n![code_input.jpg](https://cdn.steemitimages.com/DQmQvp3k7kuJqJKTWhhnYvhWZFFd43qUbsjJjX6JbtNN2qn/code_input.jpg)\n\n២) New File  > user_input.js សរសេកូដដូចខាងក្រោម\n\n![code_input2.jpg](https://cdn.steemitimages.com/DQmcK6B7mEsMekeekkEJ6Tdc97ZYGT7Vt6ywZ521xx6EBBV/code_input2.jpg)\n\n* el: គឺជា Element សំរាប់ធ្វើការជាមួយ ID ដែលបានផ្តល់នៅលើ Template\n\n* message គឺជាអញ្ញាត់ដែលតាងសំរាប់ទទួលតំលៃ ដែលយើងបានផ្តល់អោយ\n\nកូដនៅខាងលើនឹងបង្ហាញដូចខាងក្រោម\n\n![Result_form_input.jpg](https://cdn.steemitimages.com/DQmWK7BRSw2tgaig4TAksat2X5uh166tVoHTFcAqAZ4eKDH/Result_form_input.jpg)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/26/how-to-handling-user-input-with-vue-js/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"vuejs\",\"data\"],\"image\":[\"https://cdn.steemitimages.com/DQmb4NR9Ns8YEbZTsbCvsvGs1TZzuyzPgr2y3DqN2LsDQJy/Feacture_image_input_on_input.jpg\",\"https://cdn.steemitimages.com/DQmaCHyC3ctW3pg6yLduNgjqXbCBi5xMLTr53cD8SnGeYXn/vue_inverst_text.jpg\",\"https://cdn.steemitimages.com/DQmcbxS8RQ8enm65LPJPWi7SkZuyABJcn1H1m6Xbesi4asf/vue_inverst_text2.jpg\",\"https://cdn.steemitimages.com/DQmbX53ua6nLCa7MYchBba3sH9MmXRDvpn3Kdti2ZAn3awY/Result_reverse_string1.jpg\",\"https://cdn.steemitimages.com/DQmQvp3k7kuJqJKTWhhnYvhWZFFd43qUbsjJjX6JbtNN2qn/code_input.jpg\",\"https://cdn.steemitimages.com/DQmcK6B7mEsMekeekkEJ6Tdc97ZYGT7Vt6ywZ521xx6EBBV/code_input2.jpg\",\"https://cdn.steemitimages.com/DQmWK7BRSw2tgaig4TAksat2X5uh166tVoHTFcAqAZ4eKDH/Result_form_input.jpg\"],\"links\":[\"https://www.techfree.info/2016/10/26/how-to-handling-user-input-with-vue-js/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: python
2018/07/13 07:04:09
parent author
parent permlinkcambodia
authortechfree
permlinkpython
titleរបៀបបង្កើត លុប កែប្រែ ឯកសារជាមួយ Python
body![python_file_1.png](https://cdn.steemitimages.com/DQmY636f9guSUDBXVBdQn2fFwJ6SS66fWky98S1bdfkXVf6/python_file_1.png) នៅក្នុងអត្ថបទនេះ TECHFREE នឹងបង្ហាញពីរបៀបបង្កើត លុប កែប្រែ ឯកសារ ដែលយើងហៅថា “File”។ ក្នុងការបង្កើត File នេះគឺយើងគ្រាន់តែកំណត់ Extension ដែលអ្នកចង់បានជាការស្រេច។ ដូចជា៖ TECHFREE.txt, TECHFREE.doc, TECHFREE.xls …។ ឧទាហរណ៍៖ ការបង្កើតឯកសារ (Create File) ![create_file.jpg](https://cdn.steemitimages.com/DQmYxUT6Q16ZvjsrgJN1UMGvQz6CMtEps1EPCiN36DUwbXf/create_file.jpg) សូមដំណើរការកូដខាងលើអ្នកនឹងឃើញ File នៅក្នុង Folder Project របស់អ្នក។ ![create_file_result1.jpg](https://cdn.steemitimages.com/DQmbotvxPDHyrcvuoRCgox6vfnLJP2cfcKZLipJS1UfDYDE/create_file_result1.jpg) ឧទាហរណ៍៖ កែប្រែ ឯកសារ (Edit File) ![rename_file.jpg](https://cdn.steemitimages.com/DQmNPYfuJpkjGtPa9q6X3c5jjUq3iqsJ6NsS16SvJUyNJUM/rename_file.jpg) បន្ទាប់ពីអ្នកដំណើរការកូដខាងលើ ឯកសារ(File) “TECHFREE.txt” នឹង កែប្រែទៅជា “TECHFREE_NEW.doc”។ ![rename_file_result_2.jpg](https://cdn.steemitimages.com/DQmVb5nfWaZYbhXACmEHpnhBhNdKtAZEWetAuDXU3QXGs1j/rename_file_result_2.jpg) ឧទាហរណ៍៖ ការលុបឯកសារ (Delete File) ![rename_file.jpg](https://cdn.steemitimages.com/DQmNPYfuJpkjGtPa9q6X3c5jjUq3iqsJ6NsS16SvJUyNJUM/rename_file.jpg) បន្ទាប់ពីអ្នកដំណើរការកូដខាងលើ ឯកសារ(File) “TECHFREE_NEW.doc” នឹងលុបចេញពី Folder Project របស់អ្នក។ ![rename_file_result_2.jpg](https://cdn.steemitimages.com/DQmVb5nfWaZYbhXACmEHpnhBhNdKtAZEWetAuDXU3QXGs1j/rename_file_result_2.jpg) [ប្រភពដើម](https://www.techfree.info/2016/10/26/how-to-create-delete-edit-file-with-python/)
json metadata{"tags":["cambodia","khmer","python","crud"],"image":["https://cdn.steemitimages.com/DQmY636f9guSUDBXVBdQn2fFwJ6SS66fWky98S1bdfkXVf6/python_file_1.png","https://cdn.steemitimages.com/DQmYxUT6Q16ZvjsrgJN1UMGvQz6CMtEps1EPCiN36DUwbXf/create_file.jpg","https://cdn.steemitimages.com/DQmbotvxPDHyrcvuoRCgox6vfnLJP2cfcKZLipJS1UfDYDE/create_file_result1.jpg","https://cdn.steemitimages.com/DQmNPYfuJpkjGtPa9q6X3c5jjUq3iqsJ6NsS16SvJUyNJUM/rename_file.jpg","https://cdn.steemitimages.com/DQmVb5nfWaZYbhXACmEHpnhBhNdKtAZEWetAuDXU3QXGs1j/rename_file_result_2.jpg"],"links":["https://www.techfree.info/2016/10/26/how-to-create-delete-edit-file-with-python/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #24133122/Trx 568a943c8facea0040781448bbeba9c22b4d9177
View Raw JSON Data
{
  "trx_id": "568a943c8facea0040781448bbeba9c22b4d9177",
  "block": 24133122,
  "trx_in_block": 25,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-13T07:04:09",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "python",
      "title": "របៀបបង្កើត លុប កែប្រែ ឯកសារជាមួយ Python",
      "body": "![python_file_1.png](https://cdn.steemitimages.com/DQmY636f9guSUDBXVBdQn2fFwJ6SS66fWky98S1bdfkXVf6/python_file_1.png)\n\nនៅក្នុងអត្ថបទនេះ TECHFREE នឹងបង្ហាញពីរបៀបបង្កើត លុប កែប្រែ ឯកសារ ដែលយើងហៅថា “File”។ ក្នុងការបង្កើត File នេះគឺយើងគ្រាន់តែកំណត់ Extension ដែលអ្នកចង់បានជាការស្រេច។ ដូចជា៖ TECHFREE.txt, TECHFREE.doc, TECHFREE.xls …។\n\nឧទាហរណ៍៖ ការបង្កើតឯកសារ (Create File)\n\n![create_file.jpg](https://cdn.steemitimages.com/DQmYxUT6Q16ZvjsrgJN1UMGvQz6CMtEps1EPCiN36DUwbXf/create_file.jpg)\n\nសូមដំណើរការកូដខាងលើអ្នកនឹងឃើញ File នៅក្នុង Folder Project របស់អ្នក។\n\n![create_file_result1.jpg](https://cdn.steemitimages.com/DQmbotvxPDHyrcvuoRCgox6vfnLJP2cfcKZLipJS1UfDYDE/create_file_result1.jpg)\n\nឧទាហរណ៍៖ កែប្រែ ឯកសារ (Edit File)\n\n![rename_file.jpg](https://cdn.steemitimages.com/DQmNPYfuJpkjGtPa9q6X3c5jjUq3iqsJ6NsS16SvJUyNJUM/rename_file.jpg)\n\nបន្ទាប់ពីអ្នកដំណើរការកូដខាងលើ ឯកសារ(File) “TECHFREE.txt” នឹង កែប្រែទៅជា “TECHFREE_NEW.doc”។\n\n![rename_file_result_2.jpg](https://cdn.steemitimages.com/DQmVb5nfWaZYbhXACmEHpnhBhNdKtAZEWetAuDXU3QXGs1j/rename_file_result_2.jpg)\n\nឧទាហរណ៍៖ ការលុបឯកសារ (Delete File)\n\n![rename_file.jpg](https://cdn.steemitimages.com/DQmNPYfuJpkjGtPa9q6X3c5jjUq3iqsJ6NsS16SvJUyNJUM/rename_file.jpg)\n\nបន្ទាប់ពីអ្នកដំណើរការកូដខាងលើ ឯកសារ(File) “TECHFREE_NEW.doc” នឹងលុបចេញពី Folder Project របស់អ្នក។\n\n![rename_file_result_2.jpg](https://cdn.steemitimages.com/DQmVb5nfWaZYbhXACmEHpnhBhNdKtAZEWetAuDXU3QXGs1j/rename_file_result_2.jpg)\n\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/26/how-to-create-delete-edit-file-with-python/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"python\",\"crud\"],\"image\":[\"https://cdn.steemitimages.com/DQmY636f9guSUDBXVBdQn2fFwJ6SS66fWky98S1bdfkXVf6/python_file_1.png\",\"https://cdn.steemitimages.com/DQmYxUT6Q16ZvjsrgJN1UMGvQz6CMtEps1EPCiN36DUwbXf/create_file.jpg\",\"https://cdn.steemitimages.com/DQmbotvxPDHyrcvuoRCgox6vfnLJP2cfcKZLipJS1UfDYDE/create_file_result1.jpg\",\"https://cdn.steemitimages.com/DQmNPYfuJpkjGtPa9q6X3c5jjUq3iqsJ6NsS16SvJUyNJUM/rename_file.jpg\",\"https://cdn.steemitimages.com/DQmVb5nfWaZYbhXACmEHpnhBhNdKtAZEWetAuDXU3QXGs1j/rename_file_result_2.jpg\"],\"links\":[\"https://www.techfree.info/2016/10/26/how-to-create-delete-edit-file-with-python/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: array-ruby
2018/07/12 08:31:24
parent author
parent permlinkcambodia
authortechfree
permlinkarray-ruby
titleស្វែងយល់ពី Array នៅក្នុងភាសា Ruby
body![Untitled-1-10.jpg](https://cdn.steemitimages.com/DQmZAFMWfNTducJ6aiXVVEpZ1MjMRv7KSTePwvZ2dwWND8q/Untitled-1-10.jpg) Array គឺជាធាតុអថេរពិសេសដែលអនុញ្ញាតឱ្យអ្នករក្សាទុកធាតុអថេរផ្សេងទៀតដូចជា ធាតុអថេរជាអក្សរ(string) ធាតុអថេរជាចំនួន(integer)ជាដើម។ ធាតុរបស់ Array គឺចាប់ផ្តើមពីលេខ ០ ដែលគេហៅថា index។ នៅក្នុងភាសា ស្វែងយល់ពី Array នៅក្នុងភាសា Ruby ត្រូវបានគេបង្កើតដោយចាប់ផ្តើមជាមួយ array[]។ ឧទាហរណ៍៖ ![ex1.png](https://cdn.steemitimages.com/DQmTp9EgRCTofeQ1L3wYGoBAHuHZorRzCRQPWfr862xeEuN/ex1.png) អ្នកអាចបន្ថែមធាតុទៅក្នុង array បានដោយប្រើសញ្ញា “” នៅពេលធាតុអថេរជាអក្សរ(string) តែមិនបាច់ប្រើសញ្ញា “” ទេនៅពេលបន្ថែមធាតុអថេរជាចំនួន(integer)។ នៅក្នុងធាតុនីមួយៗនៃ array ត្រូវតែបំបែកដោយសញ្ញាក្បៀស ,។ ដើម្បីទាញយកធាតុអថេរចេញពី Array វិញគេត្រូវសរសេរដូចខាងក្រោម៖ ![ex2.png](https://cdn.steemitimages.com/DQmNxnuw5pqZ9mMVpfCCKDyc8t76TbbDdxMQR7im4QrnDtZ/ex2.png) ឧទាហរណ៍ខាងក្រោមនេះសម្រាប់ធាតុអថេរជាចំនួន(integer)ប៉ុណ្ណោះ ៖ ![ex3.png](https://cdn.steemitimages.com/DQmdpSnfQRh44hMMWEpy7anzLKws8n2i3CQfKnkezmJkEBL/ex3.png) ការរង្វិលធាតុនៃអថេរ (loop array) ![ex4.png](https://cdn.steemitimages.com/DQmXN9o44CpCAFSL6b2L5fDN52r4CuxzUbcCowhwGNAMSPZ/ex4.png) សំគាល់៖ មុននឹងអនុវត្តន៍ឧទាហរណ៍ខាងលើបានអ្នកត្រូវដំឡើង Ruby ជាមុនសិន ចុចទីនេះមើលការរបៀបដំឡើង។ បន្ទាប់ពីដំឡើងរួចមកដើម្បីដំណើរការកូដចេញលទ្ធផលដូចខាងលើអ្នកត្រូវ រក្សាទុកឯកសារជា .rb រួចដំណើរការកូដដោយវាយ ឧទាហរណ៍៖ ruby test.rb៕ [ប្រភពដើម](https://www.techfree.info/2016/10/25/array-ruby/)
json metadata{"tags":["cambodia","khmer","array","ruby"],"image":["https://cdn.steemitimages.com/DQmZAFMWfNTducJ6aiXVVEpZ1MjMRv7KSTePwvZ2dwWND8q/Untitled-1-10.jpg","https://cdn.steemitimages.com/DQmTp9EgRCTofeQ1L3wYGoBAHuHZorRzCRQPWfr862xeEuN/ex1.png","https://cdn.steemitimages.com/DQmNxnuw5pqZ9mMVpfCCKDyc8t76TbbDdxMQR7im4QrnDtZ/ex2.png","https://cdn.steemitimages.com/DQmdpSnfQRh44hMMWEpy7anzLKws8n2i3CQfKnkezmJkEBL/ex3.png","https://cdn.steemitimages.com/DQmXN9o44CpCAFSL6b2L5fDN52r4CuxzUbcCowhwGNAMSPZ/ex4.png"],"links":["https://www.techfree.info/2016/10/25/array-ruby/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #24106086/Trx 5da5328d80a438c6c709bd965f7c1d39d3f2b42a
View Raw JSON Data
{
  "trx_id": "5da5328d80a438c6c709bd965f7c1d39d3f2b42a",
  "block": 24106086,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-12T08:31:24",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "array-ruby",
      "title": "ស្វែងយល់ពី Array នៅក្នុងភាសា Ruby",
      "body": "![Untitled-1-10.jpg](https://cdn.steemitimages.com/DQmZAFMWfNTducJ6aiXVVEpZ1MjMRv7KSTePwvZ2dwWND8q/Untitled-1-10.jpg)\n\nArray គឺជាធាតុអថេរពិសេសដែលអនុញ្ញាតឱ្យអ្នករក្សាទុកធាតុអថេរផ្សេងទៀតដូចជា ធាតុអថេរជាអក្សរ(string) ធាតុអថេរជាចំនួន(integer)ជាដើម។ ធាតុរបស់ Array គឺចាប់ផ្តើមពីលេខ ០ ដែលគេហៅថា index។ នៅក្នុងភាសា ស្វែងយល់ពី Array នៅក្នុងភាសា Ruby  ត្រូវបានគេបង្កើតដោយចាប់ផ្តើមជាមួយ array[]។\n\nឧទាហរណ៍៖\n\n![ex1.png](https://cdn.steemitimages.com/DQmTp9EgRCTofeQ1L3wYGoBAHuHZorRzCRQPWfr862xeEuN/ex1.png)\n\nអ្នកអាចបន្ថែមធាតុទៅក្នុង array បានដោយប្រើសញ្ញា “” នៅពេលធាតុអថេរជាអក្សរ(string) តែមិនបាច់ប្រើសញ្ញា “” ទេនៅពេលបន្ថែមធាតុអថេរជាចំនួន(integer)។ នៅក្នុងធាតុនីមួយៗនៃ array ត្រូវតែបំបែកដោយសញ្ញាក្បៀស ,។  ដើម្បីទាញយកធាតុអថេរចេញពី Array វិញគេត្រូវសរសេរដូចខាងក្រោម៖\n\n![ex2.png](https://cdn.steemitimages.com/DQmNxnuw5pqZ9mMVpfCCKDyc8t76TbbDdxMQR7im4QrnDtZ/ex2.png)\n\nឧទាហរណ៍ខាងក្រោមនេះសម្រាប់ធាតុអថេរជាចំនួន(integer)ប៉ុណ្ណោះ ៖\n\n![ex3.png](https://cdn.steemitimages.com/DQmdpSnfQRh44hMMWEpy7anzLKws8n2i3CQfKnkezmJkEBL/ex3.png)\n\nការរង្វិលធាតុនៃអថេរ (loop array)\n\n![ex4.png](https://cdn.steemitimages.com/DQmXN9o44CpCAFSL6b2L5fDN52r4CuxzUbcCowhwGNAMSPZ/ex4.png)\n\nសំគាល់៖ មុននឹងអនុវត្តន៍ឧទាហរណ៍ខាងលើបានអ្នកត្រូវដំឡើង Ruby ជាមុនសិន ចុចទីនេះមើលការរបៀបដំឡើង។ បន្ទាប់ពីដំឡើងរួចមកដើម្បីដំណើរការកូដចេញលទ្ធផលដូចខាងលើអ្នកត្រូវ រក្សាទុកឯកសារជា .rb  រួចដំណើរការកូដដោយវាយ ឧទាហរណ៍៖ ruby test.rb៕\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/array-ruby/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"array\",\"ruby\"],\"image\":[\"https://cdn.steemitimages.com/DQmZAFMWfNTducJ6aiXVVEpZ1MjMRv7KSTePwvZ2dwWND8q/Untitled-1-10.jpg\",\"https://cdn.steemitimages.com/DQmTp9EgRCTofeQ1L3wYGoBAHuHZorRzCRQPWfr862xeEuN/ex1.png\",\"https://cdn.steemitimages.com/DQmNxnuw5pqZ9mMVpfCCKDyc8t76TbbDdxMQR7im4QrnDtZ/ex2.png\",\"https://cdn.steemitimages.com/DQmdpSnfQRh44hMMWEpy7anzLKws8n2i3CQfKnkezmJkEBL/ex3.png\",\"https://cdn.steemitimages.com/DQmXN9o44CpCAFSL6b2L5fDN52r4CuxzUbcCowhwGNAMSPZ/ex4.png\"],\"links\":[\"https://www.techfree.info/2016/10/25/array-ruby/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2018/07/04 10:00:57
parent authortechfree
parent permlinkweb-server-nodejs
authorallnatural
permlinkre-techfree-web-server-nodejs-20180704t100055888z
title
body# # upvote for me please? https://steemit.com/news/@bible.com/2sysip #
json metadata{"tags":["cambodia"],"links":["https://steemit.com/news/@bible.com/2sysip"],"app":"steemit/0.1"}
Transaction InfoBlock #23877596/Trx dc02cf4a4a9180993f676d463c89b557c5574c6f
View Raw JSON Data
{
  "trx_id": "dc02cf4a4a9180993f676d463c89b557c5574c6f",
  "block": 23877596,
  "trx_in_block": 20,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-04T10:00:57",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "web-server-nodejs",
      "author": "allnatural",
      "permlink": "re-techfree-web-server-nodejs-20180704t100055888z",
      "title": "",
      "body": "#\n# upvote for me please? https://steemit.com/news/@bible.com/2sysip\n#",
      "json_metadata": "{\"tags\":[\"cambodia\"],\"links\":[\"https://steemit.com/news/@bible.com/2sysip\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
techfreepublished a new post: web-server-nodejs
2018/07/04 10:00:30
parent author
parent permlinkcambodia
authortechfree
permlinkweb-server-nodejs
titleរបៀបបង្កើត web server ជាមួយ Nodejs
body![node-web-server-feature-img.png](https://cdn.steemitimages.com/DQmUqFgAP5d8H4g6uZ4tGGZU6Py4jTw9VnGgVkhmqEwsrt2/node-web-server-feature-img.png) តើអ្វីទៅជា Web Server? Web Server គឺប្រើសម្រាប់គ្រប់គ្រងការហៅចូលដោយ HTTP client (កម្មវិធីមើលវេបសាយ(we browser)) ហើយបញ្ជូនត្រលប់មកវិញនូវទំព័រវេបសាយ ទៅកាន់ អ្នកប្រើប្រាស់។ ជាធម្មតា Web Server ចែកចាយនូវ html ជាមួយរូបភាព ស្ទាយ៍ (Style) និង ស្រ្គីប (Script)។ ខាងក្រោមនេះ Techfree នឹងលើកយកពីរបៀបបង្កើត Web Server ជាមួយនឹង NodeJS. ![nodejs-web-server.png](https://cdn.steemitimages.com/DQmepRxXL8VnbonEYXHornVcJNopf1BBmwTT2vJmwQxPEzv/nodejs-web-server.png) 1) require('http') សម្រាប់ហៅ http មកប្រើ 2) http.createServer() គឺជា Function សម្រាប់បង្កើត Web Server រាល់ព័តមានដែលចង់បង្ហាញល់កម្មវិធីមើលវេបសាយគឺសរសេរខាងក្នុង Function នេះ។ server.listen(8080) មានន័យថាកំណត់ផតឲ្យស្មើនឹង 8080 ដើម្បី run យើងត្រូវវាយ command ក្នុង terminal: `node server.js` ![node-run.png](https://cdn.steemitimages.com/DQmVkWXmiNJUhxPa3C5Evf7RqNjAbATCtAD6VEZxgYHBZ5z/node-run.png) បន្ទាប់មកចូលទៅកាន់កម្មវិធីបើកវេបសាសរបស់អ្នកហើយវាយ http://localhost:8080 ឬ http://127.0.0.1:8080 ![nodejsbrowser.png](https://cdn.steemitimages.com/DQmWbMhmmfnJkAioaTNiL6ej9FHpxiAv6aiJZesAMSswd1e/nodejsbrowser.png) [ប្រភពដើម](https://www.techfree.info/2016/10/25/web-server-with-nodejs/)
json metadata{"tags":["cambodia","khmer","web","server","nodejs"],"image":["https://cdn.steemitimages.com/DQmUqFgAP5d8H4g6uZ4tGGZU6Py4jTw9VnGgVkhmqEwsrt2/node-web-server-feature-img.png","https://cdn.steemitimages.com/DQmepRxXL8VnbonEYXHornVcJNopf1BBmwTT2vJmwQxPEzv/nodejs-web-server.png","https://cdn.steemitimages.com/DQmVkWXmiNJUhxPa3C5Evf7RqNjAbATCtAD6VEZxgYHBZ5z/node-run.png","https://cdn.steemitimages.com/DQmWbMhmmfnJkAioaTNiL6ej9FHpxiAv6aiJZesAMSswd1e/nodejsbrowser.png"],"links":["http://localhost:8080","http://127.0.0.1:8080","https://www.techfree.info/2016/10/25/web-server-with-nodejs/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23877587/Trx 39dc8d6e17ed544f450cd6a6b8671cd62eabcb3b
View Raw JSON Data
{
  "trx_id": "39dc8d6e17ed544f450cd6a6b8671cd62eabcb3b",
  "block": 23877587,
  "trx_in_block": 49,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-04T10:00:30",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "web-server-nodejs",
      "title": "របៀបបង្កើត web server ជាមួយ Nodejs",
      "body": "![node-web-server-feature-img.png](https://cdn.steemitimages.com/DQmUqFgAP5d8H4g6uZ4tGGZU6Py4jTw9VnGgVkhmqEwsrt2/node-web-server-feature-img.png)\n\nតើអ្វីទៅជា Web Server? Web Server គឺប្រើសម្រាប់គ្រប់គ្រងការហៅចូលដោយ HTTP client (កម្មវិធីមើលវេបសាយ(we browser)) ហើយបញ្ជូនត្រលប់មកវិញនូវទំព័រវេបសាយ ទៅកាន់ អ្នកប្រើប្រាស់។ ជាធម្មតា Web Server ចែកចាយនូវ html ជាមួយរូបភាព ស្ទាយ៍ (Style) និង ស្រ្គីប (Script)។\n\n\nខាងក្រោមនេះ Techfree នឹងលើកយកពីរបៀបបង្កើត Web Server ជាមួយនឹង NodeJS.\n\n![nodejs-web-server.png](https://cdn.steemitimages.com/DQmepRxXL8VnbonEYXHornVcJNopf1BBmwTT2vJmwQxPEzv/nodejs-web-server.png)\n\n1) require('http') សម្រាប់ហៅ http មកប្រើ\n\n2) http.createServer() គឺជា Function សម្រាប់បង្កើត Web Server រាល់ព័តមានដែលចង់បង្ហាញល់កម្មវិធីមើលវេបសាយគឺសរសេរខាងក្នុង Function នេះ។\n\nserver.listen(8080) មានន័យថាកំណត់ផតឲ្យស្មើនឹង 8080\n\nដើម្បី run យើងត្រូវវាយ command ក្នុង terminal: `node server.js`\n\n![node-run.png](https://cdn.steemitimages.com/DQmVkWXmiNJUhxPa3C5Evf7RqNjAbATCtAD6VEZxgYHBZ5z/node-run.png)\n\nបន្ទាប់មកចូលទៅកាន់កម្មវិធីបើកវេបសាសរបស់អ្នកហើយវាយ http://localhost:8080 ឬ http://127.0.0.1:8080\n\n![nodejsbrowser.png](https://cdn.steemitimages.com/DQmWbMhmmfnJkAioaTNiL6ej9FHpxiAv6aiJZesAMSswd1e/nodejsbrowser.png)\n\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/web-server-with-nodejs/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"web\",\"server\",\"nodejs\"],\"image\":[\"https://cdn.steemitimages.com/DQmUqFgAP5d8H4g6uZ4tGGZU6Py4jTw9VnGgVkhmqEwsrt2/node-web-server-feature-img.png\",\"https://cdn.steemitimages.com/DQmepRxXL8VnbonEYXHornVcJNopf1BBmwTT2vJmwQxPEzv/nodejs-web-server.png\",\"https://cdn.steemitimages.com/DQmVkWXmiNJUhxPa3C5Evf7RqNjAbATCtAD6VEZxgYHBZ5z/node-run.png\",\"https://cdn.steemitimages.com/DQmWbMhmmfnJkAioaTNiL6ej9FHpxiAv6aiJZesAMSswd1e/nodejsbrowser.png\"],\"links\":[\"http://localhost:8080\",\"http://127.0.0.1:8080\",\"https://www.techfree.info/2016/10/25/web-server-with-nodejs/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2018/07/04 09:46:00
parent authorsteemcleaners
parent permlinkre-techfree-codeigniter-20180702t184518572z
authortechfree
permlinkre-steemcleaners-re-techfree-codeigniter-20180704t094558303z
title
bodyWe know about this case. But we just want to move all our article from website to Steemit
json metadata{"tags":["cambodia"],"app":"steemit/0.1"}
Transaction InfoBlock #23877297/Trx 1cd2594705caf582c26073f6b64e01ca36186bac
View Raw JSON Data
{
  "trx_id": "1cd2594705caf582c26073f6b64e01ca36186bac",
  "block": 23877297,
  "trx_in_block": 32,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-04T09:46:00",
  "op": [
    "comment",
    {
      "parent_author": "steemcleaners",
      "parent_permlink": "re-techfree-codeigniter-20180702t184518572z",
      "author": "techfree",
      "permlink": "re-steemcleaners-re-techfree-codeigniter-20180704t094558303z",
      "title": "",
      "body": "We know about this case. But we just want to move all our article from website to Steemit",
      "json_metadata": "{\"tags\":[\"cambodia\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2018/07/04 09:44:45
votertechfree
authorsteemcleaners
permlinkre-techfree-codeigniter-20180702t184518572z
weight10000 (100.00%)
Transaction InfoBlock #23877272/Trx 83e9ee7dc8bd656e6f655387ceb4394c1abf5c97
View Raw JSON Data
{
  "trx_id": "83e9ee7dc8bd656e6f655387ceb4394c1abf5c97",
  "block": 23877272,
  "trx_in_block": 25,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-04T09:44:45",
  "op": [
    "vote",
    {
      "voter": "techfree",
      "author": "steemcleaners",
      "permlink": "re-techfree-codeigniter-20180702t184518572z",
      "weight": 10000
    }
  ]
}
2018/07/02 18:45:18
parent authortechfree
parent permlinkcodeigniter
authorsteemcleaners
permlinkre-techfree-codeigniter-20180702t184518572z
title
body[Source](https://www.techfree.info/2016/10/25/how-to-install-codeigniter/) Copying/Pasting full or partial texts without adding anything original is frowned upon by the community. Repeated copy/paste posts could be considered spam. Spam is discouraged by the community, and may result in action from the [cheetah bot](https://steemit.com/faq.html#What_is__cheetah). [More information and tips on sharing content.](https://steemcleaners.org/copy-paste-plagiarism/) If you believe this comment is in error, please contact us in [#disputes on Discord](https://discord.gg/YR2Wy5A)
json metadata{"app":"steemcleaners/0.3","format":"markdown+html","community":"steemcleaners"}
Transaction InfoBlock #23840316/Trx 66fc1cb71d5754b78e1f483459cbc19632f85840
View Raw JSON Data
{
  "trx_id": "66fc1cb71d5754b78e1f483459cbc19632f85840",
  "block": 23840316,
  "trx_in_block": 99,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-07-02T18:45:18",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "codeigniter",
      "author": "steemcleaners",
      "permlink": "re-techfree-codeigniter-20180702t184518572z",
      "title": "",
      "body": "[Source](https://www.techfree.info/2016/10/25/how-to-install-codeigniter/)\nCopying/Pasting full or partial texts without adding anything original is frowned upon by the community. Repeated copy/paste posts could be considered spam. Spam is discouraged by the community, and may result in action from the [cheetah bot](https://steemit.com/faq.html#What_is__cheetah).\r\n\r\n[More information and tips on sharing content.](https://steemcleaners.org/copy-paste-plagiarism/)\r\n\r\nIf you believe this comment is in error, please contact us in [#disputes on Discord](https://discord.gg/YR2Wy5A)\r\n",
      "json_metadata": "{\"app\":\"steemcleaners/0.3\",\"format\":\"markdown+html\",\"community\":\"steemcleaners\"}"
    }
  ]
}
2018/06/29 08:56:09
votertechfree
authorbrian.rrr
permlinkfirst-stock-i-ever-owned-six
weight10000 (100.00%)
Transaction InfoBlock #23742149/Trx 94ba18c400b1c2051868a210c3e04e5c47855520
View Raw JSON Data
{
  "trx_id": "94ba18c400b1c2051868a210c3e04e5c47855520",
  "block": 23742149,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-29T08:56:09",
  "op": [
    "vote",
    {
      "voter": "techfree",
      "author": "brian.rrr",
      "permlink": "first-stock-i-ever-owned-six",
      "weight": 10000
    }
  ]
}
techfreeupvoted (100.00%) @enigma84 / my-little-baby
2018/06/29 08:56:00
votertechfree
authorenigma84
permlinkmy-little-baby
weight10000 (100.00%)
Transaction InfoBlock #23742146/Trx 211e17efcaf3aeae58a2351530ea434863ba2df0
View Raw JSON Data
{
  "trx_id": "211e17efcaf3aeae58a2351530ea434863ba2df0",
  "block": 23742146,
  "trx_in_block": 44,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-29T08:56:00",
  "op": [
    "vote",
    {
      "voter": "techfree",
      "author": "enigma84",
      "permlink": "my-little-baby",
      "weight": 10000
    }
  ]
}
2018/06/29 08:55:51
votertechfree
authorvaansteam
permlinkdetroit-become-human-connor-and-tips-to-get-motivated
weight10000 (100.00%)
Transaction InfoBlock #23742143/Trx 1202e519254ce83643887ac691c4dd42b274fd4c
View Raw JSON Data
{
  "trx_id": "1202e519254ce83643887ac691c4dd42b274fd4c",
  "block": 23742143,
  "trx_in_block": 89,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-29T08:55:51",
  "op": [
    "vote",
    {
      "voter": "techfree",
      "author": "vaansteam",
      "permlink": "detroit-become-human-connor-and-tips-to-get-motivated",
      "weight": 10000
    }
  ]
}
2018/06/29 02:40:03
parent authortechfree
parent permlinkcodeigniter
authorcheetah
permlinkcheetah-re-techfreecodeigniter
title
bodyHi! I am a robot. I just upvoted you! I found similar content that readers might be interested in: https://www.techfree.info/2016/10/25/how-to-install-codeigniter/
json metadata
Transaction InfoBlock #23734629/Trx cc708607b34ac94c3859154c583823aa23fe825c
View Raw JSON Data
{
  "trx_id": "cc708607b34ac94c3859154c583823aa23fe825c",
  "block": 23734629,
  "trx_in_block": 11,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-29T02:40:03",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "codeigniter",
      "author": "cheetah",
      "permlink": "cheetah-re-techfreecodeigniter",
      "title": "",
      "body": "Hi! I am a robot. I just upvoted you! I found similar content that readers might be interested in:\nhttps://www.techfree.info/2016/10/25/how-to-install-codeigniter/",
      "json_metadata": ""
    }
  ]
}
cheetahupvoted (0.08%) @techfree / codeigniter
2018/06/29 02:39:48
votercheetah
authortechfree
permlinkcodeigniter
weight8 (0.08%)
Transaction InfoBlock #23734624/Trx 573a8257e7a1c95b9b56ff62b2011385c1c3f27c
View Raw JSON Data
{
  "trx_id": "573a8257e7a1c95b9b56ff62b2011385c1c3f27c",
  "block": 23734624,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-29T02:39:48",
  "op": [
    "vote",
    {
      "voter": "cheetah",
      "author": "techfree",
      "permlink": "codeigniter",
      "weight": 8
    }
  ]
}
techfreepublished a new post: codeigniter
2018/06/29 02:39:39
parent author
parent permlinkcambodia
authortechfree
permlinkcodeigniter
titleរបៀបដំឡើង CodeIgniter
body![codiniter.jpg](https://cdn.steemitimages.com/DQmZeK31mGjhX769TDh4ApL3KS2iAR9i16GsUJDPD6aULdZ/codiniter.jpg) CodeIgniter គឺជា Framework របស់ភាសា PHP មួយដែលមានការពេញនិយមប្រើប្រាស់ផងដែរហើយសំរាប់ការដំឡើងវិញគឺមានភាពងាយស្រួលមិនមានភាពស្មុគស្មាញនោះទេ ។ ខាងក្រោមនេះជាវិធីដំឡើង CodeIgniter ៖ * មុននឹងដំឡើង CodeIgniter យើងត្រូវតែដំឡើង Wamp Server នៅលើកុំព្យូទ័ររបស់យើងជាមុនសិនហើយនេះជាតំណសំរាប់ទាញយក Wamp Server http://www.wampserver.com/ * បន្ទាប់មកយើងត្រូវចូលទៅទាញយក CodeIgniter ទៅតាមតំណមួយនេះជាមុនសិនhttp://www.codeigniter.com/user_guide/installation/downloads.html * បន្ទាប់ពីបានទាញយក CodeIgniter រួចរាល់ហើយយើងត្រូវធ្វើការពន្លាឯកសារនោះចេញមកក្រៅសិនហើយយកឯកសារនោះទៅដាក់នៅក្នុងថត C:\wamp\www * បន្ទាប់មកទៀតយើងត្រូវធ្វើការបើកដំណើរការកម្មវិធី Wamp Server ហើយបើកកម្មវិធីបើកគេហទំព័រហើយត្រូវវាយតំណ localhost/codeigniter/ ទៅក្នុងកម្មវិធីបើកគេហទំព័រនោះទៅរួចជាការស្រេច ។ **ចំណាំ**៖ codeigniter គឺជាថតរបស់ CodeIgniter Framework ដែរយើងបានទាញយកមកហើយនឹងបានយកទៅដាក់នៅក្នុងថត C:\wamp\www ។ ខាងក្រោមនេះជាលទ្ធផលពីការដំឡើង CodeIgniter ៖ ![resulf-codeigniter.png](https://cdn.steemitimages.com/DQmUUECtcihVr4aCTBoncKX1DCSKcYaAi25dNRHkMWFEST2/resulf-codeigniter.png) [ប្រភពដើម](https://www.techfree.info/2016/10/25/how-to-install-codeigniter/)
json metadata{"tags":["cambodia","khmer","codeigniter","framework"],"image":["https://cdn.steemitimages.com/DQmZeK31mGjhX769TDh4ApL3KS2iAR9i16GsUJDPD6aULdZ/codiniter.jpg","https://cdn.steemitimages.com/DQmUUECtcihVr4aCTBoncKX1DCSKcYaAi25dNRHkMWFEST2/resulf-codeigniter.png"],"links":["http://www.wampserver.com/","http://www.codeigniter.com/user_guide/installation/downloads.html","https://www.techfree.info/2016/10/25/how-to-install-codeigniter/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23734621/Trx 50c3569774b5cec133dc4f0c08b2ae5f531e80eb
View Raw JSON Data
{
  "trx_id": "50c3569774b5cec133dc4f0c08b2ae5f531e80eb",
  "block": 23734621,
  "trx_in_block": 15,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-29T02:39:39",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "codeigniter",
      "title": "របៀបដំឡើង CodeIgniter",
      "body": "![codiniter.jpg](https://cdn.steemitimages.com/DQmZeK31mGjhX769TDh4ApL3KS2iAR9i16GsUJDPD6aULdZ/codiniter.jpg)\n\nCodeIgniter គឺជា Framework របស់ភាសា PHP មួយដែលមានការពេញនិយមប្រើប្រាស់ផងដែរហើយសំរាប់ការដំឡើងវិញគឺមានភាពងាយស្រួលមិនមានភាពស្មុគស្មាញនោះទេ ។\n\n\nខាងក្រោមនេះជាវិធីដំឡើង CodeIgniter ៖\n\n* មុននឹងដំឡើង CodeIgniter យើងត្រូវតែដំឡើង Wamp Server នៅលើកុំព្យូទ័ររបស់យើងជាមុនសិនហើយនេះជាតំណសំរាប់ទាញយក Wamp Server http://www.wampserver.com/\n* បន្ទាប់មកយើងត្រូវចូលទៅទាញយក CodeIgniter ទៅតាមតំណមួយនេះជាមុនសិនhttp://www.codeigniter.com/user_guide/installation/downloads.html\n* បន្ទាប់ពីបានទាញយក CodeIgniter រួចរាល់ហើយយើងត្រូវធ្វើការពន្លាឯកសារនោះចេញមកក្រៅសិនហើយយកឯកសារនោះទៅដាក់នៅក្នុងថត C:\\wamp\\www\n* បន្ទាប់មកទៀតយើងត្រូវធ្វើការបើកដំណើរការកម្មវិធី Wamp Server ហើយបើកកម្មវិធីបើកគេហទំព័រហើយត្រូវវាយតំណ localhost/codeigniter/ ទៅក្នុងកម្មវិធីបើកគេហទំព័រនោះទៅរួចជាការស្រេច ។\n\n**ចំណាំ**៖ codeigniter គឺជាថតរបស់ CodeIgniter Framework ដែរយើងបានទាញយកមកហើយនឹងបានយកទៅដាក់នៅក្នុងថត C:\\wamp\\www ។\n\nខាងក្រោមនេះជាលទ្ធផលពីការដំឡើង CodeIgniter ៖\n\n![resulf-codeigniter.png](https://cdn.steemitimages.com/DQmUUECtcihVr4aCTBoncKX1DCSKcYaAi25dNRHkMWFEST2/resulf-codeigniter.png)\n\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/how-to-install-codeigniter/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"codeigniter\",\"framework\"],\"image\":[\"https://cdn.steemitimages.com/DQmZeK31mGjhX769TDh4ApL3KS2iAR9i16GsUJDPD6aULdZ/codiniter.jpg\",\"https://cdn.steemitimages.com/DQmUUECtcihVr4aCTBoncKX1DCSKcYaAi25dNRHkMWFEST2/resulf-codeigniter.png\"],\"links\":[\"http://www.wampserver.com/\",\"http://www.codeigniter.com/user_guide/installation/downloads.html\",\"https://www.techfree.info/2016/10/25/how-to-install-codeigniter/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2018/06/29 02:17:54
parent author
parent permlinkcambodia
authortechfree
permlinkadmin-site-django-framework
titleរបៀបដំណើរការ Admin Site ជាមួយ Django Framework
body![django_admin_site.png](https://cdn.steemitimages.com/DQmcbPdD3xXEsfUYQFvcBLYJQzwXoYKutiEZjBuP85EmTbn/django_admin_site.png) កន្លងមក TECHFREE បានបង្ហាញពីរបៀងដំឡើង Django Framework នឹង របៀបតភ្ជាប់ MySQL Database ជាមួយ Django Framework ហើយនៅក្នុងការតភ្ជាប់ MySQL Database នោះយើងមានតែ Table “django_migrations” ទេមិន Table user នៅឡើយ។ ដូច្នោះហើយ TECHFREE នឹង បង្ហាញពី “របៀបដំណើរការ Admin Site ជាមួយ Django Framework” ដែលទាក់ទងជាមួយការបង្កើត Table ផងដែរ។ សូមវាយ command ចូលទៅកាន់ Project Folder របស់អ្នកហើយដំណើរការនូវ command `python manage.py migrate`។ ![run_migrate.jpg](https://cdn.steemitimages.com/DQmbc1JSf6pB9JKHD4qwZBEEb3Ms2KEMsLVyoeRcfka7GFp/run_migrate.jpg) បន្ទាប់ពីដំណើរការ command ខាងលើរួចអ្នកនឹងបាន Table ជាច្រើនដូចរូបភាពខាងក្រោម៖ ![run_migrate_result.jpg](https://cdn.steemitimages.com/DQmZQNSqRM496iLU67gY1k4KYQH1HPZsWYkdDLZ5jJWRi5N/run_migrate_result.jpg) បន្ទាប់មកទៀតសូមដំណើរការ command `python manage.py createsuperuser` ដើម្បីបង្កើត superuser។ ហើយអ្នកត្រូវវាយនូវ Username, Email, Password ដូចរូបភាពខាងក្រោម។ ![django_createsuperuser.jpg](https://cdn.steemitimages.com/DQmfYYNw2MVBJYz4NTiAqSUKASocV47R7tHTJizFDcnXvZA/django_createsuperuser.jpg) ហើយចាប់ផ្តើមដំណើរការ Server `python manage.py runserver`។ ![run.jpg](https://cdn.steemitimages.com/DQmacauhgpHschvq4f3HtHm1rfb6Ff1rPixzzQ5QfQrNW85/run.jpg) បន្ទាប់មកអ្នកវាយ URL នៅលើ Browser `http://127.0.0.1:8000/admin` ![login_from1.jpg](https://cdn.steemitimages.com/DQmY45NoCJ4Zny1ajkV87QzjGcPnBYP8cfje9v32vebaKjv/login_from1.jpg) បន្ទាប់ពីអ្នក Login ចូលរួច។ ![site_admin.jpg](https://cdn.steemitimages.com/DQmYdFHeYTZ6hiftZ9LdnW3QDPgqWYPN7Px3b36EE9ZQHmz/site_admin.jpg) [ប្រភពដើម](https://www.techfree.info/2016/10/25/how-to-use-admin-site-with-django-framework/)
json metadata{"tags":["cambodia","khmer","django","admin"],"image":["https://cdn.steemitimages.com/DQmcbPdD3xXEsfUYQFvcBLYJQzwXoYKutiEZjBuP85EmTbn/django_admin_site.png","https://cdn.steemitimages.com/DQmbc1JSf6pB9JKHD4qwZBEEb3Ms2KEMsLVyoeRcfka7GFp/run_migrate.jpg","https://cdn.steemitimages.com/DQmZQNSqRM496iLU67gY1k4KYQH1HPZsWYkdDLZ5jJWRi5N/run_migrate_result.jpg","https://cdn.steemitimages.com/DQmfYYNw2MVBJYz4NTiAqSUKASocV47R7tHTJizFDcnXvZA/django_createsuperuser.jpg","https://cdn.steemitimages.com/DQmacauhgpHschvq4f3HtHm1rfb6Ff1rPixzzQ5QfQrNW85/run.jpg","https://cdn.steemitimages.com/DQmY45NoCJ4Zny1ajkV87QzjGcPnBYP8cfje9v32vebaKjv/login_from1.jpg","https://cdn.steemitimages.com/DQmYdFHeYTZ6hiftZ9LdnW3QDPgqWYPN7Px3b36EE9ZQHmz/site_admin.jpg"],"links":["https://www.techfree.info/2016/10/25/how-to-use-admin-site-with-django-framework/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23734186/Trx f7096f7532c1cac91b2936b12c6df27a84634c49
View Raw JSON Data
{
  "trx_id": "f7096f7532c1cac91b2936b12c6df27a84634c49",
  "block": 23734186,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-29T02:17:54",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "admin-site-django-framework",
      "title": "របៀបដំណើរការ Admin Site ជាមួយ Django Framework",
      "body": "![django_admin_site.png](https://cdn.steemitimages.com/DQmcbPdD3xXEsfUYQFvcBLYJQzwXoYKutiEZjBuP85EmTbn/django_admin_site.png)\n\nកន្លងមក TECHFREE បានបង្ហាញពីរបៀងដំឡើង Django Framework នឹង របៀបតភ្ជាប់ MySQL Database ជាមួយ Django Framework ហើយនៅក្នុងការតភ្ជាប់ MySQL Database នោះយើងមានតែ Table “django_migrations” ទេមិន Table user នៅឡើយ។ ដូច្នោះហើយ TECHFREE នឹង បង្ហាញពី “របៀបដំណើរការ Admin Site ជាមួយ Django Framework” ដែលទាក់ទងជាមួយការបង្កើត Table ផងដែរ។\n\nសូមវាយ command ចូលទៅកាន់ Project Folder របស់អ្នកហើយដំណើរការនូវ command `python manage.py migrate`។\n\n![run_migrate.jpg](https://cdn.steemitimages.com/DQmbc1JSf6pB9JKHD4qwZBEEb3Ms2KEMsLVyoeRcfka7GFp/run_migrate.jpg)\n\nបន្ទាប់ពីដំណើរការ command ខាងលើរួចអ្នកនឹងបាន Table ជាច្រើនដូចរូបភាពខាងក្រោម៖\n\n![run_migrate_result.jpg](https://cdn.steemitimages.com/DQmZQNSqRM496iLU67gY1k4KYQH1HPZsWYkdDLZ5jJWRi5N/run_migrate_result.jpg)\n\nបន្ទាប់មកទៀតសូមដំណើរការ command `python manage.py createsuperuser` ដើម្បីបង្កើត superuser។ ហើយអ្នកត្រូវវាយនូវ Username, Email, Password ដូចរូបភាពខាងក្រោម។\n\n![django_createsuperuser.jpg](https://cdn.steemitimages.com/DQmfYYNw2MVBJYz4NTiAqSUKASocV47R7tHTJizFDcnXvZA/django_createsuperuser.jpg)\n\nហើយចាប់ផ្តើមដំណើរការ Server `python manage.py runserver`។\n\n![run.jpg](https://cdn.steemitimages.com/DQmacauhgpHschvq4f3HtHm1rfb6Ff1rPixzzQ5QfQrNW85/run.jpg)\n\nបន្ទាប់មកអ្នកវាយ URL នៅលើ Browser `http://127.0.0.1:8000/admin`\n\n![login_from1.jpg](https://cdn.steemitimages.com/DQmY45NoCJ4Zny1ajkV87QzjGcPnBYP8cfje9v32vebaKjv/login_from1.jpg)\n\nបន្ទាប់ពីអ្នក Login ចូលរួច។\n\n![site_admin.jpg](https://cdn.steemitimages.com/DQmYdFHeYTZ6hiftZ9LdnW3QDPgqWYPN7Px3b36EE9ZQHmz/site_admin.jpg)\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/how-to-use-admin-site-with-django-framework/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"django\",\"admin\"],\"image\":[\"https://cdn.steemitimages.com/DQmcbPdD3xXEsfUYQFvcBLYJQzwXoYKutiEZjBuP85EmTbn/django_admin_site.png\",\"https://cdn.steemitimages.com/DQmbc1JSf6pB9JKHD4qwZBEEb3Ms2KEMsLVyoeRcfka7GFp/run_migrate.jpg\",\"https://cdn.steemitimages.com/DQmZQNSqRM496iLU67gY1k4KYQH1HPZsWYkdDLZ5jJWRi5N/run_migrate_result.jpg\",\"https://cdn.steemitimages.com/DQmfYYNw2MVBJYz4NTiAqSUKASocV47R7tHTJizFDcnXvZA/django_createsuperuser.jpg\",\"https://cdn.steemitimages.com/DQmacauhgpHschvq4f3HtHm1rfb6Ff1rPixzzQ5QfQrNW85/run.jpg\",\"https://cdn.steemitimages.com/DQmY45NoCJ4Zny1ajkV87QzjGcPnBYP8cfje9v32vebaKjv/login_from1.jpg\",\"https://cdn.steemitimages.com/DQmYdFHeYTZ6hiftZ9LdnW3QDPgqWYPN7Px3b36EE9ZQHmz/site_admin.jpg\"],\"links\":[\"https://www.techfree.info/2016/10/25/how-to-use-admin-site-with-django-framework/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: load-balance-web-server
2018/06/28 08:20:21
parent author
parent permlinkcambodia
authortechfree
permlinkload-balance-web-server
titleស្វែងយល់ពី Load Balance Web Server
body![loadbalance.png](https://cdn.steemitimages.com/DQmRvrKj8uhgVbhPv2dtB4f4u5UTjZqiBbr716mY7TarUBa/loadbalance.png) Web Load balance ត្រូវបានគេប្រើប្រាស់ដើម្បីជួយសម្រួលដល់ web server ដែលទទួល Request ច្រើនក្នុងពេលតែមួយនៅលើ Server តែមួយ។ Pen ជាប្រភេទ Load Balance មួយដែលអាចធ្វើជា Load Balance ផ្សេងៗទៅលើ Service ជាច្រើនដូចជា http, smtp, ftp,mysql ជាដើម។ ខាងក្រោមនេះជាការប្រើប្រាស់ Pen ធ្វើជា Load balance សម្រាប់ Apache Server នៅលើ CentOS 6 ។ នៅលើ Server អ្នកត្រូវដោនឡូតកម្មវិធី pen load balance ពីក្នុង Repository EPEL ។ `yum –enablerepo=epel -y install pen` បន្ទាប់មកអ្នកអាចចូលទៅបង្កើត Configuration file `/etc/pen.conf `។ ![create-pen.png](https://cdn.steemitimages.com/DQmSLTZ7YnEaHni5b9JVE5SwUa7YQKqBmyHE6CC3qshooFf/create-pen.png) Back End ជា Server សម្រាប់ទទួលការងារដែល Front End រុញអោយ ។ បន្ទាប់មកទៀតអ្នកត្រូវ បង្កើត Service pen មួយនៅក្នុង `/etc/rc.d/init.d/pend` និងសរសេរដូចខាងក្រោមនេះ ប្រសិនបើយើងមាន Setup DNS Server ទៀតកាន់តែល្អព្រោះអាចប្រើប្រាស់ឈ្មោះ ជំនួស IP Address។ ![pen-service.png](https://cdn.steemitimages.com/DQmVCSbG41Yfxiv1sbxcw69ZFSKf2rSYHgyUDeK4yLD4k4v/pen-service.png) `chmod 777 /etc/rc.d/init.d/pend` `service pend restart` `chkconfig –level 35 pend on` ដូចនេះយើងអាចធ្វើតេសន៏បានដូចខាងក្រោមប្រសិនបើយើងធ្វើអោយ Web Server មិនដំណើរការមួយវានិងដើលើ Web Server មួយទៀត ![close-service.png](https://cdn.steemitimages.com/DQmVquoGdDQwdXvBcuXG9kZJWT2C5st2nRHoXxq6x74pEUS/close-service.png) អ្នកមិនគួរ RUN Service http នៅលើ Server ដែលអ្នកតម្លើងកម្មវិធី Pen នោះទេព្រោះវាជាន់ port គ្នាដូចនេះវាមិនដំណើរការនោះទេ។ [ប្រភពដើម](https://www.techfree.info/2016/10/25/web_load_balance/)
json metadata{"tags":["cambodia","khmer","web","load","balance"],"image":["https://cdn.steemitimages.com/DQmRvrKj8uhgVbhPv2dtB4f4u5UTjZqiBbr716mY7TarUBa/loadbalance.png","https://cdn.steemitimages.com/DQmSLTZ7YnEaHni5b9JVE5SwUa7YQKqBmyHE6CC3qshooFf/create-pen.png","https://cdn.steemitimages.com/DQmVCSbG41Yfxiv1sbxcw69ZFSKf2rSYHgyUDeK4yLD4k4v/pen-service.png","https://cdn.steemitimages.com/DQmVquoGdDQwdXvBcuXG9kZJWT2C5st2nRHoXxq6x74pEUS/close-service.png"],"links":["https://www.techfree.info/2016/10/25/web_load_balance/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23712677/Trx d00c128dc3701509c613c80007de70ae23ac53d8
View Raw JSON Data
{
  "trx_id": "d00c128dc3701509c613c80007de70ae23ac53d8",
  "block": 23712677,
  "trx_in_block": 11,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-28T08:20:21",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "load-balance-web-server",
      "title": "ស្វែងយល់ពី Load Balance Web Server",
      "body": "![loadbalance.png](https://cdn.steemitimages.com/DQmRvrKj8uhgVbhPv2dtB4f4u5UTjZqiBbr716mY7TarUBa/loadbalance.png)\n\nWeb Load balance ត្រូវបានគេប្រើប្រាស់ដើម្បីជួយសម្រួលដល់ web server ដែលទទួល Request ច្រើនក្នុងពេលតែមួយនៅលើ Server តែមួយ។ Pen ជាប្រភេទ Load Balance មួយដែលអាចធ្វើជា Load Balance ផ្សេងៗទៅលើ Service ជាច្រើនដូចជា http, smtp, ftp,mysql ជាដើម។\n\n\nខាងក្រោមនេះជាការប្រើប្រាស់ Pen ធ្វើជា Load balance សម្រាប់ Apache Server នៅលើ CentOS 6 ។\n\nនៅលើ Server អ្នកត្រូវដោនឡូតកម្មវិធី pen load balance ពីក្នុង Repository EPEL ។\n\n`yum –enablerepo=epel -y install pen`\n\nបន្ទាប់មកអ្នកអាចចូលទៅបង្កើត Configuration file `/etc/pen.conf `។\n\n![create-pen.png](https://cdn.steemitimages.com/DQmSLTZ7YnEaHni5b9JVE5SwUa7YQKqBmyHE6CC3qshooFf/create-pen.png)\n\nBack End ជា Server សម្រាប់ទទួលការងារដែល Front End រុញអោយ ។\n\nបន្ទាប់មកទៀតអ្នកត្រូវ បង្កើត Service pen មួយនៅក្នុង `/etc/rc.d/init.d/pend` និងសរសេរដូចខាងក្រោមនេះ\n\nប្រសិនបើយើងមាន Setup DNS Server ទៀតកាន់តែល្អព្រោះអាចប្រើប្រាស់ឈ្មោះ ជំនួស IP Address។\n\n![pen-service.png](https://cdn.steemitimages.com/DQmVCSbG41Yfxiv1sbxcw69ZFSKf2rSYHgyUDeK4yLD4k4v/pen-service.png)\n\n`chmod  777  /etc/rc.d/init.d/pend`\n\n`service pend restart`\n\n`chkconfig  –level 35 pend on`\n\nដូចនេះយើងអាចធ្វើតេសន៏បានដូចខាងក្រោមប្រសិនបើយើងធ្វើអោយ Web Server មិនដំណើរការមួយវានិងដើលើ Web Server មួយទៀត\n\n![close-service.png](https://cdn.steemitimages.com/DQmVquoGdDQwdXvBcuXG9kZJWT2C5st2nRHoXxq6x74pEUS/close-service.png)\n\nអ្នកមិនគួរ RUN Service http នៅលើ Server ដែលអ្នកតម្លើងកម្មវិធី Pen នោះទេព្រោះវាជាន់ port គ្នាដូចនេះវាមិនដំណើរការនោះទេ។\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/web_load_balance/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"web\",\"load\",\"balance\"],\"image\":[\"https://cdn.steemitimages.com/DQmRvrKj8uhgVbhPv2dtB4f4u5UTjZqiBbr716mY7TarUBa/loadbalance.png\",\"https://cdn.steemitimages.com/DQmSLTZ7YnEaHni5b9JVE5SwUa7YQKqBmyHE6CC3qshooFf/create-pen.png\",\"https://cdn.steemitimages.com/DQmVCSbG41Yfxiv1sbxcw69ZFSKf2rSYHgyUDeK4yLD4k4v/pen-service.png\",\"https://cdn.steemitimages.com/DQmVquoGdDQwdXvBcuXG9kZJWT2C5st2nRHoXxq6x74pEUS/close-service.png\"],\"links\":[\"https://www.techfree.info/2016/10/25/web_load_balance/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: 3itxed-logo-gimp
2018/06/28 03:56:57
parent author
parent permlinkcambodia
authortechfree
permlink3itxed-logo-gimp
titleបង្កើត Logo ងាយៗជាមួយកម្មវិធី GIMP (វគ្គបញ្ចប់)
body![gimplogo.png](https://cdn.steemitimages.com/DQmdernevnvFdrvsXYbf6xxfnMhwM3ZTUGtM3trZtBDP2yn/gimplogo.png) កាលពីអត្ថបទមុន Techfree បាននិយាយពីការ បង្កើត Logo ងាយៗជាមួយកម្មវិធី GIMP (វគ្គ ២)។ នៅក្នុងអត្ថបទនេះ យើងនឹងរៀបរាប់បញ្ចប់អំពីការបង្កើត Logo ជាមួយកម្មវិធី GIMP។ ដំបូងអ្នកត្រូវធ្វើការតំឡើងកម្មវិធី **GIMP** នៅលើកំព្យូទ័ររបស់អ្នក បន្ទាប់មកដំណើរការកម្មវិធីនេះ។ រួចចុច **File –> Create –> Logo** ហើយជ្រើសរើសម៉ូដណាមួយដែលអ្នកចង់បាន។ ខាងក្រោមនេះគឺជាឧទាហរណ៍នៃការបង្កើត Logo ទាំងនោះ៖ * **Newsprint Text** សូមធ្វើការកំណត់ចំពោះអក្សរ, ហ្វុងអក្សរ….. ដូចរូបខាងក្រោម រួចចុចប៊ូតុង OK ដើម្បីបង្កើត Logo៖ ![gimp-3.png](https://cdn.steemitimages.com/DQmVeDD9zEW4h4tQM3Q57bC12DmM12Frt8sd8YFLb4GAvaA/gimp-3.png) នោះអ្នកនឹងទទួលបាន Logo មួយដូចខាងក្រោម៖ ![gimp3-1.jpg](https://cdn.steemitimages.com/DQmdmcskoq78CyGPj8sCiVFt4AhFruVfanZs6wi16Y4aChm/gimp3-1.jpg) * **Particle Trace** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp3-2.jpg](https://cdn.steemitimages.com/DQmQTeMFqnATU7NyfPfRmdi59QLbz7aYVN3AQYGGb1BQCqu/gimp3-2.jpg) * **SOTA Chrome** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp3-3.jpg](https://cdn.steemitimages.com/DQmWbPacuArA9R6HLnMAJ7QbHsxDwQTTXfngYHXVgz3fJDP/gimp3-3.jpg) * **Speed Text** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp3-4.jpg](https://cdn.steemitimages.com/DQmdiumRhSRjprNfxJaqTuom3rrZeVS7A9Mez1e9TrDxFoh/gimp3-4.jpg) * **Starscape** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp3-5.jpg](https://cdn.steemitimages.com/DQmYBSXuqwErshACWfANUt5mvG8PaMdsq3pJjnmz3aMDCkA/gimp3-5.jpg) * **Text Circle** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp3-6.jpg](https://cdn.steemitimages.com/DQmaE7Y78buhrHej24hFKxEw6c1pfFMAUKo3U2EHtuNSPbk/gimp3-6.jpg) * **Textured** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp3-7.jpg](https://cdn.steemitimages.com/DQmSJuq72UUtp4aqp1mdVrKg5opCz3J2QJYnaxLS2v8tpvX/gimp3-7.jpg) * **Web Title Header** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp3-8.jpg](https://cdn.steemitimages.com/DQmWYYy4cDeaFh6SYMLk3CppGaP8FEPrRzzuH2m4bRkTYCU/gimp3-8.jpg) សូមថ្លែងអំណរគុណចំពោះអ្នកអានទាំងអស់ដែលចំណាយពេលវេលាអានអត្ថបទរបស់យើងខ្ញុំ។ យើងខ្ញុំនឹងលើកយកចំណេះដឹងផ្សេងៗទៀតដែលទាក់ទងនិង GIMP មកបង្ហាញនៅអត្ថបទក្រោយទៀត។ សូមជូនពរសំណាងល្អទាំងអស់គ្នា។ [ប្រភពដើម](https://www.techfree.info/2016/10/25/create-logo-with-gimp-3/)
json metadata{"tags":["cambodia","khmer","gimp","create","logo"],"image":["https://cdn.steemitimages.com/DQmdernevnvFdrvsXYbf6xxfnMhwM3ZTUGtM3trZtBDP2yn/gimplogo.png","https://cdn.steemitimages.com/DQmVeDD9zEW4h4tQM3Q57bC12DmM12Frt8sd8YFLb4GAvaA/gimp-3.png","https://cdn.steemitimages.com/DQmdmcskoq78CyGPj8sCiVFt4AhFruVfanZs6wi16Y4aChm/gimp3-1.jpg","https://cdn.steemitimages.com/DQmQTeMFqnATU7NyfPfRmdi59QLbz7aYVN3AQYGGb1BQCqu/gimp3-2.jpg","https://cdn.steemitimages.com/DQmWbPacuArA9R6HLnMAJ7QbHsxDwQTTXfngYHXVgz3fJDP/gimp3-3.jpg","https://cdn.steemitimages.com/DQmdiumRhSRjprNfxJaqTuom3rrZeVS7A9Mez1e9TrDxFoh/gimp3-4.jpg","https://cdn.steemitimages.com/DQmYBSXuqwErshACWfANUt5mvG8PaMdsq3pJjnmz3aMDCkA/gimp3-5.jpg","https://cdn.steemitimages.com/DQmaE7Y78buhrHej24hFKxEw6c1pfFMAUKo3U2EHtuNSPbk/gimp3-6.jpg","https://cdn.steemitimages.com/DQmSJuq72UUtp4aqp1mdVrKg5opCz3J2QJYnaxLS2v8tpvX/gimp3-7.jpg","https://cdn.steemitimages.com/DQmWYYy4cDeaFh6SYMLk3CppGaP8FEPrRzzuH2m4bRkTYCU/gimp3-8.jpg"],"links":["https://www.techfree.info/2016/10/25/create-logo-with-gimp-3/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23707410/Trx 350c45fe46f2e60e1d31bc149a44afff2241df12
View Raw JSON Data
{
  "trx_id": "350c45fe46f2e60e1d31bc149a44afff2241df12",
  "block": 23707410,
  "trx_in_block": 18,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-28T03:56:57",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "3itxed-logo-gimp",
      "title": "បង្កើត Logo ងាយៗជាមួយកម្មវិធី GIMP (វគ្គបញ្ចប់)",
      "body": "![gimplogo.png](https://cdn.steemitimages.com/DQmdernevnvFdrvsXYbf6xxfnMhwM3ZTUGtM3trZtBDP2yn/gimplogo.png)\n\nកាលពីអត្ថបទមុន Techfree បាននិយាយពីការ បង្កើត Logo ងាយៗជាមួយកម្មវិធី GIMP (វគ្គ ២)។ នៅក្នុងអត្ថបទនេះ យើងនឹងរៀបរាប់បញ្ចប់អំពីការបង្កើត Logo ជាមួយកម្មវិធី GIMP។\n\n\nដំបូងអ្នកត្រូវធ្វើការតំឡើងកម្មវិធី **GIMP** នៅលើកំព្យូទ័ររបស់អ្នក បន្ទាប់មកដំណើរការកម្មវិធីនេះ។ រួចចុច **File –> Create –> Logo** ហើយជ្រើសរើសម៉ូដណាមួយដែលអ្នកចង់បាន។ ខាងក្រោមនេះគឺជាឧទាហរណ៍នៃការបង្កើត Logo ទាំងនោះ៖\n\n* **Newsprint Text**\n\nសូមធ្វើការកំណត់ចំពោះអក្សរ, ហ្វុងអក្សរ….. ដូចរូបខាងក្រោម រួចចុចប៊ូតុង OK ដើម្បីបង្កើត Logo៖\n\n![gimp-3.png](https://cdn.steemitimages.com/DQmVeDD9zEW4h4tQM3Q57bC12DmM12Frt8sd8YFLb4GAvaA/gimp-3.png)\n\nនោះអ្នកនឹងទទួលបាន Logo មួយដូចខាងក្រោម៖\n\n![gimp3-1.jpg](https://cdn.steemitimages.com/DQmdmcskoq78CyGPj8sCiVFt4AhFruVfanZs6wi16Y4aChm/gimp3-1.jpg)\n\n* **Particle Trace** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp3-2.jpg](https://cdn.steemitimages.com/DQmQTeMFqnATU7NyfPfRmdi59QLbz7aYVN3AQYGGb1BQCqu/gimp3-2.jpg)\n\n* **SOTA Chrome** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp3-3.jpg](https://cdn.steemitimages.com/DQmWbPacuArA9R6HLnMAJ7QbHsxDwQTTXfngYHXVgz3fJDP/gimp3-3.jpg)\n\n* **Speed Text** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp3-4.jpg](https://cdn.steemitimages.com/DQmdiumRhSRjprNfxJaqTuom3rrZeVS7A9Mez1e9TrDxFoh/gimp3-4.jpg)\n\n* **Starscape** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp3-5.jpg](https://cdn.steemitimages.com/DQmYBSXuqwErshACWfANUt5mvG8PaMdsq3pJjnmz3aMDCkA/gimp3-5.jpg)\n\n* **Text Circle** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp3-6.jpg](https://cdn.steemitimages.com/DQmaE7Y78buhrHej24hFKxEw6c1pfFMAUKo3U2EHtuNSPbk/gimp3-6.jpg)\n\n* **Textured** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp3-7.jpg](https://cdn.steemitimages.com/DQmSJuq72UUtp4aqp1mdVrKg5opCz3J2QJYnaxLS2v8tpvX/gimp3-7.jpg)\n\n* **Web Title Header** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp3-8.jpg](https://cdn.steemitimages.com/DQmWYYy4cDeaFh6SYMLk3CppGaP8FEPrRzzuH2m4bRkTYCU/gimp3-8.jpg)\n\nសូមថ្លែងអំណរគុណចំពោះអ្នកអានទាំងអស់ដែលចំណាយពេលវេលាអានអត្ថបទរបស់យើងខ្ញុំ។ យើងខ្ញុំនឹងលើកយកចំណេះដឹងផ្សេងៗទៀតដែលទាក់ទងនិង GIMP មកបង្ហាញនៅអត្ថបទក្រោយទៀត។ សូមជូនពរសំណាងល្អទាំងអស់គ្នា។\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/create-logo-with-gimp-3/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"gimp\",\"create\",\"logo\"],\"image\":[\"https://cdn.steemitimages.com/DQmdernevnvFdrvsXYbf6xxfnMhwM3ZTUGtM3trZtBDP2yn/gimplogo.png\",\"https://cdn.steemitimages.com/DQmVeDD9zEW4h4tQM3Q57bC12DmM12Frt8sd8YFLb4GAvaA/gimp-3.png\",\"https://cdn.steemitimages.com/DQmdmcskoq78CyGPj8sCiVFt4AhFruVfanZs6wi16Y4aChm/gimp3-1.jpg\",\"https://cdn.steemitimages.com/DQmQTeMFqnATU7NyfPfRmdi59QLbz7aYVN3AQYGGb1BQCqu/gimp3-2.jpg\",\"https://cdn.steemitimages.com/DQmWbPacuArA9R6HLnMAJ7QbHsxDwQTTXfngYHXVgz3fJDP/gimp3-3.jpg\",\"https://cdn.steemitimages.com/DQmdiumRhSRjprNfxJaqTuom3rrZeVS7A9Mez1e9TrDxFoh/gimp3-4.jpg\",\"https://cdn.steemitimages.com/DQmYBSXuqwErshACWfANUt5mvG8PaMdsq3pJjnmz3aMDCkA/gimp3-5.jpg\",\"https://cdn.steemitimages.com/DQmaE7Y78buhrHej24hFKxEw6c1pfFMAUKo3U2EHtuNSPbk/gimp3-6.jpg\",\"https://cdn.steemitimages.com/DQmSJuq72UUtp4aqp1mdVrKg5opCz3J2QJYnaxLS2v8tpvX/gimp3-7.jpg\",\"https://cdn.steemitimages.com/DQmWYYy4cDeaFh6SYMLk3CppGaP8FEPrRzzuH2m4bRkTYCU/gimp3-8.jpg\"],\"links\":[\"https://www.techfree.info/2016/10/25/create-logo-with-gimp-3/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: browser-electron
2018/06/26 02:00:03
parent author
parent permlinkcambodia
authortechfree
permlinkbrowser-electron
titleរបៀបបង្កើតកម្មវិធីមើលវេបសាយ Browser ជាមួយ Electron
body![browserwindow.jpg](https://cdn.steemitimages.com/DQmSAgf3NdLi1tvvYH5BtaMyNB8UNaL8EtzjUWBpviJ5r8k/browserwindow.jpg) នៅក្នុង Electron គេអាចប្រើ BrowserWindow ដើម្បីបង្កើតកម្មវិធីមើលវេបសាយ Browser ។ អត្ថបទនេះនឹងបង្ហាញពីវិធីប្រើប្រាស់ BrowserWindow ។ នៅក្នុង package.js សូមកំណត់ដូចខាងក្រោម៖ package.js ![menu6.png](https://cdn.steemitimages.com/DQmXiDTQESSuXaKEhdBA8jLwF99K6VDsde5CyvTC5mbQWpy/menu6.png) main.js ![browserwindow.png](https://cdn.steemitimages.com/DQmXMYGA43chwvLQP12seWob2x4Wnb5msjsmvpraMgQDL8B/browserwindow.png) បន្ទាត់ទី6: គឺជាការកំណត់ឲ្យកម្មវិធីបង្ហាញគេទំព័រ techfree.info ។ អ្នកក៏អាចបង្ហាញ Webpage នៅក្នុង Folder បានផងដែរ ដោយជំនួសកូដខាងក្រោមនៅត្រង់បន្ទាត់ទី6 នេះ។ ```win.loadURL(`file://${__dirname}/index.html`)``` index.html (ករណីការបង្ហាញ Webpage ជាលក្ខណៈ Local) ![browserwindow3.png](https://cdn.steemitimages.com/DQmY8zUyE5yo4JzD7cZ5AwMSZkGoNwoBDcXTfM7UfGk2UWy/browserwindow3.png) **លទ្ធផល**៖ **ករណីបង្ហាញ index.html** ![browserwindow4.png](https://cdn.steemitimages.com/DQmeKgMT6d5EtxAkgiGx9qrdCcVJKtJEjLbLTqLeFGB9mKu/browserwindow4.png) **ករណីបង្ហាញ techfree.info** ![Screenshot-40.png](https://cdn.steemitimages.com/DQmf1W38sYUXHAnNMJQNAmCmPMkv6oVCEnK5Hskrzam3aPM/Screenshot-40.png) [ប្រភពដើម](https://www.techfree.info/2016/10/25/electron-browserwindow/)
json metadata{"tags":["cambodia","khmer","browser","electron"],"image":["https://cdn.steemitimages.com/DQmSAgf3NdLi1tvvYH5BtaMyNB8UNaL8EtzjUWBpviJ5r8k/browserwindow.jpg","https://cdn.steemitimages.com/DQmXiDTQESSuXaKEhdBA8jLwF99K6VDsde5CyvTC5mbQWpy/menu6.png","https://cdn.steemitimages.com/DQmXMYGA43chwvLQP12seWob2x4Wnb5msjsmvpraMgQDL8B/browserwindow.png","https://cdn.steemitimages.com/DQmY8zUyE5yo4JzD7cZ5AwMSZkGoNwoBDcXTfM7UfGk2UWy/browserwindow3.png","https://cdn.steemitimages.com/DQmeKgMT6d5EtxAkgiGx9qrdCcVJKtJEjLbLTqLeFGB9mKu/browserwindow4.png","https://cdn.steemitimages.com/DQmf1W38sYUXHAnNMJQNAmCmPMkv6oVCEnK5Hskrzam3aPM/Screenshot-40.png"],"links":["https://www.techfree.info/2016/10/25/electron-browserwindow/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23647474/Trx c79af2f691d695e07624fb41f1b58c770bcdf5f1
View Raw JSON Data
{
  "trx_id": "c79af2f691d695e07624fb41f1b58c770bcdf5f1",
  "block": 23647474,
  "trx_in_block": 58,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-26T02:00:03",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "browser-electron",
      "title": "របៀបបង្កើតកម្មវិធីមើលវេបសាយ Browser ជាមួយ Electron",
      "body": "![browserwindow.jpg](https://cdn.steemitimages.com/DQmSAgf3NdLi1tvvYH5BtaMyNB8UNaL8EtzjUWBpviJ5r8k/browserwindow.jpg)\n\nនៅក្នុង Electron គេអាចប្រើ BrowserWindow ដើម្បីបង្កើតកម្មវិធីមើលវេបសាយ Browser ។ អត្ថបទនេះនឹងបង្ហាញពីវិធីប្រើប្រាស់ BrowserWindow ។\n\nនៅក្នុង package.js សូមកំណត់ដូចខាងក្រោម៖\n\npackage.js\n\n![menu6.png](https://cdn.steemitimages.com/DQmXiDTQESSuXaKEhdBA8jLwF99K6VDsde5CyvTC5mbQWpy/menu6.png)\n\nmain.js\n\n![browserwindow.png](https://cdn.steemitimages.com/DQmXMYGA43chwvLQP12seWob2x4Wnb5msjsmvpraMgQDL8B/browserwindow.png)\n\nបន្ទាត់ទី6: គឺជាការកំណត់ឲ្យកម្មវិធីបង្ហាញគេទំព័រ techfree.info ។ អ្នកក៏អាចបង្ហាញ Webpage នៅក្នុង Folder បានផងដែរ ដោយជំនួសកូដខាងក្រោមនៅត្រង់បន្ទាត់ទី6 នេះ។\n\n```win.loadURL(`file://${__dirname}/index.html`)```\n\nindex.html (ករណីការបង្ហាញ Webpage ជាលក្ខណៈ Local)\n\n![browserwindow3.png](https://cdn.steemitimages.com/DQmY8zUyE5yo4JzD7cZ5AwMSZkGoNwoBDcXTfM7UfGk2UWy/browserwindow3.png)\n\n**លទ្ធផល**៖\n**ករណីបង្ហាញ index.html**\n\n![browserwindow4.png](https://cdn.steemitimages.com/DQmeKgMT6d5EtxAkgiGx9qrdCcVJKtJEjLbLTqLeFGB9mKu/browserwindow4.png)\n\n**ករណីបង្ហាញ techfree.info**\n\n![Screenshot-40.png](https://cdn.steemitimages.com/DQmf1W38sYUXHAnNMJQNAmCmPMkv6oVCEnK5Hskrzam3aPM/Screenshot-40.png)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/electron-browserwindow/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"browser\",\"electron\"],\"image\":[\"https://cdn.steemitimages.com/DQmSAgf3NdLi1tvvYH5BtaMyNB8UNaL8EtzjUWBpviJ5r8k/browserwindow.jpg\",\"https://cdn.steemitimages.com/DQmXiDTQESSuXaKEhdBA8jLwF99K6VDsde5CyvTC5mbQWpy/menu6.png\",\"https://cdn.steemitimages.com/DQmXMYGA43chwvLQP12seWob2x4Wnb5msjsmvpraMgQDL8B/browserwindow.png\",\"https://cdn.steemitimages.com/DQmY8zUyE5yo4JzD7cZ5AwMSZkGoNwoBDcXTfM7UfGk2UWy/browserwindow3.png\",\"https://cdn.steemitimages.com/DQmeKgMT6d5EtxAkgiGx9qrdCcVJKtJEjLbLTqLeFGB9mKu/browserwindow4.png\",\"https://cdn.steemitimages.com/DQmf1W38sYUXHAnNMJQNAmCmPMkv6oVCEnK5Hskrzam3aPM/Screenshot-40.png\"],\"links\":[\"https://www.techfree.info/2016/10/25/electron-browserwindow/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2018/06/25 08:36:33
parent authortechfree
parent permlinkvue-js-javscript-framework
authora-a-a
permlinkre-techfree-vue-js-javscript-framework-20180625t083628293z
title
body# Upvote this: https://steemit.com/free/@bible.com/4qcr2i
json metadata{"tags":["cambodia"],"links":["https://steemit.com/free/@bible.com/4qcr2i"],"app":"steemit/0.1"}
Transaction InfoBlock #23626617/Trx 04460d3973fbbf5c931844fdbf1fd674f1964786
View Raw JSON Data
{
  "trx_id": "04460d3973fbbf5c931844fdbf1fd674f1964786",
  "block": 23626617,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-25T08:36:33",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "vue-js-javscript-framework",
      "author": "a-a-a",
      "permlink": "re-techfree-vue-js-javscript-framework-20180625t083628293z",
      "title": "",
      "body": "# Upvote this: https://steemit.com/free/@bible.com/4qcr2i",
      "json_metadata": "{\"tags\":[\"cambodia\"],\"links\":[\"https://steemit.com/free/@bible.com/4qcr2i\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2018/06/25 08:35:48
parent author
parent permlinkcambodia
authortechfree
permlinkvue-js-javscript-framework
titleរបៀបប្រើប្រាស់ Vue.js Javscript Framework
body![feature_iamge_vue-js.jpg](https://cdn.steemitimages.com/DQmXLUhb9TeTt1iDWBSgDXvW3mqQmhkPNHQLX2UwaSZpdUg/feature_iamge_vue-js.jpg) អត្ថបទនេះនិយាយអំពីការប្រើប្រាស់ Vue.js គឺជាប្រភេទ Javascript framework ដែលមានការរីកជាចំរើនទៅលើផ្នែក (user Interface)។ Vue ត្រូវបានគេបង្កើតឡើងដើម្បីជាការអនុម័តបន្ថែម ហើយ Lirbray គឺផ្តោតទៅលើ ការបង្ហាញ Layer ហើយ វាមានភាពងាយស្រូលក្នុងការយកមករូមបញ្ចូលជាមួយគម្រោងផ្សេងទៀតឬ Libray ដែលមានស្រាប់។ នៅក្នុងអត្ថ បទនេះគឺជាអត្ថបទទី២ បន្ទាប់ពីអត្ថមុន លក្ខណៈពិសេសរបស់ Vue.js ធៀបទៅនឹង React និង Angular 2 ដែលបានណែនាំ អំពី Vue.js នេះ។ នៅក្នុងអត្ថបទនេះផងដែរ Techfree ធ្វើការបង្រៀនលោកអ្នកអំពីការប្រើ ប្រាស់ Vue.js ជាមួយឩទាហរណ៏ មួយចំនួនដូចខាងក្រោម៖ * **របៀបតំឡើង Vue.js** នៅចំនុចនេះ Techfree បង្រៀនអ្នកទាំងអស់គ្នាអំពីរបៀបដំឡើង Vue.js ហើយការតំឡើងវាមិនមានអ្វីស្មុស្មាញប៉ុន្មានទេ ដោយគ្រាន់តែលោកអ្នកចូលទៅកាន់គេហទំព័ររបស់ Vue.js ហើយធ្វើការទាញយក Libray នឹងធ្វើការអនុវត្តន៍ ដូចទៅនឹង Techfree ផ្តល់អោយដូចខាងក្រោម៖ ![download-vue-js.jpg](https://cdn.steemitimages.com/DQmergK753PuYvwtWtxWZiVwjSng4JWgQqfkrtbMUX9Vrbg/download-vue-js.jpg) បន្ទាប់ពីលោកអ្នកធ្វើការទាញយកមករួចរាល់ហើយសូមធ្វើការហៅ Class Libray យកមកប្រើ `<script src=”js/vue.js” charset=”utf-8″></script>` វាដូចទៅនឹងការហៅ Class Library ដែរ។ * **របៀបបង្ហាញ ទិន្នន័យ** ឩទាហរណ៍៖ លោកអ្នកធ្វើការបង្កើតmain.js រួចធ្វើបញ្ចូលកូដដូចខាងក្រោម។ ![vue-show-meassage.jpg](https://cdn.steemitimages.com/DQmdta3ng5jonceKAVNFPDdDiCA3WnXADh9dEc57voRNKW9/vue-show-meassage.jpg) នៅលើបន្ទាត់ទី២ គឺជា ហៅ Element ID ពី Template បន្ទាប់មកធ្វើការបង្កើតindex.html រួចធ្វើបញ្ចូលកូដដូចខាងក្រោម។ ![vue-show-meassage2.jpg](https://cdn.steemitimages.com/DQmcFe3gjbKEDCXYoXn6v9bpMPqdf2nSdmjw8wm3ZVDtrY5/vue-show-meassage2.jpg) នៅលើបន្ទាត់ទី 10 មានន័យថាធ្វើការហៅ Data ក្នុង main.js មកបង្ហាញ នៅលើ បន្ទាត់ទី 11 v-model =”message” ជា property របស់ vau.js មានន័យថាលោកធ្វើការកែនឹងលុបទៅលើ message បាន។ បន្ទាប់ពីលោកអ្នកធ្វើការបញ្ចាប់ការសរសេរកូដខាងលើ លទ្ធផលដូចខាងក្រោម៖ ![resutl_message.jpg](https://cdn.steemitimages.com/DQmdRZZR2KotKqRnm3GuoU8aaqJLazbiED7YzVCaSdA1mhA/resutl_message.jpg) * **របៀបបង្កើត Link** ការបង្កើត link នៅលើ vue.js កូដខាងក្រោមនឹងធ្វើការបង្រៀនលោកអ្នកអំពី Link នេះ។ ១) link ដោយប្រើ v-bind:href=”” ជាមួយ URL property ឩទាហរណ៍: កូដលើ index.html ![link2.jpg](https://cdn.steemitimages.com/DQmXW1PL6mwPMs7TV6VtKUWpVTz9RhrkAfU7DaVMzdpZmat/link2.jpg) កូដនៅលើ main.js ![code_link_on_vue.jpg](https://cdn.steemitimages.com/DQmecDH5KW1CD9TcBUrrp5NxsjCXDbudo3sNGrV7xaoqP4w/code_link_on_vue.jpg) បន្ទាប់ពីលោអ្នកធ្វើការ refresh page នឹងឃើញ Link To Techfree។ * **របៀបប្រើ Loop and if** លោកអ្នកធ្វើការបង្កើត main.js រួចធ្វើការសរសេកូដដូចខាងក្រោម៖ ![loop_vue-js.jpg](https://cdn.steemitimages.com/DQmTLbEKF4fR8P6aCrWJ8PR1b41JzV1Aj86xsq4k9sw2sDV/loop_vue-js.jpg) លោកអ្នកធ្វើការបង្កើត Array person ដែលមាន ៤ ធាតុ បន្ទាប់បង្កើត index.html រួចធ្វើការសសេរកូដដូចខាងក្រោម៖ ![loop_vue-2.jpg](https://cdn.steemitimages.com/DQmT4kkqn2kpM38V2W8RCbxP2LQAfDf8rHpuFT7JbaFV9oX/loop_vue-2.jpg) ![loop_vue3.jpg](https://cdn.steemitimages.com/DQmZ2LnA2zbfmjnhusnZobAiv9aCaVdjD2czqfQQ9tnrvSa/loop_vue3.jpg) នៅលើបន្ទាត់ទី 17 មាន property v-for គឺសំរាប់សំរាប់ Loop Person យកមកបង្ហាញ។ នៅលើបន្ទាត់ទី v-if គឺជាលក្ខខណ្ឌ if សំរាប់សិក្សានៅពេលលោកអ្នកធ្វើការ Check ហើយ Uncheckនៅលើ Checkbox។ នៅលើបន្ទាត់ទី26 v-model សំរាប់ធ្វើការហៅ person ដែលលោកអ្នកធ្វើការផ្តល់តំលៃអោយស្មើ True នៅក្នុង main.js នោះ * **របៀបប្រើប្រាស់ event នឹង Methods** នៅក្នុងចំនុចនេះ Techfree នឹង លើកយកឩទាហរណ៍ ដែលពាក់ពន្ធ័ទៅនឹង ការបញ្ចូលទិន្ន័យ ជាមួយ event Methods ដូចខាងក្រោម៖ លោកអ្នកធ្វើការបង្កើត File ថ្មីមួយ event.html រួចធ្វើការសរសេរកូដដូចខាងក្រោម ![event-vue-1.jpg](https://cdn.steemitimages.com/DQmdqKb3HMoKoG4RooP9JbHgDTaRNxg8aFPTZ6GVkzsLAcp/event-vue-1.jpg) ![event-vue-2.jpg](https://cdn.steemitimages.com/DQmQ7HTbTcVWxQh8uddffPH5eTuYQLuoW34MnPaEdVxe8i2/event-vue-2.jpg) នៅលើបន្ទាត់ទី 25: v-on:keyup.esc=”clearPerson” មានន័យថាលោកអ្នកធ្វើការលុបអក្សរចេញពី input ដោយប្រើ Key ESC ហើយ v-on:keyup.enter វិញមានន័យថាលោកអ្នកធ្វើការបញ្ចូនទិន្នន័យដោយប្រើ Key Enter បន្ទាប់មកលោកអ្នកធ្វើការសរសេរ File មួយទៀត event.js រួចសរសេរកូដដូចខាងក្រោម៖ ![event-vue-1.jpg](https://cdn.steemitimages.com/DQmdqKb3HMoKoG4RooP9JbHgDTaRNxg8aFPTZ6GVkzsLAcp/event-vue-1.jpg) ![event-vue-2.jpg](https://cdn.steemitimages.com/DQmQ7HTbTcVWxQh8uddffPH5eTuYQLuoW34MnPaEdVxe8i2/event-vue-2.jpg) នៅក្នុងMethods មាន Function ចំនួន ២ ហើយ Function : createNewperson គឺសំរាប់ បន្ថែមឈ្មោះថ្មីទៅលើ Persons ចំនែក function function : clearPerson សំរាប់ធ្វើការលុបអក្សរពេលដែលលោកអ្នកធ្វើការ ចុច ESC។ លទ្ធផលនឹងបង្ហាញដូចខាងក្រោម៖ ![Result_even_method-vue-js.jpg](https://cdn.steemitimages.com/DQmetDgQT4rKPCyLwZqsDh233bc8ok9da1dgt4qpCe7kuCK/Result_even_method-vue-js.jpg) [ប្រភពដើម](https://www.techfree.info/2016/10/25/how-to-use-vue-js-framework/)
json metadata{"tags":["cambodia","khmer","vue","js","javascript"],"image":["https://cdn.steemitimages.com/DQmXLUhb9TeTt1iDWBSgDXvW3mqQmhkPNHQLX2UwaSZpdUg/feature_iamge_vue-js.jpg","https://cdn.steemitimages.com/DQmergK753PuYvwtWtxWZiVwjSng4JWgQqfkrtbMUX9Vrbg/download-vue-js.jpg","https://cdn.steemitimages.com/DQmdta3ng5jonceKAVNFPDdDiCA3WnXADh9dEc57voRNKW9/vue-show-meassage.jpg","https://cdn.steemitimages.com/DQmcFe3gjbKEDCXYoXn6v9bpMPqdf2nSdmjw8wm3ZVDtrY5/vue-show-meassage2.jpg","https://cdn.steemitimages.com/DQmdRZZR2KotKqRnm3GuoU8aaqJLazbiED7YzVCaSdA1mhA/resutl_message.jpg","https://cdn.steemitimages.com/DQmXW1PL6mwPMs7TV6VtKUWpVTz9RhrkAfU7DaVMzdpZmat/link2.jpg","https://cdn.steemitimages.com/DQmecDH5KW1CD9TcBUrrp5NxsjCXDbudo3sNGrV7xaoqP4w/code_link_on_vue.jpg","https://cdn.steemitimages.com/DQmTLbEKF4fR8P6aCrWJ8PR1b41JzV1Aj86xsq4k9sw2sDV/loop_vue-js.jpg","https://cdn.steemitimages.com/DQmT4kkqn2kpM38V2W8RCbxP2LQAfDf8rHpuFT7JbaFV9oX/loop_vue-2.jpg","https://cdn.steemitimages.com/DQmZ2LnA2zbfmjnhusnZobAiv9aCaVdjD2czqfQQ9tnrvSa/loop_vue3.jpg","https://cdn.steemitimages.com/DQmdqKb3HMoKoG4RooP9JbHgDTaRNxg8aFPTZ6GVkzsLAcp/event-vue-1.jpg","https://cdn.steemitimages.com/DQmQ7HTbTcVWxQh8uddffPH5eTuYQLuoW34MnPaEdVxe8i2/event-vue-2.jpg","https://cdn.steemitimages.com/DQmetDgQT4rKPCyLwZqsDh233bc8ok9da1dgt4qpCe7kuCK/Result_even_method-vue-js.jpg"],"links":["https://www.techfree.info/2016/10/25/how-to-use-vue-js-framework/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23626602/Trx 5c6b0e1f97c1bca01c71597fb08904b9e368ddaa
View Raw JSON Data
{
  "trx_id": "5c6b0e1f97c1bca01c71597fb08904b9e368ddaa",
  "block": 23626602,
  "trx_in_block": 13,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-25T08:35:48",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "vue-js-javscript-framework",
      "title": "របៀបប្រើប្រាស់ Vue.js Javscript Framework",
      "body": "![feature_iamge_vue-js.jpg](https://cdn.steemitimages.com/DQmXLUhb9TeTt1iDWBSgDXvW3mqQmhkPNHQLX2UwaSZpdUg/feature_iamge_vue-js.jpg)\n\nអត្ថបទនេះនិយាយអំពីការប្រើប្រាស់ Vue.js គឺជាប្រភេទ Javascript framework ដែលមានការរីកជាចំរើនទៅលើផ្នែក    (user Interface)។ Vue ត្រូវបានគេបង្កើតឡើងដើម្បីជាការអនុម័តបន្ថែម ហើយ Lirbray គឺផ្តោតទៅលើ ការបង្ហាញ Layer ហើយ វាមានភាពងាយស្រូលក្នុងការយកមករូមបញ្ចូលជាមួយគម្រោងផ្សេងទៀតឬ Libray ដែលមានស្រាប់។\n\nនៅក្នុងអត្ថ បទនេះគឺជាអត្ថបទទី២ បន្ទាប់ពីអត្ថមុន លក្ខណៈពិសេសរបស់ Vue.js ធៀបទៅនឹង React និង Angular 2 ដែលបានណែនាំ អំពី Vue.js  នេះ។ នៅក្នុងអត្ថបទនេះផងដែរ Techfree ធ្វើការបង្រៀនលោកអ្នកអំពីការប្រើ ប្រាស់ Vue.js ជាមួយឩទាហរណ៏ មួយចំនួនដូចខាងក្រោម៖\n\n* **របៀបតំឡើង Vue.js**\n\nនៅចំនុចនេះ Techfree បង្រៀនអ្នកទាំងអស់គ្នាអំពីរបៀបដំឡើង Vue.js ហើយការតំឡើងវាមិនមានអ្វីស្មុស្មាញប៉ុន្មានទេ ដោយគ្រាន់តែលោកអ្នកចូលទៅកាន់គេហទំព័ររបស់ Vue.js ហើយធ្វើការទាញយក Libray នឹងធ្វើការអនុវត្តន៍ ដូចទៅនឹង  Techfree ផ្តល់អោយដូចខាងក្រោម៖\n\n![download-vue-js.jpg](https://cdn.steemitimages.com/DQmergK753PuYvwtWtxWZiVwjSng4JWgQqfkrtbMUX9Vrbg/download-vue-js.jpg)\n\nបន្ទាប់ពីលោកអ្នកធ្វើការទាញយកមករួចរាល់ហើយសូមធ្វើការហៅ Class Libray យកមកប្រើ `<script src=”js/vue.js” charset=”utf-8″></script>` វាដូចទៅនឹងការហៅ Class Library  ដែរ។\n\n* **របៀបបង្ហាញ ទិន្នន័យ**\n\nឩទាហរណ៍៖ លោកអ្នកធ្វើការបង្កើតmain.js រួចធ្វើបញ្ចូលកូដដូចខាងក្រោម។\n\n![vue-show-meassage.jpg](https://cdn.steemitimages.com/DQmdta3ng5jonceKAVNFPDdDiCA3WnXADh9dEc57voRNKW9/vue-show-meassage.jpg)\n\nនៅលើបន្ទាត់ទី២ គឺជា ហៅ Element ID ពី Template\nបន្ទាប់មកធ្វើការបង្កើតindex.html រួចធ្វើបញ្ចូលកូដដូចខាងក្រោម។\n\n![vue-show-meassage2.jpg](https://cdn.steemitimages.com/DQmcFe3gjbKEDCXYoXn6v9bpMPqdf2nSdmjw8wm3ZVDtrY5/vue-show-meassage2.jpg)\n\nនៅលើបន្ទាត់ទី 10 មានន័យថាធ្វើការហៅ Data ក្នុង main.js មកបង្ហាញ\n\nនៅលើ បន្ទាត់ទី 11 v-model =”message” ជា property របស់ vau.js មានន័យថាលោកធ្វើការកែនឹងលុបទៅលើ message បាន។\n\nបន្ទាប់ពីលោកអ្នកធ្វើការបញ្ចាប់ការសរសេរកូដខាងលើ លទ្ធផលដូចខាងក្រោម៖\n\n![resutl_message.jpg](https://cdn.steemitimages.com/DQmdRZZR2KotKqRnm3GuoU8aaqJLazbiED7YzVCaSdA1mhA/resutl_message.jpg)\n\n* **របៀបបង្កើត Link**\nការបង្កើត link នៅលើ vue.js  កូដខាងក្រោមនឹងធ្វើការបង្រៀនលោកអ្នកអំពី Link នេះ។\n\n១) link ដោយប្រើ v-bind:href=””  ជាមួយ URL property\n\nឩទាហរណ៍: កូដលើ index.html\n\n![link2.jpg](https://cdn.steemitimages.com/DQmXW1PL6mwPMs7TV6VtKUWpVTz9RhrkAfU7DaVMzdpZmat/link2.jpg)\n\nកូដនៅលើ main.js\n\n![code_link_on_vue.jpg](https://cdn.steemitimages.com/DQmecDH5KW1CD9TcBUrrp5NxsjCXDbudo3sNGrV7xaoqP4w/code_link_on_vue.jpg)\n\nបន្ទាប់ពីលោអ្នកធ្វើការ refresh page នឹងឃើញ Link To Techfree។\n\n* **របៀបប្រើ Loop  and if**\nលោកអ្នកធ្វើការបង្កើត main.js រួចធ្វើការសរសេកូដដូចខាងក្រោម៖\n\n![loop_vue-js.jpg](https://cdn.steemitimages.com/DQmTLbEKF4fR8P6aCrWJ8PR1b41JzV1Aj86xsq4k9sw2sDV/loop_vue-js.jpg)\n\nលោកអ្នកធ្វើការបង្កើត Array person ដែលមាន ៤ ធាតុ បន្ទាប់បង្កើត index.html រួចធ្វើការសសេរកូដដូចខាងក្រោម៖\n\n![loop_vue-2.jpg](https://cdn.steemitimages.com/DQmT4kkqn2kpM38V2W8RCbxP2LQAfDf8rHpuFT7JbaFV9oX/loop_vue-2.jpg)\n![loop_vue3.jpg](https://cdn.steemitimages.com/DQmZ2LnA2zbfmjnhusnZobAiv9aCaVdjD2czqfQQ9tnrvSa/loop_vue3.jpg)\n\nនៅលើបន្ទាត់ទី 17  មាន property  v-for គឺសំរាប់សំរាប់ Loop Person យកមកបង្ហាញ។\n\nនៅលើបន្ទាត់ទី v-if គឺជាលក្ខខណ្ឌ if សំរាប់សិក្សានៅពេលលោកអ្នកធ្វើការ Check ហើយ Uncheckនៅលើ Checkbox។\n\nនៅលើបន្ទាត់ទី26  v-model សំរាប់ធ្វើការហៅ person ដែលលោកអ្នកធ្វើការផ្តល់តំលៃអោយស្មើ True នៅក្នុង main.js នោះ\n\n* **របៀបប្រើប្រាស់ event នឹង Methods**\n\nនៅក្នុងចំនុចនេះ Techfree នឹង លើកយកឩទាហរណ៍ ដែលពាក់ពន្ធ័ទៅនឹង ការបញ្ចូលទិន្ន័យ ជាមួយ event Methods ដូចខាងក្រោម៖\n\nលោកអ្នកធ្វើការបង្កើត File ថ្មីមួយ event.html រួចធ្វើការសរសេរកូដដូចខាងក្រោម\n\n![event-vue-1.jpg](https://cdn.steemitimages.com/DQmdqKb3HMoKoG4RooP9JbHgDTaRNxg8aFPTZ6GVkzsLAcp/event-vue-1.jpg)\n![event-vue-2.jpg](https://cdn.steemitimages.com/DQmQ7HTbTcVWxQh8uddffPH5eTuYQLuoW34MnPaEdVxe8i2/event-vue-2.jpg)\n\nនៅលើបន្ទាត់ទី 25:  v-on:keyup.esc=”clearPerson” មានន័យថាលោកអ្នកធ្វើការលុបអក្សរចេញពី input ដោយប្រើ Key ESC ហើយ  v-on:keyup.enter វិញមានន័យថាលោកអ្នកធ្វើការបញ្ចូនទិន្នន័យដោយប្រើ Key Enter\n\nបន្ទាប់មកលោកអ្នកធ្វើការសរសេរ File មួយទៀត event.js រួចសរសេរកូដដូចខាងក្រោម៖\n\n![event-vue-1.jpg](https://cdn.steemitimages.com/DQmdqKb3HMoKoG4RooP9JbHgDTaRNxg8aFPTZ6GVkzsLAcp/event-vue-1.jpg)\n![event-vue-2.jpg](https://cdn.steemitimages.com/DQmQ7HTbTcVWxQh8uddffPH5eTuYQLuoW34MnPaEdVxe8i2/event-vue-2.jpg)\n\nនៅក្នុងMethods មាន Function ចំនួន ២ ហើយ Function : createNewperson គឺសំរាប់ បន្ថែមឈ្មោះថ្មីទៅលើ Persons\n\nចំនែក function function : clearPerson សំរាប់ធ្វើការលុបអក្សរពេលដែលលោកអ្នកធ្វើការ ចុច ESC។\n\nលទ្ធផលនឹងបង្ហាញដូចខាងក្រោម៖\n\n![Result_even_method-vue-js.jpg](https://cdn.steemitimages.com/DQmetDgQT4rKPCyLwZqsDh233bc8ok9da1dgt4qpCe7kuCK/Result_even_method-vue-js.jpg)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/how-to-use-vue-js-framework/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"vue\",\"js\",\"javascript\"],\"image\":[\"https://cdn.steemitimages.com/DQmXLUhb9TeTt1iDWBSgDXvW3mqQmhkPNHQLX2UwaSZpdUg/feature_iamge_vue-js.jpg\",\"https://cdn.steemitimages.com/DQmergK753PuYvwtWtxWZiVwjSng4JWgQqfkrtbMUX9Vrbg/download-vue-js.jpg\",\"https://cdn.steemitimages.com/DQmdta3ng5jonceKAVNFPDdDiCA3WnXADh9dEc57voRNKW9/vue-show-meassage.jpg\",\"https://cdn.steemitimages.com/DQmcFe3gjbKEDCXYoXn6v9bpMPqdf2nSdmjw8wm3ZVDtrY5/vue-show-meassage2.jpg\",\"https://cdn.steemitimages.com/DQmdRZZR2KotKqRnm3GuoU8aaqJLazbiED7YzVCaSdA1mhA/resutl_message.jpg\",\"https://cdn.steemitimages.com/DQmXW1PL6mwPMs7TV6VtKUWpVTz9RhrkAfU7DaVMzdpZmat/link2.jpg\",\"https://cdn.steemitimages.com/DQmecDH5KW1CD9TcBUrrp5NxsjCXDbudo3sNGrV7xaoqP4w/code_link_on_vue.jpg\",\"https://cdn.steemitimages.com/DQmTLbEKF4fR8P6aCrWJ8PR1b41JzV1Aj86xsq4k9sw2sDV/loop_vue-js.jpg\",\"https://cdn.steemitimages.com/DQmT4kkqn2kpM38V2W8RCbxP2LQAfDf8rHpuFT7JbaFV9oX/loop_vue-2.jpg\",\"https://cdn.steemitimages.com/DQmZ2LnA2zbfmjnhusnZobAiv9aCaVdjD2czqfQQ9tnrvSa/loop_vue3.jpg\",\"https://cdn.steemitimages.com/DQmdqKb3HMoKoG4RooP9JbHgDTaRNxg8aFPTZ6GVkzsLAcp/event-vue-1.jpg\",\"https://cdn.steemitimages.com/DQmQ7HTbTcVWxQh8uddffPH5eTuYQLuoW34MnPaEdVxe8i2/event-vue-2.jpg\",\"https://cdn.steemitimages.com/DQmetDgQT4rKPCyLwZqsDh233bc8ok9da1dgt4qpCe7kuCK/Result_even_method-vue-js.jpg\"],\"links\":[\"https://www.techfree.info/2016/10/25/how-to-use-vue-js-framework/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2018/06/20 08:56:39
parent authortechfree
parent permlinkmysql-database-django-framework
authorbible.com
permlinkre-techfree-mysql-database-django-framework-20180620t085638906z
title
bodyGet a free Bible for your phone, tablet, and computer. [bible.com](http://bible.com)
json metadata{"tags":["cambodia"],"links":["http://bible.com"],"app":"steemit/0.1"}
Transaction InfoBlock #23483049/Trx 3a03b50609e3ccd7ac8e7359e2147e26e8bb4870
View Raw JSON Data
{
  "trx_id": "3a03b50609e3ccd7ac8e7359e2147e26e8bb4870",
  "block": 23483049,
  "trx_in_block": 12,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-20T08:56:39",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "mysql-database-django-framework",
      "author": "bible.com",
      "permlink": "re-techfree-mysql-database-django-framework-20180620t085638906z",
      "title": "",
      "body": "Get a free Bible for your phone, tablet, and computer. [bible.com](http://bible.com)",
      "json_metadata": "{\"tags\":[\"cambodia\"],\"links\":[\"http://bible.com\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2018/06/20 08:56:24
parent author
parent permlinkcambodia
authortechfree
permlinkmysql-database-django-framework
titleរបៀបតភ្ជាប់ MySQL Database ជាមួយ Django Framework
body![django_mysql.png](https://cdn.steemitimages.com/DQmUrCwiVoUWRh3bav4YcXnxYu1GitENVgxoXmJ2w4w8xh8/django_mysql.png) កាលពីអត្ថបទមុនយើងបានដឹងមកហើយ [Django គឺជាអ្វី](https://www.techfree.info/2016/10/21/django-framework/)? ហើយក៏ដឹងពីរបៀបបង្កើត Project ថ្មីផងដែល។ នៅពេលដែលយើងបង្កើត Project ថ្មីមួយជាមួយ Django នោះគឺវាបានបង្កើត MySQLite Database ដោយស្វ័យប្រវត្តិ។ ដូច្នោះហើយអត្ថបទនេះ នឹងបង្ហាញអ្នកអំពី របៀបតភ្ជាប់ MySQL Database វិញម្តង។ មុននឹងចាប់ផ្តើមធ្វើការតភ្ជាប់ MySQL Database យើងត្រូវ៖ * ដំឡើងនូវ “pymysql” សូមដំណើរការ command “pip install pymysql” * ដំឡើងនូវ “mysqlclient” សូម [ទាញយក/Download](https://pypi.python.org/pypi/mysqlclient) ឧទាហរណ៍៖ ការដំឡើងនូវ “pymysql” ![install_pymysql.jpg](https://cdn.steemitimages.com/DQmXspUPmZgKD7RWsrGXNM72xBJv9kTN7bzq4MTdWbbBpJC/install_pymysql.jpg) នៅពេលដែលអ្នកដំណើរការ command ខាងលើចប់ សូមដំណើរការ command “import pymysql” ប្រសិនបើអត់មានបញ្ហាអ្វីនោះ pymysql ដណើរការហើយ។ ![run_pymysql.jpg](https://cdn.steemitimages.com/DQmXd5nGhqoJXc8iTSydohuQVnYABGdbCoMCBwrgPkJAwGx/run_pymysql.jpg) ឧទាហរណ៍៖ ការដំឡើងនូវ “mysqlclient” ពេលដែលអ្នក ទាញយកមកហើយសូមដំណើរការ command ចូលទៅកាន់ Folder ដែលអ្នករក្សាទុក្ខ File “mysqlclient” នោះរួចវាយនូវ command “pip install name file mysqlclient“។ សូមមើលរូបភាពខាងក្រោម៖ ![install_mysqlclient.jpg](https://cdn.steemitimages.com/DQmbmZfc4iYugk3raaLQ558JLUZQYeScBbNZSZsdvaNxegz/install_mysqlclient.jpg) បន្ទាប់មកអ្នកត្រូវបង្កើត Database ថ្មីមួយ៖ ![db_blank.jpg](https://cdn.steemitimages.com/DQmTjwhM9kKr3TTh1vsgcvAVGtxonfZeFrSR8X2i2VFsRQB/db_blank.jpg) ![change_host_db.jpg](https://cdn.steemitimages.com/DQmYznxWbaActGUE8VDVq7P3RYEvDEC8miD9HgLkQ7pai1e/change_host_db.jpg) សូមបើកកូដរបស់អ្នកបន្ទាប់មកធ្វើការកែរប្រែនៅ File “settings.py” ដែលអ្នកបានឃើញកូដខាងលើនេះ។ នៅបន្ទាត់ 78, 79 ដែល TECHFREE បានបិតមិនអោយដំណើរការនោះ គឺជាកូដដែលតភ្ជាប់ជាមួយ MySQLite Database។ ដូច្នោះអ្នកត្រូវសរសេរកូដដើម្បីតភ្ជាប់ ជាមួយ MySQL database ដូចខាងលើនេះ។ សូមវាយ command ដើម្បីដំណើការ Server “python manage.py runserver” ![django_work-1.jpg](https://cdn.steemitimages.com/DQmQGJVmekL6AYeRe7d4AxfkSSrPpZFZQ8QAqf2qY7rvzyQ/django_work-1.jpg) បន្ទាប់ពីអ្នកបានដំណើរការ Server រួចយើងនឹងបាន Table មួយឈ្មោះ “django_migrations”។ ![mysql_table.jpg](https://cdn.steemitimages.com/DQmd1KuTaTzsY6k9X1JC5W7iTr3wKxYfEdAQYCfsF3npxEf/mysql_table.jpg) [ប្រភពដើម](https://www.techfree.info/2016/10/25/mysql-database-django-framework/)
json metadata{"tags":["cambodia","khmer","django","mysql","database"],"image":["https://cdn.steemitimages.com/DQmUrCwiVoUWRh3bav4YcXnxYu1GitENVgxoXmJ2w4w8xh8/django_mysql.png","https://cdn.steemitimages.com/DQmXspUPmZgKD7RWsrGXNM72xBJv9kTN7bzq4MTdWbbBpJC/install_pymysql.jpg","https://cdn.steemitimages.com/DQmXd5nGhqoJXc8iTSydohuQVnYABGdbCoMCBwrgPkJAwGx/run_pymysql.jpg","https://cdn.steemitimages.com/DQmbmZfc4iYugk3raaLQ558JLUZQYeScBbNZSZsdvaNxegz/install_mysqlclient.jpg","https://cdn.steemitimages.com/DQmTjwhM9kKr3TTh1vsgcvAVGtxonfZeFrSR8X2i2VFsRQB/db_blank.jpg","https://cdn.steemitimages.com/DQmYznxWbaActGUE8VDVq7P3RYEvDEC8miD9HgLkQ7pai1e/change_host_db.jpg","https://cdn.steemitimages.com/DQmQGJVmekL6AYeRe7d4AxfkSSrPpZFZQ8QAqf2qY7rvzyQ/django_work-1.jpg","https://cdn.steemitimages.com/DQmd1KuTaTzsY6k9X1JC5W7iTr3wKxYfEdAQYCfsF3npxEf/mysql_table.jpg"],"links":["https://www.techfree.info/2016/10/21/django-framework/","https://pypi.python.org/pypi/mysqlclient","https://www.techfree.info/2016/10/25/mysql-database-django-framework/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23483044/Trx e6fdf24303049604a9c24a46f23793a3f43619a5
View Raw JSON Data
{
  "trx_id": "e6fdf24303049604a9c24a46f23793a3f43619a5",
  "block": 23483044,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-20T08:56:24",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "mysql-database-django-framework",
      "title": "របៀបតភ្ជាប់ MySQL Database ជាមួយ Django Framework",
      "body": "![django_mysql.png](https://cdn.steemitimages.com/DQmUrCwiVoUWRh3bav4YcXnxYu1GitENVgxoXmJ2w4w8xh8/django_mysql.png)\n\nកាលពីអត្ថបទមុនយើងបានដឹងមកហើយ [Django គឺជាអ្វី](https://www.techfree.info/2016/10/21/django-framework/)? ហើយក៏ដឹងពីរបៀបបង្កើត Project ថ្មីផងដែល។ នៅពេលដែលយើងបង្កើត Project ថ្មីមួយជាមួយ Django នោះគឺវាបានបង្កើត MySQLite Database ដោយស្វ័យប្រវត្តិ។ ដូច្នោះហើយអត្ថបទនេះ នឹងបង្ហាញអ្នកអំពី របៀបតភ្ជាប់ MySQL Database វិញម្តង។\n\n\nមុននឹងចាប់ផ្តើមធ្វើការតភ្ជាប់ MySQL Database យើងត្រូវ៖\n\n* ដំឡើងនូវ “pymysql” សូមដំណើរការ command “pip install pymysql”\n* ដំឡើងនូវ “mysqlclient” សូម [ទាញយក/Download](https://pypi.python.org/pypi/mysqlclient)\n\nឧទាហរណ៍៖ ការដំឡើងនូវ “pymysql”\n\n![install_pymysql.jpg](https://cdn.steemitimages.com/DQmXspUPmZgKD7RWsrGXNM72xBJv9kTN7bzq4MTdWbbBpJC/install_pymysql.jpg)\n\nនៅពេលដែលអ្នកដំណើរការ command ខាងលើចប់ សូមដំណើរការ command “import pymysql” ប្រសិនបើអត់មានបញ្ហាអ្វីនោះ pymysql ដណើរការហើយ។\n\n![run_pymysql.jpg](https://cdn.steemitimages.com/DQmXd5nGhqoJXc8iTSydohuQVnYABGdbCoMCBwrgPkJAwGx/run_pymysql.jpg)\n\nឧទាហរណ៍៖ ការដំឡើងនូវ “mysqlclient”\n\nពេលដែលអ្នក ទាញយកមកហើយសូមដំណើរការ command ចូលទៅកាន់ Folder ដែលអ្នករក្សាទុក្ខ File “mysqlclient” នោះរួចវាយនូវ command “pip install name file mysqlclient“។ សូមមើលរូបភាពខាងក្រោម៖\n\n![install_mysqlclient.jpg](https://cdn.steemitimages.com/DQmbmZfc4iYugk3raaLQ558JLUZQYeScBbNZSZsdvaNxegz/install_mysqlclient.jpg)\n\nបន្ទាប់មកអ្នកត្រូវបង្កើត Database ថ្មីមួយ៖\n\n![db_blank.jpg](https://cdn.steemitimages.com/DQmTjwhM9kKr3TTh1vsgcvAVGtxonfZeFrSR8X2i2VFsRQB/db_blank.jpg)\n\n![change_host_db.jpg](https://cdn.steemitimages.com/DQmYznxWbaActGUE8VDVq7P3RYEvDEC8miD9HgLkQ7pai1e/change_host_db.jpg)\n\nសូមបើកកូដរបស់អ្នកបន្ទាប់មកធ្វើការកែរប្រែនៅ File “settings.py” ដែលអ្នកបានឃើញកូដខាងលើនេះ។ នៅបន្ទាត់ 78, 79 ដែល TECHFREE បានបិតមិនអោយដំណើរការនោះ គឺជាកូដដែលតភ្ជាប់ជាមួយ MySQLite Database។ ដូច្នោះអ្នកត្រូវសរសេរកូដដើម្បីតភ្ជាប់ ជាមួយ MySQL database ដូចខាងលើនេះ។\n\nសូមវាយ command ដើម្បីដំណើការ Server “python manage.py runserver”\n\n![django_work-1.jpg](https://cdn.steemitimages.com/DQmQGJVmekL6AYeRe7d4AxfkSSrPpZFZQ8QAqf2qY7rvzyQ/django_work-1.jpg)\n\nបន្ទាប់ពីអ្នកបានដំណើរការ Server រួចយើងនឹងបាន Table មួយឈ្មោះ “django_migrations”។\n\n![mysql_table.jpg](https://cdn.steemitimages.com/DQmd1KuTaTzsY6k9X1JC5W7iTr3wKxYfEdAQYCfsF3npxEf/mysql_table.jpg)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/25/mysql-database-django-framework/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"django\",\"mysql\",\"database\"],\"image\":[\"https://cdn.steemitimages.com/DQmUrCwiVoUWRh3bav4YcXnxYu1GitENVgxoXmJ2w4w8xh8/django_mysql.png\",\"https://cdn.steemitimages.com/DQmXspUPmZgKD7RWsrGXNM72xBJv9kTN7bzq4MTdWbbBpJC/install_pymysql.jpg\",\"https://cdn.steemitimages.com/DQmXd5nGhqoJXc8iTSydohuQVnYABGdbCoMCBwrgPkJAwGx/run_pymysql.jpg\",\"https://cdn.steemitimages.com/DQmbmZfc4iYugk3raaLQ558JLUZQYeScBbNZSZsdvaNxegz/install_mysqlclient.jpg\",\"https://cdn.steemitimages.com/DQmTjwhM9kKr3TTh1vsgcvAVGtxonfZeFrSR8X2i2VFsRQB/db_blank.jpg\",\"https://cdn.steemitimages.com/DQmYznxWbaActGUE8VDVq7P3RYEvDEC8miD9HgLkQ7pai1e/change_host_db.jpg\",\"https://cdn.steemitimages.com/DQmQGJVmekL6AYeRe7d4AxfkSSrPpZFZQ8QAqf2qY7rvzyQ/django_work-1.jpg\",\"https://cdn.steemitimages.com/DQmd1KuTaTzsY6k9X1JC5W7iTr3wKxYfEdAQYCfsF3npxEf/mysql_table.jpg\"],\"links\":[\"https://www.techfree.info/2016/10/21/django-framework/\",\"https://pypi.python.org/pypi/mysqlclient\",\"https://www.techfree.info/2016/10/25/mysql-database-django-framework/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: string-ruby
2018/06/15 09:56:09
parent author
parent permlinkcambodia
authortechfree
permlinkstring-ruby
titleស្វែងយល់ពី String នៅក្នុងភាសា Ruby
body![ruby-string.jpg](https://cdn.steemitimages.com/DQmVXizpoceeJoGaMR8KK1hRGLhjD94bfdCCHJbQozSjSXt/ruby-string.jpg) Ruby ដំណើរការជាមួយ strings ដូចទិន្នន័យជាលេខដែរ។ ខ្សែអក្សរ (string) អាចប្រើជាមួយ double-quoted ( “… “) ឬ single-quoted ( ‘… ‘) ។ Double-quoted ( “… “) ឬ single-quoted ( ‘… ‘) មានផលប៉ះពាល់ផ្សេងគ្នានៅក្នុងករណីមួយចំនួន។ ខ្សែអក្សរ (string) double-quoted អនុញ្ញាតឱ្យតួអក្សរគេចផុតពីសញ្ញាទ្រេតឆ្វេង (backslash) ឈានមុខគេនិងការវាយតម្លៃនៃកន្សោមដែលបានប្រើសញ្ញា # {} ។ ខ្សែអក្សរ (string) single-quoted មិនធ្វើការបកប្រែទេ អ្វីដែលអ្នកឃើញគឺជាអ្វីដែលអ្នកទទួលបាន។ ១) អាចប្រើ double-quoted ( “… “) ឬ single-quoted ( ‘… ‘) ប៉ុន្តែ ( ‘… ‘) គឺមានប្រសិទ្ធភាពជាង ``` puts "Hello World" puts 'Hello World' ``` លទ្ធផល៖ ``` Hello World Hello World ``` ២) ភ្ជាប់អក្សរ (string) បន្តគ្នា `puts 'I like' + ' Ruby'` លទ្ធផល៖ `I like Ruby` ៣) វិធីប្រើ ' នៅក្នុងstring `puts 'It\'s my Ruby'` លទ្ធផល៖ `It's my Ruby` ៤) ភ្ជាប់អក្សរ (string) បីដង `puts 'Hello' * 3` លទ្ធផល៖ `HelloHelloHello` ៥) កំណត់អថេរ ``` PI = 3.1416 puts PI ``` លទ្ធផល៖ `3.1416` ឧទាហរណ៍ខាងក្រោមគឺយើងប្រើការភ្ជាប់អក្សរ (string) ដើម្បីទៅជាពាក្យ៖ ![ruby-string1.png](https://cdn.steemitimages.com/DQmfVnhnGHkMCdf1p5FL37zuAgxMpNsdbepAQp7nt29T5Xp/ruby-string1.png) យើងបានលទ្ធផលដូចខាងក្រោម៖ ![ruby-string.png](https://cdn.steemitimages.com/DQmdVGaXLbHZ6RNX4C3tSzMRFNWXN5qjbm1F3TigHeiijwi/ruby-string.png) [ប្រភពដើម](https://www.techfree.info/2016/10/24/string-with-ruby/)
json metadata{"tags":["cambodia","khmer","ruby","string"],"image":["https://cdn.steemitimages.com/DQmVXizpoceeJoGaMR8KK1hRGLhjD94bfdCCHJbQozSjSXt/ruby-string.jpg","https://cdn.steemitimages.com/DQmfVnhnGHkMCdf1p5FL37zuAgxMpNsdbepAQp7nt29T5Xp/ruby-string1.png","https://cdn.steemitimages.com/DQmdVGaXLbHZ6RNX4C3tSzMRFNWXN5qjbm1F3TigHeiijwi/ruby-string.png"],"links":["https://www.techfree.info/2016/10/24/string-with-ruby/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23340285/Trx 4a81c76c4f5cad2394fb59318d0318fc7b3194f3
View Raw JSON Data
{
  "trx_id": "4a81c76c4f5cad2394fb59318d0318fc7b3194f3",
  "block": 23340285,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-15T09:56:09",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "string-ruby",
      "title": "ស្វែងយល់ពី String នៅក្នុងភាសា Ruby",
      "body": "![ruby-string.jpg](https://cdn.steemitimages.com/DQmVXizpoceeJoGaMR8KK1hRGLhjD94bfdCCHJbQozSjSXt/ruby-string.jpg)\n\nRuby ដំណើរការជាមួយ strings ដូចទិន្នន័យជាលេខដែរ។ ខ្សែអក្សរ (string) អាចប្រើជាមួយ double-quoted  ( “… “) ឬ single-quoted ( ‘… ‘) ។\n\nDouble-quoted  ( “… “) ឬ single-quoted ( ‘… ‘) មានផលប៉ះពាល់ផ្សេងគ្នានៅក្នុងករណីមួយចំនួន។ ខ្សែអក្សរ (string) double-quoted អនុញ្ញាតឱ្យតួអក្សរគេចផុតពីសញ្ញាទ្រេតឆ្វេង (backslash) ឈានមុខគេនិងការវាយតម្លៃនៃកន្សោមដែលបានប្រើសញ្ញា # {} ។ ខ្សែអក្សរ (string) single-quoted មិនធ្វើការបកប្រែទេ អ្វីដែលអ្នកឃើញគឺជាអ្វីដែលអ្នកទទួលបាន។\n\n១) អាចប្រើ double-quoted  ( “… “) ឬ single-quoted ( ‘… ‘) ប៉ុន្តែ ( ‘… ‘) គឺមានប្រសិទ្ធភាពជាង\n```\nputs \"Hello World\"\n\nputs 'Hello World'\n```\n\nលទ្ធផល៖\n```\nHello World\n\nHello World\n```\n\n\n២) ភ្ជាប់អក្សរ (string) បន្តគ្នា\n\n`puts 'I like' + ' Ruby'`\n\nលទ្ធផល៖\n\n`I like Ruby`\n\n\n៣) វិធីប្រើ ' នៅក្នុងstring\n\n`puts 'It\\'s my Ruby'`\n\nលទ្ធផល៖\n\n`It's my Ruby`\n\n៤) ភ្ជាប់អក្សរ (string) បីដង\n\n`puts 'Hello' * 3`\n\nលទ្ធផល៖\n\n`HelloHelloHello`\n\n៥) កំណត់អថេរ\n```\nPI = 3.1416\nputs PI\n```\n\nលទ្ធផល៖\n\n`3.1416`\n\nឧទាហរណ៍ខាងក្រោមគឺយើងប្រើការភ្ជាប់អក្សរ (string) ដើម្បីទៅជាពាក្យ៖\n\n![ruby-string1.png](https://cdn.steemitimages.com/DQmfVnhnGHkMCdf1p5FL37zuAgxMpNsdbepAQp7nt29T5Xp/ruby-string1.png)\n\nយើងបានលទ្ធផលដូចខាងក្រោម៖\n\n![ruby-string.png](https://cdn.steemitimages.com/DQmdVGaXLbHZ6RNX4C3tSzMRFNWXN5qjbm1F3TigHeiijwi/ruby-string.png)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/24/string-with-ruby/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"ruby\",\"string\"],\"image\":[\"https://cdn.steemitimages.com/DQmVXizpoceeJoGaMR8KK1hRGLhjD94bfdCCHJbQozSjSXt/ruby-string.jpg\",\"https://cdn.steemitimages.com/DQmfVnhnGHkMCdf1p5FL37zuAgxMpNsdbepAQp7nt29T5Xp/ruby-string1.png\",\"https://cdn.steemitimages.com/DQmdVGaXLbHZ6RNX4C3tSzMRFNWXN5qjbm1F3TigHeiijwi/ruby-string.png\"],\"links\":[\"https://www.techfree.info/2016/10/24/string-with-ruby/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: modal-bootstrap
2018/06/13 09:24:33
parent author
parent permlinkcambodia
authortechfree
permlinkmodal-bootstrap
titleរបៀបប្រើប្រាស់ Modal ក្នុង Bootstrap
body![modal_edit23-1.png](https://cdn.steemitimages.com/DQmNtMMEnv1w6Fmu9Sx2k4d8GQJv7qruSHn4UMUAaLaPYuP/modal_edit23-1.png) Bootstrap គឺជាសំនុំឯកសារដែលបានផ្តល់អោយមានភាពងាយស្រួលក្នុងការបង្កើត និង រចនាគេហទំព័របានលឿន។វារួមមាន HTML, CSS ហើយមានសមាសភាពមួយចំនួនដូចជា Forms, Buttons, Tables, Navigations, Dropdowns, Alerts, Modals, Tabs, Accordion, Carousel … និង JavaScript ដែលធ្វើអោយគេហទំព័ររបស់យើងកាន់តែមានភាពទាក់ទាញ។ អត្ថបទនេះ Techfree នឹងលើកយកមកបង្ហាញនូវរបៀបប្រើប្រាស់ Modal ក្នុង Bootstrap៖ ១) ជាដំបូងអ្នកត្រូវយល់ដឹងពីរបៀបប្រើប្រាស់ Bootstrap ឧទាហរណ៍:អត្ថបទមានស្រាប់ ២) របៀបប្រើប្រាស់ Modal ក្នុង Bootstrap – Modal Static គឺពេលដែលបើកគេហទំព័រវានឹងធ្វើការ ឧទាហរណ៍: ![1_x_modal.png](https://cdn.steemitimages.com/DQmVF8vb2XY4wkM9pieTunwA95mxAGUVzhhQg5nmhT9zHQi/1_x_modal.png) ![2_2_x_modal.png](https://cdn.steemitimages.com/DQmNSXiUn3Scnd3T6kfzm1zHC7saWTAcubuYdBnLwE4dBZv/2_2_x_modal.png) * បន្ទាត់ទី 15 ដល់ 19 ជា Javascript សំរាប់អោយ Modal ដំណើរការ លទ្ធផល ![r_staticModal.png](https://cdn.steemitimages.com/DQmagbyE9vP4PxmvZZnezQZRpf8xqRPVcSg7X5qU5NvVRux/r_staticModal.png) – របៀបប្រើប្រាស់អោយ Modal ដំណើរការដោយចុចលើ Button ណាមួយ ឧទាហរណ៍: ![1_modal_click.png](https://cdn.steemitimages.com/DQmV6zasHpcevPj1cAnBEzBboa67rubEbekYQ8EbwKskYBk/1_modal_click.png) ![click_Modal.png](https://cdn.steemitimages.com/DQmbbM7EfVTeNNHuv7deCdV8XHNQi71nXsaxnwroKUUavQw/click_Modal.png) លទ្ធផល ![r_Modal_click.png](https://cdn.steemitimages.com/DQmWhm9AmQG8c1TWPiBJ77UfUXd1HjtszXDJKs2v2GvgQtn/r_Modal_click.png) – របៀបប្រើប្រាស់ Methods Modal(options) * backdrop: ‘static’ គឺប្រើសំរាប់អោយ Modal នៅជាប់គេហទំព័រ លុះត្រាតែចុចលើ Button ណាមួយដែលមានសិទ្ធិអាចបិទ Modal បាន ឧទាហរណ៍: ![1_option.png](https://cdn.steemitimages.com/DQmWv9No4qPmkN5vaGPjyBGohrFotkAxJe9eBGVtP4fWApd/1_option.png) ![2_option.png](https://cdn.steemitimages.com/DQmaoDR2pxUXr7JDsGhkPbBS719mS7QxepBZM9C23NVgWFk/2_option.png) ![3_option.png](https://cdn.steemitimages.com/DQmeDQ9xFRU1eLoyd85bJBc5mJtbZyu4qsdWjtvBJ9F9b7g/3_option.png) លទ្ធផល ![r_option.png](https://cdn.steemitimages.com/DQmZAVcJiwjLKsd8CrTVxkM48QPgkm3VZEoBnHQzvRK6W6H/r_option.png) * keyboard: false គឺសំរាប់បិទសិទ្ធិ keyboard មិនអោយដំណើរការជាមួយ Modal ឧទាហរណ៍: ![1_kb-1.png](https://cdn.steemitimages.com/DQmdAiokewktesLaZqniC6dudH9x2tsBU1Nwpp1cdTeURfZ/1_kb-1.png) ![2_kb.png](https://cdn.steemitimages.com/DQmVhUXPHeQJAb5KbdxfyuF5SjWPfxaBdi3RmWGDZS6e7j7/2_kb.png) ![3_kb.png](https://cdn.steemitimages.com/DQmNMxxYfGTd2NWd6HrDDVU8o1Wf5MKdXK7NnyRwY3RWDgX/3_kb.png) លទ្ធផល ![r_kb.png](https://cdn.steemitimages.com/DQmZWSsdjkyo9VZk5F4S21ZaLMzj3dZDazQsfifo5wwMCYR/r_kb.png) [ប្រភពដើម](https://www.techfree.info/2016/10/24/how-to-use-modal-in-bootstrap/)
json metadata{"tags":["cambodia","khmer","modal","bootstrap"],"image":["https://cdn.steemitimages.com/DQmNtMMEnv1w6Fmu9Sx2k4d8GQJv7qruSHn4UMUAaLaPYuP/modal_edit23-1.png","https://cdn.steemitimages.com/DQmVF8vb2XY4wkM9pieTunwA95mxAGUVzhhQg5nmhT9zHQi/1_x_modal.png","https://cdn.steemitimages.com/DQmNSXiUn3Scnd3T6kfzm1zHC7saWTAcubuYdBnLwE4dBZv/2_2_x_modal.png","https://cdn.steemitimages.com/DQmagbyE9vP4PxmvZZnezQZRpf8xqRPVcSg7X5qU5NvVRux/r_staticModal.png","https://cdn.steemitimages.com/DQmV6zasHpcevPj1cAnBEzBboa67rubEbekYQ8EbwKskYBk/1_modal_click.png","https://cdn.steemitimages.com/DQmbbM7EfVTeNNHuv7deCdV8XHNQi71nXsaxnwroKUUavQw/click_Modal.png","https://cdn.steemitimages.com/DQmWhm9AmQG8c1TWPiBJ77UfUXd1HjtszXDJKs2v2GvgQtn/r_Modal_click.png","https://cdn.steemitimages.com/DQmWv9No4qPmkN5vaGPjyBGohrFotkAxJe9eBGVtP4fWApd/1_option.png","https://cdn.steemitimages.com/DQmaoDR2pxUXr7JDsGhkPbBS719mS7QxepBZM9C23NVgWFk/2_option.png","https://cdn.steemitimages.com/DQmeDQ9xFRU1eLoyd85bJBc5mJtbZyu4qsdWjtvBJ9F9b7g/3_option.png","https://cdn.steemitimages.com/DQmZAVcJiwjLKsd8CrTVxkM48QPgkm3VZEoBnHQzvRK6W6H/r_option.png","https://cdn.steemitimages.com/DQmdAiokewktesLaZqniC6dudH9x2tsBU1Nwpp1cdTeURfZ/1_kb-1.png","https://cdn.steemitimages.com/DQmVhUXPHeQJAb5KbdxfyuF5SjWPfxaBdi3RmWGDZS6e7j7/2_kb.png","https://cdn.steemitimages.com/DQmNMxxYfGTd2NWd6HrDDVU8o1Wf5MKdXK7NnyRwY3RWDgX/3_kb.png","https://cdn.steemitimages.com/DQmZWSsdjkyo9VZk5F4S21ZaLMzj3dZDazQsfifo5wwMCYR/r_kb.png"],"links":["https://www.techfree.info/2016/10/24/how-to-use-modal-in-bootstrap/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23282066/Trx f5b216b3ce318b2beb700d05d25338d008c14427
View Raw JSON Data
{
  "trx_id": "f5b216b3ce318b2beb700d05d25338d008c14427",
  "block": 23282066,
  "trx_in_block": 25,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-13T09:24:33",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "modal-bootstrap",
      "title": "របៀបប្រើប្រាស់ Modal ក្នុង Bootstrap",
      "body": "![modal_edit23-1.png](https://cdn.steemitimages.com/DQmNtMMEnv1w6Fmu9Sx2k4d8GQJv7qruSHn4UMUAaLaPYuP/modal_edit23-1.png)\n\nBootstrap គឺជាសំនុំឯកសារដែលបានផ្តល់អោយមានភាពងាយស្រួលក្នុងការបង្កើត និង រចនាគេហទំព័របានលឿន។វារួមមាន HTML, CSS ហើយមានសមាសភាពមួយចំនួនដូចជា Forms, Buttons, Tables, Navigations, Dropdowns, Alerts, Modals, Tabs, Accordion, Carousel … និង JavaScript ដែលធ្វើអោយគេហទំព័ររបស់យើងកាន់តែមានភាពទាក់ទាញ។ អត្ថបទនេះ Techfree នឹងលើកយកមកបង្ហាញនូវរបៀបប្រើប្រាស់ Modal ក្នុង Bootstrap៖\n\n\n១) ជាដំបូងអ្នកត្រូវយល់ដឹងពីរបៀបប្រើប្រាស់ Bootstrap\n\nឧទាហរណ៍:អត្ថបទមានស្រាប់\n\n២) របៀបប្រើប្រាស់ Modal ក្នុង Bootstrap\n\n–  Modal Static គឺពេលដែលបើកគេហទំព័រវានឹងធ្វើការ\n\nឧទាហរណ៍:\n\n![1_x_modal.png](https://cdn.steemitimages.com/DQmVF8vb2XY4wkM9pieTunwA95mxAGUVzhhQg5nmhT9zHQi/1_x_modal.png)\n\n![2_2_x_modal.png](https://cdn.steemitimages.com/DQmNSXiUn3Scnd3T6kfzm1zHC7saWTAcubuYdBnLwE4dBZv/2_2_x_modal.png)\n\n* បន្ទាត់ទី 15 ដល់ 19 ជា Javascript សំរាប់អោយ Modal ដំណើរការ\n\nលទ្ធផល\n\n![r_staticModal.png](https://cdn.steemitimages.com/DQmagbyE9vP4PxmvZZnezQZRpf8xqRPVcSg7X5qU5NvVRux/r_staticModal.png)\n\n– របៀបប្រើប្រាស់អោយ Modal ដំណើរការដោយចុចលើ Button ណាមួយ\n\nឧទាហរណ៍:\n\n![1_modal_click.png](https://cdn.steemitimages.com/DQmV6zasHpcevPj1cAnBEzBboa67rubEbekYQ8EbwKskYBk/1_modal_click.png)\n\n![click_Modal.png](https://cdn.steemitimages.com/DQmbbM7EfVTeNNHuv7deCdV8XHNQi71nXsaxnwroKUUavQw/click_Modal.png)\n\nលទ្ធផល\n\n![r_Modal_click.png](https://cdn.steemitimages.com/DQmWhm9AmQG8c1TWPiBJ77UfUXd1HjtszXDJKs2v2GvgQtn/r_Modal_click.png)\n\n– របៀបប្រើប្រាស់ Methods Modal(options)\n\n* backdrop: ‘static’ គឺប្រើសំរាប់អោយ Modal នៅជាប់គេហទំព័រ លុះត្រាតែចុចលើ Button  ណាមួយដែលមានសិទ្ធិអាចបិទ Modal បាន\n\nឧទាហរណ៍:\n\n![1_option.png](https://cdn.steemitimages.com/DQmWv9No4qPmkN5vaGPjyBGohrFotkAxJe9eBGVtP4fWApd/1_option.png)\n\n![2_option.png](https://cdn.steemitimages.com/DQmaoDR2pxUXr7JDsGhkPbBS719mS7QxepBZM9C23NVgWFk/2_option.png)\n\n![3_option.png](https://cdn.steemitimages.com/DQmeDQ9xFRU1eLoyd85bJBc5mJtbZyu4qsdWjtvBJ9F9b7g/3_option.png)\n\nលទ្ធផល\n\n![r_option.png](https://cdn.steemitimages.com/DQmZAVcJiwjLKsd8CrTVxkM48QPgkm3VZEoBnHQzvRK6W6H/r_option.png)\n\n* keyboard: false គឺសំរាប់បិទសិទ្ធិ keyboard មិនអោយដំណើរការជាមួយ Modal\n\nឧទាហរណ៍:\n\n![1_kb-1.png](https://cdn.steemitimages.com/DQmdAiokewktesLaZqniC6dudH9x2tsBU1Nwpp1cdTeURfZ/1_kb-1.png)\n\n![2_kb.png](https://cdn.steemitimages.com/DQmVhUXPHeQJAb5KbdxfyuF5SjWPfxaBdi3RmWGDZS6e7j7/2_kb.png)\n\n![3_kb.png](https://cdn.steemitimages.com/DQmNMxxYfGTd2NWd6HrDDVU8o1Wf5MKdXK7NnyRwY3RWDgX/3_kb.png)\n\nលទ្ធផល\n\n![r_kb.png](https://cdn.steemitimages.com/DQmZWSsdjkyo9VZk5F4S21ZaLMzj3dZDazQsfifo5wwMCYR/r_kb.png)\n\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/24/how-to-use-modal-in-bootstrap/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"modal\",\"bootstrap\"],\"image\":[\"https://cdn.steemitimages.com/DQmNtMMEnv1w6Fmu9Sx2k4d8GQJv7qruSHn4UMUAaLaPYuP/modal_edit23-1.png\",\"https://cdn.steemitimages.com/DQmVF8vb2XY4wkM9pieTunwA95mxAGUVzhhQg5nmhT9zHQi/1_x_modal.png\",\"https://cdn.steemitimages.com/DQmNSXiUn3Scnd3T6kfzm1zHC7saWTAcubuYdBnLwE4dBZv/2_2_x_modal.png\",\"https://cdn.steemitimages.com/DQmagbyE9vP4PxmvZZnezQZRpf8xqRPVcSg7X5qU5NvVRux/r_staticModal.png\",\"https://cdn.steemitimages.com/DQmV6zasHpcevPj1cAnBEzBboa67rubEbekYQ8EbwKskYBk/1_modal_click.png\",\"https://cdn.steemitimages.com/DQmbbM7EfVTeNNHuv7deCdV8XHNQi71nXsaxnwroKUUavQw/click_Modal.png\",\"https://cdn.steemitimages.com/DQmWhm9AmQG8c1TWPiBJ77UfUXd1HjtszXDJKs2v2GvgQtn/r_Modal_click.png\",\"https://cdn.steemitimages.com/DQmWv9No4qPmkN5vaGPjyBGohrFotkAxJe9eBGVtP4fWApd/1_option.png\",\"https://cdn.steemitimages.com/DQmaoDR2pxUXr7JDsGhkPbBS719mS7QxepBZM9C23NVgWFk/2_option.png\",\"https://cdn.steemitimages.com/DQmeDQ9xFRU1eLoyd85bJBc5mJtbZyu4qsdWjtvBJ9F9b7g/3_option.png\",\"https://cdn.steemitimages.com/DQmZAVcJiwjLKsd8CrTVxkM48QPgkm3VZEoBnHQzvRK6W6H/r_option.png\",\"https://cdn.steemitimages.com/DQmdAiokewktesLaZqniC6dudH9x2tsBU1Nwpp1cdTeURfZ/1_kb-1.png\",\"https://cdn.steemitimages.com/DQmVhUXPHeQJAb5KbdxfyuF5SjWPfxaBdi3RmWGDZS6e7j7/2_kb.png\",\"https://cdn.steemitimages.com/DQmNMxxYfGTd2NWd6HrDDVU8o1Wf5MKdXK7NnyRwY3RWDgX/3_kb.png\",\"https://cdn.steemitimages.com/DQmZWSsdjkyo9VZk5F4S21ZaLMzj3dZDazQsfifo5wwMCYR/r_kb.png\"],\"links\":[\"https://www.techfree.info/2016/10/24/how-to-use-modal-in-bootstrap/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: autocomplete-jquery-ui
2018/06/12 06:28:51
parent author
parent permlinkcambodia
authortechfree
permlinkautocomplete-jquery-ui
titleរបៀបបង្កើត Autocomplete ជាមួយ JQuery UI
body![auto.jpg](https://cdn.steemitimages.com/DQmaNXjdnh8cEfJ7LBNSbrGfsAYMpbpDTYvMR5ZirMPS5QQ/auto.jpg) នៅក្នុងគេហទំព័រមួយគឺត្រូវតែមានប្រអប់ស្វែងរកដើម្បីងាយស្រួលដោយមិនចាំបាច់ចំនាយពេលវេលា ក្នុងការស្វែងរកអ្វីមួួយ ។ យើងខ្ញុំសូមបង្ហាញអំពី Autocomplete ដែលវាគឺជាចំនេះដឹងមួយដែរដែលគេប្រើវាសំរាប់ ស្វែងរកពាក្យដែលស្រដៀង រឺក៍ពាក្យដែលផ្ដើមដោយអក្សរដែលយើងបញ្ចូលនៅក្នុងប្រអប់ស្វែងរក (Search Box) នោះវានឹងលេចឡើងនូវពាក្យដែលផ្ដើមជាមួយនឹងអក្សរដែល យើងបានបញ្ចូលនោះភ្លាមៗ។ ថ្ងៃនេះ TechFree សូមបង្ហាញអំពីរបៀបបង្កើតនិងប្រើប្រាស់ Autocompleteនេះ ដោយការប្រើប្រាស់នូវភាសាកុំព្យូទ័រមួយគឺ JQuery ដែលជាបណ្ដុំនៃកូដរបស់ Javascript ។ ១) ការទាញយក មុននឹងធ្វើការសរសេរកូដ យើងត្រូវទាញយកបណ្ណាល័យ រឺបណ្ដុំនៃកូដមកប្រើប្រាស់ជាមុនសិន។ សូមចូលទៅកាន់ https://www.jqueryui.com/autocomplete រួចហើយសូមធ្វើការទាញយកវា ។សូមមើលរូបខាងក្រោម ៖ ![auto1.png](https://cdn.steemitimages.com/DQmQJQcAJa9yW3zkjjiJz1qBkJyUkPvgyrC1SMoch7Cbd27/auto1.png) បន្ទាប់មកទៀត ![auto2.png](https://cdn.steemitimages.com/DQmXH1yVJJ4QKonNcgtQP1H7rrHxCmJShm5ztoHLheJmeVF/auto2.png) ២) ការសរសេរកូដ ក្រោយពីទាញយករួចយករាល់ហើយ យើងត្រូវធ្វើការហៅវាយកមកប្រើនៅក្នុងកូដដែលត្រូវប្រើ ។ សូមមើលរូបខាងក្រោម ៖ * បន្ទាត់ទី៨ គឺយើងហៅកូដរចនារបស់ jquery-ui យកមកប្រើប្រាស់ * បន្ទាត់ទី៩ គឺ យើងហៅបណ្ដុំកូដនៃ Javascript របស់ bootstrap * បន្ទាត់ទី១០ គឺ យើងហៅបណ្ដុំកូដនៃ Javascript របស់ google * បន្ទាត់ទី១១គឺ យើងហៅបណ្ដុំកូដនៃ Javascript របស់ jquery-ui ![auto3.png](https://cdn.steemitimages.com/DQmPugDnzN3GsDCB3SWEcjWGpV2ZLD5cwNwB1j3qoM8BWKG/auto3.png) កូដដែលត្រូវដំនើរការ ៖ ![auto4.png](https://cdn.steemitimages.com/DQmQ6gdcdGqiwanJ6ofr98NN9ebS3uugFWoGbSnkF8H7gDy/auto4.png) ៣) លទ្ធផលនៃកូដ ក្រោយពីបញ្ចប់ការសរសេរកូដខាងលើរួចមកយើងនឹងបានលទ្ធផលដូចខាងក្រោម ៖ ![auto5.png](https://cdn.steemitimages.com/DQmPkj5KrdJFY7vkmhc7V7c3onxYZeKB58W1DXvxDWB7okE/auto5.png) [ប្រភពដើម](https://www.techfree.info/2016/10/24/how-to-create-autocomplete-with-jquery-ui/)
json metadata{"tags":["cambodia","khmer","autocomplete","jquery","ui"],"image":["https://cdn.steemitimages.com/DQmaNXjdnh8cEfJ7LBNSbrGfsAYMpbpDTYvMR5ZirMPS5QQ/auto.jpg","https://cdn.steemitimages.com/DQmQJQcAJa9yW3zkjjiJz1qBkJyUkPvgyrC1SMoch7Cbd27/auto1.png","https://cdn.steemitimages.com/DQmXH1yVJJ4QKonNcgtQP1H7rrHxCmJShm5ztoHLheJmeVF/auto2.png","https://cdn.steemitimages.com/DQmPugDnzN3GsDCB3SWEcjWGpV2ZLD5cwNwB1j3qoM8BWKG/auto3.png","https://cdn.steemitimages.com/DQmQ6gdcdGqiwanJ6ofr98NN9ebS3uugFWoGbSnkF8H7gDy/auto4.png","https://cdn.steemitimages.com/DQmPkj5KrdJFY7vkmhc7V7c3onxYZeKB58W1DXvxDWB7okE/auto5.png"],"links":["https://www.jqueryui.com/autocomplete","https://www.techfree.info/2016/10/24/how-to-create-autocomplete-with-jquery-ui/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23249757/Trx 2aafd73625a2b8ae62f45aa3cc58d1fd874353be
View Raw JSON Data
{
  "trx_id": "2aafd73625a2b8ae62f45aa3cc58d1fd874353be",
  "block": 23249757,
  "trx_in_block": 21,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-12T06:28:51",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "autocomplete-jquery-ui",
      "title": "របៀបបង្កើត Autocomplete ជាមួយ JQuery UI",
      "body": "![auto.jpg](https://cdn.steemitimages.com/DQmaNXjdnh8cEfJ7LBNSbrGfsAYMpbpDTYvMR5ZirMPS5QQ/auto.jpg)\n\nនៅក្នុងគេហទំព័រមួយគឺត្រូវតែមានប្រអប់ស្វែងរកដើម្បីងាយស្រួលដោយមិនចាំបាច់ចំនាយពេលវេលា ក្នុងការស្វែងរកអ្វីមួួយ ។ យើងខ្ញុំសូមបង្ហាញអំពី Autocomplete ដែលវាគឺជាចំនេះដឹងមួយដែរដែលគេប្រើវាសំរាប់ ស្វែងរកពាក្យដែលស្រដៀង រឺក៍ពាក្យដែលផ្ដើមដោយអក្សរដែលយើងបញ្ចូលនៅក្នុងប្រអប់ស្វែងរក (Search Box) នោះវានឹងលេចឡើងនូវពាក្យដែលផ្ដើមជាមួយនឹងអក្សរដែល យើងបានបញ្ចូលនោះភ្លាមៗ។\n\nថ្ងៃនេះ TechFree សូមបង្ហាញអំពីរបៀបបង្កើតនិងប្រើប្រាស់ Autocompleteនេះ ដោយការប្រើប្រាស់នូវភាសាកុំព្យូទ័រមួយគឺ JQuery ដែលជាបណ្ដុំនៃកូដរបស់ Javascript ។\n\n១) ការទាញយក\n\nមុននឹងធ្វើការសរសេរកូដ យើងត្រូវទាញយកបណ្ណាល័យ រឺបណ្ដុំនៃកូដមកប្រើប្រាស់ជាមុនសិន។ សូមចូលទៅកាន់ https://www.jqueryui.com/autocomplete រួចហើយសូមធ្វើការទាញយកវា ។សូមមើលរូបខាងក្រោម ៖\n\n![auto1.png](https://cdn.steemitimages.com/DQmQJQcAJa9yW3zkjjiJz1qBkJyUkPvgyrC1SMoch7Cbd27/auto1.png)\n\nបន្ទាប់មកទៀត\n\n![auto2.png](https://cdn.steemitimages.com/DQmXH1yVJJ4QKonNcgtQP1H7rrHxCmJShm5ztoHLheJmeVF/auto2.png)\n\n២) ការសរសេរកូដ\n\nក្រោយពីទាញយករួចយករាល់ហើយ យើងត្រូវធ្វើការហៅវាយកមកប្រើនៅក្នុងកូដដែលត្រូវប្រើ ។\n\nសូមមើលរូបខាងក្រោម ៖\n\n* បន្ទាត់ទី៨ គឺយើងហៅកូដរចនារបស់ jquery-ui យកមកប្រើប្រាស់\n* បន្ទាត់ទី៩ គឺ យើងហៅបណ្ដុំកូដនៃ Javascript របស់ bootstrap\n* បន្ទាត់ទី១០ គឺ យើងហៅបណ្ដុំកូដនៃ Javascript របស់ google\n* បន្ទាត់ទី១១គឺ យើងហៅបណ្ដុំកូដនៃ Javascript របស់ jquery-ui\n\n![auto3.png](https://cdn.steemitimages.com/DQmPugDnzN3GsDCB3SWEcjWGpV2ZLD5cwNwB1j3qoM8BWKG/auto3.png)\n\nកូដដែលត្រូវដំនើរការ ៖\n\n![auto4.png](https://cdn.steemitimages.com/DQmQ6gdcdGqiwanJ6ofr98NN9ebS3uugFWoGbSnkF8H7gDy/auto4.png)\n\n៣) លទ្ធផលនៃកូដ\n\nក្រោយពីបញ្ចប់ការសរសេរកូដខាងលើរួចមកយើងនឹងបានលទ្ធផលដូចខាងក្រោម ៖\n\n![auto5.png](https://cdn.steemitimages.com/DQmPkj5KrdJFY7vkmhc7V7c3onxYZeKB58W1DXvxDWB7okE/auto5.png)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/24/how-to-create-autocomplete-with-jquery-ui/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"autocomplete\",\"jquery\",\"ui\"],\"image\":[\"https://cdn.steemitimages.com/DQmaNXjdnh8cEfJ7LBNSbrGfsAYMpbpDTYvMR5ZirMPS5QQ/auto.jpg\",\"https://cdn.steemitimages.com/DQmQJQcAJa9yW3zkjjiJz1qBkJyUkPvgyrC1SMoch7Cbd27/auto1.png\",\"https://cdn.steemitimages.com/DQmXH1yVJJ4QKonNcgtQP1H7rrHxCmJShm5ztoHLheJmeVF/auto2.png\",\"https://cdn.steemitimages.com/DQmPugDnzN3GsDCB3SWEcjWGpV2ZLD5cwNwB1j3qoM8BWKG/auto3.png\",\"https://cdn.steemitimages.com/DQmQ6gdcdGqiwanJ6ofr98NN9ebS3uugFWoGbSnkF8H7gDy/auto4.png\",\"https://cdn.steemitimages.com/DQmPkj5KrdJFY7vkmhc7V7c3onxYZeKB58W1DXvxDWB7okE/auto5.png\"],\"links\":[\"https://www.jqueryui.com/autocomplete\",\"https://www.techfree.info/2016/10/24/how-to-create-autocomplete-with-jquery-ui/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2018/06/12 06:19:54
parent authortechfree
parent permlinkdependency-manager-ios
authorcheetah
permlinkcheetah-re-techfreedependency-manager-ios
title
bodyHi! I am a robot. I just upvoted you! I found similar content that readers might be interested in: https://www.techfree.info/2016/10/24/dependency-manager/
json metadata
Transaction InfoBlock #23249578/Trx 7a5e66ac0efc27c141920b94b7ecedd67100c298
View Raw JSON Data
{
  "trx_id": "7a5e66ac0efc27c141920b94b7ecedd67100c298",
  "block": 23249578,
  "trx_in_block": 42,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-12T06:19:54",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "dependency-manager-ios",
      "author": "cheetah",
      "permlink": "cheetah-re-techfreedependency-manager-ios",
      "title": "",
      "body": "Hi! I am a robot. I just upvoted you! I found similar content that readers might be interested in:\nhttps://www.techfree.info/2016/10/24/dependency-manager/",
      "json_metadata": ""
    }
  ]
}
2018/06/12 06:19:51
votercheetah
authortechfree
permlinkdependency-manager-ios
weight8 (0.08%)
Transaction InfoBlock #23249577/Trx 28efe9632136af717be906a4c9acfcb1612a112d
View Raw JSON Data
{
  "trx_id": "28efe9632136af717be906a4c9acfcb1612a112d",
  "block": 23249577,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-12T06:19:51",
  "op": [
    "vote",
    {
      "voter": "cheetah",
      "author": "techfree",
      "permlink": "dependency-manager-ios",
      "weight": 8
    }
  ]
}
techfreepublished a new post: dependency-manager-ios
2018/06/12 06:19:24
parent author
parent permlinkcambodia
authortechfree
permlinkdependency-manager-ios
titleរបៀបប្រើប្រាស់ Dependency Manager សម្រាប់ការអភិវឌ្ឍកម្មវិធី iOS
body![ios-Development.png](https://cdn.steemitimages.com/DQmYZQHosrkdRajA126gVR6T1QKkGqkfgiiaiibPAL94Mk3/ios-Development.png) លោកអ្នកប្រាកដជាបានស្គាល់រួចមកហើយនូវ Dependency Manager មួយចំនួនដូចជា NPM សម្រាប់ Node.JS និង composer សម្រាប់ PHP ជាដើម។ ថ្ងៃនេះ ខ្ញុំសូមណែនាំលោកអ្នកឲ្យស្គាល់នូវ Dependency Manager ថ្មីមួយ ដែលអ្នកអភិវឌ្ឍកម្មវិធី iOS តែងតែប្រើ គឺ CocoaPods។ **របៀបតម្លើង CocoaPods** បើក Terminal រួច វាយ command: `sudo gem install cocoapods` រួចហើយវាយបញ្ចូលពាក្យសម្ងាត់កុំព្យូទ័ររបស់អ្នក ![Screen-Shot-2016-10-24-at-10.58.46-AM.png](https://cdn.steemitimages.com/DQmXXoeZVfhSh2TEcrubozzsfLr33FxfbNoR4CQPuNDC9Tq/Screen-Shot-2016-10-24-at-10.58.46-AM.png) របៀបប្រើប្រាស់ CocoaPods នៅក្នង Xcode Project * ជាដំបូង ចូលទៅកាន់ Xcode ដើម្បីបង្កើត project ទទេរមួយ ដោយដាក់ឈ្មោះ ដែលខ្លួនអ្នកពេញចិត្ត ឧទាហរណ៏៖ How To Use CocoaPods រួចហើយ បិទ project ដែលអ្នកទើបតែបានបង្កើត * បើក Terminal រួចចូលទៅកាន់ទីតាំង project របស់អ្នក ដោយវាយ command: `cd path/to/your-project-directory` * វាយ command: `pod init` ដើម្បីបង្កើត Podfile ជាមួយនឹង Default Configuration រួចជាស្រេច * បើក Podfile ដែលយើងទើបតែបានបង្កើតដោយប្រើប្រាស់ command nano, vim ឬ text editor ផ្សេងៗ * បញ្ចូល dependencies ដែលយើងចង់បាននៅត្រង់ចន្លោះ target និង end ដោយវាយពាក្យ pod yourDependencyName, option រួចរក្សាទុក ![Screen-Shot-2016-10-24-at-11.12.34-AM.png](https://cdn.steemitimages.com/DQmZw9vafGfmK3Vrh73BKERAkUSX1WA17xXciPFiqsKS8LC/Screen-Shot-2016-10-24-at-11.12.34-AM.png) ![Screen-Shot-2016-10-24-at-12.27.21-PM.png](https://cdn.steemitimages.com/DQmQnNshJjpFbTy7vc1kk8DnUntAWFC2KZ2QjPjLKXLt9wH/Screen-Shot-2016-10-24-at-12.27.21-PM.png) * បន្ទាប់មក វាយ command: `pod install` ដើម្បីតម្លើង dependencies ដែលអ្នកបានកំណត់ ![Screen-Shot-2016-10-24-at-12.32.26-PM.png](https://cdn.steemitimages.com/DQmaUQb6XHg5XpafYGjK1NA4KZ3A3uQtR7LjzgFMYvemPVi/Screen-Shot-2016-10-24-at-12.32.26-PM.png) * បន្ទាប់ពីតម្លើង dependencies រួចរាល់ហើយ អ្នកត្រូវបើក Project របស់អ្នក ដោយរើសយក Xcode workspace (.xcworkspace) ជំនួសឲ្យ Xcode project (.xcproject) * ឥឡូវនេះអ្នកអាចហៅ dependency ដែលអ្នកចង់ប្រើប្រាស់ដោយគ្រាន់តែវាយ import yourDependency សម្រាប់ភាសា Swift នៅក្នុង class ដែលអ្នកចង់ប្រើ ![Screen-Shot-2016-10-24-at-12.41.25-PM.png](https://cdn.steemitimages.com/DQmSRMMapmgJtUCYxN5vGMqziabwigcqd6jQVw4oAfYjwnv/Screen-Shot-2016-10-24-at-12.41.25-PM.png) [ប្រភពដើម](https://www.techfree.info/2016/10/24/dependency-manager/)
json metadata{"tags":["cambodia","khmer","cocoapods","dependency"],"image":["https://cdn.steemitimages.com/DQmYZQHosrkdRajA126gVR6T1QKkGqkfgiiaiibPAL94Mk3/ios-Development.png","https://cdn.steemitimages.com/DQmXXoeZVfhSh2TEcrubozzsfLr33FxfbNoR4CQPuNDC9Tq/Screen-Shot-2016-10-24-at-10.58.46-AM.png","https://cdn.steemitimages.com/DQmZw9vafGfmK3Vrh73BKERAkUSX1WA17xXciPFiqsKS8LC/Screen-Shot-2016-10-24-at-11.12.34-AM.png","https://cdn.steemitimages.com/DQmQnNshJjpFbTy7vc1kk8DnUntAWFC2KZ2QjPjLKXLt9wH/Screen-Shot-2016-10-24-at-12.27.21-PM.png","https://cdn.steemitimages.com/DQmaUQb6XHg5XpafYGjK1NA4KZ3A3uQtR7LjzgFMYvemPVi/Screen-Shot-2016-10-24-at-12.32.26-PM.png","https://cdn.steemitimages.com/DQmSRMMapmgJtUCYxN5vGMqziabwigcqd6jQVw4oAfYjwnv/Screen-Shot-2016-10-24-at-12.41.25-PM.png"],"links":["https://www.techfree.info/2016/10/24/dependency-manager/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23249568/Trx 105632e77af825e17049efd09b065ce32e9be5ae
View Raw JSON Data
{
  "trx_id": "105632e77af825e17049efd09b065ce32e9be5ae",
  "block": 23249568,
  "trx_in_block": 46,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-12T06:19:24",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "dependency-manager-ios",
      "title": "របៀបប្រើប្រាស់ Dependency Manager សម្រាប់ការអភិវឌ្ឍកម្មវិធី iOS",
      "body": "![ios-Development.png](https://cdn.steemitimages.com/DQmYZQHosrkdRajA126gVR6T1QKkGqkfgiiaiibPAL94Mk3/ios-Development.png)\n\nលោកអ្នកប្រាកដជាបានស្គាល់រួចមកហើយនូវ Dependency Manager មួយចំនួនដូចជា NPM សម្រាប់ Node.JS និង composer សម្រាប់ PHP ជាដើម។ ថ្ងៃនេះ ខ្ញុំសូមណែនាំលោកអ្នកឲ្យស្គាល់នូវ Dependency Manager ថ្មីមួយ ដែលអ្នកអភិវឌ្ឍកម្មវិធី iOS តែងតែប្រើ គឺ CocoaPods។\n\n**របៀបតម្លើង CocoaPods**\n\nបើក Terminal រួច វាយ command: `sudo gem install cocoapods` រួចហើយវាយបញ្ចូលពាក្យសម្ងាត់កុំព្យូទ័ររបស់អ្នក\n\n![Screen-Shot-2016-10-24-at-10.58.46-AM.png](https://cdn.steemitimages.com/DQmXXoeZVfhSh2TEcrubozzsfLr33FxfbNoR4CQPuNDC9Tq/Screen-Shot-2016-10-24-at-10.58.46-AM.png)\n\nរបៀបប្រើប្រាស់ CocoaPods នៅក្នង Xcode Project\n\n* ជាដំបូង ចូលទៅកាន់ Xcode ដើម្បីបង្កើត project ទទេរមួយ ដោយដាក់ឈ្មោះ ដែលខ្លួនអ្នកពេញចិត្ត \nឧទាហរណ៏៖ How To Use CocoaPods រួចហើយ បិទ project ដែលអ្នកទើបតែបានបង្កើត\n* បើក Terminal រួចចូលទៅកាន់ទីតាំង project របស់អ្នក ដោយវាយ command: `cd path/to/your-project-directory`\n* វាយ command: `pod init` ដើម្បីបង្កើត Podfile ជាមួយនឹង Default Configuration រួចជាស្រេច\n* បើក Podfile ដែលយើងទើបតែបានបង្កើតដោយប្រើប្រាស់ command nano, vim ឬ text editor ផ្សេងៗ\n* បញ្ចូល dependencies ដែលយើងចង់បាននៅត្រង់ចន្លោះ target និង end ដោយវាយពាក្យ pod yourDependencyName, option រួចរក្សាទុក\n\n![Screen-Shot-2016-10-24-at-11.12.34-AM.png](https://cdn.steemitimages.com/DQmZw9vafGfmK3Vrh73BKERAkUSX1WA17xXciPFiqsKS8LC/Screen-Shot-2016-10-24-at-11.12.34-AM.png)\n\n![Screen-Shot-2016-10-24-at-12.27.21-PM.png](https://cdn.steemitimages.com/DQmQnNshJjpFbTy7vc1kk8DnUntAWFC2KZ2QjPjLKXLt9wH/Screen-Shot-2016-10-24-at-12.27.21-PM.png)\n\n\n* បន្ទាប់មក វាយ command: `pod install` ដើម្បីតម្លើង dependencies ដែលអ្នកបានកំណត់\n\n![Screen-Shot-2016-10-24-at-12.32.26-PM.png](https://cdn.steemitimages.com/DQmaUQb6XHg5XpafYGjK1NA4KZ3A3uQtR7LjzgFMYvemPVi/Screen-Shot-2016-10-24-at-12.32.26-PM.png)\n\n* បន្ទាប់ពីតម្លើង dependencies រួចរាល់ហើយ អ្នកត្រូវបើក Project របស់អ្នក ដោយរើសយក Xcode workspace (.xcworkspace) ជំនួសឲ្យ Xcode project (.xcproject)\n* ឥឡូវនេះអ្នកអាចហៅ dependency ដែលអ្នកចង់ប្រើប្រាស់ដោយគ្រាន់តែវាយ import yourDependency សម្រាប់ភាសា Swift នៅក្នុង class ដែលអ្នកចង់ប្រើ\n\n![Screen-Shot-2016-10-24-at-12.41.25-PM.png](https://cdn.steemitimages.com/DQmSRMMapmgJtUCYxN5vGMqziabwigcqd6jQVw4oAfYjwnv/Screen-Shot-2016-10-24-at-12.41.25-PM.png)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/24/dependency-manager/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"cocoapods\",\"dependency\"],\"image\":[\"https://cdn.steemitimages.com/DQmYZQHosrkdRajA126gVR6T1QKkGqkfgiiaiibPAL94Mk3/ios-Development.png\",\"https://cdn.steemitimages.com/DQmXXoeZVfhSh2TEcrubozzsfLr33FxfbNoR4CQPuNDC9Tq/Screen-Shot-2016-10-24-at-10.58.46-AM.png\",\"https://cdn.steemitimages.com/DQmZw9vafGfmK3Vrh73BKERAkUSX1WA17xXciPFiqsKS8LC/Screen-Shot-2016-10-24-at-11.12.34-AM.png\",\"https://cdn.steemitimages.com/DQmQnNshJjpFbTy7vc1kk8DnUntAWFC2KZ2QjPjLKXLt9wH/Screen-Shot-2016-10-24-at-12.27.21-PM.png\",\"https://cdn.steemitimages.com/DQmaUQb6XHg5XpafYGjK1NA4KZ3A3uQtR7LjzgFMYvemPVi/Screen-Shot-2016-10-24-at-12.32.26-PM.png\",\"https://cdn.steemitimages.com/DQmSRMMapmgJtUCYxN5vGMqziabwigcqd6jQVw4oAfYjwnv/Screen-Shot-2016-10-24-at-12.41.25-PM.png\"],\"links\":[\"https://www.techfree.info/2016/10/24/dependency-manager/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreefollowed @ustd
2018/06/11 02:25:15
required auths[]
required posting auths["techfree"]
idfollow
json["follow",{"follower":"techfree","following":"ustd","what":["blog"]}]
Transaction InfoBlock #23216397/Trx 45b0d36fd247376381da46016a486fa64ed0f042
View Raw JSON Data
{
  "trx_id": "45b0d36fd247376381da46016a486fa64ed0f042",
  "block": 23216397,
  "trx_in_block": 38,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-11T02:25:15",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "techfree"
      ],
      "id": "follow",
      "json": "[\"follow\",{\"follower\":\"techfree\",\"following\":\"ustd\",\"what\":[\"blog\"]}]"
    }
  ]
}
2018/06/11 02:24:12
parent authortechfree
parent permlinkmenu-electron
authorallnatural
permlinkre-techfree-menu-electron-20180611t022413109z
title
bodyGo here https://steemit.com/@a-a-a to get your post resteemed to over 72,000 followers.
json metadata{"tags":["cambodia"],"links":["https://steemit.com/@a-a-a"],"app":"steemit/0.1"}
Transaction InfoBlock #23216377/Trx 2a8698c94a3ff4d2a8d98422bd8e8136646143c6
View Raw JSON Data
{
  "trx_id": "2a8698c94a3ff4d2a8d98422bd8e8136646143c6",
  "block": 23216377,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-11T02:24:12",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "menu-electron",
      "author": "allnatural",
      "permlink": "re-techfree-menu-electron-20180611t022413109z",
      "title": "",
      "body": "Go here https://steemit.com/@a-a-a to get your post resteemed to over 72,000 followers.",
      "json_metadata": "{\"tags\":[\"cambodia\"],\"links\":[\"https://steemit.com/@a-a-a\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
techfreepublished a new post: menu-electron
2018/06/11 02:23:51
parent author
parent permlinkcambodia
authortechfree
permlinkmenu-electron
titleបង្កើត Menu ថ្មីដោយខ្លួនឯងនៅក្នុង Electron
body![menuelectron.jpg](https://cdn.steemitimages.com/DQmSrxe9bpnKu9LJ3A9ycUk1EyxkSnXQyNzK1Eik471LxBH/menuelectron.jpg) Menu គឺជាកន្លែងដែលអ្នកប្រើប្រាស់កម្មវិធីមួយអាចស្វែងរកជម្រើស និងមុខងារណាមួយដែលគេចង់ប្រើ។ វាក៏ជាចំណុចមួយដែលបង្ហាញពីលក្ខណៈខុសគ្នារវាងកម្មវិធី Web និងកម្មវិធី Desktop។ Electron បានផ្តល់ជម្រើសដល់សម្បូរបែបដល់អ្នកអភិវឌ្ឍក្នុងការបង្កើត Menu ថ្មីស្រឡាងជាមួយមុខងារថ្មី ឬហៅមុខងារដែលមានស្រាប់យកមកប្រើតែម្តង។ អត្ថបទនេះនឹងបង្ហាញពីការបង្កើត Menu សម្រាប់កម្មវិធី Desktop មួយដែលបង្កើតឡើងនៅក្នុង Electron។ **index.html** ![menu1.png](https://cdn.steemitimages.com/DQmZeejWu4gEhTvbNBR5FunGvABzxRRitCAKZuk3XAyf1h7/menu1.png) **main.js** ![menu2.png](https://cdn.steemitimages.com/DQmZB5pTCzgbx94VeTZHPEPcAJaZBGCCJymVqDdXxr6LHnh/menu2.png) ![menu3.png](https://cdn.steemitimages.com/DQmd2vBtQLiBw9GbJv2T2aHS15ceyRepYDXRpnJX1CVL3T4/menu3.png) ![menu4.png](https://cdn.steemitimages.com/DQmd2dA73bqCtS19S36ZNuRaJ3oZjefT6YbEsotp6cptCWx/menu4.png) * accelerator: អ្នកអាចកំណត់ផ្លូវកាត់ (shortcuts) នៅត្រង់កន្លែងនេះ។ * role: អ្នកអាចជម្រើសរើសមុខងារមួយដែលមានស្រាប់(ដូចជា undo, redo, close, minimize, copy, paste…) សម្រាប់ Sub Menu ដែលអ្នកចង់បង្កើត។ * បន្ទាត់ទី49-51: គឺជាការបង្កើតមុខងារថ្មីសម្រាប់ Sub Menu មួយ ដោយមិនជ្រើសរើសមុខងារដែលមានស្រាប់ដូចខាងលើ។ **style.css** ![menu5.png](https://cdn.steemitimages.com/DQmQSgh6QEZoj47tXsCfQ78UaaLpJ4cPknBsccbTXRNPp3X/menu5.png) **package.json** ![menu6.png](https://cdn.steemitimages.com/DQmXiDTQESSuXaKEhdBA8jLwF99K6VDsde5CyvTC5mbQWpy/menu6.png) **លទ្ធផល**៖ ![menu7.jpg](https://cdn.steemitimages.com/DQmToAniKrFnaLqMtCHBQWWJWaupFEXuaveFH9beMgNKjC6/menu7.jpg) [ប្រភពដើម](https://www.techfree.info/2016/10/24/electron-menu/)
json metadata{"tags":["cambodia","khmer","menu","electron"],"image":["https://cdn.steemitimages.com/DQmSrxe9bpnKu9LJ3A9ycUk1EyxkSnXQyNzK1Eik471LxBH/menuelectron.jpg","https://cdn.steemitimages.com/DQmZeejWu4gEhTvbNBR5FunGvABzxRRitCAKZuk3XAyf1h7/menu1.png","https://cdn.steemitimages.com/DQmZB5pTCzgbx94VeTZHPEPcAJaZBGCCJymVqDdXxr6LHnh/menu2.png","https://cdn.steemitimages.com/DQmd2vBtQLiBw9GbJv2T2aHS15ceyRepYDXRpnJX1CVL3T4/menu3.png","https://cdn.steemitimages.com/DQmd2dA73bqCtS19S36ZNuRaJ3oZjefT6YbEsotp6cptCWx/menu4.png","https://cdn.steemitimages.com/DQmQSgh6QEZoj47tXsCfQ78UaaLpJ4cPknBsccbTXRNPp3X/menu5.png","https://cdn.steemitimages.com/DQmXiDTQESSuXaKEhdBA8jLwF99K6VDsde5CyvTC5mbQWpy/menu6.png","https://cdn.steemitimages.com/DQmToAniKrFnaLqMtCHBQWWJWaupFEXuaveFH9beMgNKjC6/menu7.jpg"],"links":["https://www.techfree.info/2016/10/24/electron-menu/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23216371/Trx fb87ba8feda3da0cea0923d483b8920e9c4e980c
View Raw JSON Data
{
  "trx_id": "fb87ba8feda3da0cea0923d483b8920e9c4e980c",
  "block": 23216371,
  "trx_in_block": 30,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-11T02:23:51",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "menu-electron",
      "title": "បង្កើត Menu ថ្មីដោយខ្លួនឯងនៅក្នុង Electron",
      "body": "![menuelectron.jpg](https://cdn.steemitimages.com/DQmSrxe9bpnKu9LJ3A9ycUk1EyxkSnXQyNzK1Eik471LxBH/menuelectron.jpg)\n\nMenu គឺជាកន្លែងដែលអ្នកប្រើប្រាស់កម្មវិធីមួយអាចស្វែងរកជម្រើស និងមុខងារណាមួយដែលគេចង់ប្រើ។ វាក៏ជាចំណុចមួយដែលបង្ហាញពីលក្ខណៈខុសគ្នារវាងកម្មវិធី Web និងកម្មវិធី Desktop។ Electron បានផ្តល់ជម្រើសដល់សម្បូរបែបដល់អ្នកអភិវឌ្ឍក្នុងការបង្កើត Menu ថ្មីស្រឡាងជាមួយមុខងារថ្មី ឬហៅមុខងារដែលមានស្រាប់យកមកប្រើតែម្តង។\n\nអត្ថបទនេះនឹងបង្ហាញពីការបង្កើត Menu សម្រាប់កម្មវិធី Desktop មួយដែលបង្កើតឡើងនៅក្នុង Electron។\n\n**index.html**\n\n![menu1.png](https://cdn.steemitimages.com/DQmZeejWu4gEhTvbNBR5FunGvABzxRRitCAKZuk3XAyf1h7/menu1.png)\n\n**main.js**\n\n![menu2.png](https://cdn.steemitimages.com/DQmZB5pTCzgbx94VeTZHPEPcAJaZBGCCJymVqDdXxr6LHnh/menu2.png)\n\n![menu3.png](https://cdn.steemitimages.com/DQmd2vBtQLiBw9GbJv2T2aHS15ceyRepYDXRpnJX1CVL3T4/menu3.png)\n\n![menu4.png](https://cdn.steemitimages.com/DQmd2dA73bqCtS19S36ZNuRaJ3oZjefT6YbEsotp6cptCWx/menu4.png)\n\n* accelerator: អ្នកអាចកំណត់ផ្លូវកាត់ (shortcuts) នៅត្រង់កន្លែងនេះ។\n* role: អ្នកអាចជម្រើសរើសមុខងារមួយដែលមានស្រាប់(ដូចជា undo, redo, close, minimize, copy, paste…) សម្រាប់ Sub Menu ដែលអ្នកចង់បង្កើត។\n* បន្ទាត់ទី49-51: គឺជាការបង្កើតមុខងារថ្មីសម្រាប់ Sub Menu មួយ ដោយមិនជ្រើសរើសមុខងារដែលមានស្រាប់ដូចខាងលើ។\n\n**style.css**\n\n![menu5.png](https://cdn.steemitimages.com/DQmQSgh6QEZoj47tXsCfQ78UaaLpJ4cPknBsccbTXRNPp3X/menu5.png)\n\n**package.json**\n\n![menu6.png](https://cdn.steemitimages.com/DQmXiDTQESSuXaKEhdBA8jLwF99K6VDsde5CyvTC5mbQWpy/menu6.png)\n\n**លទ្ធផល**៖\n\n![menu7.jpg](https://cdn.steemitimages.com/DQmToAniKrFnaLqMtCHBQWWJWaupFEXuaveFH9beMgNKjC6/menu7.jpg)\n\n\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/24/electron-menu/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"menu\",\"electron\"],\"image\":[\"https://cdn.steemitimages.com/DQmSrxe9bpnKu9LJ3A9ycUk1EyxkSnXQyNzK1Eik471LxBH/menuelectron.jpg\",\"https://cdn.steemitimages.com/DQmZeejWu4gEhTvbNBR5FunGvABzxRRitCAKZuk3XAyf1h7/menu1.png\",\"https://cdn.steemitimages.com/DQmZB5pTCzgbx94VeTZHPEPcAJaZBGCCJymVqDdXxr6LHnh/menu2.png\",\"https://cdn.steemitimages.com/DQmd2vBtQLiBw9GbJv2T2aHS15ceyRepYDXRpnJX1CVL3T4/menu3.png\",\"https://cdn.steemitimages.com/DQmd2dA73bqCtS19S36ZNuRaJ3oZjefT6YbEsotp6cptCWx/menu4.png\",\"https://cdn.steemitimages.com/DQmQSgh6QEZoj47tXsCfQ78UaaLpJ4cPknBsccbTXRNPp3X/menu5.png\",\"https://cdn.steemitimages.com/DQmXiDTQESSuXaKEhdBA8jLwF99K6VDsde5CyvTC5mbQWpy/menu6.png\",\"https://cdn.steemitimages.com/DQmToAniKrFnaLqMtCHBQWWJWaupFEXuaveFH9beMgNKjC6/menu7.jpg\"],\"links\":[\"https://www.techfree.info/2016/10/24/electron-menu/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
ustdupvoted (100.00%) @techfree / 3pebyj-logo-gimp
2018/06/08 07:22:06
voterustd
authortechfree
permlink3pebyj-logo-gimp
weight10000 (100.00%)
Transaction InfoBlock #23136213/Trx 99c849629a9a8469947e449efefdc45bbae77b59
View Raw JSON Data
{
  "trx_id": "99c849629a9a8469947e449efefdc45bbae77b59",
  "block": 23136213,
  "trx_in_block": 17,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-08T07:22:06",
  "op": [
    "vote",
    {
      "voter": "ustd",
      "author": "techfree",
      "permlink": "3pebyj-logo-gimp",
      "weight": 10000
    }
  ]
}
2018/06/08 07:22:00
parent authortechfree
parent permlink3pebyj-logo-gimp
authorustd
permlinkre-3pebyj-logo-gimp-20180608t072116
title
bodyHi, Passing by and Upvoted you :) ! : “I am not the potter, not the potter's wheel, but the potter's clay; is not the value of the shape attained as dependent upon the intrinsic worth of the clay as upon the wheel and the Master's skill?” ====> Stephen King
json metadata
Transaction InfoBlock #23136211/Trx 4da06a79e342094c1f07f3a44c5e5f1011c53e50
View Raw JSON Data
{
  "trx_id": "4da06a79e342094c1f07f3a44c5e5f1011c53e50",
  "block": 23136211,
  "trx_in_block": 43,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-08T07:22:00",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "3pebyj-logo-gimp",
      "author": "ustd",
      "permlink": "re-3pebyj-logo-gimp-20180608t072116",
      "title": "",
      "body": "Hi, Passing by and Upvoted you :) ! \n : \n      “I am not the potter, not the potter's wheel, but the potter's clay; is not the value of the shape attained as dependent upon the intrinsic worth of the clay as upon the wheel and the Master's skill?”  ====>    Stephen King\n",
      "json_metadata": ""
    }
  ]
}
resteemyousent 0.001 SBD to @techfree- "Hi! I re-blog posts to 5800+ followers for only 0.05 SBD/Steem & I don't leave comments. Thanx ♥"
2018/06/08 07:06:57
fromresteemyou
totechfree
amount0.001 SBD
memoHi! I re-blog posts to 5800+ followers for only 0.05 SBD/Steem & I don't leave comments. Thanx ♥
Transaction InfoBlock #23135910/Trx 3a131d4c84e9c01c60fd63f5566611c951a7452d
View Raw JSON Data
{
  "trx_id": "3a131d4c84e9c01c60fd63f5566611c951a7452d",
  "block": 23135910,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-08T07:06:57",
  "op": [
    "transfer",
    {
      "from": "resteemyou",
      "to": "techfree",
      "amount": "0.001 SBD",
      "memo": "Hi! I re-blog posts to 5800+ followers for only 0.05 SBD/Steem & I don't leave comments. Thanx ♥"
    }
  ]
}
2018/06/08 07:05:54
parent authortechfree
parent permlink3pebyj-logo-gimp
authora-0-1
permlinkre-techfree-3pebyj-logo-gimp-20180608t070556832z
title
bodyGo here https://steemit.com/@a-a-a to get your post resteemed to over 72,000 followers.
json metadata{"tags":["cambodia"],"links":["https://steemit.com/@a-a-a"],"app":"steemit/0.1"}
Transaction InfoBlock #23135889/Trx 99f8e7d351a2463c28c3a6896fa33b3534b10e45
View Raw JSON Data
{
  "trx_id": "99f8e7d351a2463c28c3a6896fa33b3534b10e45",
  "block": 23135889,
  "trx_in_block": 83,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-08T07:05:54",
  "op": [
    "comment",
    {
      "parent_author": "techfree",
      "parent_permlink": "3pebyj-logo-gimp",
      "author": "a-0-1",
      "permlink": "re-techfree-3pebyj-logo-gimp-20180608t070556832z",
      "title": "",
      "body": "Go here https://steemit.com/@a-a-a to get your post resteemed to over 72,000 followers.",
      "json_metadata": "{\"tags\":[\"cambodia\"],\"links\":[\"https://steemit.com/@a-a-a\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
techfreepublished a new post: 3pebyj-logo-gimp
2018/06/08 07:05:18
parent author
parent permlinkcambodia
authortechfree
permlink3pebyj-logo-gimp
titleបង្កើត Logo ងាយៗជាមួយកម្មវិធី GIMP (វគ្គ ២)
body![gimplogo.png](https://cdn.steemitimages.com/DQmdernevnvFdrvsXYbf6xxfnMhwM3ZTUGtM3trZtBDP2yn/gimplogo.png) កាលពីអត្ថបទមុន Techfree បាននិយាយពីការ បង្កើត Logo ងាយៗជាមួយកម្មវិធី GIMP (វគ្គ ១)។ នៅក្នុងអត្ថបទនេះយើងនឹងបន្តទៅវគ្គ ២ នៃការបង្កើត Logo ជាមួយកម្មវិធី GIMP។ ដំបូងអ្នកត្រូវធ្វើការតំឡើងកម្មវិធី GIMP នៅលើកំព្យូទ័ររបស់អ្នក បន្ទាប់មកដំណើរការកម្មវិធីនេះ។ រួចចុច File –> Create –> Logo ហើយជ្រើសរើសម៉ូដណាមួយដែលអ្នកចង់បាន។ ខាងក្រោមនេះគឺជាឧទាហរណ៍នៃការបង្កើត Logo ទាំងនោះ៖ * **Chrome** សូមធ្វើការកំណត់ចំពោះអក្សរ, ហ្វុងអក្សរ….. ដូចរូបខាងក្រោម រួចចុចប៊ូតុង OK ដើម្បីបង្កើត Logo ![gimp-1.png](https://cdn.steemitimages.com/DQmWPdEnFevdNuf84rNQX7zGTRNi55RRdrLKbkBbophCaGv/gimp-1.png) នោះអ្នកនឹងទទួលបាន Logo មួយដូចខាងក្រោម៖ ![gimp.jpg](https://cdn.steemitimages.com/DQmYweSRVF2gokyo6GSBtTsa82k3LYVQBcU9raqEnN3mSB2/gimp.jpg) * **Comic Book** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp1.jpg](https://cdn.steemitimages.com/DQmcb4r6tZW58SnxbdZoS5ha8CH4n2wztX9hwcBNfos4CtP/gimp1.jpg) * **Cool Metal** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp2.jpeg](https://cdn.steemitimages.com/DQmUtU6v5e5YVkgEmUfRj5WAS1igVD74RwYSrTYuowh4ER9/gimp2.jpeg) * **Crystal** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp3.jpeg](https://cdn.steemitimages.com/DQmbJBL76CkxTYL2XLXGiD3EcoUeFzxZoHTBBXWoqs8QhXF/gimp3.jpeg) * **Frosty** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp4.jpeg](https://cdn.steemitimages.com/DQmUdLJeMG3i3eyzGe3QLVkEABY6j4NHvSN1okv21dL9ffN/gimp4.jpeg) * **Glossy** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp5.jpeg](https://cdn.steemitimages.com/DQmSbqD1fRjFBuFm3jU71snrP9rJS8fkU6e9Dim7kGaRCvs/gimp5.jpeg) * **Glowing Hot** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp6.jpeg](https://cdn.steemitimages.com/DQmQje5xfda1d1acSurxkaXdQhTspCbfu9uQwbxCkfF1ahp/gimp6.jpeg) * **Gradient Bevel** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp7.jpeg](https://cdn.steemitimages.com/DQmaZmgFkzE8YDaJNA7oBcmfh7Dim26fc11H36PtZVCoARh/gimp7.jpeg) * **Imigre-26** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp8.jpeg](https://cdn.steemitimages.com/DQmRDCSJqWUkdpEu7p7LoC63LCvyhtReiUjSb2DkmLM31fi/gimp8.jpeg) * **Neon** (ធ្វើការកំណត់ដូចខាងលើ) ![gimp9.jpeg](https://cdn.steemitimages.com/DQmRBfwoPaXRDB1DUyu99aNKPrcnV3zE2tNWFDdWLkBLsrf/gimp9.jpeg) [ប្រភពដើម](https://www.techfree.info/2016/10/24/create-logo-with-gimp-2/)
json metadata{"tags":["cambodia","khmer","logo","gimp"],"image":["https://cdn.steemitimages.com/DQmdernevnvFdrvsXYbf6xxfnMhwM3ZTUGtM3trZtBDP2yn/gimplogo.png","https://cdn.steemitimages.com/DQmWPdEnFevdNuf84rNQX7zGTRNi55RRdrLKbkBbophCaGv/gimp-1.png","https://cdn.steemitimages.com/DQmYweSRVF2gokyo6GSBtTsa82k3LYVQBcU9raqEnN3mSB2/gimp.jpg","https://cdn.steemitimages.com/DQmcb4r6tZW58SnxbdZoS5ha8CH4n2wztX9hwcBNfos4CtP/gimp1.jpg","https://cdn.steemitimages.com/DQmUtU6v5e5YVkgEmUfRj5WAS1igVD74RwYSrTYuowh4ER9/gimp2.jpeg","https://cdn.steemitimages.com/DQmbJBL76CkxTYL2XLXGiD3EcoUeFzxZoHTBBXWoqs8QhXF/gimp3.jpeg","https://cdn.steemitimages.com/DQmUdLJeMG3i3eyzGe3QLVkEABY6j4NHvSN1okv21dL9ffN/gimp4.jpeg","https://cdn.steemitimages.com/DQmSbqD1fRjFBuFm3jU71snrP9rJS8fkU6e9Dim7kGaRCvs/gimp5.jpeg","https://cdn.steemitimages.com/DQmQje5xfda1d1acSurxkaXdQhTspCbfu9uQwbxCkfF1ahp/gimp6.jpeg","https://cdn.steemitimages.com/DQmaZmgFkzE8YDaJNA7oBcmfh7Dim26fc11H36PtZVCoARh/gimp7.jpeg","https://cdn.steemitimages.com/DQmRDCSJqWUkdpEu7p7LoC63LCvyhtReiUjSb2DkmLM31fi/gimp8.jpeg","https://cdn.steemitimages.com/DQmRBfwoPaXRDB1DUyu99aNKPrcnV3zE2tNWFDdWLkBLsrf/gimp9.jpeg"],"links":["https://www.techfree.info/2016/10/24/create-logo-with-gimp-2/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23135877/Trx c96308077c3e869c6b7261f3a48b12b795438a85
View Raw JSON Data
{
  "trx_id": "c96308077c3e869c6b7261f3a48b12b795438a85",
  "block": 23135877,
  "trx_in_block": 71,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-08T07:05:18",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "3pebyj-logo-gimp",
      "title": "បង្កើត Logo ងាយៗជាមួយកម្មវិធី GIMP (វគ្គ ២)",
      "body": "![gimplogo.png](https://cdn.steemitimages.com/DQmdernevnvFdrvsXYbf6xxfnMhwM3ZTUGtM3trZtBDP2yn/gimplogo.png)\n\nកាលពីអត្ថបទមុន Techfree បាននិយាយពីការ បង្កើត Logo ងាយៗជាមួយកម្មវិធី GIMP (វគ្គ ១)។ នៅក្នុងអត្ថបទនេះយើងនឹងបន្តទៅវគ្គ ២ នៃការបង្កើត Logo ជាមួយកម្មវិធី GIMP។\n\nដំបូងអ្នកត្រូវធ្វើការតំឡើងកម្មវិធី GIMP នៅលើកំព្យូទ័ររបស់អ្នក បន្ទាប់មកដំណើរការកម្មវិធីនេះ។ រួចចុច File –> Create –> Logo ហើយជ្រើសរើសម៉ូដណាមួយដែលអ្នកចង់បាន។ ខាងក្រោមនេះគឺជាឧទាហរណ៍នៃការបង្កើត Logo ទាំងនោះ៖\n\n* **Chrome**\n\nសូមធ្វើការកំណត់ចំពោះអក្សរ, ហ្វុងអក្សរ….. ដូចរូបខាងក្រោម រួចចុចប៊ូតុង OK ដើម្បីបង្កើត Logo\n\n![gimp-1.png](https://cdn.steemitimages.com/DQmWPdEnFevdNuf84rNQX7zGTRNi55RRdrLKbkBbophCaGv/gimp-1.png)\n\nនោះអ្នកនឹងទទួលបាន Logo មួយដូចខាងក្រោម៖\n\n![gimp.jpg](https://cdn.steemitimages.com/DQmYweSRVF2gokyo6GSBtTsa82k3LYVQBcU9raqEnN3mSB2/gimp.jpg)\n\n* **Comic Book** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp1.jpg](https://cdn.steemitimages.com/DQmcb4r6tZW58SnxbdZoS5ha8CH4n2wztX9hwcBNfos4CtP/gimp1.jpg)\n\n* **Cool Metal** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp2.jpeg](https://cdn.steemitimages.com/DQmUtU6v5e5YVkgEmUfRj5WAS1igVD74RwYSrTYuowh4ER9/gimp2.jpeg)\n\n* **Crystal** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp3.jpeg](https://cdn.steemitimages.com/DQmbJBL76CkxTYL2XLXGiD3EcoUeFzxZoHTBBXWoqs8QhXF/gimp3.jpeg)\n\n* **Frosty** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp4.jpeg](https://cdn.steemitimages.com/DQmUdLJeMG3i3eyzGe3QLVkEABY6j4NHvSN1okv21dL9ffN/gimp4.jpeg)\n\n* **Glossy** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp5.jpeg](https://cdn.steemitimages.com/DQmSbqD1fRjFBuFm3jU71snrP9rJS8fkU6e9Dim7kGaRCvs/gimp5.jpeg)\n\n* **Glowing Hot** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp6.jpeg](https://cdn.steemitimages.com/DQmQje5xfda1d1acSurxkaXdQhTspCbfu9uQwbxCkfF1ahp/gimp6.jpeg)\n\n* **Gradient Bevel** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp7.jpeg](https://cdn.steemitimages.com/DQmaZmgFkzE8YDaJNA7oBcmfh7Dim26fc11H36PtZVCoARh/gimp7.jpeg)\n\n* **Imigre-26** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp8.jpeg](https://cdn.steemitimages.com/DQmRDCSJqWUkdpEu7p7LoC63LCvyhtReiUjSb2DkmLM31fi/gimp8.jpeg)\n\n* **Neon** (ធ្វើការកំណត់ដូចខាងលើ)\n\n![gimp9.jpeg](https://cdn.steemitimages.com/DQmRBfwoPaXRDB1DUyu99aNKPrcnV3zE2tNWFDdWLkBLsrf/gimp9.jpeg)\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/24/create-logo-with-gimp-2/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"logo\",\"gimp\"],\"image\":[\"https://cdn.steemitimages.com/DQmdernevnvFdrvsXYbf6xxfnMhwM3ZTUGtM3trZtBDP2yn/gimplogo.png\",\"https://cdn.steemitimages.com/DQmWPdEnFevdNuf84rNQX7zGTRNi55RRdrLKbkBbophCaGv/gimp-1.png\",\"https://cdn.steemitimages.com/DQmYweSRVF2gokyo6GSBtTsa82k3LYVQBcU9raqEnN3mSB2/gimp.jpg\",\"https://cdn.steemitimages.com/DQmcb4r6tZW58SnxbdZoS5ha8CH4n2wztX9hwcBNfos4CtP/gimp1.jpg\",\"https://cdn.steemitimages.com/DQmUtU6v5e5YVkgEmUfRj5WAS1igVD74RwYSrTYuowh4ER9/gimp2.jpeg\",\"https://cdn.steemitimages.com/DQmbJBL76CkxTYL2XLXGiD3EcoUeFzxZoHTBBXWoqs8QhXF/gimp3.jpeg\",\"https://cdn.steemitimages.com/DQmUdLJeMG3i3eyzGe3QLVkEABY6j4NHvSN1okv21dL9ffN/gimp4.jpeg\",\"https://cdn.steemitimages.com/DQmSbqD1fRjFBuFm3jU71snrP9rJS8fkU6e9Dim7kGaRCvs/gimp5.jpeg\",\"https://cdn.steemitimages.com/DQmQje5xfda1d1acSurxkaXdQhTspCbfu9uQwbxCkfF1ahp/gimp6.jpeg\",\"https://cdn.steemitimages.com/DQmaZmgFkzE8YDaJNA7oBcmfh7Dim26fc11H36PtZVCoARh/gimp7.jpeg\",\"https://cdn.steemitimages.com/DQmRDCSJqWUkdpEu7p7LoC63LCvyhtReiUjSb2DkmLM31fi/gimp8.jpeg\",\"https://cdn.steemitimages.com/DQmRBfwoPaXRDB1DUyu99aNKPrcnV3zE2tNWFDdWLkBLsrf/gimp9.jpeg\"],\"links\":[\"https://www.techfree.info/2016/10/24/create-logo-with-gimp-2/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: port-scan-nmap
2018/06/08 03:49:45
parent author
parent permlinkcambodia
authortechfree
permlinkport-scan-nmap
titleស្វែងយល់ពី port Scan ដោយប្រើប្រាស់​ nmap
body![scan-filter.png](https://cdn.steemitimages.com/DQmNbWkk8bdSoYks8VqanEWJNSKQeCVX29sp3fWcHuvHtWs/scan-filter.png) nmap ជាប្រភេទ Open Source Tool ដែលត្រូវបានពេញនិយមប្រើប្រាស់សម្រាប់ត្រួតពិនិត្យមើលថាតើមាន port ណាខ្លះបើកឬបិទ តើប្រភេទ Server អ្វី? ប្រើប្រាស់ OS ប្រភេទអ្វី និងអាចមើលពី Service ផ្សេងៗបានទៀតផង។ NMAP ជា Tool មួយត្រូវបានគេប្រើប្រាស់នៅក្នុង Penetrate Testing ផងដែរដើម្បីអោយដឹងថាតើមាន Port ណាដែលបើកខ្លះនិងបិទ និងប្រាកដថា Port ទាំងនោះមានសុវត្ថិភាពដែរឬទេ? ចំនុចសំខាន់ដែលអ្នកត្រូវដឹងពីស្ថានភាពរបស់ Portមានដូចខាងក្រោមនេះ **open**: Application កំពុងដំណើរការលើ port នោះ **close**: Application មិនដំណើរការនៅលើ port នោះទេ ឬ Service Application stop **filtered**: nmap ចាប់ស្ថានភាពមិនបានដោយ Firewall បិទ unfiltered: មានន័យថា nmap ចាប់ស្ថានភាព port បាន ដែល port នោះអាចប្រើប្រាស់បានតែ nmap មិនដឹងថាport នោះបើកឬបិទនោះទេ។ **open/filtered**: port អាចត្រូវបានគេ filter តែ nmap ចាប់ស្ថានភាពមិនបាន។ **close/filtered**: nmap អត់ដឹងថា port បិទឬ ត្រូវបានគេ Filter ទេ nmap អាចដោនឡូតយកមកប្រើប្រាស់បាននៅក្នុង លីនុច ដោយប្រើប្រាស់ command `yum -y install nmap` បន្ទាប់មកអ្នកនិងអាចប្រើប្រាស់ Command បានដូចខាងក្រោមនេះ ![googleport.png](https://cdn.steemitimages.com/DQmcQJWzzz68d97AZyPfpeVxjKotND6ziTk8FLcbBWeArxV/googleport.png) nmap -sV domainname/ip អាច Scan ដឹងពីពត៏មានផ្សេងៗនិងលំអិតដូចជាឈ្មោះ Service ជាដើម ![scanport.png](https://cdn.steemitimages.com/DQmYsx1sFiAop2wcVGJDfyFuMCHP84xtWb8kYVrh7g6XRK1/scanport.png) nmap -p 1-50000 domainname/IP សម្រាប់ Scan port នៅចន្លោះ១ដល់៥០០០០ ![portscan-range.png](https://cdn.steemitimages.com/DQmctfCvXQWBxLLxirkU4Y514uRf7v7dV1m9sw6hPornCE7/portscan-range.png) System Administrator មួយចំនួនគេអាចបិទ ICMP Protocol មិនអោយ Ping ជាដើម តែ Nmap អាច Scan បាន ដោយប្រើប្រាស់ Command ![tracetimeotut.png](https://cdn.steemitimages.com/DQmWZBADbTSpn4zdtErTtffvVUaYK5dNBUKxnvED1GM2xtH/tracetimeotut.png) nmap -sP domainname/IP ![scan-filter (1).png](https://cdn.steemitimages.com/DQmfLvx8ZW9q1xUPhHN8WC6kqxmHiLcgtpnVvr14psWueaf/scan-filter%20(1).png) នៅពេលដែលយើងមិនប្រើប្រាស់ ធម្មតា វាបង្ហាញថា Filter មានន័យថាគេបិទមិនអោយ Scan ដូចនេះយើង Tracert ទៅក៏វាឆ្លើយថា time out ជាដើម ទាល់តែ Tracert ទៅផុតបានវាស្គាល់វិញ។បញ្ហានេះយើងអាចប្រើប្រាស់ -sP ដើម្បី Scan ទើបអាចដឹងថាតើ IP នោះដំណើរការឬអត់។ ប្រសិនបើអ្នកចង់ Scan port នៅចន្លោះណាមួយនៅលើ IP ណាមួយដែលគេបិទមិនអោយ Scanអ្នកអាចប្រើប្រាស់ Command ដូចខាងក្រោមដើម្បីបង្ខំអោយ nmap scan តែយឺតបន្តិច។ ![portrange-filter.png](https://cdn.steemitimages.com/DQmZC6cqP4PL7xQDwU8z9b9789FvPSQ8xL8rWXcJbtJu2PV/portrange-filter.png) ប្រសិនបើអ្នកចង់ដឹងពីព័ត៌មានរបស់ Operating System អាចប្រើប្រាស់ដូច Command ខាងក្រោមនេះ ![scanOS.png](https://cdn.steemitimages.com/DQmStQbZLsc5uejp3RerAvmdtacCKe2pUW2LMBRffZKb7jo/scanOS.png) ប្រសិនបើ Port គេ Filter យើងអាច Scan ដោយអោយវាបង្ហាញ reason ហេតុផលថាហេតុអ្វីបាន Scan មិនឃើញដោយប្រើប្រាស់ Command ដូចខាងក្រោម ![scan-facebook.png](https://cdn.steemitimages.com/DQmdyJAJjYr2CtzR61XqxRtZHGMrVYwKPPmcB2ofajEJwoz/scan-facebook.png) Scan UDP Protocol អ្នកអាចប្រើប្រាស់ Command ដូចខាងក្រោម ![scan-udp.png](https://cdn.steemitimages.com/DQmYb7vstUj3bksd8oyWMuY3pB6GhEUxsTzou2W3rtXDFqD/scan-udp.png) [ប្រភពដើម](https://www.techfree.info/2016/10/23/nmap/)
json metadata{"tags":["cambodia","khmer","portscan","nmap"],"image":["https://cdn.steemitimages.com/DQmNbWkk8bdSoYks8VqanEWJNSKQeCVX29sp3fWcHuvHtWs/scan-filter.png","https://cdn.steemitimages.com/DQmcQJWzzz68d97AZyPfpeVxjKotND6ziTk8FLcbBWeArxV/googleport.png","https://cdn.steemitimages.com/DQmYsx1sFiAop2wcVGJDfyFuMCHP84xtWb8kYVrh7g6XRK1/scanport.png","https://cdn.steemitimages.com/DQmctfCvXQWBxLLxirkU4Y514uRf7v7dV1m9sw6hPornCE7/portscan-range.png","https://cdn.steemitimages.com/DQmWZBADbTSpn4zdtErTtffvVUaYK5dNBUKxnvED1GM2xtH/tracetimeotut.png","https://cdn.steemitimages.com/DQmfLvx8ZW9q1xUPhHN8WC6kqxmHiLcgtpnVvr14psWueaf/scan-filter%20(1).png","https://cdn.steemitimages.com/DQmZC6cqP4PL7xQDwU8z9b9789FvPSQ8xL8rWXcJbtJu2PV/portrange-filter.png","https://cdn.steemitimages.com/DQmStQbZLsc5uejp3RerAvmdtacCKe2pUW2LMBRffZKb7jo/scanOS.png","https://cdn.steemitimages.com/DQmdyJAJjYr2CtzR61XqxRtZHGMrVYwKPPmcB2ofajEJwoz/scan-facebook.png","https://cdn.steemitimages.com/DQmYb7vstUj3bksd8oyWMuY3pB6GhEUxsTzou2W3rtXDFqD/scan-udp.png"],"links":["https://www.techfree.info/2016/10/23/nmap/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23131966/Trx 8c232a93ce0906a1dff901f57bdf7742f32dae51
View Raw JSON Data
{
  "trx_id": "8c232a93ce0906a1dff901f57bdf7742f32dae51",
  "block": 23131966,
  "trx_in_block": 36,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-08T03:49:45",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "port-scan-nmap",
      "title": "ស្វែងយល់ពី port Scan ដោយប្រើប្រាស់​ nmap",
      "body": "![scan-filter.png](https://cdn.steemitimages.com/DQmNbWkk8bdSoYks8VqanEWJNSKQeCVX29sp3fWcHuvHtWs/scan-filter.png)\n\nnmap ជាប្រភេទ Open Source Tool ដែលត្រូវបានពេញនិយមប្រើប្រាស់សម្រាប់ត្រួតពិនិត្យមើលថាតើមាន port ណាខ្លះបើកឬបិទ តើប្រភេទ Server អ្វី? ប្រើប្រាស់ OS ប្រភេទអ្វី និងអាចមើលពី Service ផ្សេងៗបានទៀតផង។\n\nNMAP ជា Tool មួយត្រូវបានគេប្រើប្រាស់នៅក្នុង  Penetrate Testing ផងដែរដើម្បីអោយដឹងថាតើមាន Port ណាដែលបើកខ្លះនិងបិទ និងប្រាកដថា Port ទាំងនោះមានសុវត្ថិភាពដែរឬទេ?\n\nចំនុចសំខាន់ដែលអ្នកត្រូវដឹងពីស្ថានភាពរបស់ Portមានដូចខាងក្រោមនេះ \n\n**open**: Application កំពុងដំណើរការលើ  port នោះ\n\n**close**: Application មិនដំណើរការនៅលើ port នោះទេ ឬ Service Application stop\n\n**filtered**: nmap ចាប់ស្ថានភាពមិនបានដោយ Firewall បិទ\n\nunfiltered: មានន័យថា nmap ចាប់ស្ថានភាព port បាន ដែល port នោះអាចប្រើប្រាស់បានតែ nmap មិនដឹងថាport នោះបើកឬបិទនោះទេ។\n\n**open/filtered**: port អាចត្រូវបានគេ filter តែ nmap ចាប់ស្ថានភាពមិនបាន។\n\n**close/filtered**: nmap អត់ដឹងថា port បិទឬ ត្រូវបានគេ Filter ទេ\n\nnmap អាចដោនឡូតយកមកប្រើប្រាស់បាននៅក្នុង លីនុច ដោយប្រើប្រាស់ command\n\n`yum   -y install nmap`\n\nបន្ទាប់មកអ្នកនិងអាចប្រើប្រាស់ Command បានដូចខាងក្រោមនេះ\n\n![googleport.png](https://cdn.steemitimages.com/DQmcQJWzzz68d97AZyPfpeVxjKotND6ziTk8FLcbBWeArxV/googleport.png)\n\nnmap   -sV  domainname/ip អាច Scan ដឹងពីពត៏មានផ្សេងៗនិងលំអិតដូចជាឈ្មោះ Service ជាដើម\n\n![scanport.png](https://cdn.steemitimages.com/DQmYsx1sFiAop2wcVGJDfyFuMCHP84xtWb8kYVrh7g6XRK1/scanport.png)\n\nnmap  -p 1-50000 domainname/IP សម្រាប់ Scan port នៅចន្លោះ១ដល់៥០០០០\n\n![portscan-range.png](https://cdn.steemitimages.com/DQmctfCvXQWBxLLxirkU4Y514uRf7v7dV1m9sw6hPornCE7/portscan-range.png)\n\nSystem Administrator មួយចំនួនគេអាចបិទ ICMP Protocol មិនអោយ Ping ជាដើម តែ Nmap អាច Scan បាន ដោយប្រើប្រាស់ Command\n\n![tracetimeotut.png](https://cdn.steemitimages.com/DQmWZBADbTSpn4zdtErTtffvVUaYK5dNBUKxnvED1GM2xtH/tracetimeotut.png)\n\nnmap  -sP  domainname/IP\n\n![scan-filter (1).png](https://cdn.steemitimages.com/DQmfLvx8ZW9q1xUPhHN8WC6kqxmHiLcgtpnVvr14psWueaf/scan-filter%20(1).png)\n\nនៅពេលដែលយើងមិនប្រើប្រាស់ ធម្មតា វាបង្ហាញថា Filter មានន័យថាគេបិទមិនអោយ Scan ដូចនេះយើង Tracert ទៅក៏វាឆ្លើយថា time out ជាដើម ទាល់តែ Tracert ទៅផុតបានវាស្គាល់វិញ។បញ្ហានេះយើងអាចប្រើប្រាស់ -sP ដើម្បី Scan ទើបអាចដឹងថាតើ IP នោះដំណើរការឬអត់។\n\nប្រសិនបើអ្នកចង់ Scan port នៅចន្លោះណាមួយនៅលើ IP ណាមួយដែលគេបិទមិនអោយ Scanអ្នកអាចប្រើប្រាស់ Command ដូចខាងក្រោមដើម្បីបង្ខំអោយ nmap scan តែយឺតបន្តិច។\n\n![portrange-filter.png](https://cdn.steemitimages.com/DQmZC6cqP4PL7xQDwU8z9b9789FvPSQ8xL8rWXcJbtJu2PV/portrange-filter.png)\n\nប្រសិនបើអ្នកចង់ដឹងពីព័ត៌មានរបស់ Operating System អាចប្រើប្រាស់ដូច Command ខាងក្រោមនេះ\n\n![scanOS.png](https://cdn.steemitimages.com/DQmStQbZLsc5uejp3RerAvmdtacCKe2pUW2LMBRffZKb7jo/scanOS.png)\n\nប្រសិនបើ Port គេ Filter យើងអាច Scan ដោយអោយវាបង្ហាញ reason ហេតុផលថាហេតុអ្វីបាន Scan មិនឃើញដោយប្រើប្រាស់ Command ដូចខាងក្រោម\n\n![scan-facebook.png](https://cdn.steemitimages.com/DQmdyJAJjYr2CtzR61XqxRtZHGMrVYwKPPmcB2ofajEJwoz/scan-facebook.png)\n\nScan UDP Protocol អ្នកអាចប្រើប្រាស់ Command ដូចខាងក្រោម\n\n![scan-udp.png](https://cdn.steemitimages.com/DQmYb7vstUj3bksd8oyWMuY3pB6GhEUxsTzou2W3rtXDFqD/scan-udp.png)\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/23/nmap/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"portscan\",\"nmap\"],\"image\":[\"https://cdn.steemitimages.com/DQmNbWkk8bdSoYks8VqanEWJNSKQeCVX29sp3fWcHuvHtWs/scan-filter.png\",\"https://cdn.steemitimages.com/DQmcQJWzzz68d97AZyPfpeVxjKotND6ziTk8FLcbBWeArxV/googleport.png\",\"https://cdn.steemitimages.com/DQmYsx1sFiAop2wcVGJDfyFuMCHP84xtWb8kYVrh7g6XRK1/scanport.png\",\"https://cdn.steemitimages.com/DQmctfCvXQWBxLLxirkU4Y514uRf7v7dV1m9sw6hPornCE7/portscan-range.png\",\"https://cdn.steemitimages.com/DQmWZBADbTSpn4zdtErTtffvVUaYK5dNBUKxnvED1GM2xtH/tracetimeotut.png\",\"https://cdn.steemitimages.com/DQmfLvx8ZW9q1xUPhHN8WC6kqxmHiLcgtpnVvr14psWueaf/scan-filter%20(1).png\",\"https://cdn.steemitimages.com/DQmZC6cqP4PL7xQDwU8z9b9789FvPSQ8xL8rWXcJbtJu2PV/portrange-filter.png\",\"https://cdn.steemitimages.com/DQmStQbZLsc5uejp3RerAvmdtacCKe2pUW2LMBRffZKb7jo/scanOS.png\",\"https://cdn.steemitimages.com/DQmdyJAJjYr2CtzR61XqxRtZHGMrVYwKPPmcB2ofajEJwoz/scan-facebook.png\",\"https://cdn.steemitimages.com/DQmYb7vstUj3bksd8oyWMuY3pB6GhEUxsTzou2W3rtXDFqD/scan-udp.png\"],\"links\":[\"https://www.techfree.info/2016/10/23/nmap/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
techfreepublished a new post: 6zurgn-mail-server
2018/06/07 09:16:33
parent author
parent permlinkcambodia
authortechfree
permlink6zurgn-mail-server
titleរបៀបតម្លើង Mail Server ប្រើប្រាស់ដោយខ្លួនឯង
body![login-from-webmail.png](https://cdn.steemitimages.com/DQmc6DAPkwjrSsWUtkSRpn1pvUcBzMMtQJRQYgH54PTY8ar/login-from-webmail.png) Email ត្រូវបានប្រើប្រាស់រាល់ថ្ងៃ និងមាន Domain ផ្សេងៗដូចជា [email protected] ជាដើម។ username ជាឈ្មោះអ្នកប្រើប្រាស់ @comanyname ជា Domain name ឬ អាចថាជាឈ្មោះក្រុមហ៊ុនជាដើម ដើម្បីអោយដឹងថាតើបុគ្គលឈ្មោះនោះប្រើប្រាស់ Email ចេញពីក្រុមហ៊ុនណាងាយស្រួលរក។ ការប្រើប្រាស់ Email មិនមានបញ្ហាពិបាកនោះទេ ប្រសិនបើតម្លើង Mail Server មួយដើម្បីអាចប្រើប្រាស់បានវាមានការពិបាកបន្តិចដែរ ដោយអ្នកត្រូវគិតទៅដល់ផ្នែកសុវត្ថិភាព និង ដឹងពីរបៀប Mail Server ធ្វើការងារ។ ខាងក្រោមនេះជាការបង្កើត Mail Server មួយប្រើប្រាស់សម្រាប់ក្រុមហ៊ុនមួយខ្លីៗ ងាយយល់ នៅលើ CentOS 7 ដំបូងត្រូវតម្លើង Postfix និង Dovecot ជាមុន `yum -y install dovecot postfix` បន្ទាប់មក Restart Service `chkconfig –level 35 postfix on` `chkconfig –level 35 dovecot on` `service postfix restart` `service dovecot restart` បន្ទាប់មកទៀតចូលទៅកែ ឈ្មោះ Server របស់អ្នក នៅក្នុុង /etc/hosts ដោយបន្ថែមដូចខាងក្រោមនេះ 188.166.179.246 server.brembrey.com brembrey.com mail.brembrey.com smtp.brembrey.com តែត្រូវប្រាកដថាបានបង្កើត mx record នៅក្នុង godady ដែល point ទៅកាន់ IP 188.166.179.246 និងប្រាកដថា ឈ្មោះ server ទាំងអស់ខាងលើនេះមាននៅក្នុង godaddy DNS Record ផងដែរ។ បន្ទាប់មកទៀតអ្នកអាច ចូលទៅកែ /etc/postfix/main.cf `hostname = server.brembrey.com` `domainname=brembrey.com` `myorigin = $mydomain` និងបន្ថែមមួយចំនួនដូចខាងក្រោមដូចដែលជាការបន្ថែម SSL សម្រាប់ SMTP Server `smtpd_use_tls = yes` `smtpd_tls_cert_file = /etc/letsencrypt/live/brembrey.com/cert.pem` `smtpd_tls_key_file = /etc/letsencrypt/live/brembrey.com/privkey.pem` `smtpd_tls_session_cache_database = btree:/etc/postfix/smtpd_scache` បន្ទាប់មកទៀតត្រូវចូលទៅកែ File /etc/postfix/master.cf ![postfix-master.png](https://cdn.steemitimages.com/DQmaj5LQL8EE4grZmxTPfTbvNWH2wyiHUiqiaSnUBMZeck9/postfix-master.png) បន្ទាប់មកអ្នកអាចចូលទៅកែ File មួយចំនួនរបស់ Dovecot ម្តង `vi /etc/dovecot/conf.d/10-master.conf` ![master.png](https://cdn.steemitimages.com/DQmPqP793CACtijXrU3E9jgqZagybeCTEZ7C3U4zBaJoZJ5/master.png) ![master-auth.png](https://cdn.steemitimages.com/DQmUWWeeA3emsXRPc5uyPS6avkv34vvyncZmHBVP8HgivgR/master-auth.png) vi /etc/dovecot/conf.d/10-auth.conf auth_mechanisms = plain login បន្ទាប់មកកែ File /etc/dovecot/conf.d/10-mail.conf `mail_location = maildir:~/Maildir` បន្ទាប់មកកែ file /etc/dovecot/conf.d/10-ssl.conf ![sslmail.png](https://cdn.steemitimages.com/DQmRUzCBL86DmdWE4Wf1CHSwYCPkzGxYJPQVcZfzrgbfACe/sslmail.png) ចុងក្រោយអ្នកអាច Restart Service postfix និង dovecot បានហើយប្រសិនបើធ្វើត្រូវនោះអាចប្រើប្រាស់បានហើយ ![testing-email.png](https://cdn.steemitimages.com/DQmabrQAykUGoyWW4AdeCxrsrUSesR1w96cv1LvjqA5rjxH/testing-email.png) Gmail អាច Block Email អ្នកប្រសិនបើអ្នកប្រើប្រាស់តាម commandព្រោះ Email ប្រើប្រាស់ SMTP Port 25 គួរតែប្រើប្រាស់តាម Outlook ឬ WebMail។ ![test-email.png](https://cdn.steemitimages.com/DQmQUPZeXkjZDhz334wPxTSArp5GHbgiwyKVLsSnkHhEjfG/test-email.png) អ្នកអាចដោនឡូត Rainloop mail មកតម្លើងជាមួយ Web Server បន្ទាប់មក Configure SMTP and IMAP Address របស់ Mail Server របស់អ្នក។ បន្ទាប់មកអ្នកអាចប្រើប្រាស់ Mail តាមរយះ Webmail បាន ចំណាំ៖ ប្រសិនបើអ្នកធ្វើEmail Server ដូចនេះយ៉ាងហោចណាស់ក៏ត្រូវចំណាយពេលមួយថ្ងៃ ដើម្បីអាចផ្ញើ Email ចេញទៅ Domain ផ្សេងៗបាន ព្រោះ DNS Record អាច update យឺត។ សម្រាប់អត្តបទខាងលើនេះ ជា Email ត្រឹមត្រូវមិនមែនជា Local Email ដែលតម្លើងនៅលើ Vmware នៅក្នុង ក្នុងកុំព្យូទ័រទេ។ [ប្រភពដើម](https://www.techfree.info/2016/10/23/install-postfix/)
json metadata{"tags":["cambodia","khmer","mail","server"],"users":["comanyname"],"image":["https://cdn.steemitimages.com/DQmc6DAPkwjrSsWUtkSRpn1pvUcBzMMtQJRQYgH54PTY8ar/login-from-webmail.png","https://cdn.steemitimages.com/DQmaj5LQL8EE4grZmxTPfTbvNWH2wyiHUiqiaSnUBMZeck9/postfix-master.png","https://cdn.steemitimages.com/DQmPqP793CACtijXrU3E9jgqZagybeCTEZ7C3U4zBaJoZJ5/master.png","https://cdn.steemitimages.com/DQmUWWeeA3emsXRPc5uyPS6avkv34vvyncZmHBVP8HgivgR/master-auth.png","https://cdn.steemitimages.com/DQmRUzCBL86DmdWE4Wf1CHSwYCPkzGxYJPQVcZfzrgbfACe/sslmail.png","https://cdn.steemitimages.com/DQmabrQAykUGoyWW4AdeCxrsrUSesR1w96cv1LvjqA5rjxH/testing-email.png","https://cdn.steemitimages.com/DQmQUPZeXkjZDhz334wPxTSArp5GHbgiwyKVLsSnkHhEjfG/test-email.png"],"links":["https://www.techfree.info/2016/10/23/install-postfix/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23109720/Trx dc4ed751a4ad8f79994f3f736987627b16ffddec
View Raw JSON Data
{
  "trx_id": "dc4ed751a4ad8f79994f3f736987627b16ffddec",
  "block": 23109720,
  "trx_in_block": 25,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-07T09:16:33",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "6zurgn-mail-server",
      "title": "របៀបតម្លើង Mail Server ប្រើប្រាស់ដោយខ្លួនឯង",
      "body": "![login-from-webmail.png](https://cdn.steemitimages.com/DQmc6DAPkwjrSsWUtkSRpn1pvUcBzMMtQJRQYgH54PTY8ar/login-from-webmail.png)\n\nEmail ត្រូវបានប្រើប្រាស់រាល់ថ្ងៃ និងមាន Domain ផ្សេងៗដូចជា [email protected] ជាដើម។ username ជាឈ្មោះអ្នកប្រើប្រាស់ @comanyname ជា Domain name ឬ អាចថាជាឈ្មោះក្រុមហ៊ុនជាដើម ដើម្បីអោយដឹងថាតើបុគ្គលឈ្មោះនោះប្រើប្រាស់ Email ចេញពីក្រុមហ៊ុនណាងាយស្រួលរក។\n\nការប្រើប្រាស់ Email មិនមានបញ្ហាពិបាកនោះទេ ប្រសិនបើតម្លើង Mail Server មួយដើម្បីអាចប្រើប្រាស់បានវាមានការពិបាកបន្តិចដែរ ដោយអ្នកត្រូវគិតទៅដល់ផ្នែកសុវត្ថិភាព និង ដឹងពីរបៀប Mail Server ធ្វើការងារ។\n\nខាងក្រោមនេះជាការបង្កើត Mail Server មួយប្រើប្រាស់សម្រាប់ក្រុមហ៊ុនមួយខ្លីៗ ងាយយល់ នៅលើ  CentOS 7\n\nដំបូងត្រូវតម្លើង Postfix និង Dovecot ជាមុន\n\n`yum  -y install dovecot  postfix`\n\nបន្ទាប់មក Restart Service\n\n`chkconfig –level 35 postfix on`\n\n`chkconfig  –level 35 dovecot on`\n\n`service postfix restart`\n\n`service dovecot restart`\n\nបន្ទាប់មកទៀតចូលទៅកែ ឈ្មោះ Server របស់អ្នក នៅក្នុុង /etc/hosts ដោយបន្ថែមដូចខាងក្រោមនេះ\n\n188.166.179.246 server.brembrey.com  brembrey.com  mail.brembrey.com  smtp.brembrey.com\n\nតែត្រូវប្រាកដថាបានបង្កើត mx record នៅក្នុង godady ដែល point ទៅកាន់ IP 188.166.179.246\n\nនិងប្រាកដថា ឈ្មោះ server ទាំងអស់ខាងលើនេះមាននៅក្នុង godaddy DNS Record ផងដែរ។\n\nបន្ទាប់មកទៀតអ្នកអាច ចូលទៅកែ /etc/postfix/main.cf\n\n`hostname = server.brembrey.com`\n\n`domainname=brembrey.com`\n\n`myorigin = $mydomain`\n\nនិងបន្ថែមមួយចំនួនដូចខាងក្រោមដូចដែលជាការបន្ថែម SSL សម្រាប់ SMTP Server\n\n`smtpd_use_tls = yes`\n`smtpd_tls_cert_file = /etc/letsencrypt/live/brembrey.com/cert.pem`\n`smtpd_tls_key_file = /etc/letsencrypt/live/brembrey.com/privkey.pem`\n`smtpd_tls_session_cache_database = btree:/etc/postfix/smtpd_scache`\n\nបន្ទាប់មកទៀតត្រូវចូលទៅកែ File /etc/postfix/master.cf\n\n![postfix-master.png](https://cdn.steemitimages.com/DQmaj5LQL8EE4grZmxTPfTbvNWH2wyiHUiqiaSnUBMZeck9/postfix-master.png)\n\nបន្ទាប់មកអ្នកអាចចូលទៅកែ File មួយចំនួនរបស់ Dovecot ម្តង\n\n`vi /etc/dovecot/conf.d/10-master.conf`\n\n![master.png](https://cdn.steemitimages.com/DQmPqP793CACtijXrU3E9jgqZagybeCTEZ7C3U4zBaJoZJ5/master.png)\n\n![master-auth.png](https://cdn.steemitimages.com/DQmUWWeeA3emsXRPc5uyPS6avkv34vvyncZmHBVP8HgivgR/master-auth.png)\n\nvi /etc/dovecot/conf.d/10-auth.conf\n\nauth_mechanisms = plain login\n\nបន្ទាប់មកកែ File /etc/dovecot/conf.d/10-mail.conf\n\n`mail_location = maildir:~/Maildir`\n\nបន្ទាប់មកកែ file /etc/dovecot/conf.d/10-ssl.conf\n\n![sslmail.png](https://cdn.steemitimages.com/DQmRUzCBL86DmdWE4Wf1CHSwYCPkzGxYJPQVcZfzrgbfACe/sslmail.png)\n\nចុងក្រោយអ្នកអាច Restart Service postfix និង dovecot បានហើយប្រសិនបើធ្វើត្រូវនោះអាចប្រើប្រាស់បានហើយ\n\n![testing-email.png](https://cdn.steemitimages.com/DQmabrQAykUGoyWW4AdeCxrsrUSesR1w96cv1LvjqA5rjxH/testing-email.png)\n\nGmail អាច Block Email អ្នកប្រសិនបើអ្នកប្រើប្រាស់តាម commandព្រោះ Email ប្រើប្រាស់ SMTP Port 25 គួរតែប្រើប្រាស់តាម Outlook ឬ WebMail។\n\n![test-email.png](https://cdn.steemitimages.com/DQmQUPZeXkjZDhz334wPxTSArp5GHbgiwyKVLsSnkHhEjfG/test-email.png)\n\nអ្នកអាចដោនឡូត Rainloop mail មកតម្លើងជាមួយ Web Server បន្ទាប់មក Configure SMTP and IMAP Address របស់ Mail Server របស់អ្នក។ បន្ទាប់មកអ្នកអាចប្រើប្រាស់ Mail តាមរយះ Webmail បាន\n\nចំណាំ៖ ប្រសិនបើអ្នកធ្វើEmail Server ដូចនេះយ៉ាងហោចណាស់ក៏ត្រូវចំណាយពេលមួយថ្ងៃ ដើម្បីអាចផ្ញើ Email ចេញទៅ Domain ផ្សេងៗបាន ព្រោះ DNS Record អាច update យឺត។ សម្រាប់អត្តបទខាងលើនេះ ជា Email ត្រឹមត្រូវមិនមែនជា Local Email ដែលតម្លើងនៅលើ Vmware នៅក្នុង ក្នុងកុំព្យូទ័រទេ។\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/23/install-postfix/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"mail\",\"server\"],\"users\":[\"comanyname\"],\"image\":[\"https://cdn.steemitimages.com/DQmc6DAPkwjrSsWUtkSRpn1pvUcBzMMtQJRQYgH54PTY8ar/login-from-webmail.png\",\"https://cdn.steemitimages.com/DQmaj5LQL8EE4grZmxTPfTbvNWH2wyiHUiqiaSnUBMZeck9/postfix-master.png\",\"https://cdn.steemitimages.com/DQmPqP793CACtijXrU3E9jgqZagybeCTEZ7C3U4zBaJoZJ5/master.png\",\"https://cdn.steemitimages.com/DQmUWWeeA3emsXRPc5uyPS6avkv34vvyncZmHBVP8HgivgR/master-auth.png\",\"https://cdn.steemitimages.com/DQmRUzCBL86DmdWE4Wf1CHSwYCPkzGxYJPQVcZfzrgbfACe/sslmail.png\",\"https://cdn.steemitimages.com/DQmabrQAykUGoyWW4AdeCxrsrUSesR1w96cv1LvjqA5rjxH/testing-email.png\",\"https://cdn.steemitimages.com/DQmQUPZeXkjZDhz334wPxTSArp5GHbgiwyKVLsSnkHhEjfG/test-email.png\"],\"links\":[\"https://www.techfree.info/2016/10/23/install-postfix/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
vulcano365upvoted (100.00%) @techfree / isp-config
2018/06/07 02:20:54
votervulcano365
authortechfree
permlinkisp-config
weight10000 (100.00%)
Transaction InfoBlock #23101409/Trx 195e15e7cdc005f805782533e0888634889e1ed6
View Raw JSON Data
{
  "trx_id": "195e15e7cdc005f805782533e0888634889e1ed6",
  "block": 23101409,
  "trx_in_block": 15,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-07T02:20:54",
  "op": [
    "vote",
    {
      "voter": "vulcano365",
      "author": "techfree",
      "permlink": "isp-config",
      "weight": 10000
    }
  ]
}
techfreepublished a new post: isp-config
2018/06/07 02:05:39
parent author
parent permlinkcambodia
authortechfree
permlinkisp-config
titleស្វែងយល់ពី ISP Config
body![login.png](https://cdn.steemitimages.com/DQmaRp5nYM4icf3qbgyTtGEy8oQiavviuxBMRvt2mrY7r6H/login.png) ISP Config ជាប្រភេទ Web Hosting Management សម្រាប់ប្រើប្រាស់ក្នុងក្រុមហ៊ុនដែលទទួល Hosting website វាស្រដៀងគ្នាទៅនិង Cpanel ដែរតែគ្រាន់តែ ISP ពេលនេះមិនទាន់គិតថ្លៃ។តែទៅថ្ងៃអនាគតប្រហែលជាអាចគិតថ្លៃ ដូច CPanel ដែរ។ តែទោះជាយ៉ាងណាអ្នកអាចសិក្សាស្វែងយល់ពីដំណើរការ Webhosting មួយតើត្រូវមានអ្វីខ្លះ? ដូចជា Database, Mail, DNS និង Virtual Hosting។ ISP Config ត្រូវបានបង្កើតឡើងដោយមានភាសារជាច្រើនដូចជា perl, php និង MySQL ដូចនេះមុននិងតម្លើង អ្នកត្រូវមាន MySQL និង php, php-mysql,postfix ជាដើម។ ខាងក្រោមនេះជាការតម្លើង ISP Config នៅលើ CentOS 6 ដំបូងត្រូវ update Centos ជាមុនសិនដោយប្រើប្រាស់ command `yum update -y` បន្ទាប់មកទៀតត្រូវតម្លើង sql server, php-mysql and postfix, dovecot `yum install -y php php-mysql postfix dovecot mysql` បន្ទាប់មក ទៀតត្រូវ Restart service `service httpd restart` `service mysqld restart` `service postfix restart` `service dovecot restart` `chkconfig –level 35 postfix on` `chkconfig –level 35 dovecot on` `chkconfig –level 35 mysqld on` `chkconfig –level35 httpd on` បន្ទាប់មកទៀតដោនឡូត ISPConfig មករួចហើយ Extract វាមកក្រៅបាន `wget http://prdownloads.sourceforge.net/ispconfig/ISPConfig-3.0.4.3.tar.gz` `tar xzf ISPConfig-3.0.4.3.tar.gz` `cd ispconfig3_install/install/` បន្ទាប់មកទៀត តម្លើងISP Config ដោយប្រើប្រាស់ Command ដូចខាងក្រោមនេះ `php -q install.php` អ្នកត្រូវបំពេញព័ត៌មានដូចរូបខាងក្រោមនេះដូចជាឈ្មោះ Server ជាដើម។ ![1-4.png](https://cdn.steemitimages.com/DQmeouPKsM33c3cxi5FieufsB4YTG832MRjrwnzo5xbybNy/1-4.png) ![2-4.png](https://cdn.steemitimages.com/DQmVEFLkqqQ1AW8vhB8utEi4bKn6YomsRgDyxaAMevQAGUf/2-4.png) ![3-2.png](https://cdn.steemitimages.com/DQmaxMGH1nCeG5ZhDTk58BB4BaX5fTUbcFb7h6Msj6u3Y19/3-2.png) ចុងក្រោយអ្នកអាចប្រើប្រាស់ Web Browserចូលទៅកាន់ IP Address របស់ Server អ្នកនិងបានដូចរូបខាងក្រោមនេះ default username and password: (admin, admin) ![login (1).png](https://cdn.steemitimages.com/DQmTT1EdMzXrzFBHWBiAQcXUjrS2b3px3SrFYFuF1VXxcux/login%20(1).png) ចុងក្រោយអ្នកនិងបាន Web Hosting Management System មួយ។ អ្នកអាចទិញ Plugin បន្ថែមទៀតប្រសិនបើអ្នកចង់អោយមានមុខងារសំបូរបែប។ តែសព្វថ្ងៃនេះ Web hosting មានច្រើនប្រភេទ អ្នកខ្លះក៏ពេញនិយមប្រើប្រាស់ VPS ខ្លះក៏នៅតែប្រើប្រាស់ Virtual Hosting ប្រភេទនេះ អាស្រ័យទៅលើចំនេះដឹងនិងតម្រូវការរៀងៗខ្លួន។ [ប្រភពដើម](https://www.techfree.info/2016/10/23/ispconfig/)
json metadata{"tags":["cambodia","khmer","isp","config"],"image":["https://cdn.steemitimages.com/DQmaRp5nYM4icf3qbgyTtGEy8oQiavviuxBMRvt2mrY7r6H/login.png","https://cdn.steemitimages.com/DQmeouPKsM33c3cxi5FieufsB4YTG832MRjrwnzo5xbybNy/1-4.png","https://cdn.steemitimages.com/DQmVEFLkqqQ1AW8vhB8utEi4bKn6YomsRgDyxaAMevQAGUf/2-4.png","https://cdn.steemitimages.com/DQmaxMGH1nCeG5ZhDTk58BB4BaX5fTUbcFb7h6Msj6u3Y19/3-2.png","https://cdn.steemitimages.com/DQmTT1EdMzXrzFBHWBiAQcXUjrS2b3px3SrFYFuF1VXxcux/login%20(1).png"],"links":["https://www.techfree.info/2016/10/23/ispconfig/"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #23101104/Trx 1b68d210d08786789696eb4b3f990dd2735b4825
View Raw JSON Data
{
  "trx_id": "1b68d210d08786789696eb4b3f990dd2735b4825",
  "block": 23101104,
  "trx_in_block": 44,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-06-07T02:05:39",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cambodia",
      "author": "techfree",
      "permlink": "isp-config",
      "title": "ស្វែងយល់ពី ISP Config",
      "body": "![login.png](https://cdn.steemitimages.com/DQmaRp5nYM4icf3qbgyTtGEy8oQiavviuxBMRvt2mrY7r6H/login.png)\n\nISP Config ជាប្រភេទ Web Hosting Management សម្រាប់ប្រើប្រាស់ក្នុងក្រុមហ៊ុនដែលទទួល Hosting website វាស្រដៀងគ្នាទៅនិង Cpanel ដែរតែគ្រាន់តែ ISP ពេលនេះមិនទាន់គិតថ្លៃ។តែទៅថ្ងៃអនាគតប្រហែលជាអាចគិតថ្លៃ ដូច CPanel ដែរ។\n\nតែទោះជាយ៉ាងណាអ្នកអាចសិក្សាស្វែងយល់ពីដំណើរការ Webhosting មួយតើត្រូវមានអ្វីខ្លះ? ដូចជា Database, Mail, DNS និង Virtual Hosting។\n\nISP Config ត្រូវបានបង្កើតឡើងដោយមានភាសារជាច្រើនដូចជា perl, php និង MySQL ដូចនេះមុននិងតម្លើង អ្នកត្រូវមាន MySQL និង php, php-mysql,postfix ជាដើម។\n\nខាងក្រោមនេះជាការតម្លើង ISP Config នៅលើ CentOS 6\n\nដំបូងត្រូវ update Centos ជាមុនសិនដោយប្រើប្រាស់ command\n\n`yum  update -y`\n\nបន្ទាប់មកទៀតត្រូវតម្លើង sql server, php-mysql and postfix, dovecot\n\n`yum  install -y php php-mysql postfix  dovecot mysql`\n\nបន្ទាប់មក ទៀតត្រូវ Restart service\n\n`service  httpd restart`\n\n`service mysqld restart`\n\n`service postfix restart`\n\n`service dovecot restart`\n\n`chkconfig –level 35 postfix on`\n\n`chkconfig  –level 35 dovecot on`\n\n`chkconfig –level 35 mysqld on`\n\n`chkconfig –level35 httpd on`\n\nបន្ទាប់មកទៀតដោនឡូត ISPConfig មករួចហើយ Extract វាមកក្រៅបាន\n\n`wget http://prdownloads.sourceforge.net/ispconfig/ISPConfig-3.0.4.3.tar.gz`\n\n`tar xzf ISPConfig-3.0.4.3.tar.gz`\n\n`cd ispconfig3_install/install/`\n\nបន្ទាប់មកទៀត តម្លើងISP Config ដោយប្រើប្រាស់ Command ដូចខាងក្រោមនេះ\n\n`php -q install.php`\n\nអ្នកត្រូវបំពេញព័ត៌មានដូចរូបខាងក្រោមនេះដូចជាឈ្មោះ Server ជាដើម។\n\n![1-4.png](https://cdn.steemitimages.com/DQmeouPKsM33c3cxi5FieufsB4YTG832MRjrwnzo5xbybNy/1-4.png)\n\n![2-4.png](https://cdn.steemitimages.com/DQmVEFLkqqQ1AW8vhB8utEi4bKn6YomsRgDyxaAMevQAGUf/2-4.png)\n\n![3-2.png](https://cdn.steemitimages.com/DQmaxMGH1nCeG5ZhDTk58BB4BaX5fTUbcFb7h6Msj6u3Y19/3-2.png)\n\nចុងក្រោយអ្នកអាចប្រើប្រាស់ Web Browserចូលទៅកាន់ IP Address របស់ Server អ្នកនិងបានដូចរូបខាងក្រោមនេះ\n\ndefault username and password: (admin, admin)\n\n![login (1).png](https://cdn.steemitimages.com/DQmTT1EdMzXrzFBHWBiAQcXUjrS2b3px3SrFYFuF1VXxcux/login%20(1).png)\n\nចុងក្រោយអ្នកនិងបាន Web Hosting Management System មួយ។ អ្នកអាចទិញ Plugin បន្ថែមទៀតប្រសិនបើអ្នកចង់អោយមានមុខងារសំបូរបែប។\n\nតែសព្វថ្ងៃនេះ Web hosting មានច្រើនប្រភេទ អ្នកខ្លះក៏ពេញនិយមប្រើប្រាស់ VPS ខ្លះក៏នៅតែប្រើប្រាស់ Virtual Hosting ប្រភេទនេះ អាស្រ័យទៅលើចំនេះដឹងនិងតម្រូវការរៀងៗខ្លួន។\n\n\n[ប្រភពដើម](https://www.techfree.info/2016/10/23/ispconfig/)",
      "json_metadata": "{\"tags\":[\"cambodia\",\"khmer\",\"isp\",\"config\"],\"image\":[\"https://cdn.steemitimages.com/DQmaRp5nYM4icf3qbgyTtGEy8oQiavviuxBMRvt2mrY7r6H/login.png\",\"https://cdn.steemitimages.com/DQmeouPKsM33c3cxi5FieufsB4YTG832MRjrwnzo5xbybNy/1-4.png\",\"https://cdn.steemitimages.com/DQmVEFLkqqQ1AW8vhB8utEi4bKn6YomsRgDyxaAMevQAGUf/2-4.png\",\"https://cdn.steemitimages.com/DQmaxMGH1nCeG5ZhDTk58BB4BaX5fTUbcFb7h6Msj6u3Y19/3-2.png\",\"https://cdn.steemitimages.com/DQmTT1EdMzXrzFBHWBiAQcXUjrS2b3px3SrFYFuF1VXxcux/login%20(1).png\"],\"links\":[\"https://www.techfree.info/2016/10/23/ispconfig/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}

Account Metadata

POSTING JSON METADATA
profile{"name":"TechFree","location":"Cambodia","website":"https://www.techfree.info/","cover_image":"https://lh3.googleusercontent.com/tLCb8evAXHhhk5mbqmWBQFIHrRCOYihEXPMBpOOfpQayesWATh6kPzGtOmMpNOsUKQB1Ey4Da8Tfzjs_e7F33dwW7bQerNXkstsdwzdhXZTM1wIfDuyVWXnk6xyJaCVVua9K4OVH0ILBjxTajj_h_emcJanU5jmv1J6Ag3_HJSDC2fkNhNhGyhIAWdSfgtIIKl6UyrH_QRV6TJOUtTNZyq-CAlfeqXg_iZlD697YnQVE92IDbIHRmbsEoTQm9ZsE9g4nOi-REhVPhxHJmDDvfI1i3-bLBH2qRE0YtS3rLPKhDoUZggr6TIzTQjBXPfdS4megdd1OrXfTOQ-wb81f5pye3vftex8nWQa_jIzL8G_oULQ0ddaZw0Q9IEN8CrznNqcUEAnD8vpc3WEwXEaejrCDR0alZZJdcJPeRdhsBZfpr6IagqFNq27Wl_-RdjUjbbjl64qVYqhcAn0AuJmSEXsmJ3S2p4FH-zYV1UTib3WzGejVxDjTja8e6y1Q27rG0NjEe3i1YuEl8PkvH7pAQxmgCLXHajH7F8apSCvA_8Nkl7rExj1PnkSzuAUT3x50GyVnaxzLnVFteR9zbcaqmMBAlqdFMuGRQ60F71ywIw=w1076-h134-no"}
JSON METADATA
profile{"name":"TechFree","location":"Cambodia","website":"https://www.techfree.info/","cover_image":"https://lh3.googleusercontent.com/tLCb8evAXHhhk5mbqmWBQFIHrRCOYihEXPMBpOOfpQayesWATh6kPzGtOmMpNOsUKQB1Ey4Da8Tfzjs_e7F33dwW7bQerNXkstsdwzdhXZTM1wIfDuyVWXnk6xyJaCVVua9K4OVH0ILBjxTajj_h_emcJanU5jmv1J6Ag3_HJSDC2fkNhNhGyhIAWdSfgtIIKl6UyrH_QRV6TJOUtTNZyq-CAlfeqXg_iZlD697YnQVE92IDbIHRmbsEoTQm9ZsE9g4nOi-REhVPhxHJmDDvfI1i3-bLBH2qRE0YtS3rLPKhDoUZggr6TIzTQjBXPfdS4megdd1OrXfTOQ-wb81f5pye3vftex8nWQa_jIzL8G_oULQ0ddaZw0Q9IEN8CrznNqcUEAnD8vpc3WEwXEaejrCDR0alZZJdcJPeRdhsBZfpr6IagqFNq27Wl_-RdjUjbbjl64qVYqhcAn0AuJmSEXsmJ3S2p4FH-zYV1UTib3WzGejVxDjTja8e6y1Q27rG0NjEe3i1YuEl8PkvH7pAQxmgCLXHajH7F8apSCvA_8Nkl7rExj1PnkSzuAUT3x50GyVnaxzLnVFteR9zbcaqmMBAlqdFMuGRQ60F71ywIw=w1076-h134-no"}
{
  "posting_json_metadata": {
    "profile": {
      "name": "TechFree",
      "location": "Cambodia",
      "website": "https://www.techfree.info/",
      "cover_image": "https://lh3.googleusercontent.com/tLCb8evAXHhhk5mbqmWBQFIHrRCOYihEXPMBpOOfpQayesWATh6kPzGtOmMpNOsUKQB1Ey4Da8Tfzjs_e7F33dwW7bQerNXkstsdwzdhXZTM1wIfDuyVWXnk6xyJaCVVua9K4OVH0ILBjxTajj_h_emcJanU5jmv1J6Ag3_HJSDC2fkNhNhGyhIAWdSfgtIIKl6UyrH_QRV6TJOUtTNZyq-CAlfeqXg_iZlD697YnQVE92IDbIHRmbsEoTQm9ZsE9g4nOi-REhVPhxHJmDDvfI1i3-bLBH2qRE0YtS3rLPKhDoUZggr6TIzTQjBXPfdS4megdd1OrXfTOQ-wb81f5pye3vftex8nWQa_jIzL8G_oULQ0ddaZw0Q9IEN8CrznNqcUEAnD8vpc3WEwXEaejrCDR0alZZJdcJPeRdhsBZfpr6IagqFNq27Wl_-RdjUjbbjl64qVYqhcAn0AuJmSEXsmJ3S2p4FH-zYV1UTib3WzGejVxDjTja8e6y1Q27rG0NjEe3i1YuEl8PkvH7pAQxmgCLXHajH7F8apSCvA_8Nkl7rExj1PnkSzuAUT3x50GyVnaxzLnVFteR9zbcaqmMBAlqdFMuGRQ60F71ywIw=w1076-h134-no"
    }
  },
  "json_metadata": {
    "profile": {
      "name": "TechFree",
      "location": "Cambodia",
      "website": "https://www.techfree.info/",
      "cover_image": "https://lh3.googleusercontent.com/tLCb8evAXHhhk5mbqmWBQFIHrRCOYihEXPMBpOOfpQayesWATh6kPzGtOmMpNOsUKQB1Ey4Da8Tfzjs_e7F33dwW7bQerNXkstsdwzdhXZTM1wIfDuyVWXnk6xyJaCVVua9K4OVH0ILBjxTajj_h_emcJanU5jmv1J6Ag3_HJSDC2fkNhNhGyhIAWdSfgtIIKl6UyrH_QRV6TJOUtTNZyq-CAlfeqXg_iZlD697YnQVE92IDbIHRmbsEoTQm9ZsE9g4nOi-REhVPhxHJmDDvfI1i3-bLBH2qRE0YtS3rLPKhDoUZggr6TIzTQjBXPfdS4megdd1OrXfTOQ-wb81f5pye3vftex8nWQa_jIzL8G_oULQ0ddaZw0Q9IEN8CrznNqcUEAnD8vpc3WEwXEaejrCDR0alZZJdcJPeRdhsBZfpr6IagqFNq27Wl_-RdjUjbbjl64qVYqhcAn0AuJmSEXsmJ3S2p4FH-zYV1UTib3WzGejVxDjTja8e6y1Q27rG0NjEe3i1YuEl8PkvH7pAQxmgCLXHajH7F8apSCvA_8Nkl7rExj1PnkSzuAUT3x50GyVnaxzLnVFteR9zbcaqmMBAlqdFMuGRQ60F71ywIw=w1076-h134-no"
    }
  }
}

Auth Keys

Owner
Single Signature
Public Keys
STM8mS8yzmPeFcs4RELg343kzZiDxmnH2k8yWZ4tkbfKYkitNYsan1/1
Active
Single Signature
Public Keys
STM6FEcE8yUfCzPCMKCoaBsTBcCfQ7h5BLMcNMA2gVSR5B2rTbZVB1/1
Posting
Single Signature
Public Keys
STM6pyjyGDUSdEQezXWJHnUY5LiqaBiaXbFEM7dSysVxRdZX2RHiB1/1
Memo
STM5zmmdVC7ZQ1bTct24kD49smihu8tNiJ5hZSCCepwqcvRdYaCGy
{
  "owner": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM8mS8yzmPeFcs4RELg343kzZiDxmnH2k8yWZ4tkbfKYkitNYsan",
        1
      ]
    ]
  },
  "active": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6FEcE8yUfCzPCMKCoaBsTBcCfQ7h5BLMcNMA2gVSR5B2rTbZVB",
        1
      ]
    ]
  },
  "posting": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6pyjyGDUSdEQezXWJHnUY5LiqaBiaXbFEM7dSysVxRdZX2RHiB",
        1
      ]
    ]
  },
  "memo": "STM5zmmdVC7ZQ1bTct24kD49smihu8tNiJ5hZSCCepwqcvRdYaCGy"
}

Witness Votes

0 / 30
No active witness votes.
[]