HƯỚNG DẪN TẠO GIAO DIỆN PHP : THIẾT KẾ GIAO DIỆN TRANG WEB (PHẦN 1)

Mặc dù những CMS mã nguồn mở như WordPress, Joomla,… đã trở nên cải cách và phát triển và giúp việc xây dựng trang web trở nên chuyên nghiệp hơn. Mặc dù vai trò của việc lập trình thuần vẫn cực kỳ quan trọng. Lúc mã nguồn có không ít người dùng thì cấu trúc của nó cũng rất có thể nhiều tín đồ biết đến khiến tính bảo mật website trở nên kém hơn. Đó là nguyên nhân mà siêu ít những trang báo khủng hay các trang dịch vụ thương mại lớn họ không thực hiện CMS. Trong bài viết này bản thân sẽ share với chúng ta cách viết một website bằng ngôn ngữ PHP. Tuy vậy trước khi chúng ta đọc bài này bản thân khuyên chúng ta nên đọc 2 phần về lập trình PHP cơ bản trên web mình để hiểu về PHP trước sẽ nhé.Bạn đang xem: gợi ý tạo giao diện web bằng php

Tạo database và cấu trúc folder

Trong lý giải này mình chỉ hướng dẫn tạo nên một website đơn giản. Chính vì như vậy nên csdl mình sẽ khởi tạo ra 3 bảng đơn giản và dễ dàng như sau:

Bảng user: lưu trữ thông tin đăng nhập của tín đồ dùng


*

Với bảng trên mình sẽ khởi tạo ra 4 trường theo lần lượt là:id_user: bao gồm kiểu int, trực thuộc tính từ bỏ tăng AUTO_INC...và nó là ngôi trường khóa chính.username: đã lưu tài khoản đăng nhập của người dùng. Mình để đại đẳng cấp text, bạn cũng có thể để dạng hình varchar vì nó hay không cất dấu và cam kết tự giới hạn.pass: thì dùng để làm lưu mật khẩu đăng nhập và tôi cũng để tựa như trường username.name: trường để lưu thương hiệu của user.

Bạn đang xem: Hướng dẫn tạo giao diện php : thiết kế giao diện trang web (phần 1)

Bảng category: lưu giữ trữ các danh mục của bài xích viết


*

Mình sẽ khởi tạo 4 trường mang đến bảng này như sau:id_cat: có giao diện int, thuộc tính từ bỏ tăng AUTO_INC...và nó là trường khóa chính.name_cat: lưu lại tên của danh mục, tất cả kiểu text.slug_cat: giữ giàng tên không dấu, không khoảng cách của danh mục để triển khai đường dẫn thân mật và gần gũi sau này.status: lưu lại trạng thái của danh mục, dùng kiểu tinyint.

Bảng post: Lưu những thông tin về một bài xích đăng.


*

Các ngôi trường của bảng này như sau:id_post: có dạng hình int, trực thuộc tính trường đoản cú tăng AUTO_INC...và nó là ngôi trường khóa chính.id_cat: id của danh mục. Thiệt ra xây cất như nỗ lực này chưa hoàn toàn đúng, bởi một bài xích đăng hoàn toàn có thể ở trong vô số danh mục, buộc phải quan hệ của chính nó là N-N tuy vậy ở đây mình chỉ thiết kết cơ bản kiểu 1 bài xích đăng chỉ có một danh mục thôi.id_user: id của user tạo bài bác post.title: title của bài bác postdescription: biểu lộ của bài bác postcontent: câu chữ của bài xích postslug_post: giống như slug_cat.status: tâm trạng của bài postdate: ngày đăng bài bác post.Mình bổ sung thêm một ngôi trường là thubnail nhé, để lưu đường dẫn hình ảnh đại diện. Mình quên mất.

Như vậy mình đã có Database rồi. Những bảng này mình xây dựng đơn giản, không theo chuẩn và tôi cũng không so với kỹ. Nếu các bạn làm một dự án tráng lệ mình khuyên chúng ta nên bỏ thời hạn để nghiên cứu và phân tích kỹ về CSDL bởi vì nó ảnh hưởng rất các sau này. Và hiện nay chúng ta sẽ tiến hành xây dựng cấu tạo folder cho website.


*

