אתה נמצא כאן מדריכים  >>  יצירת תבניות - templates  >>  הכנסת דפי תוכן לתבנית

הכנסת דפי תוכן לתבנית

כתיבת דף התוכן

במערכת שבנינו, שמרנו את המעטפת (העיצוב) בקובץ נפרד, קובץ התבנית (template.php). את הבשר של דפי המערכת נשמור בקבצים נפרדים, קבצי התוכן. בדפי התוכן הללו אנו נתייחס רק לתוכן עצמו ולעיצוב הפנימי שלו, אך לא נוכל לשנות מהם את המעטפת והעיצוב החיצוני של הדף. בקבצי התוכן נוכל להשתמש גם בקוד PHP, שיפוענח וירוץ כאשר מכלילים את קובץ התוכן בתבנית, ובקוד ה-PHP ניתן להשתמש גם במשתנים הגלובליים שהוגדרו בקובץ התבנית.

ניתן דוגמא לכתיבת קובץ תוכן שמציג את ה-IP של המשתמש (client):

file name: content_pg_1.inc
<DIV dir="rtl">
<H2>
<?= $page_info["title"];
/*שימוש בקוד PHP.
כאן השתמשנו במשתנה גלובלי שהוגדר בקובץ התבנית,
באמצעותו אנו מדפיסים את הכותרת של הדף.
*/
 ?></H2>
<P>ניתן לכלול בדפי התוכן גם קוד PHP.</P>
<P>למשל, נראה לכם מה ה-IP שלכם באמצעות PHP, על-פי המשתנה <SPAN dir="ltr"><NOBR>$_SERVER[&quot;REMOTE_ADDR&quot;]</NOBR></SPAN>...</P>
/*הבשר של דף התוכן.
ניתן להשתמש כאן בתגי HTML
כדי לעצב את התוכן.
*/

<P>ה-IP שלך הוא:<BR><B>
<?= $_SERVER["REMOTE_ADDR"];
/*שימוש בקוד PHP.
אנו מדפיסים את כתובת ה-IP.
*/
 ?></B></P>
</DIV>

הכנסת דף התוכן לבסיס הנתונים של המערכת

עבור כל דף של תוכן שרוצים לשלב במערכת בתוך התבנית, יש צורך להכניס את נתוני הדף לתוך בסיס הנתונים של המערכת. בסיס הנתונים כולל: מספר זיהוי ייחודי לדף התוכן, מיקום קובץ התוכן על השרת (מיקום יחסי לגבי הספריה בה נמצא קובץ התבנית), כותרת הדף, מספר הזיהוי של הדף הבא ומספר הזיהוי של הדף הקודם.

כדי להכניס את הנתונים אודות דפי התוכן לבסיס הנתונים, נשתמש בשרת ה-MySQL ונכניס את הנתונים באופן ידני. מספר הזיהוי של הדף הראשי במערכת חייב להיות 00001. אם אין בטבלת הנתונים דף תוכן עם מספר זיהוי 00001, הדף הראשון שתקבל הוא הודעת שגיאה, האומרת כי מספר הזיהוי של הדף המבוקש לא נמצא (כאשר לא מציינים את הדף מפורשות, ברירת המחדל היא לקחת את מספר הזיהוי 00001).

במערכת הקטנה שבנינו, יש 4 דפי תוכן. כך הם נראים בבסיס הנתונים:

p_id path title p_prev p_next
00001 contents/content_first.inc הדף הראשון 00000 00100
00100 contents/content_pg_1.inc ה-IP שלי 00001 00101
00101 contents/content_pg_2.inc טבלת הדפים במערכת 00100 00250
00250 contents/content_map.inc מפת המערכת 00101 00000

תגובות בנושא

שאלה 06-12-02 03:01
 [ללא שם]
#216

איך יודעים איזה מס' id לכתוב?

auto_increment 06-12-02 04:00
 אלי חן (מנהל)
#218

אם תסתכל על הגדרת הטבלה של הדפים, תראה כי השדה p_id מוגדר בטבלה כ auto_increment, מה שלא מחייב אותך לתת מספר זיהוי (id) ספציפי, ואם תשאיר את השדה ריק אז MySQL ייתן לזה מספר אוטומטי (המספר הבא בטבלה).
אם אתה מנסה לתת מספר זיהוי ספציפי שכבר קיים בטבלה, אז תקבל הודעת שגיאה ולא תצליח להכניס את הדף החדש לטבלה.
חוץ מזה, אתה יכול לתת לדף איזה מספר זיהוי שתרצה, כל עוד הוא מתאים להגדרות השדה ואינו קיים כבר בטבלה.


לדף הקודםעיצוב התבנית -הקודם
לתחילת הדףלתחילת הדף
הבא- Flash - משתמשים אונלייןלדף הבא