2. Chương trình đầu tiên của bạn

Theo truyền thống chương trình đầu tiên của bạn viết ở bất cứ ngôn ngữ nào được gọi là chương trình “Hello World” – Một chương trình chỉ đơn giản là xuất ra dòng chữ Hello World ra terminal. Hãy bắt đầu viết chương trình này bằng Go.

Continue reading “2. Chương trình đầu tiên của bạn”

1. Bắt đầu

Lập trình máy tính là một nghệ thuật, thủ công và khoa học của việc viết chương trình xác định cách máy tính hoạt động. Quyển sách này hướng dẫn bạn cách viết chương trình sử dụng một ngôn ngữ lập trình được thiết kế bởi Google tên là Go.

Continue reading “1. Bắt đầu”

Redirect – Chuyển hướng trang bằng PHP

This entry is part 1 of 1 in the series Học PHP qua ví dụ

Trong việc lập trình web bạn không thể thiếu việc chuyển người dùng từ trang này qua trang kia. Ví dụ như sau khi login thì chuyển người dùng về trang chủ. Hoặc vào các nội dung cần xác thực thì phải chuyển người dùng về trang login.

1. Chuyển trang bằng HTTP header

PHP hỗ trợ chuyển trang bằng cách trả về HTTP header Location theo đặc tả của giao thức HTTP. Khi trình duyệt nhận được response từ server có HTTP header “Location” thì trình duyệt sẽ tự động chuyển hướng đến url được chỉ định.

HTTP header:

Location: <new_URL>

Cách thực hiện đơn giản như sau.

<?php 
// các xử lí
// Tiến hành chuyển hướng
header("Location: /index.php");
exit;

// có thể các còn các xử lí khác không được thực hiện.
?>

Trường hợp bạn muốn chuyển hướng ra trang ngoài không phải trang hiện tại của bạn. Thì bạn hãy để đầy đủ đường dẫn URL.

<?php 
header("Location: https://google.com");
exit;

Các lỗi thường gặp khi sử dụng chuyển hướng bằng header

Lỗi 1: Warning: Cannot modify header information

Khi thực hiện chuyển trang bằng cách này. Tức là bạn đang thay đổi các giá trị HTTP header mặc định. Rất có thể bạn sẽ bị thông báo lỗi khi sau: Warning: Cannot modify header information. Để khác phục được lỗi này. Bạn cần hiểu bản chất vấn được được giải thích như sau. Nếu bạn đang gấp Bỏ qua cách chuyển hướng này và sử dụng các cách chuyển hướng ở bên dưới.

Giải thích:

Theo đặc tả một gói tin HTTP có cấu trúc như sau:

HEADER
<cách 2 dòng>
BODY

Mỗi dấu xuống dòng ở trên là cặp kí tự \r\n;

Ví dụ khi bạn xuất dòng chữ “Hello world”. File hello.php

<?php
echo "Hello world";

Thì cấu trúc của gói tin trả về như sau:

HTTP/1.1 200 OK
Server: nginx/1.17.6
Content-Type: text/html
Connection: keep-alive

Hello world

Dòng header khác này, có thể có hoặc không có, hoặc có nhiều hơn các thông tin – chỉ thị khác. Vì vậy trong các ví dụ sau mình giảm bớt các dòng header không liên quan tới nội dung bài viết.

Server: nginx/1.17.6
Content-Type: text/html
Connection: keep-alive

Nếu chúng ta đặt lệnh header phía trước lệnh echo sẽ thành ra như thế này:

<?php
header("Location: /index.php");
echo "Hello world";

Thì cấu trúc của gói tin trả về như sau:

HTTP/1.1 200 OK
Location: /index.php

Hello world

Vậy nếu ta đổi ngược 2 lệnh trên. Thì kết quả sẽ được như sau:

<?php
echo "Hello world";
header("Location: /index.php");

Chúng ta sẽ bị lỗi Warning: Cannot modify header information; Nhưng trong trường hợp tắt warning, website vẫn chạy được.

Trong các trường hợp thực tế, ta hay để code php bên trong đoạn mở như sau:

<html>
<?php
// xử lí ...
header("Location: /index.php");
?>

Như vậy ta cũng bị lỗi Warning: Cannot modify header information;

