hoogste waarde
ik heb nu dit script.
maar hoe weergeef het hoogste lvl
ik dacht het heeft iets met de variable $d te maken en iets met max function
http://php.net/manual/en/function.max.php
mischien dat iemand me op weg kan helpen of advies kan geven :P
want ik kom er niet uit helaas.
Sander
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<?php
function combatLevel($attack, $defence, $strength, $hp, $prayer, $ranged, $magic, $summoning) {
$base = ($defence + $hp + floor($prayer / 2) + floor($summoning / 2)) * 0.25;
$melee = ($attack + $strength) * 0.325;
$ranger = floor($ranged * 1.5) * 0.325;
$mage = floor($magic * 1.5) * 0.325;
return $base + max($melee, $ranger, $mage);
}
$rsname = $_GET['rsname'];
$a = $_GET['a'];
$b = $_GET['b'];
$c = $_GET['c'];
$d = $_GET['d'];
$e = $_GET['e'];
$stats = array();
if (empty($rsname)) {
echo "Geen gebruikersnaam ingevoerd";
}
else {
$url = "http://hiscore.runescape.com/index_lite.ws?player=".$rsname;
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$score = curl_exec($ch);
curl_close($ch);
$uitslag = preg_split("`(\n|,)`", $score);
if ($uitslag[0] == 0) { echo "Gebruikersnaam <b>" . $rsname . "</b> staat niet in de RuneScape highscores."; }
else {
$skills = array(
'Overall',
'Attack',
'Defence',
'Strenght',
'Hitpoints',
'Range',
'Prayer',
'Magic',
'Cooking',
'Woodcutting',
'Fletching',
'Fishing',
'Firemaking',
'Crafting',
'Smithing',
'Mining',
'Herblore',
'Agility',
'Thieving',
'Slayer',
'Farming',
'Runecrafting',
'Hunter',
'Construction',
'Summoning'
);
echo "RuneScape Hiscores van <b>" . $rsname . "</b>.";
echo "\n<br /><br />\n";
echo "<table width=\"700\" border=\"0\">\n";
if ($a == 0) {
echo "<tr>";
if ($b == 0) { echo "<td><b>Skill</b></td>\n"; }
if ($c == 0) { echo "<td><b>Rank</b></td>\n"; }
if ($d == 0) { echo "<td><b>Level</b></td>\n"; }
if ($e == 0) { echo "<td><b>Exp</b></td>\n"; }
echo "</tr>";
}
$i = 0;
$ii = 0;
$iii = 1;
$iiii = 2;
while ($i <= 24):
$uitslag[$ii] = number_format($uitslag[$ii], 0, ',', ',');
$uitslag[$iiii] = number_format($uitslag[$iiii], 0, ',', ',');
if ($uitslag[$ii] == -1) { $uitslag[$ii] = " "; }
if ($uitslag[$iii] == -1) { $uitslag[$iii] = " "; }
if ($uitslag[$iiii] == -1) { $uitslag[$iiii] = "<i>Niet gevonden</i>\n"; }
echo "<tr>";
if ($b ==0) { echo "<td><b>" . $skills[$i] . "</b></td>\n"; }
if ($c ==0) { echo "<td>" . $uitslag[$ii] . "</td>\n"; }
if ($d ==0) { echo "<td>" . $uitslag[$iii] . "</td>\n"; }
if ($e ==0) { echo "<td>" . $uitslag[$iiii] . "</td>\n"; }
echo "</tr>";
$stats[$skills[$i]] = array($uitslag[$ii],$uitslag[$iii],$uitslag[$iiii]);
$i++;
$ii = $ii + 3;
$iii = $iii + 3;
$iiii = $iiii + 3;
endwhile;
echo "<tr><td><b>Combat</b></td><td> </td><td>".combatLevel($stats['Attack'][1], $stats['Defence'][1], $stats['Strenght'][1], $stats['Hitpoints'][1], $stats['Prayer'][1], $stats['Range'][1], $stats['Magic'][1], $stats['Summoning'][1])."</td><td> </td></tr>";
echo "\n</table>";
} }
?>
function combatLevel($attack, $defence, $strength, $hp, $prayer, $ranged, $magic, $summoning) {
$base = ($defence + $hp + floor($prayer / 2) + floor($summoning / 2)) * 0.25;
$melee = ($attack + $strength) * 0.325;
$ranger = floor($ranged * 1.5) * 0.325;
$mage = floor($magic * 1.5) * 0.325;
return $base + max($melee, $ranger, $mage);
}
$rsname = $_GET['rsname'];
$a = $_GET['a'];
$b = $_GET['b'];
$c = $_GET['c'];
$d = $_GET['d'];
$e = $_GET['e'];
$stats = array();
if (empty($rsname)) {
echo "Geen gebruikersnaam ingevoerd";
}
else {
$url = "http://hiscore.runescape.com/index_lite.ws?player=".$rsname;
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$score = curl_exec($ch);
curl_close($ch);
$uitslag = preg_split("`(\n|,)`", $score);
if ($uitslag[0] == 0) { echo "Gebruikersnaam <b>" . $rsname . "</b> staat niet in de RuneScape highscores."; }
else {
$skills = array(
'Overall',
'Attack',
'Defence',
'Strenght',
'Hitpoints',
'Range',
'Prayer',
'Magic',
'Cooking',
'Woodcutting',
'Fletching',
'Fishing',
'Firemaking',
'Crafting',
'Smithing',
'Mining',
'Herblore',
'Agility',
'Thieving',
'Slayer',
'Farming',
'Runecrafting',
'Hunter',
'Construction',
'Summoning'
);
echo "RuneScape Hiscores van <b>" . $rsname . "</b>.";
echo "\n<br /><br />\n";
echo "<table width=\"700\" border=\"0\">\n";
if ($a == 0) {
echo "<tr>";
if ($b == 0) { echo "<td><b>Skill</b></td>\n"; }
if ($c == 0) { echo "<td><b>Rank</b></td>\n"; }
if ($d == 0) { echo "<td><b>Level</b></td>\n"; }
if ($e == 0) { echo "<td><b>Exp</b></td>\n"; }
echo "</tr>";
}
$i = 0;
$ii = 0;
$iii = 1;
$iiii = 2;
while ($i <= 24):
$uitslag[$ii] = number_format($uitslag[$ii], 0, ',', ',');
$uitslag[$iiii] = number_format($uitslag[$iiii], 0, ',', ',');
if ($uitslag[$ii] == -1) { $uitslag[$ii] = " "; }
if ($uitslag[$iii] == -1) { $uitslag[$iii] = " "; }
if ($uitslag[$iiii] == -1) { $uitslag[$iiii] = "<i>Niet gevonden</i>\n"; }
echo "<tr>";
if ($b ==0) { echo "<td><b>" . $skills[$i] . "</b></td>\n"; }
if ($c ==0) { echo "<td>" . $uitslag[$ii] . "</td>\n"; }
if ($d ==0) { echo "<td>" . $uitslag[$iii] . "</td>\n"; }
if ($e ==0) { echo "<td>" . $uitslag[$iiii] . "</td>\n"; }
echo "</tr>";
$stats[$skills[$i]] = array($uitslag[$ii],$uitslag[$iii],$uitslag[$iiii]);
$i++;
$ii = $ii + 3;
$iii = $iii + 3;
$iiii = $iiii + 3;
endwhile;
echo "<tr><td><b>Combat</b></td><td> </td><td>".combatLevel($stats['Attack'][1], $stats['Defence'][1], $stats['Strenght'][1], $stats['Hitpoints'][1], $stats['Prayer'][1], $stats['Range'][1], $stats['Magic'][1], $stats['Summoning'][1])."</td><td> </td></tr>";
echo "\n</table>";
} }
?>
ORDER BY Overall DESC ?
Mitchel V op 08/06/2010 09:43:18:
ORDER BY Overall DESC ?
Afgezien dat de TS nogal vaag is, kan jij ook zien dat er geen gebruik wordt gemaakt van een database. Dus dat dat niet helpt.
Je zou bijvoorbeeld kunnen zeggen dat de TS wellicht beter bij de maker van dat script terecht kan, want het is hier ook phphulp en geen php-wij-maken-het-voor-jouw.
Verder ga ik ook niet naar dat script kijken, omdat er geen commentaar in zit en ik ook geen idee heb wat het moet doen.
maar mischien kan iemand mij op weg helpen.
trouwens het script moet de gegevens uit de highscore halen
en van al die levels wil ik het hoogste lvl laten zien.
maar ik weet dus niet hoe je het opvraagt.
en daarom vraag ik of iemand mij mischien een tip kan geven ofzo..
Uitslag van $uitslag[$iii] bijhouden in nieuwe array, max over gooien en weer terug proberen te rekenen.
Zelf een array maken met SQL?
Dit in de array:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$sql = "SELECT punten,skill FROM skills WHERE skill = '".$array."' ORDER BY punten DESC";
$query = mysql_query($sql);
while($row = mysql_fetch_assoc($query))
{
echo 'High score: <b>'.$array.'</b> met aantal punten: <b>'.$row['punten'].'</b><br>';
}
?>
$sql = "SELECT punten,skill FROM skills WHERE skill = '".$array."' ORDER BY punten DESC";
$query = mysql_query($sql);
while($row = mysql_fetch_assoc($query))
{
echo 'High score: <b>'.$array.'</b> met aantal punten: <b>'.$row['punten'].'</b><br>';
}
?>
zo iets?:$
Ik ben zelf niet zo goed met de array maar ik hoop dat ik je hier mee op weg kan helpen.
laat maar zitten, ik zie dat het niet uit de DB woord gehaald..
Gewijzigd op 08/06/2010 14:14:28 door Mitchel V
Volgens mij heeft runescape gewoon een API.