Runescape grand exchange script
Hoi allemaal
Na aanleiding van dit heb ik een script gemaakt dat de prijzen van producten in runescape haalt en deze vermenigvuldigd met de hoeveelheid die je hebt. Nu moet je in mijn formulier amount en id van het product invoeren nou is het lastig iedere keer het id van een product op te gaan zoeken dus was ik op zoek naar een of andere database waar ik eigenlijk de id's kan laten ophalen als je een naam invult. Weet iemand een geschikte manier om al deze id´s op te slaan? Mysql is mogelijk alleen zo lastig aan te passen als de id´s veranderen. Als je iets anders ziet post het graag ook.
Code:
voorbeeld: klik
gebruik het volgende id: 359 of een andere xD
sorry als de uitleg wat onduidelijk is.
m.v.g.
Lolzzzman
edit:
postgresql enzo werken natuurlijk ook niet.
Na aanleiding van dit heb ik een script gemaakt dat de prijzen van producten in runescape haalt en deze vermenigvuldigd met de hoeveelheid die je hebt. Nu moet je in mijn formulier amount en id van het product invoeren nou is het lastig iedere keer het id van een product op te gaan zoeken dus was ik op zoek naar een of andere database waar ik eigenlijk de id's kan laten ophalen als je een naam invult. Weet iemand een geschikte manier om al deze id´s op te slaan? Mysql is mogelijk alleen zo lastig aan te passen als de id´s veranderen. Als je iets anders ziet post het graag ook.
Code:
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
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
<?php
//laat alle errors zien
ini_set('display_errors',1);
error_reporting(E_ALL);
//checkt of het formulier in is gevult
if($_SERVER['REQUEST_METHOD'] == "POST" ) {
//makkelijkere variablen maken
$amount1 = $_POST['amount1'];
$amount2 = $_POST['amount2'];
$amount3 = $_POST['amount3'];
$id1 = $_POST['id1'];
$id2 = $_POST['id2'];
$id3 = $_POST['id3'];
//Wat informatie die iederekeer hetzelfde is.
$search = "<b>Market price:</b> ";
$stopat = "</span>";
$timeout = 5;
$ch = curl_init();
//als er 1 item berekend word
if ($id1 != ''){
$url = "http://itemdb-rs.runescape.com/viewitem.ws?obj=".$id1;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$start = curl_exec($ch);
curl_close($ch);
$exploded = explode($search,$start);
$exploded = explode($stopat,$exploded[1]);
$result1 = str_replace('<br />','',nl2br($exploded[0]));
$price1 = $result1 * $amount1 ;
$price = $price1 ;
}
//als er 2 items berekend worden
if ($id2 != ''){
$url = "http://itemdb-rs.runescape.com/viewitem.ws?obj=".$id2;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$start = curl_exec($ch);
curl_close($ch);
$exploded = explode($search,$start);
$exploded = explode($stopat,$exploded[1]);
$result2 = str_replace('<br />','',nl2br($exploded[0]));
$price2 = $result2 * $amount2 ;
$price = $price + $price2 ;
}
//als er 3 items berekend worden
if ($id3 != ''){
$url = "http://itemdb-rs.runescape.com/viewitem.ws?obj=".$id3;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$start = curl_exec($ch);
curl_close($ch);
$exploded = explode($search,$start);
$exploded = explode($stopat,$exploded[1]);
$result3 = str_replace('<br />','',nl2br($exploded[0]));
$price3 = $result3 * $amount3 ;
$price = $price + $price3 ;
}
//het weergave
echo $price ;
}else{
//het formulier
?>
<html>
<head>
<title>Price check</title>
</head>
<body>
<form id="pricecheckform" name="pricecheckform" method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<table width="75%"border="0">
<tr>
<td>Amount</td>
<td>Id</td>
</tr>
<tr>
<td><input type="text" name="amount1" id="amount1" /></td>
<td><input type="text" name="id1" id="id1" /></td>
</tr>
<tr>
<td><input type="text" name="amount2" id="amount2" /></td>
<td><input type="text" name="id2" id="id2" /></td>
</tr>
<tr>
<td><input type="text" name="amount3" id="amount3" /></td>
<td><input type="text" name="id3" id="id3" /></td>
</tr>
<tr>
<td></td>
<td><input name="calc" type="submit" value="Calculate" /></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
?>
//laat alle errors zien
ini_set('display_errors',1);
error_reporting(E_ALL);
//checkt of het formulier in is gevult
if($_SERVER['REQUEST_METHOD'] == "POST" ) {
//makkelijkere variablen maken
$amount1 = $_POST['amount1'];
$amount2 = $_POST['amount2'];
$amount3 = $_POST['amount3'];
$id1 = $_POST['id1'];
$id2 = $_POST['id2'];
$id3 = $_POST['id3'];
//Wat informatie die iederekeer hetzelfde is.
$search = "<b>Market price:</b> ";
$stopat = "</span>";
$timeout = 5;
$ch = curl_init();
//als er 1 item berekend word
if ($id1 != ''){
$url = "http://itemdb-rs.runescape.com/viewitem.ws?obj=".$id1;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$start = curl_exec($ch);
curl_close($ch);
$exploded = explode($search,$start);
$exploded = explode($stopat,$exploded[1]);
$result1 = str_replace('<br />','',nl2br($exploded[0]));
$price1 = $result1 * $amount1 ;
$price = $price1 ;
}
//als er 2 items berekend worden
if ($id2 != ''){
$url = "http://itemdb-rs.runescape.com/viewitem.ws?obj=".$id2;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$start = curl_exec($ch);
curl_close($ch);
$exploded = explode($search,$start);
$exploded = explode($stopat,$exploded[1]);
$result2 = str_replace('<br />','',nl2br($exploded[0]));
$price2 = $result2 * $amount2 ;
$price = $price + $price2 ;
}
//als er 3 items berekend worden
if ($id3 != ''){
$url = "http://itemdb-rs.runescape.com/viewitem.ws?obj=".$id3;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$start = curl_exec($ch);
curl_close($ch);
$exploded = explode($search,$start);
$exploded = explode($stopat,$exploded[1]);
$result3 = str_replace('<br />','',nl2br($exploded[0]));
$price3 = $result3 * $amount3 ;
$price = $price + $price3 ;
}
//het weergave
echo $price ;
}else{
//het formulier
?>
<html>
<head>
<title>Price check</title>
</head>
<body>
<form id="pricecheckform" name="pricecheckform" method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<table width="75%"border="0">
<tr>
<td>Amount</td>
<td>Id</td>
</tr>
<tr>
<td><input type="text" name="amount1" id="amount1" /></td>
<td><input type="text" name="id1" id="id1" /></td>
</tr>
<tr>
<td><input type="text" name="amount2" id="amount2" /></td>
<td><input type="text" name="id2" id="id2" /></td>
</tr>
<tr>
<td><input type="text" name="amount3" id="amount3" /></td>
<td><input type="text" name="id3" id="id3" /></td>
</tr>
<tr>
<td></td>
<td><input name="calc" type="submit" value="Calculate" /></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
?>
voorbeeld: klik
gebruik het volgende id: 359 of een andere xD
sorry als de uitleg wat onduidelijk is.
m.v.g.
Lolzzzman
edit:
postgresql enzo werken natuurlijk ook niet.
Gewijzigd op 01/01/1970 01:00:00 door John Doe
Ik heb zelf eens een itemdatabase gemaakt, heel simpel ook direct vanaf ge alle id's incl item namen staan in mn database.
Dat was met mysql? In geval van ja zou je me het script willen geven?
Gewijzigd op 01/01/1970 01:00:00 door John Doe
Inderdaad, maar het script heb ik niet meer heel. Was bezig met een api (sorta) ermee te maken. Misschien kan je hem binnenkort gebruiken! Ik zal je dan pm'en als ik het klaar heb? Wanneer heb je het nodig btw? Het werkte perfect namelijk..
Het zou fijn zijn als het er nu was maar het heeft geen haast het is gewoon een hobby scriptje dat voor veel rs'ers denk ik behoorlijk handig kan zijn.
Edit:
Ziet iemand eigenlijk dingen die makkelijker kunnen, niet werken of kan het efficiënter?
Edit:
Ziet iemand eigenlijk dingen die makkelijker kunnen, niet werken of kan het efficiënter?
Gewijzigd op 01/01/1970 01:00:00 door John Doe
de naam is niet écht perfect gekozen, ken niemand die op 'grand' gaat zoeken bij runescape. Zoek betere trefwoorden.
Je code werkt verder dubbel:
Gebruik één functie en variabel aantal inputvelden.
Je code werkt verder dubbel:
Gebruik één functie en variabel aantal inputvelden.
Uhm dit script is nog niet compleet en de meerdere inputvelden gebruik ik omdat je dan meer dingen bij elkaar op kan tellen.