Chúng ta phải đảm bảo các lệnh header được gọi trước tất cả các output khác.

Lỗi 2: ERR_TOO_MANY_REDIRECTS

Một lỗi thứ 2 thường bị khi sử dụng cách này là lỗi ERR_TOO_MANY_REDIRECTS thường thấy mã lỗi này trên Chrome. Ở các trình duyệt khác, hình thức hiện lỗi có thể khác. Nguyên nhân lỗi là bị điều hướng liên tục.

Ví dụ như trình duyệt đang ở trang index.php, nhưng lại có lệnh header("Location: /index.php");. Vậy là khi ta vào trang index.php lại bị đá về index.php, liên tục như vậy. Đến một số lần quy định, Chrome sẽ không thèm chuyển hướng theo chỉ thị Location header nữa. Mà báo ra lỗi này.

Để giải quyết, chúng ta phải check điều kiện chuyển trang. Nếu đang ở trang hiện tại, thì không được chuyển nữa. Ví dụ như URL hiện tại của chúng ta là http://localhost/index.php thì ta phải kiểm tra thông tin $_SERVER['REQUEST_URI'] cho ta được đoạn sau domain /index.php.

<?php
// file index.php
if ($_SERVER['REQUEST_URI'] != '/index.php') {
	header('Location: /index.php');
}

Nhưng các bạn tự lưu ý là, đối với index.php là 1 trường hợp khá đặc biệt. Vì chúng ta vào url http://localhost/ thì thông thường cũng là truy cập vào file index.php. Tức là tương tự như vào http://localhost/index.php. Lúc này, $_SERVER['REQUEST_URI'] cho chúng ta giá trị là /. Vậy ta sửa lại như sau:

<?php
// file index.php
if ($_SERVER['REQUEST_URI'] != '/index.php'
     && $_SERVER['REQUEST_URI'] != '/' ) {
	header('Location: /index.php');
}

Nếu bạn đang cảm thấy mơ hồ hoặc thấy khó khăn, thì vui lòng đọc tiếp các cách khác bên dưới.

2. Chuyển trang bằng HTML

Ngoài cách điều hướng bằng php, chúng ta có thể dùng html tag. như sau:

<meta http-equiv="refresh" content="0;url=index.php">

Với số 0 là số giây sẽ delay. Sau đó sẽ truyển trang về url được khai báo. Như ta muốn chuyển về google.com sau 5s thì ta sẽ ghi như sau:

<meta http-equiv="refresh" content="5;url=https://google.com">

Với số 0 là chuyển ngay lập tức.

Lưu ý:

Sử dụng cách này các bạn cũng không thể tránh khỏi lỗi chuyển trang liên tục như trên. Khi chuyển trang không chuyển về trang hiện tại.

3. Chuyển trang bằng JavaScript

Chúng ta biết rằng JS được dùng để sử lí giao diện là trùm luôn. Vì vậy chuyển trang đối với JS chỉ là chuyện nhỏ. Cách thực hiện như sau:

<script>
	location.href = '/index.php';
</script>

Lưu ý:

Tương tự, sử dụng cách này các bạn cũng không thể tránh khỏi lỗi chuyển trang liên tục như trên. Khi chuyển trang không chuyển về trang hiện tại.

Tổng hợp

Chuyển trang bằng PHP:

<?php 
header("Location: /index.php");

Chuyển trang bằng HTML:

<meta http-equiv="refresh" content="0;url=index.php">

html Chuyển trang bằng JavaScript:

<script>
	location.href = '/index.php';
</script>

Mọi thắc mắc các bạn vui lòng để lại comment.

Bài viết gốc được đăng tại https://hocmoingay.top/

Người viết Hoàng Phúc

Sách tải free tràn lan trên mạng có nên đọc hay không?

Hiện nay, để muốn đọc một quyển sách, khi mà bạn đã có một cái máy đọc sách. Việc thường làm của mọi người là lên mạng tìm bản sách đã được chia sẻ miễn phí trên mạng. Có khi tìm được, có khi không. Nhưng phần lớn là tìm được, vì cộng đồng mạng rất thích “chia sẻ” những gì mình đang có (không phải đó là đặc tính làm lên mạng internet hay sao?!).

