הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   הצגת אפשרויות לפי סדר דירוגן.. איך? (https://hosts.co.il/forums/showthread.php?t=10750)

Try2Guess 26-12-05 14:09

הצגת אפשרויות לפי סדר דירוגן.. איך?
 
נתקלתי בבעיה קטנה.

ניסיתי לעשות מצעד שירים כשבטבלה אחת נמצאים הפרטים על השירים
ובטבלה שניה נמצאות ההצבעות + האיפים של המשתמשים (למניעת הצבעה חוזרת)

נתקלתי בבעיה שניסיתי להציג את השירים לפי הסדר שבהן הם דורגו..

השאלה שלי, כיצד ניתן לעשות זאת?

זה הקוד שלי:

PHP קוד:

$result mysql_query("SELECT * FROM top10");

while(@(
$r=mysql_fetch_array($result))) {
$topid=$r["id"];
$topname=$r["name"];
$topartist=$r["artist"];
$topinfo=$r["info"];
$topurl=$r["url"];


$resultvv mysql_query("SELECT * FROM votes WHERE vote = '$topid'");
$totalvotes mysql_num_rows($resultvv); // מספר הצבעות לכל שיר

echo"
name: $topname, $topartits | rank: $totalvotes
"
;


זה די דחוף.
תודה מראש, T2G.

שקד 26-12-05 14:40

בסוף השאילתה תוסיף
PHP קוד:

 or die (mysql_error()); 

וכמובן תוריד את הסימן @ בלולאה, אתה מבריח את השגיאות
ותוסיף בראש הקובץ
PHP קוד:

 error_reporting(E_ALL); 

ואז אתה תידע מה הבעיה ..

בהצלחה =]

רומן 26-12-05 14:41

איך אנחנו יכולים לדעת? תלוי איך המסד שלך בנוי? איך מדרגים את השירים וכו'..

Try2Guess 26-12-05 14:45

למה שזה יציג שגיאה?
אני פשוט רוצה לסדר את זה לפי הדירוגים ולא לפי ה ID שלהם

הטבלה Votes בנויה מ:
num (מספר ה ID של השיר אליו מצביעים)
ip (כתובת הIP של המשתמש למניעת הצבעה חוזרת)

את מבנה הטבלה של השירים תוכלו לראות בקוד

הצבעה פשוטה דרך כפתורי "רדיו"
בהצעה נכנסת שורה חדשה שכוללת את מספר השיר + IP המשתמש.

אשמח אם תענו לי במהרה, T2G.

שקד 26-12-05 14:48

ציטוט:

נכתב במקור על ידי Try2Guess
למה שזה יציג שגיאה?
אני פשוט רוצה לסדר את זה לפי הדירוגים ולא לפי ה ID שלהם

הטבלה Votes בנויה מ:
num (מספר ה ID של השיר אליו מצביעים)
ip (כתובת הIP של המשתמש למניעת הצבעה חוזרת)

את מבנה הטבלה של השירים תוכלו לראות בקוד

הצבעה פשוטה דרך כפתורי "רדיו"
בהצעה נכנסת שורה חדשה שכוללת את מספר השיר + IP המשתמש.

אשמח אם תענו לי במהרה, T2G.

האא, אז תוסיף את זה לשאילתה:
PHP קוד:

ORDER BY `vote


Try2Guess 26-12-05 14:51

ציטוט:

נכתב במקור על ידי שקד
האא, אז תוסיף את זה לשאילתה:
PHP קוד:

ORDER BY `vote


הקוד שלך שגוי מכיוון שאין לי עמודת vote בטבלה top10.
תודה בכל מקרה,
אשמח לעוד תשובות.

שקד 26-12-05 14:54

ציטוט:

נכתב במקור על ידי Try2Guess
הקוד שלך שגוי מכיוון שאין לי עמודת vote בטבלה top10.
תודה בכל מקרה,
אשמח לעוד תשובות.

הקוד שלי לא שגוי !,
פשוט אתה לא הבנת. אני לא קוסם אני לא מנחש מה יש לך במסד ואיך זה בוני.
ואם לא הבנת אתה מחליף את vote בשם התא שבו יש את ההצבעות

בהצלחה !

Try2Guess 26-12-05 14:58

אבל אין לי שום תא ב TOP10 שמסמל הצבעות,
אם היה הייתי מסדר.

אמרתי מראש שזה מחולק ל2 טבלאות
אחת של השירים ואחת של ההצבעות, שים לב למה שאני כותב.

תודה בכל מקרה..

שקד 26-12-05 15:01

ציטוט:

נכתב במקור על ידי Try2Guess
אחת של השירים ואחת של ההצבעות, שים לב למה שאני כותב.

תכניס לשם את התא של ההצבעות ..
אם עוד לא הבנת

חבר13 26-12-05 15:02

טוב אני יסביר קצת גם אני נתקלתי בזה
תקשיב
יש לי(אצלי) טבלה בשם votes שבפנים יש
ip- האי פי של זה שהצביע
vote-מספר ה ID שהוא הצביע עד פה יש מבין יופי חח!
עכשיו עשיתי דף ששם זה מראה לי את כל ההצבעות יענו תוצאות
ואני רוצה שזה יציג לי לפי מספר הצבעות נגיד
0
2
5
9
וכו'
אבל זה לא מציג :\

תודה לך עם תצליח לעזור

Try2Guess 26-12-05 15:07

ציטוט:

נכתב במקור על ידי שקד
תכניס לשם את התא של ההצבעות ..
אם עוד לא הבנת

אם אני יכניס לשם תהצבעות אז אני לא יוכל למנוע הצבעות כפולות.

שמע אני לא רוצה לשנות את הקוד, אני פשוט רוצה דרך איך לעשות את זה.
לשנות את הקוד אני יודע יפה מאוד.

ומירו, אני באמת מקווה שיענו לנו מהר.

שקד 26-12-05 15:11

ציטוט:

נכתב במקור על ידי Www..Net
טוב אני יסביר קצת גם אני נתקלתי בזה
תקשיב
יש לי(אצלי) טבלה בשם votes שבפנים יש
ip- האי פי של זה שהצביע
vote-מספר ה ID שהוא הצביע עד פה יש מבין יופי חח!
עכשיו עשיתי דף ששם זה מראה לי את כל ההצבעות יענו תוצאות
ואני רוצה שזה יציג לי לפי מספר הצבעות נגיד
0
2
5
9
וכו'
אבל זה לא מציג :\

תודה לך עם תצליח לעזור

ביגלל שאתה מעצב חזק, אני חייב לעזור =]
function.array-sum
דוגמא קטנה
PHP קוד:

