'Rekenen in while'
Ik ben recentelijk begonnen met PHP maar loop tegen een punt aan waar ik geen antwoord op heb kunnen vinden. Ik wil een volledige stand tonen met daarbij de huidige en vorige positie van de speler. Nou wil ik laten zien hoeveel plaatsen iemand is gestegen of gedaald, dus de vorige_positie - huidige_positie, maar ik weet niet hoe ik dat zou moeten doen in de while. Je kunt dus stijgen, zakken, zelfde positie blijven en nieuwe binnenkomer zijn, en daar zou ik het liefst dus in een echo een eigen div aan koppelen.
Alvast bedankt!
Die zou je gewoon (per uitslag) inclusief datum moeten opslaan.
En dan kan je eenvoudig kijken (per stand) of die gelijk is (vorige week 3, nu 3 = gelijk), of hij omhoog/omlaag is of nieuw (dan is er geen resultaat vorige week).
Met jouw code (wat echt een minium is) kom je er dus nog niet.
Sla je nu al de positie op? Of bereken je die elke keer opnieuw?
Tip: zoek eens op "competitie" hier. Er zijn al genoeg topics met hetzelfde voorbij gekomen.
Eddy E op 14/11/2015 10:47:07:
Je hebt ook de positie van vorige week nodig.
Die zou je gewoon (per uitslag) inclusief datum moeten opslaan.
En dan kan je eenvoudig kijken (per stand) of die gelijk is (vorige week 3, nu 3 = gelijk), of hij omhoog/omlaag is of nieuw (dan is er geen resultaat vorige week).
Met jouw code (wat echt een minium is) kom je er dus nog niet.
Sla je nu al de positie op? Of bereken je die elke keer opnieuw?
Tip: zoek eens op "competitie" hier. Er zijn al genoeg topics met hetzelfde voorbij gekomen.
Die zou je gewoon (per uitslag) inclusief datum moeten opslaan.
En dan kan je eenvoudig kijken (per stand) of die gelijk is (vorige week 3, nu 3 = gelijk), of hij omhoog/omlaag is of nieuw (dan is er geen resultaat vorige week).
Met jouw code (wat echt een minium is) kom je er dus nog niet.
Sla je nu al de positie op? Of bereken je die elke keer opnieuw?
Tip: zoek eens op "competitie" hier. Er zijn al genoeg topics met hetzelfde voorbij gekomen.
Ik ga je tip zeker bekijken.
Ik werk voorlopig nog met een handmatig ingevoerde ranking.
Die is opgebouwd als: 1 - 2 - Jan Jansen - 40 punten.
In feite heb ik dus wel de gegevens die ik nodig heb, maar ik weet dus niet hoe ik daarmee stijging of daling kan 'berekenen'. Op het moment roep ik het inderdaad alleen aan, maar ik weet niet hoe ik het in die echo moet verwerken.
Code (php)
1
2
3
2
3
<?php
printf('Verschil t.o.v. vorige week: %+d plaatsen', $row['vorige_positie'] - $row['huidige_positie']);
?>
printf('Verschil t.o.v. vorige week: %+d plaatsen', $row['vorige_positie'] - $row['huidige_positie']);
?>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
while ($row=mysqli_fetch_array($result,MYSQLI_ASSOC))
{
echo "{$row['huidige_positie']}
{$row['vorige_positie']}
{$row['naam_volledig']}
{$row['punten']}";
$curr = $row['huidige_positie'];
$prev = $row['vorige_positie'];
$result1 = $prev - $curr;
if (is_numeric($prev)) {
if ($result1 >= 1) { echo "Gestegen";} else { echo "";}
if ($result1 <= -1) { echo "Gezakt";} else { echo "";}
if ($result1 == 0) { echo "Zelfde positie";} else { echo "";}
}
if (strpos($prev,'-') !== false) {echo 'Nieuwe binnenkomer';}
}
{
echo "{$row['huidige_positie']}
{$row['vorige_positie']}
{$row['naam_volledig']}
{$row['punten']}";
$curr = $row['huidige_positie'];
$prev = $row['vorige_positie'];
$result1 = $prev - $curr;
if (is_numeric($prev)) {
if ($result1 >= 1) { echo "Gestegen";} else { echo "";}
if ($result1 <= -1) { echo "Gezakt";} else { echo "";}
if ($result1 == 0) { echo "Zelfde positie";} else { echo "";}
}
if (strpos($prev,'-') !== false) {echo 'Nieuwe binnenkomer';}
}
Gewijzigd op 15/11/2015 23:42:23 door G Jansma