FLash
15.02.2008, 10:22
huhu.. ich stell das hier mal für alle zur verfügung :biggrin:
das codeschnipsel ist auf meine seite angepasst deswegen übernehme ich auch keine garantie das es funktioniert..
ap´s müssen schon vorhanden sein auf der seite.. bei meinen code speichere ich die ap´s in vms_userdaten .. 'punkte' und den userrang auch 'urang'
die beiden gehören auf jeden fall zusammen..
hab dann noch eine tabelle erstellt wo die ränge gespeichert werden..
hier die sql datei zum ausführen(incl. paar vordefinierte ränge)
CREATE TABLE IF NOT EXISTS `vms_aprang` (
`id` int(4) NOT NULL,
`aps` double(100,2) NOT NULL,
`rang` varchar(100) NOT NULL,
`bonus` double(100,2) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Daten für Tabelle `vms_aprang`
--
INSERT INTO `vms_aprang` (`id`, `aps`, `rang`, `bonus`) VALUES
(0, 0.00, 'N00b', 0.00),
(1, 500.00, 'N00bie Anfänger', 10000.00),
(2, 1000.00, 'Anfänger', 30000.00),
(3, 5000.00, 'Fortgeschritter N00b', 300000.00),
(4, 10000.00, 'Mini Sloter', 1000000.00),
(5, 50000.00, 'Sloter', 2500000.00),
(6, 100000.00, 'Profi', 10000000.00),
(7, 500000.00, 'Guru', 30000000.00),
(8, 1000000.00, 'Elite', 50000000.00),
(9, 5000000.00, 'Gottstatus', 100000000.00);
die tabelle mit dem punkten nicht vergessen und 'urang' nicht vergessen!! steht hier nicht bei..
hier dann der code meiner rangliste
<?
head("Klickrangübersicht");
$rangzahl = mysql_num_rows(db_query("SELECT id FROM ".$db_prefix."_aprang "));
$rango = mysql_fetch_array(db_query("SELECT a.id,a.aps,a.rang,a.bonus,b.uid,b.urang,b.punkte FROM ".$db_prefix."_aprang AS a LEFT OUTER JOIN ".$db_prefix."_userdaten AS b ON a.id=b.urang WHERE b.uid=".$_SESSION['uid']." "));
$nk = $rango['id']+ 1;
$nextrank = mysql_fetch_array(db_query("SELECT aps,bonus,rang FROM ".$db_prefix."_aprang WHERE id='".$nk."' "));
if ($_POST['update'] == 'Aufsteigen') {
if ($rango['punkte'] > $nextrank['aps']) {
db_query("UPDATE ".$db_prefix."_userdaten SET blose=blose + '".$nextrank['bonus']."' , urang='".$nk."' WHERE uid='".$_SESSION['uid']."' ");
echo $nextrank['bonus'],'Bonuslose erhalten';
$rango = mysql_fetch_array(db_query("SELECT a.id,a.aps,a.rang,a.bonus,b.uid,b.urang,b.punkte FROM ".$db_prefix."_aprang AS a LEFT OUTER JOIN ".$db_prefix."_userdaten AS b ON a.id=b.urang WHERE b.uid=".$_SESSION['uid']." "));
$nk = $rango['id']+ 1;
$nextrank = mysql_fetch_array(db_query("SELECT aps,bonus,rang FROM ".$db_prefix."_aprang WHERE id='".$nk."' "));
}
}
$rangzahl = mysql_num_rows(db_query("SELECT id FROM ".$db_prefix."_aprang "));
?>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td width="50%"><b>Deine Ap´s:</b></td>
<td width="50%"><b><?=@number_format($rango['punkte'],2,",",".")?></b></td><br>
</tr>
<tr>
<td width="50%"><b>Dein Rang:</b></td>
<td width="50%"><b><?=$rango['rang']?></b></td><br>
</tr>
<?
if ($rango['punkte'] > $nextrank['aps']) {
?>
<tr>
<form name="form" method="post">
<td align="center" colspan="2"><input type="Submit" name="update" value="Aufsteigen"></td>
</form>
</tr>
<?
}
?>
</table>
<p> </p>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<td align="left" width="10%"><b>rang</b></td>
<td width="25%"><b>benötigte AP´s</b></td>
<td width="25%"><b>Name</b></td>
<td width="25%"><b>bonus</b></td>
</tr>
<tr>
</table>
<?
$x = 0;
while ($rangzahl > $x) {
$rang = mysql_fetch_array(db_query("SELECT id,aps,rang,bonus FROM ".$db_prefix."_aprang WHERE id=".$x.""));
?>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td align="left" width="10%"><b><?=$rang['id']?></b></td>
<td width="25%"><b><?=@number_format($rang['aps'],2,",",".")?></b></td>
<td width="25%"><b><?=$rang['rang']?></b></td>
<td width="25%"><b><?=@number_format($rang['bonus'],2,",",".")?> Blose</b></td>
</tr>
</table>
<?
$x++;
}
foot();
// Code by FLash
?>
und hier der code für eine datei im adminforce:
<? menuehead("AP Ränge");
$rangzahl = mysql_num_rows(db_query("SELECT id FROM ".$db_prefix."_aprang "));
$x = 0;
while ($rangzahl >= $x) {
if ($_POST[$x] == 'Update') {
db_query("UPDATE ".$db_prefix."_aprang SET id='".$_POST['id']."' , aps='".$_POST['aps']."' , rang='".$_POST['rang']."' , bonus='".$_POST['bonus']."' WHERE id='".$x."'") or die ("datenbankfehler");
}
$x++;
}
if ($_POST['hinzufügen'] == 'hinzufügen') {
db_query ("INSERT INTO ".$db_prefix."_aprang (id,aps,rang,bonus) VALUES ('".$_POST['id']."','".$_POST['aps']."','".$_POST['rang']."','".$_POST['bonus']."')");
echo 'hinzugefügt';
}
if ($_POST['entfernen'] == 'entfernen') {
db_query ("DELETE FROM ".$db_prefix."_aprang WHERE id='".$rangzahl."' - 1 ");
echo 'Letzte zeile geloescht';
}
$rangzahl = mysql_num_rows(db_query("SELECT id FROM ".$db_prefix."_aprang "));
?>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<td align="left" width="10%"><b>Rang</b></td>
<td width="25%"><b>benötigte AP´s</b></td>
<td width="25%"><b>Name</b></td>
<td width="25%"><b>bonus</b></td>
</tr>
<tr>
</table>
<?
$x = 0;
while ($x < $rangzahl) {
$rang = mysql_fetch_array(db_query("SELECT id,aps,rang,bonus FROM ".$db_prefix."_aprang WHERE id=".$x.""));
?>
<form name="form" method="post">
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td align="left" width="10%"><b><input type="Text" name="id" value="<?=$rang['id']?>" size="16"></b></td>
<td width="25%"><b><input type="Text" name="aps" value="<?=$rang['aps']?>" size="16"></b></td>
<td width="25%"><b><input type="Text" name="rang" value="<?=$rang['rang']?>" size="16"></b></td>
<td width="25%"><b><input type="Text" name="bonus" value="<?=$rang['bonus']?>" size="16"> Blose</b></td>
</tr>
<tr>
<td align="center" width="100%" colspan="2"><input type="Submit" name="<?=$x?>" value="Update"></td>
</tr>
</table>
</form>
<?
$x++;
}
?>
<form name="form" method="post">
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td align="left" width="10%"><b><input type="Text" name="id" value="<?=$rangzahl?>" size="16"></b></td>
<td width="25%"><b><input type="Text" name="aps" value="" size="16"></b></td>
<td width="25%"><b><input type="Text" name="rang" value="" size="16"></b></td>
<td width="25%"><b><input type="Text" name="bonus" value="" size="16"> Blose</b></td>
</tr>
<tr>
<td align="center" colspan="2"><input type="Submit" name="hinzufügen" value="hinzufügen"></td>
</tr>
<tr>
</table>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td align="center" colspan="2">Letzte zeile entfernen<br><input type="Submit" name="entfernen" value="entfernen"></td>
</tr>
</table>
</form>
<?
foot();
// Code by FLash
?>
ist zwar nicht der beste code, aber er scheint zu funktionieren..sieht auch ziemlich komisch aus nach dem ganzen debuggen :crazy:
Es ist noch nicht richtig getestet!!!
:incazzato: :incazzato: :incazzato: :incazzato:
vielleicht könnt ihr ja etwas damit anfangen.. ggf muss der code angepasst werden
Viel Spass damit..
p.s suche user für meine seite :biggrin:
das codeschnipsel ist auf meine seite angepasst deswegen übernehme ich auch keine garantie das es funktioniert..
ap´s müssen schon vorhanden sein auf der seite.. bei meinen code speichere ich die ap´s in vms_userdaten .. 'punkte' und den userrang auch 'urang'
die beiden gehören auf jeden fall zusammen..
hab dann noch eine tabelle erstellt wo die ränge gespeichert werden..
hier die sql datei zum ausführen(incl. paar vordefinierte ränge)
CREATE TABLE IF NOT EXISTS `vms_aprang` (
`id` int(4) NOT NULL,
`aps` double(100,2) NOT NULL,
`rang` varchar(100) NOT NULL,
`bonus` double(100,2) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Daten für Tabelle `vms_aprang`
--
INSERT INTO `vms_aprang` (`id`, `aps`, `rang`, `bonus`) VALUES
(0, 0.00, 'N00b', 0.00),
(1, 500.00, 'N00bie Anfänger', 10000.00),
(2, 1000.00, 'Anfänger', 30000.00),
(3, 5000.00, 'Fortgeschritter N00b', 300000.00),
(4, 10000.00, 'Mini Sloter', 1000000.00),
(5, 50000.00, 'Sloter', 2500000.00),
(6, 100000.00, 'Profi', 10000000.00),
(7, 500000.00, 'Guru', 30000000.00),
(8, 1000000.00, 'Elite', 50000000.00),
(9, 5000000.00, 'Gottstatus', 100000000.00);
die tabelle mit dem punkten nicht vergessen und 'urang' nicht vergessen!! steht hier nicht bei..
hier dann der code meiner rangliste
<?
head("Klickrangübersicht");
$rangzahl = mysql_num_rows(db_query("SELECT id FROM ".$db_prefix."_aprang "));
$rango = mysql_fetch_array(db_query("SELECT a.id,a.aps,a.rang,a.bonus,b.uid,b.urang,b.punkte FROM ".$db_prefix."_aprang AS a LEFT OUTER JOIN ".$db_prefix."_userdaten AS b ON a.id=b.urang WHERE b.uid=".$_SESSION['uid']." "));
$nk = $rango['id']+ 1;
$nextrank = mysql_fetch_array(db_query("SELECT aps,bonus,rang FROM ".$db_prefix."_aprang WHERE id='".$nk."' "));
if ($_POST['update'] == 'Aufsteigen') {
if ($rango['punkte'] > $nextrank['aps']) {
db_query("UPDATE ".$db_prefix."_userdaten SET blose=blose + '".$nextrank['bonus']."' , urang='".$nk."' WHERE uid='".$_SESSION['uid']."' ");
echo $nextrank['bonus'],'Bonuslose erhalten';
$rango = mysql_fetch_array(db_query("SELECT a.id,a.aps,a.rang,a.bonus,b.uid,b.urang,b.punkte FROM ".$db_prefix."_aprang AS a LEFT OUTER JOIN ".$db_prefix."_userdaten AS b ON a.id=b.urang WHERE b.uid=".$_SESSION['uid']." "));
$nk = $rango['id']+ 1;
$nextrank = mysql_fetch_array(db_query("SELECT aps,bonus,rang FROM ".$db_prefix."_aprang WHERE id='".$nk."' "));
}
}
$rangzahl = mysql_num_rows(db_query("SELECT id FROM ".$db_prefix."_aprang "));
?>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td width="50%"><b>Deine Ap´s:</b></td>
<td width="50%"><b><?=@number_format($rango['punkte'],2,",",".")?></b></td><br>
</tr>
<tr>
<td width="50%"><b>Dein Rang:</b></td>
<td width="50%"><b><?=$rango['rang']?></b></td><br>
</tr>
<?
if ($rango['punkte'] > $nextrank['aps']) {
?>
<tr>
<form name="form" method="post">
<td align="center" colspan="2"><input type="Submit" name="update" value="Aufsteigen"></td>
</form>
</tr>
<?
}
?>
</table>
<p> </p>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<td align="left" width="10%"><b>rang</b></td>
<td width="25%"><b>benötigte AP´s</b></td>
<td width="25%"><b>Name</b></td>
<td width="25%"><b>bonus</b></td>
</tr>
<tr>
</table>
<?
$x = 0;
while ($rangzahl > $x) {
$rang = mysql_fetch_array(db_query("SELECT id,aps,rang,bonus FROM ".$db_prefix."_aprang WHERE id=".$x.""));
?>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td align="left" width="10%"><b><?=$rang['id']?></b></td>
<td width="25%"><b><?=@number_format($rang['aps'],2,",",".")?></b></td>
<td width="25%"><b><?=$rang['rang']?></b></td>
<td width="25%"><b><?=@number_format($rang['bonus'],2,",",".")?> Blose</b></td>
</tr>
</table>
<?
$x++;
}
foot();
// Code by FLash
?>
und hier der code für eine datei im adminforce:
<? menuehead("AP Ränge");
$rangzahl = mysql_num_rows(db_query("SELECT id FROM ".$db_prefix."_aprang "));
$x = 0;
while ($rangzahl >= $x) {
if ($_POST[$x] == 'Update') {
db_query("UPDATE ".$db_prefix."_aprang SET id='".$_POST['id']."' , aps='".$_POST['aps']."' , rang='".$_POST['rang']."' , bonus='".$_POST['bonus']."' WHERE id='".$x."'") or die ("datenbankfehler");
}
$x++;
}
if ($_POST['hinzufügen'] == 'hinzufügen') {
db_query ("INSERT INTO ".$db_prefix."_aprang (id,aps,rang,bonus) VALUES ('".$_POST['id']."','".$_POST['aps']."','".$_POST['rang']."','".$_POST['bonus']."')");
echo 'hinzugefügt';
}
if ($_POST['entfernen'] == 'entfernen') {
db_query ("DELETE FROM ".$db_prefix."_aprang WHERE id='".$rangzahl."' - 1 ");
echo 'Letzte zeile geloescht';
}
$rangzahl = mysql_num_rows(db_query("SELECT id FROM ".$db_prefix."_aprang "));
?>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<td align="left" width="10%"><b>Rang</b></td>
<td width="25%"><b>benötigte AP´s</b></td>
<td width="25%"><b>Name</b></td>
<td width="25%"><b>bonus</b></td>
</tr>
<tr>
</table>
<?
$x = 0;
while ($x < $rangzahl) {
$rang = mysql_fetch_array(db_query("SELECT id,aps,rang,bonus FROM ".$db_prefix."_aprang WHERE id=".$x.""));
?>
<form name="form" method="post">
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td align="left" width="10%"><b><input type="Text" name="id" value="<?=$rang['id']?>" size="16"></b></td>
<td width="25%"><b><input type="Text" name="aps" value="<?=$rang['aps']?>" size="16"></b></td>
<td width="25%"><b><input type="Text" name="rang" value="<?=$rang['rang']?>" size="16"></b></td>
<td width="25%"><b><input type="Text" name="bonus" value="<?=$rang['bonus']?>" size="16"> Blose</b></td>
</tr>
<tr>
<td align="center" width="100%" colspan="2"><input type="Submit" name="<?=$x?>" value="Update"></td>
</tr>
</table>
</form>
<?
$x++;
}
?>
<form name="form" method="post">
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td align="left" width="10%"><b><input type="Text" name="id" value="<?=$rangzahl?>" size="16"></b></td>
<td width="25%"><b><input type="Text" name="aps" value="" size="16"></b></td>
<td width="25%"><b><input type="Text" name="rang" value="" size="16"></b></td>
<td width="25%"><b><input type="Text" name="bonus" value="" size="16"> Blose</b></td>
</tr>
<tr>
<td align="center" colspan="2"><input type="Submit" name="hinzufügen" value="hinzufügen"></td>
</tr>
<tr>
</table>
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td align="center" colspan="2">Letzte zeile entfernen<br><input type="Submit" name="entfernen" value="entfernen"></td>
</tr>
</table>
</form>
<?
foot();
// Code by FLash
?>
ist zwar nicht der beste code, aber er scheint zu funktionieren..sieht auch ziemlich komisch aus nach dem ganzen debuggen :crazy:
Es ist noch nicht richtig getestet!!!
:incazzato: :incazzato: :incazzato: :incazzato:
vielleicht könnt ihr ja etwas damit anfangen.. ggf muss der code angepasst werden
Viel Spass damit..
p.s suche user für meine seite :biggrin: