Leden lijst

  • Beste cpers,


    Bij mijn ledenlijst zit een bug.
    Als iemand op een aantal power komt van:
    9.223.381.903.771.219.968 power,


    gaat hij terug naar de laatste plaats.
    Ik vraag me af hoe ik dit moet oplossen.


    Hier het script



    Hoopelijk kunnen jullie me heirbij helpen.


    Met vriendelijke groeten,
    Kevin

  • PHP
    $Query = mysql_query("SELECT `id`,`login`,UNIX_TIMESTAMP(`signup`) AS `signup`,`attack`,`defence`,`gebeldmvip`,`hulpadmin`,`cash`,`superdagen`,`level`,`clan`,`vipdagen` FROM `[users]` ORDER BY (`attack`+`defence`) DESC,`login` ASC LIMIT $start,25");


    Je ziet daar helemaal achteraan 'DESC' staan, verander die naar ASC.


    off:
    Waarom heb jij scripts van nick?

    Bezig met een zelf gemaakte source, geschreven vanaf 0 natuurlijk!

  • Ik weet wie nick is, Ik weet wat hij heeft gemaakt.


    Ik stel hem een vraag, en zou graag het antwoord willen.
    Wat jij bent nick niet lijkt me?


    EDIT:


    Als je wilt kijken of je config bestaat doe het dan zo:


    Bezig met een zelf gemaakte source, geschreven vanaf 0 natuurlijk!

  • PHP
    $Query = mysql_query("SELECT `id`,`login`,UNIX_TIMESTAMP(`signup`) AS `signup`,`attack`,`defence`,`gebeldmvip`,`hulpadmin`,`cash`,`superdagen`,`level`,`clan`,`vipdagen` FROM `[users]` ORDER BY (`attack`+`defence`) DESC,`login` ASC LIMIT $start,25");


    deze DESK moest ik veranderen in ASK maar dan krijg ik dat die persoon die laatste stond met hoog aantal power nu wel 1e staat maar de rest is 0 power.


    met vriendelijke groeten,
    Kevin

  • Even snel unbugged:

    PHP
    $Query = mysql_query("SELECT id, login, UNIX_TIMESTAMP(signup) AS signup, attack, defence, gebeldmvip, hulpadmin, cash, superdagen, level, clan, vipdagen FROM [users] ORDER BY (attack+defence) DESC LIMIT $start, 25");


    Hopelijk werkt ie ;)

  • Ik krijg nu deze fout;


    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/kbrinkman/domains/criminalinvestigative.nl/public_html/leden-lijst1.php on line 109


    en dit is het stukje script wat fout is:


    PHP
    $Query = mysql_query("SELECT id, login, UNIX_TIMESTAMP(signup) AS signup, attack, defence, gebeldmvip, hulpadmin, cash, superdagen, level, clan, vipdagen FROM [users] ORDER BY (attack+defence) DESC LIMIT $start, 25");
    
    
     if(mysql_num_rows($Query) == '0') 
     {
     	die('<tr><td class="maintxt" colspan="6"><font color="#FF0000"><i>Er zijn leden beschikbaar in deze lijst !</i></font></td></tr>');
     }
  • Dit komt doordat 9.223.381.903.771.219.968 de maximale waarde is van een signed integer van 64 bit lang. Dit is dus de maximale waarde van een SIGNED BIGINT in een (MySQL) database. Je kunt deze waarde nog verdubbelen door van je velden UNSIGNED BIGINT's te maken, hierdoor wordt de maximale waarde 18446744073709551616 (2^64).

  • zet er: or die(mysql_error()); achter?


    En hoezo moet ik niet zo bijdehand doen, ik vraag alleen hoe hij eraan komt omdat er Nick Petyt staat.

    Bezig met een zelf gemaakte source, geschreven vanaf 0 natuurlijk!

  • nee dan geeft hij een error weer.


    PHP
    $Query = mysql_query("SELECT `id`, `login`, UNIX_TIMESTAMP(`signup`) AS `signup`, `attack`, `defence`, `gebeldmvip`, `hulpadmin`, `cash`, `superdagen`, `level`, `clan`, `vipdagen` FROM [users] ORDER BY (`attack`+`defence`) DESC LIMIT $start, 25");


    Hij moet zo werken denk ik :$

    Bezig met een zelf gemaakte source, geschreven vanaf 0 natuurlijk!

  • Patrick:

    Citaat

    A select_expr can be given an alias using AS alias_name. The alias is used as the expression's column name and can be used in GROUP BY, ORDER BY, or HAVING clauses. For example:


    PHP
    SELECT CONCAT(last_name,', ',first_name) AS full_name
      FROM mytable ORDER BY full_name;


    http://dev.mysql.com/doc/refman/5.0/en/select.html


    Jackie: De query was niets mis mee. Het ligt gewoon aan de limit van een BIGINT veld.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!