הגדרת פונקציות חיוניות לתבנית
תבניות בדר"כ חוזרות מספר פעמים על פעולה מסויימת, לכן כדאי מאוד להגדיר פונקציות לפישוט התבנית. בדוגמא שלנו (שהיא דוגמא מאוד פשוטה) נסתפק ב-3 פונקציות: - פונקציה להתחברות לבסיס הנתונים של MySQL.
- פונקציה שמחזירה את כל המידע אודות דף תוכן מסויים במערכת.
- פונקציה שמחזירה מחרוזת קישור לדף תוכן מסויים.
file name: template_func.inc
<? /***** Global Variables: (change when needed) *****/| /* | משתנים גלובליים: שמכילים מידע על שרת ה-MySQL ועל בסיס הנתונים. | */ |
$mysql_host= "localhost"; $mysql_user= ""; $mysql_pass= ""; $mysql_db= "phpsite"; $mysql_table= "template_pages"; function ConnectMysql()| /* | פונקציה להתחברות לבסיס הנתונים של MySQL. | */ |
{ global $mysql_host, $mysql_user, $mysql_pass, $mysql_db; @mysql_connect($mysql_host,$mysql_user,$mysql_pass) or die("ERROR: cannot connect to MySQL Server!");| /* | מתחבר לשרת ה-MySQL, ובמקרה של כשלון הסקריפט נעצר. | */ |
@mysql_select_db($mysql_db) or die("ERROR: cannot connect to DB!");| /* | בוחר את בסיס הנתונים, ובמקרה של כשלון הסקריפט נעצר. | */ |
} function GetPageInfo($f_id)| /* | פונקציה שמחזירה את כל המידע אודות דף תוכן מסויים במערכת (לפי מספר הזיהוי). (המידע מוחזר בצורת מערך). | */ |
{ global $mysql_table; $result= @mysql_query("SELECT * FROM $mysql_table WHERE p_id='$f_id'")| /* | בוחר את כל השדות בטבלת הנתונים מהשורה של דף התוכן המבוקש (לפי מספר הזיהוי). | */ |
or die( "ERROR: wrong SQL query!"); $inf= mysql_fetch_array($result);| /* | הופך את תוצאת השאילתא למערך נתונים. במקרה ואין תוצאה מהשאילתא, מוחזר FALSE. | */ |
return $inf; } function PageLink($f_id)| /* | פונקציה שמחזירה מחרוזת קישור לדף תוכן מסויים (לפי מספר הזיהוי). במידה והדף לא נמצא תתקבל מחרוזת ריקה. | */ |
{ global $mysql_table; $result= @mysql_query("SELECT title FROM $mysql_table WHERE p_id='$f_id'")| /* | בוחר את כותרת הדף מהשורה של דף התוכן המבוקש (לפי מספר הזיהוי). | */ |
; if (!$result)| /* | אם יש שגיאה בשאילתא, מחזירים מחרוזת ריקה. | */ |
return ""; $row_title= mysql_fetch_array($result)| /* | הופך את תוצאת השאילתא למערך נתונים. | */ |
; if (!$row_title)| /* | אם במקום מערך נתונים קיבלנו FALSE, אז סימן שדף התוכן עם מספר הזיהוי המבוקש לא נמצא, ולכן מחזירים מחרוזת ריקה. | */ |
return ""; return "<A href=\"".$_SERVER["PHP_SELF"]."?p_id=".$f_id."\">".$row_title["title"]."</A>"| /* | בניית המחרוזת בקוד של HTML המקשר לדף התוכן המבוקש. | */ |
; } ?>
| הודעת שגיאה בהרצת השאילתא | 08-12-02 20:01 אחיעד | #387 |
| ננתי לו את כל הנתונים נכון והוא מצליח להתחבר לבסיס הנתונים, אבל הוא רושם לי הודעת שגיאה בהרצת שאילתא.
ERROR: wrong SQL query!
מה יכולה להיות הבעיה? |
|
| שגיאה בשאילתא | 09-12-02 00:01 אלי חן (מנהל) | #392 |
| אם אתה אומר שאתה מעביר פרמטר נכון, אז ככל הנראה המשתנה $mysql_table הוא ריק אצלך.. תבדוק את העניין. |
|
| ERROR: cannot connect to MySQL Server!
מייל:
shay@inbar.co.il |
|
|
|
|
|
|
ניווט האתר:
| הגדרת פונקציות חיוניות לתבנית |
הוספה למועדפים:
|