post image

Căn bản PHP – Bài 4 – Phần 1

Để tiếp tục trong Series này tôi xin giới thiệu sơ qua về đối tượng SESSION và COOKIE trong PHP. Các khái niệm và cách thức khai báo các đối tượng này.

Để tránh tình trạng cảm thấy bị nhồi nhét khi theo dõi kiến thức tôi đã chia Session 4 này thành 2 phần. Phần đầu đi nghiên cứu đối tượng Session, phần 2 sẽ nghiên cứu đối tượng Cookie.

Với Video này các bạn sẽ nắm vững về cách tạo và sử dụng các đối tượng SESSION và COOKIE, các cách để xoá 1 hoặc nhiều đối tượng SESSION và COOKIE trong PHP. Cũng như với mọi tiêu chí tôi sẵn sàng nhận những ý kiến đóng góp về ý kiến cho Video để ngày càng hoàn thiện hơn.

Thời lượng: 29:32

Download định dạng .avi chất lượng cao: Link sẽ được cập nhật sau 7 ngày

«

»

39 Comments

( Comment bài này )
  1. leehieu says:

    Thank anh nhiu…bai giang rat hay..

  2. nhateo says:

    Anh oi? em bị lỗi này nè Deprecated: Function session_unregister() is deprecated .
    function sesion_is_register() cũng lỗi tương tự. phiên bản em xài là PHP 5.3.8. nếu lỗi do phiên bản thì để khắc phục ta có hàm nào thay thế tương tự để thay thế không?
    Mong nhận hồi âm sớm từ anh

    • Thường thì bạn sẽ thấy được lỗi này với các phiên bản PHP từ 5.3. Do phiên bản mới có thể đã loại bỏ nó, bạn có thể sử dụng $_SESSION['name']=”; để loại bỏ và xét điều kiện khôgn cho phép rỗng là được.

  3. ngo minh phung says:

    Anh ơi sao em thêm hàm session_unregister vào code thì xuất hiện lỗi thế này Deprecated: Function session_unregister() is deprecated in

  4. nguyenhoa says:

    em không down được video này các bác ơi.giúp em với.huhu

  5. lapmaihokdc says:

    cám ơn izb mình sẽ có gắng

  6. Toàn says:

    Code của bác Demon không được, hình không phải ob_end_flush mà là :

    <?php
    ob_start();
    session_start();
    ob_clean();
    //code khac
    ?>

    thế mới đúng

  7. Phan Thanh says:

    Notice: Undefined index: name in C:\wamp\www\PHPlab\BaiDauTien.php on line 18
    Lỗi báo khi chạy code :

    Ten :
    Que Quan:

    ———–
    em làm giống w3c. Nhung vẫn báo lỗi này ! Các anh xem giúp em voi ! em cảm on !

  8. Tốt nhất thì bạn nên để dòng session_start() lên trên cùng của tất cả các thứ khác. Nhưng thực tế thì bạn có thể đặt nó ở dưới mã PHP miễn là đoạn mã đó không output gì ra trình duyệt là được.

    Bạn có thể sử dụng ob_start() như bạn Thanh nói để bật Output Buffering, nhưng nhớ là cuối cùng của trang nên dùng ob_end_flush() để đóng nó lại. Hoặc nếu bạn làm local có thể bật chức năng Output Buffering trong file php.ini.

  9. MrV2m says:

    @Hoàng Minh: Không biết anh SC có nói hay ko nhưng mà cái session_start(); phải được đặt trên cùng của file php. Tức trên nó hok có bất đòng PHP và HTML nào.
    Nếu như mà còn bị lỗi trên thì nguyên nhân là code bạn save có ki tự boom (các kí tự ẩn), khi save nhớ lưu ý: save with utf-8 without boom. Các khắc phục là xóa <?php rồi đánh lại.
    ^^! Lúc mới lập trình PHP hay gặp nên biết.

    • Hoàng Minh says:

      cảm ơn các anh nhiều ! Của em bị lỗi khi save có ký tự ẩn gì đó , bi giờ ok rồi , em mới học PHP. many thank

  10. Hoàng Minh says:

    Anh ơi sao em khia báo session_start(); và làm lại bài như anh sao nó báo lỗi nhu thế này là sao ạ ? Em làm đúng như video .

    Warning: session_start() [function.session-start]: Cannot send session cookie – headers already sent by (output started at C:\xampp\htdocs\abc.php:2) in C:\xampp\htdocs\abc.php on line 4

    Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at C:\xampp\htdocs\abc.php:2) in C:\xampp\htdocs\abc.php on line 4

    • thanh says:

      Bạn viết dòng này ở đầu trang thử xem: ob_start();

      • Mr.BoTran says:

        Mình cũng làm theo và gặp lỗi này

        Warning: session_start() [function.session-start]: Cannot send session cookie – headers already sent by (output started at C:\xampp\htdocs\abc.php:2) in C:\xampp\htdocs\abc.php on line 4

        Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at C:\xampp\htdocs\abc.php:2) in C:\xampp\htdocs\abc.php on line 4

        thêm dòng ob_start(); như bạn chỉ cũng ko được.

        Trong bài giảng có đoạn nói về việc khai báo thư mục được lưu trữ dữ liệu do đối tượng này. Cái này mình không biết làm, cũng ko biết tạo file php.ini như thế nào, đây không biết có phải là nguyên nhân không. Mong mọi người chỉ giúp!

  11. moctho says:

    ai vui lòng cho tớ xin link Download cua video này với hay wá àh thank nhìu lắm!

  12. MrBlackStar says:

    Từ khi chuyển sang vimeo , ko hiểu sao không thể play video được :( Buồn quá anh CS ơi

  13. ly anh doan says:

    nếu ai cũng hướng dẫn tận tình như mấy anh thì em nghĩ tốc độ phát triển của người Việt mình sẽ rất nhanh.
    Cảm ơn anh rất nhiều. Mong anh viết tut nhiều hơn.

  14. hoặc
    link bạn có thể sử dụng chức năng tìm kiếm của diễn đàn hoặc
    http ://www.izwebz.com/video-tutorials/php-co-ban/
    http ://www.izwebz.com/video-tutorials/can-ban-php-bai2/
    http ://www.izwebz.com/video-tutorials/can-ban-php-bai-3/
    http ://www.izwebz.com/video-tutorials/can-ban-php-bai-4-phan-1/
    http ://www.izwebz.com/video-tutorials/can-ban-php-bai-4-phan-2/
    http ://www.izwebz.com/video-tutorials/can-ban-php-bai-5/
    http ://www.izwebz.com/video-tutorials/php-can-ban-bai-6-phan-1/
    http ://www.izwebz.com/video-tutorials/php-can-ban-6-phan-2/

    • Kim Danh says:

      Anh C.S cùng các bạn có thể chỉ cho mình cách crack phần mềm phpDesigner 7.2, phần mềm này chỉ cho dùng thử 21 ngày!

  15. link bạn có thể sử dụng chức năng tìm kiếm của diễn đàn

  16. hangoc says:

    anh ơi!sao em hông thấy căn bản php-bài 1 và bài 3 vậy anh.anh có thể up lên lại cho em xin được không anh.Cám ơn anh nhều!

  17. ^^ ! mới ăn tết xong, công việc cũng lung tung quá nên chưa làm được phần 2, nhưng sẽ có sớm thôi …

  18. Quế.bach says:

    Bác ơi phần 2 đâu nhỉ, em chờ lâu quá

  19. Thông thường thời gian hết của session là 15 phút, tắt trình duyệt, hoặc là mình xoá nó thôi bạn.

  20. leozo says:

    a ơi cho e hỏi thời gian mặc định hết của session là bao lâu , hay nói cach khác là time out default của session là bao nhiêu phút ?????

  21. AlanSmith says:

    Oh yeah. học qua video vẫn thấy hứng thú thỉnh thoảng a CW và DW lại còn làm cho buổi học cảm thấy thoải mái . học qua sách cũng được nhưng cảm thấy hơi buồn ngồi 1 mình đọc rùi làm thấy nó hơi lẻ loi. Học video thấy rất hứng thú nhiều khi không cần nhìn video nghe các anh ấy thuyết trình cũng nghĩ ra nhiều thứ hay phết. Thanks 2 a CS và DW nhiều chúc các anh và gia đình có 1 năm mới an khang hạnh phúc

  22. T.Anh says:

    Cảm ơn 2 pác DW và CS về những tut rất bổ ích.Năm mới chúc 2 pác luôn khoẻ và thành công trong công việc.Hy vọng 2pác luôn có thật nhiều cảm hứng để làm nhiều tut nữa chia sẻ cùng mọi người. Happy new year !

  23. shrimp2t says:

    Em xin gop thêm tí y kiến. nếu lưu code dang encoding ANSI thi không có vấn đề gì phải noi. Nhưng là người việt nam hay phải viết tiếng Việt nên thường hay sử dụng encoding utf-8 nên hay có lỗi => ‘Header already sent’ rất bực mình nhiều khi xem code ko thay sai chỗ nào mà vẫn ko chạy dc thế mới “cú”.

    Để tìm hiều lỗi này và cách khắc phục các bác có thể tham khỏa tại phpvn.org

    • Deeds says:

      “Header already sent” là lỗi hay xảy ra với session, nếu bạn sử dụng utf-8 thì ở đầu code có 1 kí tự ẩn, phải có trình soạn thảo đọc văn bản dạng utf-8, bạn sẽ phát hiện ra kí tự đó. Loại bỏ nó là được :D . Còn tốt nhất, theo mình, nếu sử dụng session thì bạn luôn luôn để lệnh session_start() lên đầu tiên.
      Ngoài ra nếu mình không nhầm thì lệnh header(“localtion:eg.php”) cũng có thể gây ra lỗi đó nếu trước header có kí tự lạ (Nhấn mạnh lại là nếu mình không nhầm ^^).
      Về video này đã hướng dẫn khá cơ bản và hay. Session và cookie là 2 thành phần rất quan trọng. Các bạn nên thường xuyên luyện tập với chúng.
      Trong php còn một đối tượng khá quan trọng khi kết hợp, đó là thẻ form, vì vậy $_GET và $_POST cũng rất quan trọng:D

      • shrimp2t says:

        ““Header already sent” là lỗi hay xảy ra với session, nếu bạn sử dụng utf-8 thì ở đầu code có 1 kí tự ẩn” => ko phải 1 mà là 3 cơ .

        “phải có trình soạn thảo đọc văn bản dạng utf-8, bạn sẽ phát hiện ra kí tự đó. Loại bỏ nó là được ” =>điều này là ko đúng nếu bạn dùng notepad++ hay PHP design7, hay DW thì cũng thế cả thôi. lỗi có thể ko tin tin dc .

        Nói chung Với SESSION nên cẩn thận :D ko rất hay bị lỗi nếu encoding dạng utf-8 .
        Còn dang ANCI thi vô tư vùa code vùa ngủ

  24. Vào comment mới biết site của bác lưu thông tin người comment = cookie

  25. Nguyen khanh says:

    Tôi rất ít khi viết comment nhưng những video của bạn hay quá nên tôi phải cảm ơn bạn nhiều. Tôi học được rất nhiều từ bạn

    • nguyenhuy1010 says:

      Thanks very much.

    • Lý Hạo says:

      Chào anh Clackken.Smith.!
      Sao em dùng đối tượng session_is_registered(‘public’); khi chạy trình duyệt nó báo lổi cái dòng nầy là “Deprecated: Function session_is_registered() is deprecated in C:\wamp\www\PHP\s4_1.php on line 8″. Và dùng thử session_unset(); không báo lổi những không làm việc. Vậy là nguyên nhân gì hả anh?

      • Lỗi này của em là do em đã khai báo biến session từ trước đó. Giờ khi em gọi lại hàm khai báo này sẽ thông báo rằng em khai báo double thôi. cơ bản muốn khai báo SS em chỉ cần $_SESSION['tên session']. Thế là ổn.

      • Hoặc lỗi này cũng được thông báo khi em dùng phiên bản PHP 5.3. Do phiên bản này không còn hỗ trợ hàm session_is_registed nữa, dẫn đến thông báo lỗi đó, em có thể check lại xem.

        • Lý Hạo says:

          Cảm ơn anh CS đã reply. Em down về warmp 2.0i để thực hành bài viết của anh. Nhưng bị lổi session_is_registed. Vậy anh đang dùng cái nào để hổ trợ được vậy?
          Nếu những câu lệnh nầy chỉ hổ trợ những phiên bản thấp hơn thì phiên bản sau nầy để thực hiền mục đích nầy thì mình phải làm sao đây anh?

        • Lý Hạo says:

          Cảm ơn anh CS đã reply. Em down về warmp 2.0i để thực hành bài viết của anh. Nhưng bị lổi session_is_registed. Vậy anh đang dùng cái nào để hổ trợ được vậy?
          Nếu những câu lệnh nầy chỉ hổ trợ những phiên bản thấp hơn thì phiên bản sau nầy để thực hiền mục đích nầy thì mình phải làm sao đây anh? Anh cho em xin bảng tổng hợp các đối tượng php được không? Ví dụ như trong tutorial 4.2 về cookies anh đã dùng đối tượng header(‘location:’….); Do vậy mà em cần biết nhiều đối tượng có sẳn để hổ trợ . Nếu anh có thì cho em tham khảo . Một lần nữa chân thành cảm ơn anh và chút anh nhiều sức khỏe!

  1. BB
  2. BB
  3. BB

arrow

Lưu ý khi post comment:

  • Không "bóc tem" topic
  • Dùng lời lẽ có văn hoá và lịch sự
  • Xem trang FAQs trước khi hỏi
  • Bạn có thể dùng thẻ HTML như:<strong>, <em>, <a>
  • Đặt code trong thẻ [php],[html],[javascript],[css]

Chọn kiểu gõ: Tự động TELEX VNI Tắt