MySQL result, limit en row vraagje

Gestart doorDeamonz10 reacties35 weergaven

11 berichten · pagina 1 van 1

Deamonz

Lid · Topicstarter

Berichten
117
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
hallo mensen,
ik ben via een site mysql in combinatie met php aan het leren.
deze site is in het engels dus wel wat lastig maarja.
ik ben nu bezig met een scriptje waar ik mee vastloop.
het plan is om een highscore van het aantal votes te maken.
deze colommen heb ik in mijn mysql:
- minecraft_user -> naam van de voter
- id -> de hoeveelste voter
- service -> site waarop gevote is
- time -> tijd wanneer gevote
ik wil dat het script het aantal keren dat die naam voorkomt optelt.
daarna moet het script ze in de juiste volgorde zetten van hoog naar laag.
en als finishing touch moet er een limit op zitten van 10 per pagina als dat kan.
ik ken al veel codes om dit te doen maar ze werken allemaal niet.
als iemand mij hiermee een beetje kan helpen alsjeblieft.
dit is wat ik nu hebsadleyde mysql connect details zijn weggelaten maar zitten er wel in)

mysql_select_db("vote", $con);

$query = "SELECT minecraft_user, COUNT(minecraft_user) FROM votes GROUP BY minecraft_user ORDER BY id"; 
     
$result = mysql_query($query) or die(mysql_error());

// Print out result
while($row = mysql_fetch_array($result)){

    echo $row[minecraft_user] ." " . "has voted ".$row[COUNT(minecraft_user)] ." " . " time(s).";
    echo "<br />";
}
?>


LIMIT, row en COUNT zijn de mysql query codes die ik tot nu toe gebruikt heb voor de highscores
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Quote:
in de juiste volgorde zetten van hoog naar laag.
en als finishing touch moet er een limit op zitten van 10 per pagina als dat kan

ORDER BY time ASC

en...

pagina 1: LIMIT 0, 10
pagina 2: LIMIT 10, 10
pagina 3: LIMIT 20, 10
............
0
Deamonz

Lid · Topicstarter

Berichten
117
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Antonn schreef:
Quote:
in de juiste volgorde zetten van hoog naar laag.
en als finishing touch moet er een limit op zitten van 10 per pagina als dat kan
ORDER BY time ASC

en...

pagina 1: LIMIT 0, 10
pagina 2: LIMIT 10, 10
pagina 3: LIMIT 20, 10
............

zou je dit even in de code kunnen plaatsen, want ik weet nog niet goed hoe het zit met result en query
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
mysql_select_db("vote", $con);

$query = "SELECT minecraft_user, COUNT(minecraft_user) FROM votes GROUP BY minecraft_user ORDER BY time ASC LIMIT 0, 10"; 
     
$result = mysql_query($query) or die(mysql_error());

// Print out result
while($row = mysql_fetch_array($result)){

    echo $row[minecraft_user] ." " . "has voted ".$row[COUNT(minecraft_user)] ." " . " time(s).";
    echo "<br />";
}
?>
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Bagger-code, kan beter:

[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/include"]include[/URL] [COLOR= #DD0000]"connect.inc.php"[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #FF8000]// MySQL connect...[/COLOR]

[COLOR= #0000BB]$sql[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"SELECT minecraft_user, COUNT(minecraft_user) AS users_count FROM votes GROUP BY minecraft_user ORDER BY time ASC LIMIT 0, 10"[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700]) {[/COLOR]
    [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"<ul>"[/COLOR][COLOR= #007700];[/COLOR]
    [COLOR= #FF8000]// Print out result[/COLOR]
    [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$row[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_fetch_assoc"]mysql_fetch_assoc[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700])){[/COLOR]
        [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"<li>"[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]minecraft_user[/COLOR][COLOR= #007700]] .[/COLOR][COLOR= #DD0000]" "[/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #DD0000]"has voted "[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]users_count[/COLOR][COLOR= #007700]] .[/COLOR][COLOR= #DD0000]" "[/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #DD0000]" time(s).</li>"[/COLOR][COLOR= #007700];
    }[/COLOR]
    [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"</ul>"[/COLOR][COLOR= #007700];
}[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
    [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"Er is een fout opgetreden: "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_error"]mysql_error[/URL][COLOR= #007700]();
}[/COLOR]    
?>


Leer en profiteer ervan...
0
Deamonz

Lid · Topicstarter

Berichten
117
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Antonn schreef:
mysql_select_db("vote", $con);

$query = "SELECT minecraft_user, COUNT(minecraft_user) FROM votes GROUP BY minecraft_user ORDER BY time ASC LIMIT 0, 10"; 
     
$result = mysql_query($query) or die(mysql_error());

// Print out result
while($row = mysql_fetch_array($result)){

    echo $row[minecraft_user] ." " . "has voted ".$row[COUNT(minecraft_user)] ." " . " time(s).";
    echo "<br />";
}
?>
Aarclay schreef:
Bagger-code, kan beter:
[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/include"]include[/URL] [COLOR= #DD0000]"connect.inc.php"[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #FF8000]// MySQL connect...[/COLOR]

[COLOR= #0000BB]$sql[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"SELECT minecraft_user, COUNT(minecraft_user) AS users_count FROM votes GROUP BY minecraft_user ORDER BY time ASC LIMIT 0, 10"[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$result[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$sql[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700]) {[/COLOR]
    [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"<ul>"[/COLOR][COLOR= #007700];[/COLOR]
    [COLOR= #FF8000]// Print out result[/COLOR]
    [URL="http://www.php.net/while"]while[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$row[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_fetch_assoc"]mysql_fetch_assoc[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$result[/COLOR][COLOR= #007700])){[/COLOR]
        [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"<li>"[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]minecraft_user[/COLOR][COLOR= #007700]] .[/COLOR][COLOR= #DD0000]" "[/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #DD0000]"has voted "[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$row[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]users_count[/COLOR][COLOR= #007700]] .[/COLOR][COLOR= #DD0000]" "[/COLOR] [COLOR= #007700].[/COLOR] [COLOR= #DD0000]" time(s).</li>"[/COLOR][COLOR= #007700];
    }[/COLOR]
    [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"</ul>"[/COLOR][COLOR= #007700];
}[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
    [URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]"Er is een fout opgetreden: "[/COLOR][COLOR= #007700].[/COLOR][URL="http://www.php.net/mysql_error"]mysql_error[/URL][COLOR= #007700]();
}[/COLOR]    
?>


Leer en profiteer ervan...

en de paginas dan?
LIMIT wist ik wel waar die moest maar pagina code.
plus bij Aarclay snap ik dit niet: AS users_count
zou je dat kunnen uitleggen
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
die AS staat voor alias... Waar je voorheen COUNT(minecraft_user) in je query zag als veldnaam, zie je nu als users_count staan.

Dus $row[COUNT(minecraft_user)] wordt nu $row[users_count].

Voordeel: Zo zou je bijv. ook makkelijk een GROUP BY op user_count kunnen doen.

En wat wil je zeggen met die paginas?
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
die AS staat voor alias... Waar je voorheen COUNT(minecraft_user) in je query zag als veldnaam, zie je nu als users_count staan.

Dus $row[COUNT(minecraft_user)] wordt nu $row[users_count].

Voordeel: Zo zou je bijv. ook makkelijk een GROUP BY op user_count kunnen doen.

En wat wil je zeggen met die paginas?
Hij wil paginasysteem.

Die moet je zelf maken met PHP, of downloaden op het internet.
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
isset() include() en switch(), file_exists() en wat wetenwaardigheden van GET en je komt al een stuk verder.
0
Deamonz

Lid · Topicstarter

Berichten
117
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
isset() include() en switch(), file_exists() en wat wetenwaardigheden van GET en je komt al een stuk verder.
say what?
je weet dat ik nog aan het leren ben dus zou het iets simpeler kunnen?
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Deamonz schreef:
Eerdere citaten tonen
Aarclay schreef:
isset() include() en switch(), file_exists() en wat wetenwaardigheden van GET en je komt al een stuk verder.
say what?
je weet dat ik nog aan het leren ben dus zou het iets simpeler kunnen?
Dit lijkt me het simpelst.
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren