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

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

Gal Shafrir 10-01-07 14:30

[שאלה] cases
 
יש לי שאלה שקשורה בקייסים.. ראיתי בפאנלים לניהול אתרים בזמן האחרון שכולם עושים את הדבר הבא:

PHP קוד:

admin.php?act=go&mod=pages 

[מ- eBit, דניאל אל תכעס :-D ]

שזה מוביל לדף של ערכית ה-דפים, השאלה היא איך עושים זאת?

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

PHP קוד:

$act $_GET['act'];
     switch(
$act){

        case 
'go':
    include(
"go.php");
    break; 

ומפה מה הלאה? עוד case כדי להגיע למצב של pages? זה לא הגיוני שזה כל כך הרבה דפים.. :-0
יש דרך אחרת לעשות את זה?

תודה מראש לעוזרים, ואני אשמח אם מישהו שמבין בעניין יוסיף אותי לתוכנת המסנג'ר כי
יש לי עוד הרבה שאלות..|דמעות|

x-ray 10-01-07 15:00

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

זה בערך מה שהבנתי שאתה רוצה לעשות.

Gal Shafrir 10-01-07 15:16

השאלה שלי אם אפשר שלא לאנקלד פעמיים אם כן כיצד עושים זאת?

LosNir 10-01-07 15:32

אפשרי, ובנוסף בדרך בטוחה.

ליצור מערך אשר מכיל את ה ACT שאתה רוצה, לדוגמא:

PHP קוד:

$array = array(
    
'act' => 1,
    
'act2' => 1,
    
'act3' => 1,
    
'act4' => 1,
    
'act5' => 1,
    
'act6' => 1
); 

ולבדוק ע"י הפונקציה array_key_exists() אם הערך ב $act נמצא בערך בתור מפתח.
אם כן תעשה אינקלוד:

PHP קוד:

include("$act.php"); 


Gal Shafrir 10-01-07 15:38

תודה רבה אשמח אם תוסיף אותי למסנג'ר: djgs@walla.com! [אני צריך לשאול אותך כמה דברים]..

sUP 10-01-07 16:06

אני עובד עם מסד..

meshuga 10-01-07 16:12

ציטוט:

נכתב במקור על ידי LosNir (פרסם 403704)
אפשרי, ובנוסף בדרך בטוחה.

ליצור מערך אשר מכיל את ה ACT שאתה רוצה, לדוגמא:

PHP קוד:

$array = array(
    
'act' => 1,
    
'act2' => 1,
    
'act3' => 1,
    
'act4' => 1,
    
'act5' => 1,
    
'act6' => 1
); 

ולבדוק ע"י הפונקציה array_key_exists() אם הערך ב $act נמצא בערך בתור מפתח.
אם כן תעשה אינקלוד:

PHP קוד:

include("$act.php"); 


אם עושים סינון לתווים (כמו "/","." וכו') ומאנקלדים מתקיה...מקבלים דרך בטוחה מספיק, ויותר בוא נגיד, נוחה משלך.

LosNir 10-01-07 16:38

ציטוט:

נכתב במקור על ידי meshuga (פרסם 403734)
אם עושים סינון לתווים (כמו "/","." וכו') ומאנקלדים מתקיה...מקבלים דרך בטוחה מספיק, ויותר בוא נגיד, נוחה משלך.

זה מה שעשיתי בהתחלה,
אבל למה להסתבך עם תווים מיוחדים ו ../ (שלא ילכו אחורה) וכו'..
עוד יותר מסבך את העניינים.

לדעתי הכי קל ככה. (אפשר גם להשתמש במסד כמו שדניאל אמר אבל זה סתם בזבוז משאבים)

meshuga 10-01-07 16:41

ציטוט:

נכתב במקור על ידי LosNir (פרסם 403751)
זה מה שעשיתי בהתחלה,
אבל למה להסתבך עם תווים מיוחדים ו ../ (שלא ילכו אחורה) וכו'..
עוד יותר מסבך את העניינים.

לדעתי הכי קל ככה. (אפשר גם להשתמש במסד כמו שדניאל אמר אבל זה סתם בזבוז משאבים)

זהו, שאצלך בשביל להוסיף אופציה, צריך להכנס, לערוך, להוסיף ובנוסף להוסיף את הקובץ.
לעומת זאת, אצלי, פשוט מוסיפים את הקובץ.

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

אבל, במידה וזה מערכת פשוטה, אני לא רואה טעם לעשות מערכים ולערב מסד נתונים בשביל להוסיף אפשרויות.

Gal Shafrir 10-01-07 22:11

אפשר לקבל את הקוד כדי שכולם ילמדו ממנו meshuga? תודה לכולם על העזרה.


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

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