צפיות
תשובות
טפסים ב html..
קראתי את מדריך ה html באתר, ובקטע של הטפסים הסתבכתי קצת.
מובא במדריך הקוד הבא :
<form name="example" method="get" action="html_page13.html">
:שם פרטי <INPUT type="text" name="firstName">
:שם משפחה <INPUT type="text" name="lastName">
</form>
שיוצר שני טפסים.
נכתב במדריך שהמאפיין action חשוב מאוד כיוון שהוא מציין את יעד השליחה של הטופס. אבל לא ברור לי איך בדיוק הטופס ישלח, ע"י לחיצה על אנטר לאחר מילוי הפרטים? או שצריך ליצור כפתור submit בשביל השליחה, ואם כן אז למה חשוב כ"כ לציין את יעד השליחה בטופס עצמו אם אני יכול לציין אותו במאפייני הכפתור.
חוץ מזה לא הבנתי איך אפשר לשלוח את המידע מהטופס לדף html כמו שמובא בדוגמא, איך זה יראה, המידע יופיע פתאום במרכז הדף?
אם מישהו יוכל להבהיר לי את הנקודות האלה אודה לו מאוד.
לילה טוב ותודה מראש
(מקווה שהצגת השאלה היתה ברורה)
פוג
4 תשובות
תשובות…
1. הקוד יוצר טופס אחד עם שני פקדי טקסט (שאפשר להכניס בתוכם טקסט).
2. שליחת הטופס תתבצע ע"י לחיצה על enter באחת השדות (חוץ מ- textarea ולחצנים) או ע"י לחיצה על לחצן submit (שליחה).
3. אינך יכול לציין את יעד השליחה של הטופס דרך הפקדים אלא רק דרך הטופס (או ברמה יותר מתקדמת דרך JS)
4. כאשר שולחים טופס אז הנתונים שלו מועברים לדף שמצוין ב-Action בשני דרכים התלויים במאפיין method
אם צוין get במאפיין method (כמו בקוד שלך) הנתונים של טופס ישלחו דרך שורת הכתובת ואז ניתן יהיה לגשת אליהם דרל צד לקוח בעזרת JS או דרך צד שרת עם טכנולוגיית צד שרת (כמו JSP/PHP/ASP.Net) . הכתובת של אותו עמוד אחרי שליחת הטופס תיראה כך:
path/file.html?input1_name=input1_value&input2_name=input2_value[&…]
אם צויין post במאפיין method אז הנתונים שנשלחו בטופס נשלחים ל"עמוד עצמו" ולא לדפדפן ורק דרך טכנולוגיית צד שרת אפשר לגשת אליו דרך צד לקוח אי אפשר.
תודה רבה לך ..
עוד שנים שלושה דברים להבהיר..
אם בחרתי לשלוח את הנתונים בעזרת כפתור submit איפה עליי לציין את action
בכפתור או בטופס?
דבר שני, אמרת שאם ציינתי post במאפיין method הנתונים ישלחו לדף עצמו, האם זה אומר שהשם והסיסמה שהוזנו בפקדים יופיעו כטקסט בדף היעד?
ולמה התכוונת שלא תהיה לי דרך לגשת אליו אלא ע"י צד שרת, אני לא אוכל פשוט לרשום בשורת הכתובת את כתובת הדף ולהגיע אליו?
עוד דבר, האם טפסים זו דרך אפשרית לעידכון באתר, כלומר אם יש לי אתר שבו מדור מאמרים, אני אוכל להוסיף מאמר ע"י שליחתו בטופס מדף אחר?
(כאגב, לא יזיק לי פעם לדעת באופן מדויק מה זה צד-שרת וצד לקוח בור שכמוני)
שוב תודה ולילה טוב
תוכל לקרוא על זה במאמר למתחילים…
שכתבתי ומופיע בעמוד הראשי. (בעניין צד לקוח צד שרת)
אני אגיד לך בקצרה שצד לקוח זה כל מה שמתרחש בדפדפן – רינדור HTMLו-CSS, סקריפטים (כמו הקפצת הודעת אזהרה ברמה הפשוטה ביותר).
צד שרת זה כל מה שאתה לא יכול לראות והוא בעצם מאחורי הקלעים (לרוב) של מה שמוצג לך בדפדפן. באם זה התחברות למאגרי מידע (כמו מסדי נתונים) או יצירת תמונה on the fly עם מספרים אקראיים.
בחזרה לטפסים.
את מאפיין ה-Action אתה כותב אך ורק בתגית form ולא בשום מקום אחר (כך קובע וממליץ התקן). שאמרתי שהנתונים ישלחו אל העמוד עצמו לא התכוונתי שהם יופיעו כטקסט בתוך העמוד. אני אסביר את זה באופן אחר:
אתה קונה משחק מחשב שמגיע בתוך אריזה:
מה שאתה רואה בחנות זה את האריזה (הקופסא)
המשחק עצמו נמצא בתוך הקופסא ואתה לא יכול לפתוח אותה בחנות אם לא קנית אותה קודם לכן.
אם נחזור לטפסים אז המשחק הוא בעצם המידע מהטופס שאתה לא רואה ולא יכול לגשת אליו אם אתה לא משתמש בטכנולוגיית צד שרת.
תוכל לרשום את הכתובת של אותו דף שאליו שלחת את הנתונים אבל לא תוכל לגשת לנתונים (שאם לא פנית אליהם דרל הטופס אז הם בכלל לא קיימים).
מקווה שעכשיו מובן
ערב טוב
תודה לך, עזרת לי מאוד !