![]() |
כמה שאלות עם שימוש בטבלאות
אוקי, נגיד שיש לי טבלה שנקראת users
בטבלה הזו רשומים כל שמות המשתמשים+סיסמא וid נניח שאני יצרתי עוד טבלה של הודעות וקראתי לה posts, בה יהיו כל ההודעות של המשתמשים.. איך אני יכול לדעת שההודעה x שייכת למשתמש y? |
בטבלה posts אתה מוסיף עמודה של ששומרת את הID של המשתמש ששלח את את ההודעה, נקרא לה נניח author_id, ואז בעיקרון בשליפה אתה פשוט מוציא את הID דרך העמודה הזאת ומשתמש בה כאוות נפשך :]
|
אוקי, נניח יש לי את post_id (מספר ההודעה)
poster_id (מספר המפרסם) topic_id (אשכול ההודעה) cat_id (קטגוריית האשכול) איך אני יכול להכניס לתוך העמודה poster_id את הid של מפרסם ההודעה? הרי בהתחברות מכניסים שם משתמש+סיסמא. איך אפשר לבדוק לאיזה id מתאים שם המשתמש המחובר על הסשיין? דבר שני, איך אני יכול לקשר את ההודעה לנושא/אשכול מסויים? והקטגורייה זה כבר לא בעיה כי זה אותו עיקרון כמו הנושא. |
1.את בודק מה הID שלן לפי העוגיות ששמרת אצלו בעם הטבלה של המשתמשים ושולף את הID שלו
2.אותו דבר בדיוק אתה נותן את הID של הנושא בעמודה בהודעה |
ציטוט:
PHP קוד:
|
שון לא הבנתי אותך בכלל, אבל זה ניראה לי קצת פחות בעייתי..
שוב פעם(tbm לא הבנת אותי), איך אני יכול למצוא id ע"פי שם משתמש? איזה פונקציה לוקחת את השם משתמש ומחפשת במסד איזה id שייך אליו ומדפיסה לי אותו? |
נגיד ויש לך את השם משתמש של מי שכרגע שולח את ההודעה דרך COOKIE SESSION או כל דרך אחרת
אתה עושה שאילתה במסד select id from user where username='$username' ומוציא את הID של המשתמש |
PHP קוד:
|
ציטוט:
|
בטעות..הדפסתי id
עדיין לא מדפיס לי כלום. |
PHP קוד:
זה סתם קוד ארוך יותר אבל תנסה... |
אוקי, אני הצלחתי לעשות את זה וזה עובד:
PHP קוד:
PHP קוד:
משום מה הוא מציג לי את ה id של אותו מחובר רק אם אני שם אותו בפונקצית התחברות.. עכשיו אם המשתמש מחובר ואני רוצה לשים את זה מחוץ לפונקציה של ההתחברות אני עושה כזה דבר: PHP קוד:
|
מה הערך של user? ולא יותר פשוט וקל לעבוד עם COOKIES?
|
זה לא משנה, אני צריך להבין את העיקרון.
הערך של user הוא מה שמתקבל בפוסט.. PHP קוד:
|
אוקיי, אתה טוען שהמשתמש התחבר כבר.. אז למה אתה מחפש ערכים ע"פ הערך שהוא הכניס בפוסט? הרי הוא כבר התחבר, ה SESSION קיים אצלו.
PHP קוד:
|
יש לך 3 ערכים
PHP קוד:
PHP קוד:
הרבה יותר פשוט וזה חוסך.... |
קודם כל , זה לא יותר פשוט. מה זה משנה אם הוא הגדיר את הקלט בתוך משתנה ומציב בסשן או שהוא פשוט מציב את הקלט בתוך הסשן ישר? עבודה עם משתנים יותר נוחה אפילו, לפי דעתי.
דבר שני, במה זה חוסך? -_- |
חזי, הצלחת לעזור לי והגעתי בעזרתך למטרה שלי.
אבל למה זה לא עובד כשאני עושה ככה: PHP קוד:
אגב רגב, אני יעשה את זה. |
שים לב לשורה הבאה
קוד:
קוד:
|
ציטוט:
בקשר לזה שאמרת שתעשה את זה, אני אישית לא ממליץ לך לעשות מה שרגב אמר - כמו שאמרתי, זה לא חוסך כלום ויותר נוח לעבוד עם משתנים (לפחות לי.. למרות שאני חושב שכולם ככה) אגב , קוראים לי ליאור.. :-) |
צודק tbm, תודה עזרת לי.
אבל משום מה בקובץ MyAccunt.php התחלתי פתאום לקבל שגיאות header PHP קוד:
זה מה שיש בקובץ header.php PHP קוד:
אגב לכל הקבצים יש include ל herader.php אבל השגיאה מופיעה רק בקובץ MyAccunt.php |
נסה להשתמש בפונקציות ob_start(); [תחילת הקובץ] ו ob_end_flush(); [סוף הקובץ] בתחילת הקובץ ובסופו. (בקובץ שאתה מקבל את השגיאה)
|
*עריכה:
הצלחתי לפתור את הבעיה, פשוט כניראה העורך של ה flashfxp הוסיף לי רווחים לפני ה <?php ולכן זה מה שקרה ! בכל מקרה, אם אי פעם למישהו יקרה גם כזה דבר אז פשוט שיבדוק אם נוסף לו רווחים לאחר השמירה באותו הקובץ לפני התג פתיחה <?php תודה על העזרה ! |
אתה יכול להביא את הקוד של הקובץ MyAccount? כי נראה שה OUTPUT נשלח שם.
|
יש לי עוד שאלה (אני שואל כאן במקום לפתוח עוד אשכול).
PHP קוד:
ואז הוא מעדכן את אותו ה id.. כאשר אני שם במקום ה $id 11 לדוגמא (ה-id שלי) הוא מעדכן את הערך בשדה icq זאת אומרת שאם אני מחליף את ה-$id למספר id שקיים במסד הכל עובד תקין. ולכן לפי דעתי יש פה בעיה מוזרה איתם \-: |
הגדרת את המשתנה id ?
|
גם כן, הגדרתי אותו.
PHP קוד:
|
PHP קוד:
|
החלפתי, הינה הקוד המלא:
PHP קוד:
|
אתה לא יכול להגדיר את $id אחרי שאתה משתמש בו... תגדיר אותו לפני ה IF שלך.
|
תסיר את הסוגרים של הPHP
כלומר את ה ?> בכל הקבצים בנוסף תמחק כל דבר שבא לפני ה <?php ותוודא שאתה שומר ללא BOM (תריץ חיפוש בגוגל HOW TO SAVE WITHOUT BOM) |
ציטוט:
אגב, הוא מביא לי את השגיאה הזו [הקובץ]: PHP קוד:
editsmambers.php?id=$id אז אין את השגיאה, רק אם אני נכנס לקובץ רגיל.. הינה החלק העליון מתוך הקובץ. PHP קוד:
PHP קוד:
|
קודם כל, תעשה תמיד isset לקלט.
PHP קוד:
|
ציטוט:
בקשר לבעהי שלך, כמו שזה שמעליי אמר - אתה לא משרשר את ה $id נכון (אתה לא משרשר אותו בכלל, MYSQL מפרש אותו כשדה) PHP קוד:
|
עשיתי, אבל מוזר הבעיה היא שעדין הוא לא מעדכן את הנתונים.
|
תעשה אותו דבר גם בשאילתה השנייה של העדכון...
|
בשניהם עשיתי, לא מעדכן.
|
PHP קוד:
|
גם כן, הינה הקוד:
PHP קוד:
|
תחליף בשורה הזו, מה זה הבלאגן שעשיתם לו שם:
ציטוט:
ציטוט:
|
כל הזמנים הם GMT +2. הזמן כעת הוא 21:52. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