לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

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



  #4  
ישן 16-10-2005, 13:41
  ישראל K ישראל K אינו מחובר  
 
חבר מתאריך: 25.08.03
הודעות: 9,114
בתגובה להודעה מספר 3 שנכתבה על ידי emanuel שמתחילה ב "הכנתי כבר קוד שיוצר תמונה אם"

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

ברגע שבמשתנה get, או בתוך משתנה בשפת תסריט צד שרת (כגון javascript), בתוך ערך של שדה מוסתר, או כל צורה אחרת שאתה מעביר יחד עם הדף ללקוח את הערך של השדה שהוא צריך להזין. הלקוח יוכל להעתיק את זה ואז בעצם לבצע הרשמה רובוטית, כי הוא יודע מאיפה בדיוק לקחת את הקוד שהוא אמור להזין.
ננסה להזכר לרגע, מה מטרת הקוד ? כדי שלא יוכלו לעשות הרשמה רובוטית. מעתה כן יוכלו לעשות הרשמה רובוטית, כיון שהקוד שצריך להזין נמצא בתוך משתנה get, בתוך משתנה javascript או שהוא ערך של שדה קלט מוסתר. אז מה הואילו חכמים בתקנתם ?!

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

בהצלחה
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #6  
ישן 16-10-2005, 15:09
  ישראל K ישראל K אינו מחובר  
 
חבר מתאריך: 25.08.03
הודעות: 9,114
בתגובה להודעה מספר 5 שנכתבה על ידי emanuel שמתחילה ב "בוא נגיד שאני לא עד כדי כך"

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

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

3. גם אם אורך הסשן הוא קצר, זה לא אמור להפריע, כי בסך הכל הרעיון של הסשן הוא שזה 'תוך כדי עבודה', 'תוך כדי גלישה', ואם זה לא כך, זה במילא לא אמור להפריע, כשהמשתמש יחזור לגלוש באתר הוא מקסימום יצטרך 'לבקש' את הטופס מחדש.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #12  
ישן 17-10-2005, 02:00
  ישראל K ישראל K אינו מחובר  
 
חבר מתאריך: 25.08.03
הודעות: 9,114
בתגובה להודעה מספר 11 שנכתבה על ידי emanuel שמתחילה ב "איזה רעיון תותח.."

* אם משתמש עושה 'הקודם' בדפדפן, במוזילה נשארים לא בד"כ הערכים הקודמים, באקספלורר הוא באמת מאבד אותם.

* שדות מסוג טקסט פשוט כותבים כך:
קוד PHP:
 echo "<input type=text' name='un' value='".$_POST['un']."'/> 

בשדות בחירה מסוג select, radio, ו-checkbox, צריך להריץ פונקציה שבודקת אם ואיזה ערך נבחר ובעצם כרגע שמור במערך POST, ובו לציין selected. אחרת, לכתוב את ה-selected בערך ברירת מחדל.

לדוגמה:
קוד PHP:
 echo "<input type='radio' name='format' value='text'".radio_check_selected('format''text')."/>";
echo 
"<input type='radio' name='format' value='html'".radio_check_selected('format''html')."/>"

במקרה שהערך המתאים נבחר הפונקציה תחזיר את המחרוזת:
קוד:
selected='selected'

וכך הלחצן המתאים יסומן כנבחר.

כמובן שאם מדובר בטופס שמוצג לראשונה, לפני submit, אתה צריך לדאוג שערך המשתנים ב-POST יהיה הערך ברירת מחדל שאתה רוצה שיסומן, כדי שבבדיקת הפונקציה יופדס selected במקום שאתה מעונין כברירת מחדל.

נערך לאחרונה ע"י ישראל K בתאריך 17-10-2005 בשעה 02:25.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #13  
ישן 17-10-2005, 05:47
  emanuel emanuel אינו מחובר  
 
חבר מתאריך: 11.02.05
הודעות: 569
שלח הודעה דרך ICQ אל emanuel
תודה רבה
בתגובה להודעה מספר 12 שנכתבה על ידי ישראל K שמתחילה ב "* אם משתמש עושה 'הקודם'..."

אבל יש איזשהויא דרך שזה יקרא כשהוא לוחץ על הקודם????


יענו נגיד יש עמוד a.php ויש בו גיל בinput והוא לוחץ על submit וזה מגיע לb.php והעמוד מציג לו שגיאה שהערך לא מספרי.....ואז יש לו לינק לחזור לטופס....אז איך לעשות שמה שהיה בPOST יקובל בa.php......כלומר אחרי שהוא לחץ על חזור כל הערכים שהוא מילה יופיע לו....
מקווה שהבנתם אותי....
אצלי בדרך-כלל או תמיד השגיאות מופיעות בעמוד נפרד...יותר נוח ויותר יפה....
דוגמא:
עמוד a.php


<input type=text name=a>
עמוד b.php


if($_POST['a'] == 6)
{
echo "אסור שהגיל יהיה שש";
echo "<a href=a.php>חזור חזרה לטופס</a>";או
echo "<a href=javascript:window.history.back>חזור חזרה</a>
}

אז איך לעשות שנגיד או רשם שש ואז הופיע לו הלינק לחזור חזרה ושאם או ילחץ על חזור חזרה יופיע לו הערך שש בשדה שהוא הקליט.



נערך לאחרונה ע"י emanuel בתאריך 17-10-2005 בשעה 06:03.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

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

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 15:26

הדף נוצר ב 0.06 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר