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

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

SlipY 12-06-08 16:57

בעייה חשיבתית - PHP + MySQL
 
עשיתי דף שמציג את כל החברים באתר..
עשיתי גם חלוקה לדפים..
הבעייה שה limit עובד לפי ה ID's
ומחקתי דיי הרבה יוזרים לא פעילים אז יש חורים...
התוצאה :
http://www.x-site.co.il/website/index.php?page=members

הקוד :
קוד:


<div class="center_block">
<?php
if($p == NULL)                // if(!isset($page))
    $p = 1;
if($perpage == NULL)
    $perpage = 25;
        include 'mysql_connect.php';
        $sql_query = mysql_query("SELECT * FROM users");
        $nump = mysql_num_rows($sql_query);
        $nump = $nump / $perpage;
        if(intval($nump) != $nump)         
        $nump = intval($nump) + 1;
        $i = 1;
        $lim1 = ($p - 1) * $perpage;
        $sql_query = mysql_query("SELECT * FROM users order by u_id desc LIMIT $lim1,$perpage");
        while ($rs = mysql_fetch_array($sql_query,MYSQL_ASSOC))
        { ?>
        <a href="index.php?page=profile&id=<?echo $rs['u_id']; ?>"><span lang="he"><font color="#FFFFFF" size="1" face="Verdana, Arial, Helvetica, sans-serif"><?echo $rs['u_username'];?> </font></a><br>
        <?
        }
        for($I = 1; $I<= $nump; $I++)
        {
            if($p != $I)
        {
        ?><a href=index.php?page=members&p=<?echo $I;?>><font color="#FFFFFF" size="1" face="Verdana, Arial, Helvetica, sans-serif"><?echo $I;?></font></a><?
        }
            else
        echo  $I ;
            if($I != $perpage)
                echo " - ";
        }

?>
</div>


יש למישהו רעיונות?

AlmogBaku 12-06-08 22:54

איך מחקת אותם?!

4ior 12-06-08 23:08

"בעייה חשיבתית" חחחחח הלוואי עלינו "בעיות חשיבתיות" כאלו

יש כמה דרכים, אחד שפשוט תסדר את זה...תעבור אחד אחד ותלך איתו אחורה כמה שאפשר..(2 לולאות)
או שפשוט תעשה לולאת while במקום הfor שיש לך שם..

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

SlipY 13-06-08 06:32

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

Matan Levy 13-06-08 07:29

תעשה:
שבכל הוספה של משתמש לדף זה יעלה את הערך BLABLA ב 1,
ובמקום FOR תריץ WHILE(BLABLA<25)

AlmogBaku 13-06-08 13:15

ציטוט:

נכתב במקור על ידי SlipY (פרסם 641484)
הבעייה היא שהשליפה מהמסד מתבצעת ב limit מסויים, בשביל החלוקה לדפים..
בגלל זה איידי שנמחקו עדיין מחושבות שם..

שוב,
מה שהצגת לא אמור לקרות-

איך מחקת את המשתמשים?

Nivi 13-06-08 13:26

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

4ior 13-06-08 15:39

אסף אחי נראה לי אתה מתבלבל..
limit הוא לא תווך של ids הוא תווך של רשומות..לכן העובדה שמחקת את הרשומה לא אמורה להפריע..

SlipY 13-06-08 17:42

במסד עצמו אין לי רשומות ריקות...
הוא פשוט מדלג משום מה על מספרי ה ID שמחקתי .. כאילו מציג ריק..

AlmogBaku 13-06-08 18:03

הזוי.
אתה בטוח שמחקת? ולא מחקת פשוט את התוכן?


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

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