Avatar billede zips Juniormester
28. marts 2008 - 12:02 Der er 1 løsning

Placering igen

Hej Eksperter

Jeg har fået lavet denne kode af coderdk lige som jeg bad om, men jeg havde misforstået det jeg blev bet op, nemlig at placeringen skulle virke som i plads i excel, se her under

--------------------
Plads | Navn | Point
  1  | Hans |  118
  2  | John |  115
  2  | Jens |  115
  4  | Peter|  114
  5  | Ib  |  113
--------------------
Som man kan se forsætte placeringen, men alle som har samme point får samme plads.

Her er koden som coderdk har lavet til mig

<?php

    $i = 0;
    $sql = "
        SELECT
            c.horse_type, c.disciplin_id, c.year, c.horse_id, SUM( c.point ) AS point
            ,u.user_id, u.name AS uname, h.name AS hname
        FROM
            rl_competition AS c
        INNER JOIN
            rl_horses AS h
        ON
            c.horse_id = h.horse_id
        INNER JOIN
            rl_users AS u
        ON
            h.user_id = u.user_id
        WHERE
            c.year = '$_GET[aar]'
            AND c.disciplin_id = '$_GET[disciplin]'
            AND c.horse_type = '$_GET[type]'
        GROUP BY
            c.horse_id
        ORDER BY
            SUM(point) DESC
            ,SUM(IF(c.competition_place='1',1,0)) DESC
        ";
    $get_horses = mysql_query($sql) or die(mysql_error());
    $old = 0;
    while ($row = mysql_fetch_array($get_horses)) {

        if ( $row['point'] != $old )
        {
            $i++;
            $old = $row['point'];
        }

?>
    <tr>
        <td class="td9">
            <strong><?php echo $i;?></strong>
        </td>
        <td class="td8">
            <a class="fkrlink" href="competitions.php?show_user=<?php echo $row['user_id']; ?>&aar=<?php echo $_GET['aar']; ?>"><?php echo $row['uname']; ?></a>
        </td>
        <td class="td8">
            <?php echo $row['hname']; ?>
        </td>
        <td class="td9">
            <?php echo $row['point']; ?>
        </td>
    </tr>
<?php
    }
?>
</table>

Mvh ZiPs
Avatar billede zips Juniormester
28. marts 2008 - 12:51 #1
coderdk har lavet denne nye kode

<?php

    $i = 0;
    $r = 0;
    $sql = "
        SELECT
            c.horse_type, c.disciplin_id, c.year, c.horse_id, SUM( c.point ) AS point
            ,u.user_id, u.name AS uname, h.name AS hname
        FROM
            rl_competition AS c
        INNER JOIN
            rl_horses AS h
        ON
            c.horse_id = h.horse_id
        INNER JOIN
            rl_users AS u
        ON
            h.user_id = u.user_id
        WHERE
            c.year = '$_GET[aar]'
            AND c.disciplin_id = '$_GET[disciplin]'
            AND c.horse_type = '$_GET[type]'
        GROUP BY
            c.horse_id
        ORDER BY
            SUM(point) DESC
            ,SUM(IF(c.competition_place='1',1,0)) DESC
        ";
    $get_horses = mysql_query($sql) or die(mysql_error());
    $old = 0;
    while ($row = mysql_fetch_array($get_horses)) {
        $r++;
        if ( $row['point'] != $old )
        {
            $i = $r;
            $old = $row['point'];
        }

?>
    <tr>
        <td class="td9">
            <strong><?php echo $i;?></strong>
        </td>
        <td class="td8">
            <a class="fkrlink" href="competitions.php?show_user=<?php echo $row['user_id']; ?>&aar=<?php echo $_GET['aar']; ?>"><?php echo $row['uname']; ?></a>
        </td>
        <td class="td8">
            <?php echo $row['hname']; ?>
        </td>
        <td class="td9">
            <?php echo $row['point']; ?>
        </td>
    </tr>
<?php
    }
?>
</table>

Han ønsker ikke point for denne, super flink er coderdk.

Mvh ZiPs
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester