Diese in_array Sicherung ist sehr sinnvoll und sollte bei jeder Option feld genutzt werden da man somit schön etwas in die db einschleusen kann bzw. sich die bannerzahl so erhöhen kann .
an welcher Stelle muss das hin?
in der Datei content/konto/userprofil.php kannst du ja an dem html Code anpassen, welche Auswahlmöglichkeietn dem User angezeigt werden sollen wie Joschi oben schon beschrieben hatte.
Im Grundscript wäre das in Zeile 158-169.
Nur sind das ja nur Vorgaben für die graphische Ausgabe, welceh abgesichert werden muss, warum hat adi ja geschrieben, und diese Absicherung kann ja in einer Zeile passieren, am besten nach:
Zeile 82
folgende Zeile einfügen:PHP-Code:
$_POST['max_forced'] = (int)$_POST['max_forced'];
Dann noch die Möglichen Werte je nach Bedarf anpassen, und am besten noch folgenden MySQL Befehl ausführen:PHP-Code:
if(!in_array($_POST['max_forced'], array(3, 5, 10, 20, 25))) $_POST['max_forced']=5;
Sollte vorher schon jemand die max. anzeigbaren Banner über einen maximal Wert (hier 25) eingestellt haben.Code:UPDATE vms_userdaten SET max_forced=5 WHERE max_forced>25;
Kill one man, and you are a murderer.
Kill millions of men, and you are a conqueror.
Kill them all, and you are a god. - Jean Rostand, Thoughts of a Biologist (1939)
Hallo
Man könnte es noch erweitern und man könnte es folgender massen machen :
Sollte als denkansatz helfen .PHP-Code:
if($_POST['max_forced'] >25)
{
echo'du hast versucht zu faken und dir werden x lose abgezogen';
mysql_fetch_array(db_query(update ....));
} else {
echo'alle daten wurden richtig aktualiesiert';
};
Ähem *räusper* Bitte kein mysql_fetch_array bei nem Update Befehl
Ich hab es bei mir ja eher so gemacht:
ForcedbannerUpdatePHP-Code:
if (in_array($_POST['max_forced'], array(2, 5, 8, 10))) {
db_query('UPDATE '.$db_prefix.'_userdaten SET max_forced = '.$_POST['max_forced'].' WHERE uid='.$_SESSION['uid']);
$change .= 'Deine Daten wurden aktualisiert!<br>';
} else {
db_query('UPDATE '.$db_prefix.'_kontodaten SET status=2, hinweis="Bei Bannerauswahl die Menge gefaked!" WHERE uid='.$_SESSION['uid']);
$change .= 'Dein Konto wurde gesperrt, da du gefaked hast!<br>';
}
![]()