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

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



  #1  
ישן 03-10-2007, 10:10
  משתמש זכר goldpower3 goldpower3 אינו מחובר  
 
חבר מתאריך: 06.04.07
הודעות: 106
שלח הודעה דרך ICQ אל goldpower3 שלח הודעה דרך MSN אל goldpower3
שאלה בקשר לemail validation

Email validation כלומר ווידוא אימייל הוא נושא נרחב וישנן המון דרכים לוודא כתובת אימייל (אם זה בעזרת ביטויים רגולאריים, בדיקת זמינות שרת האימייל וכו'.)

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

השאלה שלי היא איך עושים את זה.
ניסיתי לעיין במערכת IPB 1.3 אבל לא הצלחתי למצוא את הדף שמבצע את שליחת המייל.
אשמח אם תתנו לי רעיון או שתתנו לי קובץ של מערכת חינמית שאוכל לעיין בו...


ואם כבר אני פותח אשכול אז עוד שאלה קטנה:

כשאני שולח אימייל, איך אני מעצב את הטקסט? (אני מאמין שבשרתי אימייל שונים ישנן דרכים שונות, אז לדוגמא איך מעצבים טקסט לGmail)
ניסיתי HTML והמייל קורא אותו רגיל...
_____________________________________
בברכה, מתן.

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #5  
ישן 03-10-2007, 11:29
צלמית המשתמש של maxim k
  maxim k maxim k אינו מחובר  
 
חבר מתאריך: 05.08.06
הודעות: 2,860
שלח הודעה דרך MSN אל maxim k
בתגובה להודעה מספר 4 שנכתבה על ידי netaneldj שמתחילה ב "1. זאת לא ההרשמה, אלא סה"כ..."

בעיית האבטחה פה היא שכל משתמש שנרשם בעצם לא ייצטרך את האימייל, הרי הוא יוכל להיכנס ישר לכתובת שהוא יודע שנשלחה לאימייל האמיתי (מכיוון שהוא יודע תחת איזה שם משתמש וסיסמא הוא נרשם). חייב להיות גורם שלא ניתן לצפות אותו ויחייב את האדם להיות בעל האימייל. למשל אם באימייל נשלח גם קוד וידוא רנדומלי, שאותו המשתמש צריך להכניס בטופס מסויים (ואז אפשר להסתדר גם עם דף בעל הפרמטרים שציינת), או שהקוד הרנדומלי הזה יהיה הפרמטר בכתובת אליה צריך להיכנס המשתמש, ואז על המשתמש יהיה למלא את שם המשתמש שלו, לדוגמא (יש כאילו שמסתפקים אפילו בלי למלא את שם המשתמש, אבל אני חושב שזה עדיין לא מאובטח מספיק). כמובן שכמה שיותר ארוך (כמובן בלי הגזמה) הגורם הרנדומלי (וכמה שהוא יותר רנדומלי - md5 של השעה הנוכחית לא נחשב רנדומלי, וזה טעות שהרבה עושים), ככה זה יותר טוב.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #10  
ישן 03-10-2007, 13:01
  משתמש זכר goldpower3 goldpower3 אינו מחובר  
 
חבר מתאריך: 06.04.07
הודעות: 106
שלח הודעה דרך ICQ אל goldpower3 שלח הודעה דרך MSN אל goldpower3
בתגובה להודעה מספר 9 שנכתבה על ידי maxim k שמתחילה ב "מהעובדה שuniqid מתבסס על הזמן..."

אוקי הבנתי את הכוונה שלך, וראיתי גם באתר שדור נתן שיפור חמוד של הפונקציה שנותן 32 תווים ראנדומליים, בלתי אפשריים לניחוש:
token = md5(uniqid(rand(), true$));
מחרוזות לדוגמא:
a26dd79db282c69c8c52a74060963ef6
732dd2fdf682f5ac3be91acd653371a4
836ef9ad676f694861cbda9b94578e50
4b468ed8a9024b562ca71c2e7837f804
21edb5cedabf85b551ac98ed3f3d72f3
7356fc8e86278dcabec54f40217d8895
2996b9961794c481834e637d13bc794e

כן נראה ראנדומלי לגמרי ולכולן 32 תווים.


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

הרשמה באתר
בסיום ההרשמה שליחת מייל למשתמש עם קישור בעל סיומת
www.domain.com/index.php?v=random string
כאשר במקום random string תהיה המחרוזת הרנדומלית מן הסתם.

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

עכשיו כדי ליצור את הGETים עם הססמאות אני אעשה דבר כזה:
קוד PHP:
 $query mysql_query("SELECT validateid FROM users WHERE validate = 0");
while (
$validate mysql_fetch_array($query)) {
  if (
$_GET["v"] == $validate["validateid"]) {
    
$query mysql_query("UPDATE users SET validate = 1 WHERE validateid = "$validate["validateid"]);
  }


אני אנסה קצת להסביר מה ניסיתי לעשות פה.
יש לי טבלה users ובה יש validateid שזה המחרוזת הרנדומלית, validate זה אם הוא מאושר או לא.
עכשיו קודם בוחרים את המשתמשים שלא מאושרים ומריצים לולאת while על כולם, כאשר אם המשתנה v בGET שווה לvalidateid של אחד המשתנים הלא מאושרים, הקוד מאשר אותו.

האם יש דרך יותר טובה לעשות את זה?
האם זה בכלל יעבוד?
_____________________________________
בברכה, מתן.

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

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

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

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

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



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

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

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

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