הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   שאלה (קבצי סקין) (https://hosts.co.il/forums/showthread.php?t=24541)

Eli-Hai 21-06-06 20:09

שאלה (קבצי סקין)
 
יש לי קובץ סקין שבנוי מפונקציות.
PHP קוד:

function bla(){
    echo <<<HTML
    Bla Bla
HTML;


אני מחפש דרך, בתוך הHTML, להשתמש בPHP - יצירת משתנים, השוואה ותנאים, אפשרי? איך?

Light-Era.Net || Ronen 21-06-06 20:16

כן.
שים
PHP קוד:

<?
echo <<<EOF
היום שתיתי $counter כוסיות וודקה.
EOF;

|Lol|

Eli-Hai 21-06-06 20:17

ביקשתי הגדרת משתנים וכמובן תנאים, תנאים זה דבר המפתח בקבצי הסקין שאני צריך.

בניה 21-06-06 20:20

ציטוט:

נכתב במקור על ידי Eli-Hai
ביקשתי הגדרת משתנים וכמובן תנאים, תנאים זה דבר המפתח בקבצי הסקין שאני צריך.

ב"ה


אי אפשר בתוך "איזור אריזה" לשים דברים שהם לא משתנים אם שים פונקציה שמחזירה ערך למשל אז יהיה שמה מקום ריק..
וכדאי לשים את המשתנים בתוך סוגריים מסולסלות.

הרעיון של קבצי סקין זה שהPHP ישאר בחוץ אז כדאי שבמקום לעשות if פשוט תעשה פונקציות שונות.
ככה לפחות עובדים בIB וזה הכי נח ככה לטווח הרחוק.

Eli-Hai 21-06-06 20:21

אז פשוט מצד אחד להגדיר את קבצי הסקין, ואילו מצד שני להגדיר פונקציות של PHP?

link 21-06-06 20:35

כשאתה קורא לפונקציות הסקין אתה כבר מציב בתוך הפרמטרים של הפונקציה את הערכים של התשובה. למשל:
$this->skin->names($my_name, $your_name);
וכו'

RS324 21-06-06 21:38

נאמרו פה הרבה שטויות... אני רוצה להבהיר כמה דברים... :


ציטוט:

הרעיון של קבצי סקין זה שהPHP ישאר בחוץ אז כדאי שבמקום לעשות if פשוט תעשה פונקציות שונות.
לא בדיוק נכון :
אני אסביר... לדוגמא אני רוצה להשתמש באותו טמפלט גם לעריכה וגם להוספה...
כאן ה IF באים ביותר נוחות בתוך הטמפלטס אני לדוגמא בניתי מערכת טמפלטים שתומכת באפשרות של תנאים ואז כשאני רוצה לעשות משהו כזה אני פשוט עושה ככה :

PHP קוד:

<if option="$session[loggedin] == 1">
welcome $userinfo[username]
<else />
welcome guest Please register
</if> 

אני לא חושב שלעשות את זה בקבצים של ה PHP זה יהיה הרבה יותר נוח
וזה סתם דוגמא קטנה..

לגבי השאלה עצמה :

הוצאת הפלט צריכה להיות השלב האחרון שאתה מבצע

אתה צריך לבנות פונקציה שיודעת לסנן את ה
<if option
ואת
<else />
ואת הסיומת של ה IF

אחרי שמצאת אתה צריך לבדוק אם התנאי מתקיים ואם כן להחזיר את הטקסט בלי כל ה IF
אלא עם הטקסט שצריך להיות מוצג מכיוון שדפדפנים לא תומכים בתנאים.

אני מקווה שהבנת את העיניין.

PHP קוד:

כשאתה קורא לפונקציות הסקין אתה כבר מציב בתוך הפרמטרים של הפונקציה את הערכים של התשובהלמשל:
$this->skin->names($my_name$your_name);
וכו 

זה שבמערכת שלך אתה צריך להכניס כל משתנה בנפרד זאת דרך מאד מאד לא נוחה לעבודה.

הדרך השניה הרבה יותר טובה.......

למרות שכשעושים את זה בפונצקיה צריך למצוא דרך אחרת יש כל מיני אפשרויות
אחת מהם היא func_get_arg

בכל מקרה אני מקווה שהרעיון מובן...

Eli-Hai 22-06-06 09:14

תודה רבה, אני אנסה זאת בקרוב.

בניה 22-06-06 09:21

ציטוט:

נכתב במקור על ידי RS324
נאמרו פה הרבה שטויות... אני רוצה להבהיר כמה דברים... :




לא בדיוק נכון :
אני אסביר... לדוגמא אני רוצה להשתמש באותו טמפלט גם לעריכה וגם להוספה...
כאן ה IF באים ביותר נוחות בתוך הטמפלטס אני לדוגמא בניתי מערכת טמפלטים שתומכת באפשרות של תנאים ואז כשאני רוצה לעשות משהו כזה אני פשוט עושה ככה :

PHP קוד:

<if option="$session[loggedin] == 1">
welcome $userinfo[username]
<else />
welcome guest Please register
</if> 

אני לא חושב שלעשות את זה בקבצים של ה PHP זה יהיה הרבה יותר נוח
וזה סתם דוגמא קטנה..

לגבי השאלה עצמה :

הוצאת הפלט צריכה להיות השלב האחרון שאתה מבצע

אתה צריך לבנות פונקציה שיודעת לסנן את ה
<if option
ואת
<else />
ואת הסיומת של ה IF

אחרי שמצאת אתה צריך לבדוק אם התנאי מתקיים ואם כן להחזיר את הטקסט בלי כל ה IF
אלא עם הטקסט שצריך להיות מוצג מכיוון שדפדפנים לא תומכים בתנאים.

אני מקווה שהבנת את העיניין.

PHP קוד:

כשאתה קורא לפונקציות הסקין אתה כבר מציב בתוך הפרמטרים של הפונקציה את הערכים של התשובהלמשל:
$this->skin->names($my_name$your_name);
וכו 

זה שבמערכת שלך אתה צריך להכניס כל משתנה בנפרד זאת דרך מאד מאד לא נוחה לעבודה.

הדרך השניה הרבה יותר טובה.......

למרות שכשעושים את זה בפונצקיה צריך למצוא דרך אחרת יש כל מיני אפשרויות
אחת מהם היא func_get_arg

בכל מקרה אני מקווה שהרעיון מובן...

ב"ה


ואם אתה רוצה לתת למשתמש לערוך את הסקין מהלוח בקרה זה יהיה סיוט.

link 22-06-06 11:35

ציטוט:

נכתב במקור על ידי RS324
PHP קוד:

כשאתה קורא לפונקציות הסקין אתה כבר מציב בתוך הפרמטרים של הפונקציה את הערכים של התשובהלמשל:
$this->skin->names($my_name$your_name);
וכו 

זה שבמערכת שלך אתה צריך להכניס כל משתנה בנפרד זאת דרך מאד מאד לא נוחה לעבודה.

הדרך השניה הרבה יותר טובה.......

למרות שכשעושים את זה בפונצקיה צריך למצוא דרך אחרת יש כל מיני אפשרויות
אחת מהם היא func_get_arg

בכל מקרה אני מקווה שהרעיון מובן...

תראה זה רק דוגמא. אני משתמש בסקינים במערך שמועבר לתוך הפונקציה דרך פרמטר. אבל למשל הוא יכול לעשות פונקציות שידפיסו למשל td או למשל התחלה של טבלה. כל אחד יכול לעשות את זה בצורה אחרת.


כל הזמנים הם GMT +2. הזמן כעת הוא 22:45.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