Vậy thì hôm nay mình xin bàn một ít về những mặt lợi và hại của việc tìm và tải sách free trên mạng. Đứng từ góc nhìn của người đọc, tạm thời chưa xét đến các vấn đề về quyền tác giả và nhà xuất bản.

Trước tiên mình xin nói rõ là mình chưa từng viết sách, càng chưa từng xuất bản cuốn sách nào. Vì vậy mình không nằm trong nhóm những tác giả đang bị ảnh hưởng lợi ích từ việc người đọc tải sách free.

Thêm vào đó mình là một trong những người từng đọc sách tải chùa khá nhiều. Với niềm “đam mê” đó mình còn bỏ thời gian công sức ra tổng hợp lại, up lên google drive chia sẻ trong các hội nhóm — bạn bè. Hơn thế nữa, mình còn lập ra nhiều trang web. Trong đó có tiền thân của trang blog này (đã không còn được sử dụng) là trang “hocmoingay.top” mà hiện nay đã không còn được sử dụng. Và một trang khác là ebooks4.pw hiện vẫn đang chạy. Nhưng mình đang có kế hoạch sớm bỏ đi trang này. Vì những lý do mình bàn luận sau đây cũng như là nó cũng đang ngốn 1 mớ phí duy trì hàng tháng.

Giờ ta xét về mặt lợi của việc đọc sách chùa:

  • Miễn phí
  • Đọc được nội dung sách

?! Còn không ta ?!

Vậy mặt hại là gì:

  • Chất lượng sách thấp hoặc rất thấp: Sách không được định dạng rõ ràng, sai chính tả, câu cú, trùng lặp — thiếu đoạn,… làm giảm trải nghiệm khi đọc.
  • Tốn thời gian tìm kiếm, lúc tìm được lúc không.
  • Tốn thời gian đọc, đọc 1 lúc mới thấy sách này dịch tào lao. Bỏ, tìm sách khác. Thật tệ khi gặp phải một quyển sách “google translate”.
  • Nhiều khi không tải được sách mà tải được… virus.
  • Vi phạm bản quyền.

Không biết mình có liệt kê thiếu phần nào không? Nếu có gì cần bổ sung các bạn vui lòng comment bổ sung giúp mình.

Như vậy, đọc phải một cuốn sách có chất lượng kém, nội dung không chính xác, câu cú lủng củn, sai sót nhiều. Nó làm cho mình tưởng rằng mình đã đọc qua quyển sách đó. Đã “cảm thụ” được những tinh tuý trong sách. Nhưng thật ra mình đang đọc 1 “phiên bản lỗi”. Làm sai khác đi những nhận định về quyển sách.

Nhưng thật khó để biết được những quyển nào là chất lượng như từ xuất bản, cuốn nào có chất lượng kém.

Vậy chốt hạ là có nên đọc sách tải chùa trên mạng hay không? Mỗi người sẽ có lựa chọn cho riêng mình. Nhưng với cá nhân mình thì mình quyết định KHÔNG.

Vì bạn không đủ thời gian để thử. Ở ngoài kia có rất nhiều sách cần đọc. Đọc xong mà mình còn cần phải hồi hộp, xem xét coi quyển sách này nội dung có đúng với nguyên bản không thì thật là lãng phí “bộ xử lí” lãng phí năng lượng thời gian.

Bạn nên để thời gian, “bộ xử lí” và năng lượng đó để dành cho việc phân tích, ghi nhớ và bình phẩm về nội dung quyển sách”thật” thì hay hơn.

Xin cảm ơn các bạn đã đọc hết bài viết!

Cài đặt từ điển cho máy đọc sách kindle

Bước 1: Các bạn tải từ điển mà mình muốn trước khi tiến hành cài đặt nó trên Kindle bằng các đường link dưới đây.
https://drive.google.com/drive/folders/15wXOWO3t1eg01RETwI2mN75DiFL1WYoD?usp=sharing

Ngoài các từ điển free được phát triển bởi cộng đồng, bạn có thể mua từ để với chất lượng tốt hơn. Một trong số đó là: https://dictionaries.io/kindle/install

