anpera.net https://anpera.dyndns.org/phpbb3/ |
|
Mod Hack https://anpera.dyndns.org/phpbb3/viewtopic.php?f=34&t=3622 |
Seite 1 von 1 |
Autor: | TruckerB [ Sa 05 Mai, 2007 15:27 ] |
Betreff des Beitrags: | Mod Hack |
Dieser Hack fügt neue Addons automatisch in eine Datenbank-Tabelle ein und gibt diese dann auch wieder in Anperas Modifikations-Liste aus. Dieser Hack kann immer eingebunden werden, von Entwicklern wie auch von Webmastern. Selbst wenn eine Seite ohne dieses Addon arbeitet gibt das Skript keine Fehler aus. Aber langsam: Addon-Entwickler können einen einzeiligen Code in ihre Addons einfügen. Per einfacher function_exists- Abfrage wird festgestellt, ob der Webmaster den Mod Hack installiert hat. Ist das nicht der Fall, passiert garnichts. Ist das aber doch der Fall wird überprüft ob das neue Addon schon in der Datenbank vorhanden ist und Gegendenfalls wird das dann eingefügt. Alle Addon aus der Datenbank werden nach Kategorien sortiert und in Anperad Modifikationsliste ausgegeben. Für Entwickler: Bitte baut folgenden Code, natürlich angepasst in eure Scripte ein. Einmal pro Addon reicht völlig aus: [php] if(function_exists('addon')) addon("Modname", "Version", "Dein Nick", "Beschreibung (250 Zeichen)"[, Klasse [, URL mit http]]); [/php] Anmerkung: Das ist zwar noch ne Beta, aber es werden nurnoch Fehler ausgemerzt und das Skript optimiert. Also baut es ruhig schon ein. |
Autor: | Eliwood [ Sa 05 Mai, 2007 17:00 ] |
Betreff des Beitrags: | |
funtion_exists() erwartet als ersten Parameter einen String, der eine Funktionsnamen enthält - Nicht eine Möchtegernkonstante. ![]() |
Autor: | Kamui [ Sa 05 Mai, 2007 17:20 ] |
Betreff des Beitrags: | |
Ich weiss nicht was function_exists da zu suchen hat schliesslich ist nicht jeder Addon nur einer Function und manche sogar aus garkeine da addons meist nur erweiterungen von Scripten sind es würde reichen einfach die Function addon in neu geschrieben Mods/Addons/Hacks auf zu rufen und in der Function zu prüfen ob die Daten in der tabelle schon bestehen wenn nicht werden sie angelegt und fertig ![]() |
Autor: | Eliwood [ Sa 05 Mai, 2007 17:29 ] |
Betreff des Beitrags: | |
Kamui hat geschrieben: Ich weiss nicht was function_exists da zu suchen hat schliesslich ist nicht jeder Addon nur einer Function und manche sogar aus garkeine da addons
meist nur erweiterungen von Scripten sind es würde reichen einfach die Function addon in neu geschrieben Mods/Addons/Hacks auf zu rufen und in der Function zu prüfen ob die Daten in der tabelle schon bestehen wenn nicht werden sie angelegt und fertig ![]() Was functions_exists da zu suchen hat? Ist doch ganz einfach: Existiert die Funktion, so ist das Script installiert, und die Funktion wird aufgerufen. Ohne Fehlermeldungen. Existiert sie nicht, so passiert gar nix: auch keine Fehlermeldungen. Erhöht also die Kompabilität. Und ich glaube, dass die Funktion addon() genau das macht: Checken, ob der Mod schon in der DB ist, wenn ja, nix tun, wenn doch, was tun. ^^ |
Autor: | Kamui [ Sa 05 Mai, 2007 17:58 ] |
Betreff des Beitrags: | |
Ahh nun verstanden hab grade etwas falsch gedacht ^^ da da addon stand dachte ich mir grade das er es so meinte das dort der addonname stehen soll und nicht die Function addon selbst kleiner Denkfehler von mir ![]() |
Autor: | TruckerB [ So 06 Mai, 2007 10:18 ] |
Betreff des Beitrags: | |
Eliwood hat geschrieben: funtion_exists() erwartet als ersten Parameter einen String, der eine Funktionsnamen enthält - Nicht eine Möchtegernkonstante.
![]() Willst du, das ich das in Geänsefüßchen noch setze, oder habe ich das falsch verstanden? Also Quasi [php]if(function_exists('addon')) addon("Modname", "Version", "Dein Nick", "Beschreibung (250 Zeichen)"[, Klasse [, URL mit http]]); [/php] ? Laut Funktionsreferenz ist das der einzige fehler, den ich sehe... |
Autor: | Eliwood [ So 06 Mai, 2007 11:25 ] |
Betreff des Beitrags: | |
TruckerB hat geschrieben: Eliwood hat geschrieben: funtion_exists() erwartet als ersten Parameter einen String, der eine Funktionsnamen enthält - Nicht eine Möchtegernkonstante. ![]() Willst du, das ich das in Geänsefüßchen noch setze, oder habe ich das falsch verstanden? Also Quasi [php]if(function_exists('addon')) addon("Modname", "Version", "Dein Nick", "Beschreibung (250 Zeichen)"[, Klasse [, URL mit http]]); [/php] ? Laut Funktionsreferenz ist das der einzige fehler, den ich sehe... Genau. *Jetzt* ist es ein String, und keine Konstante mehr. ![]() |
Seite 1 von 1 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |