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

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

omerbesh 11-02-11 10:00

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

PHP קוד:

<?php
Class Form 
{
    public 
$action;
    public 
$method;
    public 
$outputForm;

    public function 
textInput($view,$name,$value){
        
$this->outputForm .= "
        <p>\n<label for=\"textinput\">$view</label>\n
        <input type=\"text\" name=\"$name\"  id=\"name\" value=\"$value\" />\n
        <br /></p>\n
        "
;
    }
    
    public function 
passInput($view,$name,$value){
        
$this->outputForm .= "
        <p>\n<label for=\"passwordinput\">$view</label>\n
        <input type=\"password\" name=\"$name\" value=\"$value\" />\n
        <br /></p>\n
        "
;
        
    }        
    
    
    public function 
textArea($name,$value){
        
$this->outputForm .= "<textarea name=\"$name\">$value</textarea>\n";
    }
    
    
    public function 
sendButton($name,$value){
        
$this->outputForm .= "<input type=\"submit\" name=\"$name\" value=\"$value\" />\n";
    }
    
    public function 
select($name,$options = array()){
    
$this->outputForm .= "<select name=\"$name\">\n";
        foreach(
$options as $name => $value){
            
$this->outputForm .= "\r\r<option value=\"$value\">$name</option>\n";
        }
    
$this->outputForm .= "</select>";
    }
    
    public function 
CreateForm(){
        return 
"<form action=\"$this->action\" method=\"$this->method\" >\n".
        
$this->outputForm."\n".
        
"</form>";
        }
    
    public function 
strLenght($string){
        
//this function will check you string lenght
        
return strlen($string);
    }
}
?>

|Rolleyes|

dabi 11-02-11 10:17

תן בבקשה דוגמא לשימוש בה

omerbesh 11-02-11 11:30

הכנתי דוגמא נחמדה (כוללת הורדה)
http://www.be-dog-trainer.com/omerbshForm/example.php

DorWD 11-02-11 12:33

לדעתי במקום פונקציה אחת לtextarea אחד לselect אחד לpassword וכו' עדיף ליצור פונקציה אחת שנקראת לדוגמא פקד(controller) עם ארגומנט type.
אני מקווה שהבנת אותי

תודה על הפרסום תמשיך לעזור בפורום ;)

NetanelEdri 11-02-11 12:50

נחמד מאוד האמת :)
תודה.

omerbesh 11-02-11 13:00

ציטוט:

נכתב במקור על ידי DorWD (פרסם 795809)
לדעתי במקום פונקציה אחת לtextarea אחד לselect אחד לpassword וכו' עדיף ליצור פונקציה אחת שנקראת לדוגמא פקד(controller) עם ארגומנט type.
אני מקווה שהבנת אותי

תודה על הפרסום תמשיך לעזור בפורום ;)

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

ותודה על המחמאות

BlueNosE 11-02-11 13:56

זה גמיש?

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

אגב, עדיף לך לשמור את כל הInputים לדעתי באותו מערך, ולשמור type לכל אחד. זה יותר נוח.

omerbesh 11-02-11 22:10

ציטוט:

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

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

אגב, עדיף לך לשמור את כל הInputים לדעתי באותו מערך, ולשמור type לכל אחד. זה יותר נוח.

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

BlueNosE 12-02-11 02:40

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

אבל אני יכול לפרסם פה interface אם תרצה

omerbesh 12-02-11 02:44

ציטוט:

נכתב במקור על ידי BlueNosE (פרסם 795898)
זה קוד באורך 981 שורות, אני בספק אם אני רוצה לפרסם אותו בפורום וגם אם אפרסם אני בספק אם מישהו יקרא...

אבל אני יכול לפרסם פה interface אם תרצה

לא חשוב :-) אני עצלן...|קורץ|


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

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