Bước 2: Tiến hành cài đặt từ điển trên máy đọc sách Kindle

  • Copy vào máy đọc sách Kindle bằng cách gắn cáp USB giữa máy Kindle.
  • Chép từ điển vào Kindle thư mục Dictonaries.
  • Tiến hành kích hoạt từ điển. Mỗi đời firmware sẽ khác nhau đôi chút, nhưng nhìn chung có mấy cách như sau:
    • Kindle 3: Home -> Menu -> Settings -> Menu -> Change Primary Dictionary
    • Kindle 4: Home -> Menu -> Settings -> Dictionaries
    • Kindle Touch: Home -> Menu -> Settings -> Dictionaries
    • Kindle DXG: Home -> Menu -> Settings -> Menu -> Change Primary Dictionary
    • Kindle Paperwhite: Home -> Menu -> Settings -> Device Options -> Language and Dictionaries -> Dictionaries

=> Rồi chọn từ điển mà bạn mới chép vào.

  • Hoàn thành.

Để kiểm tra lại các bạn chép 1 ebook tiếng anh vào máy và giữ chọn 1 từ kindle sẽ hiện kết quả tra từ điển.
Chúc các bạn thành công! có thắc mắc vui lòng comment bên dưới.

Top những website học trực tuyến tại Việt Nam

Các bạn thường thấy bạn bè chia sẻ danh sách các website cung cấp khoá học trực tuyến miễn phí hoặc có phí nổi tiếng. Nhưng rất tiếc chúng toàn là những chương trình bằng ngôn ngữ tiếng Anh. Nếu bạn chưa giỏi tiếng Anh, vậy thì sao?!

Không sao cả! Bạn có thể từ giờ cố gắng học tiếng Anh ở mức độ nghe và đọc được là tạm đủ để học các khác này. Dần dần vốn tiếng Anh của bạn sẽ tăng lên. Nhưng, nếu hiện tại bạn vẫn còn đang lay hoay chật vật với tiếng Anh thì sao? Không lẽ không học được online nữa. Vậy là chưa đúng. Không học tiếng Anh được thì mình học tiếng Việt. Hiện tại ở Việt Nam cũng đã có nhiều nền tảng cho phép chúng ta trao dồi được nhiều kỹ năng mà không cần đến lớp.

Dưới đây là danh sách các trang nền tảng website giúp bạn học các khoá học online bằng tiếng Việt với rất nhiều chủ đề.

KYNA – Học online cùng chuyên gia!

KYNA.VN được quản lý bởi Công ty Cổ phần Dream Viet Education, một trong những đơn vị đi đầu trong công nghệ đào tạo trực tuyến các kỹ năng tại Việt Nam từ năm 2011. Bắt đầu từ một đơn vị tạo khóa học kỹ năng dưới dạng trực tuyến, từ 5/2013, Kyna.vn bắt đầu xây dựng hệ thống website Kyna.vn, hợp tác với các giảng viên uy tín, có chuyên môn cao để tạo nên những khóa học chất lượng, chi phí thấp cho học viên. Sau 2 năm hoạt động, Kyna.vn hiện có hơn 100,000 học viên theo học.

Điểm khác biệt mà Kyna.vn mang lại cho học viên là hệ thống học tập chuyên nghiệp, có chức năng thảo luận, làm bài tập, tiểu luận tốt nghiệp để học viên tự theo dõi, đánh giá tiến trình học tập của mình.
Phong cách biên tập video đúng chuẩn video đào tạo giúp học viên dễ tiếp thu và nắm bắt ý chính của bài học hơn.
Sau khóa học, học viên được cấp chứng nhận tốt nghiệp.

VTC Academy – Biến đam mê thành sự nghiệp

Học viên Công nghệ và Nội dung số VTC – VTC Academy được thành lập từ năm 2010. Đến nay, qua 5 năm xây dựng và phát triển, VTC Academy tự hào trở thành đơn vị top 1 lĩnh vực “Đào tạo về Công nghệ và Nội dung số”.

Unica – Học từ chuyên gia

Unica là một hệ thống đào tạo trực tuyến, cổng kết nối Chuyên gia với Học viên, được vận hành bởi iNET Academy – Học viện Internet Marketing với hơn 100.000 học viên.

Monkey Junior – Học tiếng anh cho trẻ em 0-10 tuổi