$a = array($field);
echo 
"sum(a) = " array_sum($a) . "\n"

ציטוט:

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

שמע אני לא רוצה לשנות את הקוד, אני פשוט רוצה דרך איך לעשות את זה.
לשנות את הקוד אני יודע יפה מאוד.

ומירו, אני באמת מקווה שיענו לנו מהר.

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

exciter 26-12-05 15:18

אממממ תעשה שדה בתוך המצעד שירים של הצבעות וכל פעם שמצביעים זה יעלה ב1 ( +1 ), ועדיין תכניס את ה IP אבל בנפרד ככה לא יוכלו להצביע שוב ותוכל להוסיף ORDER BY topvotes DESC.
התכנון שלך קצת שגוי..

Try2Guess 26-12-05 15:19

כן חשבתי על זה, אבל אין דרך אחרת ?

Try2Guess 26-12-05 15:33

טוב תודה לשקד :)
וגם תודה לשאר האנשים שניסו לעזור.

exciter 26-12-05 15:37

יש, פשוט תריץ Query על ה Votes ושיהיה רק אחד מכל סוג ( הכוונה שלא יהיה 2 עם אותו זמר ) ואז דרכם תייבא את המידע..
אבל זה לא יעיל ולא טוב.. לא מומלץ..

Try2Guess 26-12-05 16:11

טוב בסוף השתמשתי בפתרון של אור :) תודה.

ו.. איך אני עושה שזה יציג תמקום של השיר?
כאילו:

1. moshe (rank: 24)
2. yosi (rank: 10)
3. avi (rank: 5)

וכן הלאה,
אבל במקום מספרים שזה יציג תמונה (כאילו rank1.gif וכו'..)

שקד 26-12-05 16:30

ציטוט:

נכתב במקור על ידי Try2Guess
טוב בסוף השתמשתי בפתרון של אור :) תודה.

ו.. איך אני עושה שזה יציג תמקום של השיר?
כאילו:

1. moshe (rank: 24)
2. yosi (rank: 10)
3. avi (rank: 5)

וכן הלאה,
אבל במקום מספרים שזה יציג תמונה (כאילו rank1.gif וכו'..)

תעשה את התמונות לפי המקומות נגיד התמוה הראשונה
rank1.gif
השניה:
rank2.gif

ואז תשלוף ככה:
PHP קוד:

<img src="rank<?=$vote ?>.gif


רומן 26-12-05 16:42

התיכנות גרוע מלכתחילה פשוט...

Try2Guess 26-12-05 17:27

ומממ.. שקדד אררר לא הבנת :|
בוא נגיד והמשתנה vote לוקח את המידע מה vote
אבל ה vote נמצא מספר ההצבעות ולא המיקום של השיר מבין אחי?

ורומן, אולי במקום לקטול תעזור?


כל הזמנים הם GMT +2. הזמן כעת הוא 18:39.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