พฤษภาคม
31
2006

วิธีการสร้างเว็บไซต์ผ่านหนึ่งแฟ้มควบคุม index.php

นี่เป็นตัวอย่างง่ายๆที่แสดงให้เห็นถึงวิธีที่ง่าย maintainable ของการตั้งค่าการโหลดหน้าอยู่บนพื้นฐานของ URL ปัจจุบันคือ มันถือทั้งหมดของหน้าเว็บที่มีให้คุณในอาเรย์ .. นี้ได้อย่างง่ายดายดึงข้อมูลจากฐานข้อมูล

ผมได้รวมยังรหัสแม่แบบในการสร้างเมนูง่ายๆสำหรับคุณ .. คุณสามารถของหลักสูตรเพียงแค่สร้าง URL ของด้วยมือในแม่แบบของคุณหากยังไม่สามารถตอบสนองความต้องการของคุณ

สำหรับความกะทัดรัดที่ฉันไม่ได้รวม CSS หรือโครงสร้างของตารางสำหรับแฟ้ม index.tpl

index.php

รหัสสินค้า:
<? PHP
/ **
ควบคุมเว็บไซต์ *
* ผู้เขียน @ www.ideamesh.com
* /

/ / รวมและ instantiate Smarty
รวมถึง ('Smarty.class.php');
$ Smarty = & ใหม่ Smarty ();

/ / ตั้งค่า var url เรากำลังมองหาในการควบคุมการแสดงผลหน้า
$ page_var = 'หน้า';

/ / การใช้ขอบเขต _REQUEST $ เพื่อที่หน้าจะสามารถส่งผ่านไปในทางหรือ $ _POST $ _GET
$ page_request = $ _REQUEST [$ page_var];

/ / อาร์เรย์นี้ถือความสัมพันธ์ระหว่างตัวแปรหน้าและแม่แบบที่จะโหลด .. ข้อมูลนี้อาจจะมีการเรียกข้อมูลจากฐานข้อมูล
อาเรย์ $ เมนู = (
'บ้าน' => 'home.tpl',
เกี่ยวกับเรา '=>' aboutus.tpl ',
'ระบบของเรา' => 'system.tpl',
'ผลิตภัณฑ์' => 'products.tpl'
);

/ / ตรวจสอบว่าเพจที่ร้องขอพบว่าในเมนู
ถ้า (array_key_exists ($ page_request, $ เมนู))
แม่แบบ $ = $ เมนู [$ page_request];
/ / ถ้าไม่ได้ตั้งค่าหน้าเริ่มต้น
อื่น
แม่แบบ $ = 'home.tpl';

/ / กำหนดข้อมูลที่จะ Smarty และแสดง
$ Smarty-> compile_id แม่ = $;
$ Smarty-> แคช = 1;
$ Smarty-> กำหนด ('เมนู', $ เมนู);
$ Smarty-> กำหนด ('แม่', $ แม่);
$ Smarty-> กำหนด ('page_var', $ page_var);
$ Smarty-> จอแสดงผล ('index.tpl');
>?

index.tpl

รหัสสินค้า:
{include file = "menu.tpl"}
{รวมแฟ้มแม่แบบ = $}

menu.tpl

รหัสสินค้า:
{* เราสร้างรายการเมนูจากหน้าเว็บที่มีอยู่ในเมนู *}
id="navigation"> <ul
{คีย์ foreach = รายการ url_val = template_name จากเมนู = $}
<li>
href="{$SCRIPT_NAME}?{$page_var}={$url_val}"> <a
{$} url_val <br />
</ a>
</ li>
{/ foreach}
<ul />

แท็ก: ,
โพสต์ใน เคล็ดลับ , การเขียนโปรแกรม โดยโอเว่น

ทำตามความคิดเห็นผ่านทาง เว็บ | ฝากความคิดเห็น | Trackback URL

ฝากความคิดเห็นของคุณ

 
© 2008 - 2012 - All Rights Reserved - Ideamesh, Inc 22 คำสั่ง 0.364 วินาที