28-01-09, 18:37 | # 1 |
חבר מתקדם
|
בדיקת נתונים
יש לי תיבות טקסט, שאני לא רוצה שישארו ריקות, ובמידה והם יהיו ריקים או לא שווים לערך מסויים
תקפוץ הודעת alert.. "אנא מלאו שם!" / "אנא הכניסו הודעה!" לצורך העניין.. הבעיה היא שיצרתי תנאי else if שבעצם הוא בודק אם הערך של מה שנשלח בטופס הוא ריק או שווה לערכים "שם השולח" / "הודעה" אז הוא מציג את ה alert, אוקי הכל טוב וסבבה אבל איך שאני מרענן את העמוד ההודעה alert קופצת.. כי היא בודקת את הערכים.. זה הקוד שתבינו על מה אני מדבר PHP קוד:
הם לא ריקים אם אני שם ב value משהו.. אבל אז אנשים יוכלו לשלוח עם ה value שאני שמתי.. ואני לא רוצה את זה. המטרה שלי היא לחייב משתמשים לרשום שם משתמש + הודעה ושלא יהיו ריקים או שווים ל value שקבעתי להם מראש. |
28-01-09, 19:24 | # 2 |
חבר בקהילה
|
אני עובד בצורה כזאת:
משתמש ממלא טופס ואז הטופס נשלח לדף מסויים אותו דף מעבד את הטופס ובמידה שהוא שגוי אז הוא יוצר סישן שיכיל את השגיאה ואז הוא שולח את המשתמש בחזרה לטופס בטופס אתה בודק אם קיים סישן, מציג הודעת שגיאה בהתאם ומוחק את הסישן. בהצלחה
__________________
|
28-01-09, 19:59 | # 3 |
חבר בקהילה
|
בלי להעליב, הקוד שלך דפוק בכ"כ הרבה צורות.
דבר ראשון, בשביל מה אתה עושה alert מתוך הקוד PHP? את הבדיקה בJS תעשה בצד הלקוח בעזרת JS, לא בעזרת PHP. בדיקה בPHP עושים מאחורי הקלעים ליתר ביטחון במידה והמשתמש עבר את בדיקות הJS. ברור שעל ההתחלה זה יקפיץ לך את ההודעות, כי משתני הPOST לא קיימים כי לא נשלח טופס. דבר נוסף, התנאי שלך בכלל לא נכון. נתחיל מזה שאתה משתמש בפונקציה isset (שתחזיר TRUE או FALSE), את הערך שבה אתה משווה למשתנה (מה?), ולבסוף אתה מוסיף את ה|| NULL שלא עושה כלום. אם כבר אתה רוצה לעשות את הקוד הזה תקין, הוא צריך להיות כך: PHP קוד:
לאחר מכן בדקתי אם הערך ללא רווחים בהתחלה ובסוף (trim) ריק או שהוא NULL. אבל שוב אני אומר, את בדיקות הJS תעשה בצד הלקוח עם JS באמת, ולא סתם ALERT מתוך הקוד PHP. Last edited by DvirCohen; 28-01-09 at 20:04.. |
28-01-09, 20:20 | # 4 |
חבר וותיק
|
עוד נקודה שיש להבהיר..
בדיקה בשרת חובה לבצע.. אם אתה רוצה לחסוך טראפיק של בקשות HTTP אז תוסיף גם בדיקה ברמת הלקוח
__________________
|
28-01-09, 21:23 | # 5 |
חבר מתקדם
|
אוקי, תודה רבה על העזרה.
אני עדיין לא מתקדם ב PHP ולכן הקוד שלי היה ניראה על הפנים, אבל מטעויות לומדים. ודביר לא הבנתי מזה trim ? כי לפי הקוד בדקת אם הערכים שווים ל משתנים textname ו textmsg נגיד או שהם שווים לכלום והוספת לפני המשתני POST trim, הוא שהערכים שלהם NULL ריקים.. אגב מה ההבדל בין אם אני בודק שהערך שהכניסו במשתנה מסויים יהיה ריק ע"י PHP קוד:
לבין שאם אני עושה NULL? |
28-01-09, 21:51 | # 6 |
חבר מתקדם
|
trim - http://www.w3schools.com/PHP/func_string_trim.asp
פשוט - מצמצם רווחים, כלומר: shon gefen יהיה: shongefen ואז בודק אם הPOST ריק,כך שגם אם יכניסו רווחים - הם יחשבו לריקים.
__________________
Projector Lamps |
28-01-09, 21:56 | # 7 |
חבר וותיק
|
טעות ענקית
shon gefen ישאר כמו שהוא לעומת זאת " shon gefen " יהפוך ל "shon gefen"
__________________
|
28-01-09, 22:07 | # 8 |
חבר מתקדם
|
|
28-01-09, 22:13 | # 9 |
חבר בקהילה
|
trim מקצץ רווחים מתחילתה וסופה של המחרוזת.
כלומר, שאם מישהו יביא לך דבר כזה: " ", לא תתייחס לזה כמחרוזת ריקה. ומה שבדקתי זה אם הערכים שלהם לא שווים לערכים שהצבת, או שהם שווים למחרוזת ריקה, או לNULL (שזה די מיותר..מחרוזת ריקה תעשה את העבודה). |
29-01-09, 08:16 | # 10 | |
חבר מתקדם
|
ציטוט:
PHP קוד:
|
|
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|