Khoa học chứng minh 0-10 tuổi là giai đoạn vàng phát triển ngôn ngữ. Monkey Junior phát triển chương trình học ngôn ngữ TOÀN DIỆN NHẤT từ trước đến nay áp dụng phương pháp Giáo dục sớm, giúp trẻ phát triển vượt bậc năng lực ngôn ngữ trong giai đoạn này.

Với 3 sản phẩm chính lần này, Early Start mong muốn đẩy mạnh hơn nữa việc cải thiện tiếng anh của trẻ qua các gói/ thẻ học online.

  • Monkey Junior: Chương trình học tiếng anh trẻ em
  • Monkey Math: Toán tiếng anh chuẩn Mỹ  
  • Monkey Stories: chương trình truyện tiếng anh dành cho trẻ 

Edu mall – Siêu thị khoá học

Edumall là “siêu thị” các khóa học trực tuyến ngắn hạn lớn nhất Đông Nam Á với hàng nghìn khóa học thuộc mọi lĩnh vực, đội ngũ giảng viên chuyên nghiệp, giàu kinh nghiệm và mạng lưới học viên rộng khắp cả nước. Edumall – nơi bạn học mọi kĩ năng làm chủ tương lai.

Phương pháp sư phạm LIPE

Đã áp dụng thành công tại Đại học Harvard và Stanford. Xem bài giảng video(Lecture) – Hỏi-đáp với thầy và bạn học (Interaction) – Thực hành (Practice) – Đánh giá kết quả (Evaluation)

Trải nghiệm học tập không giới hạn

Bạn có thể học tại nhà, tại văn phòng, quán cà phê hoặc bất cứ nơi đâu, bất cứ khi nào miễn là thiết bị của bạn ( máy tính bàn, laptop, smartphone,…) có kết nối internet

Mua một lần học trọn đời

Chỉ mất chi phí một lần để mua khoá học là bạn có thể sở hữu khoá học mãi mãi ngay cả khi khoá học được cập nhật nội dung mới. Khoá học không giới hạn thời gian học tập.

Dễ học, dễ ứng dụng

Các khoá học được biểu diễn dưới dạng video, do giảng viên biên soạn từ trước và đưa lên hệ thống website edumall.vn.

Tổng thời gian trung bình mỗi khoá học kéo dài 3-4 tiếng, được chia thành nhiều bài giảng nhỏ có thời lượng từ 3-5 phút để học viên dễ tiếp nhận và vận dụng thực tiễn

Cách khởi động lại máy đọc sách kindle

Một cách hiệu quả để khắc phục các tình trạng phổ biến sau:

  • Kindle bị đứng – đơ – giật => khởi động lại ?
  • Kindle không đồng bộ sách, hoặc bị lỗi trong quá trình tải sách => khởi động lại ?

Khởi động lại sẽ giúp cho máy đọc sách kindle làm mới lại hệ thống và hoạt động “đi vào nề nếp” như cũ.

Điều đầu tiên chúng ta cần quan tâm là vị trí nút nguồn. Nếu chưa biết nút nguồn ở đâu 😀 bạn hãy xem như hình. Vị trí nút nguồn máy kindle:


Các cách khởi động lại máy đọc sách kindle:

  • Cách 1: Bấm nút nguồn và giữ trong 7 giây. Hoặc cho đến khi xuất hiện hộp thoại “Power” Chọn nút “Restart”
  • Cách 2: Trường hợp máy của bạn bị đơ, không tác động gì được. Bấm 7 giây cũng không ăn thua thì bạn hãy bấm giữ liên tục nút nguồn trong 40s. Màn hình sẽ chớp 1 cái và tiếp tục tiến trình khởi động lại.

Màn hình khởi động lại của kindle:

Chúc các bạn thành công! ?

Cách chuyển đổi định dạng ebook để gửi vào máy đọc sách kindle

Chào các bạn!
Bài viết hôm nay hướng dẫn các bạn chuyển đổi định dạng sách gửi vào máy đọc sách.

Tuỳ vào từng loại máy đọc sách mà bạn chọn định dạng sách khác nhau. Ví dụ như kobo, bibox thì chọn file epub. Còn máy kindle thì chọn file mobi, awz3,.. Trong bài viết này tập trung chủ yếu vào máy đọc sách kindle, nhưng khi bạn đã biết các chuyển đổi định dạng thì bạn có thể áp dụng cách tương tự để chuyển đổi qua lại giữa các định dạng ebook. Nếu bạn chưa rõ các định dạng hỗ trợ của máy đọc sách kindle vui lòng xem thêm các định dạng file ebook mà máy đọc sách kindle hỗ trợ.