Cấu trúc này thường không giống với hầu như gì chúng ta đã học ở trường vày ở đây mình muốn mọi Request của người tiêu dùng chỉ thông qua 1 file nhất là index.php. Điều này cũng thịnh hành với đa số các CMS hiện nay nay.Mục admin trong thời điểm tạm thời chưa quan liêu tâm, bạn cứ xem nó như 1 website không giống đi. Mục public là mục mình đang chứa tổng thể các tệp tin như css, js, img,… nói chung là phần đông file mà bạn dùng có thể truy cập trực tiếp. Mục site sẽ chứa đầy đủ file xử lý như các action, database, widget,…..Các mũi tên red color chỉ những yêu cầu của fan dùng. Lúc họ chỉ dẫn một yêu ước đến 1 action nào đó nó sẽ hotline đến các widget để kết thúc giao diện và trả lại mang đến file index hiển thị (đường màu sắc xanh).

Tạo các action trong PHP

Đầu tiên mình đề xuất lấy biến action trong tệp tin index. Bạn mở file index cùng code như sau:

biến này được lấy ở đâu?, chính là trên URL của browser. Bạn thử gõ vào đường dẫn: http://localhost/hocphp/?action=post. Tiếp nối thêm đoạn echo trong file index.php như sau:

Đầu tiên mình sẽ khởi tạo ra một trở nên $path nhằm lưu băng thông đến chiếc file action cần xử lý. Sau đó thì mình sẽ kiểm tra xem tệp tin đó có tồn tại tuyệt không. Cùng mình sẽ thực hiện hàm require nhằm require file đó vào. Cũng với đường dẫn http://localhost/hocphp/?action=post chúng ta mở tệp tin post.php trong thư mục kích hoạt và thêm vào dòng bất kỳ, F5 lại bạn sẽ thấy kết quả.

Xem thêm: Bí Quyết Nói Tiếng Anh Đơn Giản Và Hiệu Quả, 14 Cách Luyện Nói Tiếng Anh Đơn Giản Và Hiệu Quả

Tương từ bỏ như vậy, nếu hotline ?action=cat thì nó sẽ hotline vào file cat.php. Cùng nếu không có biến action thì mang định nó đã require action home. Bạn cũng có thể thêm một tệp tin 404.php trong action để sửa chữa cho dòng echo nếu action tìm là không thấy.

Thông thường thì hàm isset($_GET) ? $_GET : false; sẽ tiến hành sử dụng không hề ít nên mình sẽ khởi tạo ra một hàm và chỉ còn truyền key vào thôi. Hiện giờ bạn mở tệp tin site.php trong thư mục sys ra với code đoạn sau vào, bản thân tạo luôn luôn cả việc lấy vươn lên là POST nhé.

Cuối thuộc bạn sửa đổi lại tệp tin index như thế này:

Các mục nghỉ ngơi trên mình đã chú thích hợp lại rồi đấy. Tiếp sau mình đã đưa các Widget vào những action. Công việc này cũng đơn giản và dễ dàng như việc viết theme đến WordPress vậy. Hiện thời bạn liên tục mở tệp tin site.php cùng viết các hàm như sau:

function head() require("site/widget/header.php"); function footer() require("site/widget/footer.php"); function content($name) require("site/widget/".$name."-content.php"); Các hàm này đơn giản chỉ là require vào những widget tương ứng, vào hàm nội dung mình phải truyền tên content để xác định là nội dung nào. Bây giờ bạn cũng có thể mở file home.php sinh hoạt file action và gõ đoạn sau vào.

Vậy là xong trang chủ. Bạn có nhu cầu design mang đến nó thì mở từng widget lên để sửa đổi nhé, Nó tương tự như như giảm html mang đến theme WordPress vậy.

Bổ sung: mặc dù nhiên hiện giờ nếu bạn truy cập thẳng vào các file như vậy này “http://localhost/hocphp/site/action/cat.php” sẽ có mặt lỗi ngay. Nguyên nhân là hằng SYSPATH mình khai báo ở tệp tin index.php, nhưng lại khi truy vấn thẳng thì nó không thông qua file này cùng hằng SYSPATH ko được khởi tạo. Để khắc phục điều này trong file kích hoạt và widget mình sẽ thêm đoạn này vào đầu.

if (!defined ("SYSPATH")) header("Location:../../index.php");Nó sẽ mang về trang index nếu hằng syspath không tồn tại. Thật ra bạn không phải thêm vào những file widget đâu. Như vậy bọn họ có được một kết cấu folder rồi. Hiện thời mình sẽ làm việc với CSDL để mang dữ liệu lên những action cùng widget.