369
צפיות
צפיות
26
תשובות
תשובות
שאלה חדשה- הצגת נתונים…
השאלה שלי מתמקדת יותר בדף פרופיל משתמש שהכנתי.
לפי מה שנאמר כאן,
כשמשתמש מוריד קובץ כלשהו, אז עשיתי שזה ישמור במסד את מספר ה-ID של הקובץ.
ובפרופיל משתמש, כשאני רושם:
"הקובץ האחרון שהוריד המשתמש:"
אז זה בעצם מציג את ה-ID של הקובץ (כמובן שעם קישור לתיאור הקובץ).
האם ישנה דרך להציג את שם הקובץ? ולא את המספר?
למי שהשאלה שלי לא ברורה לו,
אשמח להסביר מחדש.
תודה,
חגי.
26 תשובות
תשובה
תשתמש ב-INNER JOIN בצורה כזו:
SQL = "SELECT users.lastID,files.name FROM users INNER JOIN files ON users.lastID=files.ID WHERE users.ID="&Request.QueryString("ID")
rs.Open SQL,
If not rs.EOF Then
Response.Write "<a href=""file.asp?id="&rs("lastID")&""">"&rs("name")&"</a>"
End If
rs.Close
אינני יודע את מבנה הטבלאות אבל זה בעיקרון הקוד שאמור להיות לך.
אפשר הסבר?
הנה מבנה הטבלאות:
טבלה בשם Downloads, שם הקובץ: Name.
בטבלה של המשתמשים- שם הטבלה: Login.
שם משתמש: LoginName.
העמודה ששומרת את מספר ה-ID של הקובץ (Name):
LSID.
אשמח לקבל מדריך על INNER JOIN ועל אופן השימוש בו.
הסברים
יש מאמר באתר על סוגי ה-INNER ויש גם במדריך ה-SQL הסבר מורחב.
שאלה חדשה..
אוקיי, סיימתי לבנות את מערכת ניהול המשתמשים שלי,
ועכשיו אני רוצה לבנות מערכת אשר מציגה לי מי מחובר עכשיו, באיזה שעה הוא התחבר, וכאלה..
האם ניתן לעשות זאת ללא שימוש בעזרת הקובץ: Global.asa?
ואם כן אפשרי הדבר, הכיצד<?
שאלה נוספת…
היכן אוכל להשיג מדריכים לבניית מערכת מסרים לגולשי האתר?
בעניין הקוד
אתה צריך לדעת כיצד אך הנה משהו מה-FAQ בתפוז:
כיצד לאבטח את מערכת הניהול?
כיצד לאבטח את מערכת הניהול באתרי?
למישהו יש הצעות?
אני פוחד מפירצות אבטחה, וכאלה…
ושמתשמשים יחדרו לי למערכת הניהול…
להגן
מ-SQL INJECTION
(מאמר באתר)
להגן מ-XSS (ב-FAQ)
להשתמש ב-Sessionים.
סיסמאות מקודדות
בנוסף למה שניר אמר,
אל תשכח לעשות וואלידציה בשרת בלבד.
כמו כן
רק בשביל נוחות המשתמש להוסיף ואלידציה בלקוח (אבל שעדיין יהיה בשרת לא במקום)
לא תמיד
יש דברים (כמו סיסמאות למשל) שלא כדאי לעשות להם וואלידציה בלקוח…
הכוונה לשלמות הנתונים
ז"א נגיד סיסמא צריכה להיות בת 6 תווים אז לבדוק שהיא בת 6 תווים.
בדיקה של אי-מייל האם הוא חוקי.
לדברים כאלו התכוונתי.
סיסמאות מקודדות?
איך בדיוק? ומה ז"א?
הכוונה היא הצפנת סיסמאות
כך שאם יורידו את המסד אז הסיסמאות יהיו מוצפנות ולא מובנות.
איך עושים את זה?
איך עושים שאם מישהו מוריד את המסד, אז לא יראו את הסיסמאות?
ושאלה אחרת..
אני יודע שאפשר לעשות סיסמה למסד נתונים, כך שכשנכנסים ל-ACCESS (למסד),
הוא מבקש סיסמה?
אם אני אעשה את זה?
וכשאני אפעיל את זה לשרת, הכל יעבוד כרגיל, או שזה יעשה בעיות?
תשובה
1. תצטרך להצפין את הסיסמאות כאשר משתמש מסוים נרשם או מעדכן את סיסמתו.
תתצטרך לחשוב ולבצע אלגוריתם הצפנה מסוים או לנסות ולהשתמש ב- .
2. במידה והגדרת למסד שלך סיסמא תצטרך להוסיפה לחיבור המסד (
).שאלות חדשות!
שני דברים:
1. בעת תהליך הרשמה לאתר, אני מכניס למסד את הזמן (תאריך) שבו המשתמש נרשם לאתר. ע"י הקוד now…
הבעיה היא, שזה לפי ההגדרות של השרת,
וכמובן שזה מראה אנגלית…
האם ישנה דרך להכניס תאריך בעברית איכשהו??
2. איך אני עושה שמשתמש יכול לערוך את הפרטים שלו?
(רק את שלו כמובן, מתוך רשימת משתמשי האתר)?
תודה על ההתייחסות ושבת שלום,
חגי.
תשובות
1. אי אפשר, תאריכים נכנסים תמיד בפורמט האמריקאי. לך כמתכנת זה לא צריך לשנות, תוכל להציג אותם איך שתרצה עם קצת משחקים (פרטים במדור VBS).
2. קודים מוכנים זה בדירה ממול.
לא מחייב….
אתה יכול לפרק את המחרוזת של התאריך ולהקיש לפי סטנדרט ישראלי
DD/MM/YYYY
אבל עדיין יותר כדאי לשנות את זה בהוצאה מהמסד כמו שאוריקס אמר …
כנראה שאתה לא מכיר אותי – אוריקס
אני בחיים לא מבקש קודים מוכנים, וחברי הפורום מודעים לכך.
אני רק מבקש הסבר- תיאוריה שאוכל להתחיל ממנה…
אני מצטער אם חשבת שביקשתי קוד מוכן.
הינני מודע היטב לחוקי הפורום!
"איך אני עושה שמשתמש…"?
כמו מה זה נראה לך?
תשובה
לשאלתך השניה:
אתה צריך לעשות שאילתה אשר תשלוף את נתוני המשתמש הנוכחי בעזרת WHERE בשאילתה אשר תשלוף את הנתונים היכן שה-ID בטבלה שווה ל-ID השמור של המשתמש (בסשין/קוקיז).
לאחר מכן אתה צריך לשים את כל הנתונים בטופס וכאשר המשתמש שולח אותם אתה שוב מבצע עדכון שאילתה עם WHERE כמו ששלפת את הנתונים של המשתמש, רק שעכשיו אתה מעדכן אותם ולא שולף.
זו לא אמורה להיות בעיה.
תודה!!!
לא היה קשה, אההה?
אני לא מבין למה אוריקס חושב שביקשתי קוד מוכן…
אם הייתי מבקש קוד מוכן, שאלתי הייתה מתחילה כך:
"מה הקוד… / איך כותבים את הקוד… וכיו"ב…"
לא נכון.
תאריכים נכנסים תמיד בפורמט אמריקאי, אחרת היה תוהו ווהו.
זה שבילד היה נחמד
לא אומר שלא ביקשת קוד מוכן. פעם הבאה אני אמחק.