1. Chuyển định dạng online.

Cách này dễ dàng nhất nhất vì không cần cài thêm phần mềm gì cả, giao diện các trang web hỗ trợ chuyển định dạng bằng tiếng anh – việt đều có với giao diện trực quan dễ sử dụng.

Bạn có thể tìm trên google cụm từ: convert “định dạng nguồn” to “định dạng đích”
ví dụ: convert epub to mobi

Google sẽ hiển thị rất nhiều trang, nhưng ở đây mình giới thiệu trang web sau:

https://convertio.co/vn/epub-mobi/

Trang web này với giao diện rất đơn giản và dễ sử dụng.

Bạn chọn file epub cần chuyển, website sẽ chuyển sang màn hình tiếp theo:

Bấm vào nút “Đổi” để tiếp tục, chờ 1 tí, xong hệ thống sẽ hiện nút “Tải về”. Bấm vào nút này trang web sẽ cho bạn tải về file đã chuyển đổi xong.

2. Sử dụng phần mềm chuyên nghiệp calibre.

Với cách này không những bạn có thể chuyển định dạng, mà calibre còn hỗ trợ bạn quản lí tổ chức các ebook của như 1 thư viện cá nhân. Nhưng trong nội dung bài viết này chỉ xoay quanh việc chuyển định dạng ebook bằng calibre. Còn giới thiệu chi tiết về calibre bạn có thể xem thêm tại loạt bài giới thiệu và các sử dụng chương trình quản lí ebook calibre.

3. Gửi email

Ngoài 2 cách trên khi bạn send sách pdf qua kindle bằng email với từ khoá trê n subject là “convert” thì document service cửa kindle sẽ tự động chuyển đổi file pdf thành định dạng file có thể có thể đọc resize chữ trên máy kindle.

Giới thiệu công cụ gỡ bỏ mật khẩu pdf – online không cần cài đặt

Xin chào,
Nếu bạn đang tìm chương trình gỡ mật khẩu online, thì không cần tìm nữa!. Bạn chỉ cần vào website :
Sau đó chỉ cần làm theo 4 bước:
  1. Chọn file pdf bị khoá mật khẩu
  2. Nhập mật khẩu vào ô mật khẩu
  3. Submit.
  4. Ngồi chờ … hệ thống gỡ bỏ mật khẩu giúp bạn!
Chờ 1 tí xíu, sau khi hệ thống xử lí xong sẽ tự động cho download file pdf đã gỡ mật khẩu. Chúc các bạn thành công!

Cách gửi trang web đang đọc vào máy đọc sách kindle

Xin chào các bạn!
Ở các bài trước mình đã giới thiệu đến các bạn các cách để gửi các ebook vào máy đọc sách kindle.

Nhưng nhu cầu ĐỌC của chúng ta không dừng lại ở đó. Bạn đang lướt web bổng gặp một bài viết rất hay mà lại khá dài. Có thể bạn không có thời gian đọc ngay lúc đó, hoặc bạn thấy đọc trên máy đọc sách SƯỚNG hơn nhiều. Vậy nên hôm nay mình giới thiệu đến các bạn cách để gửi một trang web dài vào máy kindle.

Tất cả chúng ta cần là một extension chính hãng của Amazon. Extension trên trình duyệt chrome tại đường link sau: https://chrome.google.com/webstore/detail/send-to-kindle-for-google/cgdjpilhipecahhcilnafpblkieebhea 

 

Bạn vào link trên, ở trang web mở ra bạn bấm nút Add to Chrome.

Chrome hỏi bạn có muốn cài không, bạn chọn “Add extension”

 

Khi bạn vào 1 trang web nào đó muốn gửi qua máy đọc sách kindle bạn chọn biểu tưởng Kindle ở trên góc phải. Rồi chọn “Send to kindle”

Vậy là đã xong! Có thắc mắc hoặc cần giúp đỡ vui lòng gửi vào bình luận bên dưới 😉