Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van.
Témák - blackdog476
1
« Dátum: 2016. június 05. - 16:02:58 »
Sziasztok. Sokat gondolkodtam, hogy csináljak-e egy ilyen scriptet, de végül arra jutottam, hogy igen, csinálok. Ez egy PHP script, amit ha feltelepítesz egy weboldalra, akkor hozzáférést tudsz biztosítani mások (pl. egy szerver adminisztrátorainak számára) egy távoli szerveren lévő fájlok megtekintésére. Elsősorban naplófájlokhoz csináltam ezt, amit a kicsit sem idióta megnevezés már sugallhatott. A csomagolt fájlban található egy OLVASSEL.txt, amiben nagyjából ugyanezeket leírom (csak azt több napja írtam, ezt meg most kapartam össze). Ahhoz, hogy a script megfelelően működjön szükséged lesz egy webszerverre, egy ftp szerverre, és egy MYSQL adatbázisra, amire 3 (azaz HÁROM) darab tábla fog felkerülni. Az oldal egyik jelentős komponense egy jogrendszer. Az adminisztrátornak 99-es joga van, ez a \"mesterjog\". A 99-es joggal tud valaki felhasználót szerkeszteni, (napló)fájlokat hozzáadni, stb. Azt ajánlom, hogy a felhasználónak ne adj 99-es jogot, mert visszaélhet vele. Úgy működik a script, hogy egy oldalon hozzá tudsz adni fájlokat, pontosabban azok elérési útját az FTP szerveren. Az oldal a fájl lekérésekor felcsatlakozik az ftp szerverre, és a megadott elérési úton keresztül letölti a fájlt (amit később töröl), majd megjeleníti annak tartalmát. Minden fájlnak meg kell adni a minimális jogszintet, ami azt jelenti, hogy akinek kisebb a jogköre, az nem tekintheti meg az adott fájlt. Minden jogkörhöz tartoz hat egy megnevezés is, amit egy külön oldalon kell beállítani. Ezen az oldalon át is lehet állítani a már meglévő jogmegnevezéseket. Található egy fájl, ami lang.php-ra van nevezve. Abban található a weboldal (majdnem) összes szövege, itt le lehet esetleg fordítani ha valaki nagyon unatkozik. Készítő: blackdog476 (én) Verzió: 1.0 (beta) egyébként névnek semmit nem tudtam kitalálni, ezért lett egyszerűen két angol szóból álló, ennyire lényegre törő név Ismert hibák 5.6 php verzió alatti bugok (ha nem jön be a login, vagy valami hibát ír, csak akkor kell javítani!) hotfix: index.php 38. sor végéről a -t töröld ki, és a következő sorba pedig írd be azt, hogy: $q = $q[0];
functions.php 40. soránál van egy függvény. töröld ki a tartalmát, és a helyére ezt másold be: return $number.\'-s\'; Képek (nem az én gépemen készültek a képek) Letöltés LogViewer v1.0 beta letöltési link ( RAR): LogViewer_v1_beta.rar (vagy SolidFiles mirror)
2
« Dátum: 2016. május 30. - 21:38:24 »
2
4
« Dátum: 2016. március 03. - 20:20:30 »
mi az a cursol?
5
« Dátum: 2015. szeptember 11. - 23:49:20 »
Nagyon biztatóak ezek az 1. hozzászólásos emberek
6
« Dátum: 2015. március 01. - 18:05:38 »
Üdv! Készítettem egy sima szerver ellenőrző kódot. Ehhez egy un. SampQueryAPI-t használtam, ezt a szerver ellenőrző fájlja mellé kell betenni. Egy fájlból áll az egész, kiírja a játékosok IDjét, nevét, pontjait és pingjét, a valamint a szerver adatait. Tervben van a játékosok / szerver adminisztrálása az RCON APIval. Készítési idő: ~30perc Készítő: én Kód: <style> td { border: 1px solid black; } tr { vertical-align: top; } a { text-decoration: none; color: blue; } a:hover { text-decoration: underline; color: red; } </style> <?php require \'SampQueryAPI.php\'; session_start(); if(isset($_GET[\"reset\"])) { unset($_SESSION[\"logged\"]); unset($_SESSION[\"ip\"]); unset($_SESSION[\"port\"]); echo \'Reset! <a href=\"?\">reload</a>\'; die(); } // $server = null; //login if(!isset($_SESSION[\"logged\"])) { echo \'<form method=\"POST\"><input type=\"text\" name=\"name\" placeholder=\"Felhasználónév\" required/><br><input type=\"password\" name=\"pass\" placeholder=\"Jelszó\" required/><br><input type=\"submit\"/></form>\'; if(isset($_POST[\"name\"])) { if($_POST[\"name\"] != \"admin\" || $_POST[\"pass\"] != base64_decode(\"YWRtaW4=\")) die(\"Rossz felhasználónév vagy jelszó!\"); $_SESSION[\"logged\"] = true; header(\"Location: ?setserver\"); } die(); } //logout if(isset($_GET[\"logout\"])) { unset($_SESSION[\"logged\"]); header(\"Location: ?\"); die(); } //checking session server if(isset($_SESSION[\"ip\"])) { $server = @new SampQueryAPI($_SESSION[\"ip\"],$_SESSION[\"port\"]); if(!$server->isOnline()) { echo \'A szerver nem elérhető!\'; unset($_SESSION[\'ip\']); unset($server); $_SESSION[\"error\"] = \"A szerver nem elérhető!\"; header(\"Location: ?setserver\"); die(); } } //setting server if(!isset($server)) { if(isset($_SESSION[\"error\"])) { echo $_SESSION[\"error\"]; unset($_SESSION[\"error\"]); } echo \'<form method=\"POST\" action=\"?setserver\"> <input type=\"text\" name=\"ip\" placeholder=\"IP cím\" required /> : <input type=\"text\" name=\"port\" placeholder=\"PORT\" required /><br> <input type=\"submit\" name=\"setserver_submit\" value=\"Ellenőrzés\" /><br> </form>\'; echo \'<a href=\"?logout>Kijelentkezés</a>\'; if(isset($_POST[\"setserver_submit\"])) { $_SESSION[\"ip\"] = $_POST[\"ip\"]; $_SESSION[\"port\"] = $_POST[\"port\"]; header(\"Location: ?\"); } die(); } //processing URL if(!isset($_GET[\"opt\"]) || empty($_GET[\"opt\"])) { header(\"Location: ?opt=main\"); die(); } switch($_GET[\"opt\"]) { case \'main\': main(); break; case \'logout\': unset($_SESSION[\"logged\"]); unset($_SESSION[\"ip\"]); unset($_SESSION[\"port\"]); if(!isset($_SESSION[\"logged\"])) { header(\"Location: ?\"); } break; case \'changeserver\': unset($_SESSION[\"ip\"]); unset($_SESSION[\"port\"]); header(\"Location: ?changeserver\"); break; default: header(\"Location: ?opt=main\"); break; } //page function main() { global $server; $info = $server->getInfo(); $rules = $server->getRules(); $players = $server->getDetailedPlayers(); echo \'<h1>\'.$info[\'hostname\'].\'</h1>\'; echo $info[\'password\'] ? \'<h4><font color=\"red\">A szerver le van jelszavazva!</font></h4>\' : \'<h4><font color=\"green\">A szerver nincs lejelszavazva!</font></h4>\'; echo \'<a href=\"?opt=changeserver\">Szerverváltás</a> | <a href=\"?opt=logout\">Kijelentkezés</a>\'; echo \'<table width=\"100%\"><tr>\'; echo \'<td width=\"50%\">\'; echo \'<table width=\"100%\">\'; echo \'<tr><td>Szervernév</td><td>\'.$info[\'hostname\'].\'</td></tr>\'; echo \'<tr><td>IP cím</td><td>\'.$_SESSION[\"ip\"].\':\'.$_SESSION[\"port\"].\'</td></tr>\'; echo \'<tr><td>Pálya</td><td>\'.$info[\'mapname\'].\'</td></tr>\'; echo \'<tr><td>Játékmód</td><td>\'.$info[\'gamemode\'].\'</td></tr>\'; echo \'<tr><td>Játékosok</td><td>\'.$info[\'players\'].\'/\'.$info[\'maxplayers\'].\'</td></tr>\'; echo \'<tr><td><hr></td><td><hr></td></tr>\'; echo \'<tr><td>Verzió</td><td>\'.$rules[\'version\'].\'</td></tr>\'; echo \'<tr><td>Időjárás ID</td><td>\'.$rules[\'weather\'].\'</td></tr>\'; echo substr($rules[\'weburl\'],0,7); echo \'<tr><td>Weboldal</td><td><a href=\"http://\'.$rules[\'weburl\'].\'\" target=\"_blank\">\'.$rules[\'weburl\'].\'</a></td></tr>\'; echo \'<tr><td>Idő</td><td>\'.$rules[\'worldtime\'].\'</td></tr>\'; echo \'</table>\'; echo \'</td>\'; // Playerek echo \'<td>\'; echo \'<table width=\"100%\"><th>ID</th><th>Név</th><th>Pont</th><th>Ping</th>\'; foreach($players as $player) { echo \'<tr><td>\'.$player[\'playerid\'].\'</td><td>\'.$player[\'nickname\'].\'</td><td>\'.$player[\'score\'].\'</td><td>\'.$player[\'ping\'].\'</td></tr>\'; } echo \'</table>\'; echo \'</td>\'; echo \'</tr></table>\'; } A használatához bejelentkezés szükséges, az alap jelszó + felhasználónév: adminRemélem nem hagytam ki semmit.
7
« Dátum: 2014. november 28. - 22:10:20 »
Üdv! Megpróbáltam egy fórumozó kérését teljesíteni, hát ez lett belőle. Nem tudtam mire szeretné használni, így még mindig értelmetlen számomra a script, dehát ez van. Ez a script tulajdonképpen annyit tesz, hogy a betöltődésekor létrehoz egy fájlt (ha nincs még), két parancsa van: /nevlista, /nevment. A névlistával kilistázza az elmentett neveket, a névmenttel pedig elmenti azt. Lehetett volna másképp is / egyszerűbben, de most a dini-nek a beállító/lekéregetős módszerét alkalmaztam, tehát így néz ki a fájl: MennyiNév=3 1=blackdog476 2=pista 3=teszt És így írja ki: Idő: ~10perc (sokat szenvedtem vele)
Kód: #include <a_samp> #include <zcmd> #include <dini> #define FAJL \"nevlista.txt\" #define PREFIX \"[Névmentő]\" #define DEBUG //minden egyes műveletnél leellenőrzi, hogy létezik-e a fájl. Kikapcsoláshoz: sor elejére-> // #define STRING1 \"{00ff00}[NÉVMENTŐ]{ff0000} Nevek betöltése..\" #define STRING2 \"{00ff00}[NÉVMENTŐ]{ff0000} Név mentése...\" #define STRING3 \"{00ff00}[NÉVMENTŐ]{ff0000} Név elmentve!\" stock checkFile() { if (fexist(FAJL)) { print(\"\"PREFIX\" Fájl metalálva.\"); } else { print(\"\"PREFIX\" Nem található fájl (\"FAJL\")!\"); print(\"\"PREFIX\" Fájl létrehozása...\"); new File:h = fopen(FAJL,io_write); if(h) { fwrite(h,\"MennyiNév=0\"); fclose(h); print(\"Fájl létrehozva!\"); } else print(\"Fájl létrehozása sikertelen!\"); } } CMD:nevment(playerid) { #if defined DEBUG checkFile(); #endif SendClientMessage(playerid,-1,STRING2); new mennyi = dini_Int(FAJL,\"MennyiNév\"); new string[4]; new name[24]; GetPlayerName(playerid,name,24); valstr(string,mennyi+1); dini_Set(FAJL,string,name); dini_IntSet(FAJL,\"MennyiNév\",mennyi+1); SendClientMessage(playerid,-1,STRING3); return 1; } CMD:nevlista(playerid) { SendClientMessage(playerid,-1,STRING1); new kimenet[128+16]; //max chat karakterek new mennyi = dini_Int(FAJL,\"MennyiNév\"); new a[4],b[32]; for(new i=1; i<=mennyi;i++) { format(a,4,\"%d\",i); format(b,32,\"%s, \",dini_Get(FAJL,a)); strcat(kimenet,b); } SendClientMessage(playerid,-1,kimenet); return 1; } public OnFilterScriptInit() { checkFile(); return 1; }
8
« Dátum: 2014. november 20. - 23:32:10 »
Üdv! Ez egy újabb egyszerű kis script, melyet én készítettem egy ismerősömnek kérésére. Készítési idő kb 5perc..se. Beállítások: $title = \"Dinamikus lista\"; - Itt a főcímet adhatod meg. $links = array( \"Sampfórum\" => \" http://www.sampforum.hu\", \"Üres\" => \"\" ); A sampfórum helyére a megjelenítendő szöveget írd, és ha van link, akkor azt írd oda mellé a => jel után. Bővíthető, az utolsó után nem érdemes vesszőt tenni. Ha nincs link akkor nem is teszi linkké, hanem csak egyszerűen kiírja a szöveget. Enyhe design, halvány sárga háttér, más milyen színű a lista. <?php ############## $title = \"Dinamikus lista\"; $links = array( \"Sampfórum\" => \"http://www.sampforum.hu\", \"Üres\" => \"\", \"Google\" => \"http://www.google.com\", ); ############## $items = array_keys($links); echo \'<head><title>\'.$title.\'</title></head><body bgcolor=\"#ffeeaa\"><div style=\"background:#ffffbb;width: 25%; margin: 0 auto; /*text-align: center;*/border: 1px dotted black;\"><h1>\'.$title.\'</h1>\'; for($i=0;$i<count($items);$i++) echo empty($links[$items[$i]]) ? \'<li>\'.$items[$i].\'</li>\' : \'<li><a href=\"\'.$links[$items[$i]].\'\">\'.$items[$i].\'</a></li>\'; echo \'</div>\';
kthxbai
9
« Dátum: 2014. október 22. - 23:02:46 »
Linkek javítva! Üdv! Az előző próbálkozásom sikerére úgy gondoltam, hogy érdemes lenne egy komolyabb fórumot írni, amit aztán majd lehet fejlesztgetni. Hát íme. PDO-ban írtam az előző mysql_* -es próbálkozásaim ellenére. Az előző verzióhoz ennek a fórumnak semmi köze, újraírtam, és nem egy, hanem 19 fájlból áll, nem egy, hanem 3 táblázat kell hozzá, cserébe többet tud. A script kb 1.5hét alatt készült el, minden nap csináltam vele valamit. Amit tud. - Regisztráció + login rendszer (SESSION alapú)
- Admin felület (fórumi statisztika, felhasználók adatai)
- Idő kijelzése
- Aktív felhasználók
- Témák listázása
- Hozzászólások küldése
- Dinamikus fájlbeincludeolás (action=asd --> include(\"asd.php\"))
Fórum telepítő (sql táblák + admin felhasználó létrehozása)
- Felhasználó adatainak kilistázása
- A fórumot / annak üzeneteit vendégek is láthatják, de nem tudnak hozzászólni.
Telepítés: - Töltsd le a zip fájlt, és csomagold ki.
- Írd át a settings.php-ban az adatokat
- (Töltsd fel a tárhelyedre)
- Futtasd a setup.php-t, és kövesd az utasításokat
- Miután befejeződött a telepítés már be is jelentkezhetsz!
,,Bug Log\'\': - A téma küldésnél nem irányít át, valamint a send.php-nál ha a t értéke nem egyenlő \"t\" vagy \"m\"-mel akkor kiírja az értékét. (Javítva: 10.23 - v1.1)
Az SQL táblázat szerintem felesleges, mert a telepítő megcsinálja... De azért itt van
10
« Dátum: 2014. október 17. - 17:23:52 »
11
« Dátum: 2014. október 12. - 13:35:28 »
Ez meg van szokva
A macska is fel van mászva a fára?
12
« Dátum: 2014. október 11. - 23:53:24 »
Üdv. El is érkeztem egy újabb munkámmal, ami nem más, mint egy fórum(nak az alapja). Egy táblázatot használ fel. Ebben megadtam az üzenet azonosítóját, azt hogy ez egy téma-e, a küldõ nevét, a címet, az üzenetet, a dátumot, és a téma azonosítóját. Ezt egy \'messages\' nevû táblázatba mentettem el. Ez még nagyon kezdetleges, de használható. | v1.0
| Témák átlátható kilistázása | Lehetséges | Téma létrehozás | Lehetséges | Hozzászólás témákhoz | Lehetséges | Témák adminisztrálása | Nem lehetséges | ->Törlése
| Nem lehetséges | ->Szerkesztése
| Nem lehetséges | ->Kiemelése
| Nem lehetséges | Beléptetõrendszer | Nincs | Biztonság | Gyenge * | *: Itt azt értem, hogy bárki posztolhat bármilyen névvel bármennyiszer bármikor. Készítõ: | Én | Verzió: | v1.0 | Készítési idõ: | Nem számoltam, egy nap alatt meg volt a v1 |
Kód (amit mindig elfelejtek kirakni): <style> body { background: #fea; text-align:center; } table {border:1px solid black; width:800px} td#comment {border:1px solid black;} *{ margin:0; padding:0; } div#page{ width:800px; margin:0 auto; text-align:left; } </style> <div id=\"page\"> <?php session_start(); mysql_connect(\"localhost\",\"root\",\"\") or die(\"Nem tudtam csatlakozni az adatbázishoz!\"); mysql_select_db(\"blackdog\") or die(\"Nem tudtam kiválasztani az adatbázist!\"); if(!isset($_GET[\"option\"])) header(\"Location: ?option=main\"); switch($_GET[\"option\"]) { case \"main\": print(\"<button onclick=\'window.location.href=\\\"?option=createtopic\\\"\'>Új téma</button>\"); print(\"<table>\"); print(\"<tr><td style=\'width:400px\'><b>Cím</b></td><td><b>Indította</b></td><td><b>Válaszok</b></td></tr>\"); $query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 1\"); while($row = mysql_fetch_array($query)) { $res = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 0 AND TOPICID = $row[iD]\"); $valaszok = mysql_num_rows($res); print(\"<tr><td><a href=\'?option=show&id=$row[iD]\'>$row[TITLE]</a></td><td><i>$row[AUTHOR]</i></td><td>$valaszok válasz</td></tr>\"); } print(\"</table>\"); break; case \"show\": if(!isset($_GET[\"id\"])) header(\"Location: ?option=main\"); $query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 1 AND ID = \".$_GET[\"id\"]); $row = mysql_fetch_array($query); if(!is_array($row)) die(\"Nem létezik ilyen téma!\"); print(\"<button onclick=\'window.location.href=\\\"?option=show\\\"\'>Vissza</button>\"); print(\"<button onclick=\'window.location.href=\\\"?option=comment&topicid=$_GET[id]\\\"\'>Új hozzászólás</button>\"); $query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 0 AND TOPICID = $_GET[id]\"); $valaszok = mysql_num_rows($query); print(\"<table><tr><td id=\'comment\'>$row[AUTHOR]</td><td id=\'comment\'><b>$row[TITLE]</b> ($valaszok válasz)<br>Hozzáadva: \".date(\"Y.m.d H:i:s\",$row[\"ADDED\"]).\" $row[AUTHOR] által<hr><hr>$row[CONTENT]</td></tr>\"); while($row = mysql_fetch_array($query)) { print(\"<tr><td id=\'comment\'>$row[AUTHOR]</td><td id=\'comment\'>Hozzáadva: \".date(\"Y.m.d H:i:s\",$row[\"ADDED\"]).\" $row[AUTHOR]<hr><hr>$row[CONTENT]</td></tr>\"); } print(\"</table>\"); break; case \"comment\": if(!isset($_GET[\"topicid\"])) header(\"Location: ?option=main\"); if(isset($_POST[\"redirect\"])) { print(\"<button onclick=\'window.location.href=\\\"?option=createtopic\\\"\'>Vissza</button><br>\"); if(empty($_POST[\"content\"])) die(\"Üres tartalom\"); if(empty($_POST[\"name\"])) die(\"Üres név\"); $content = $_POST[\"content\"]; $nev = $_POST[\"name\"]; $time = time(); mysql_query(\"INSERT INTO `messages` (`ISTOPIC`,`AUTHOR`,`TITLE`,`CONTENT`,`ADDED`,`TOPICID`) VALUES (0,\'$nev\',\'\',\'$content\',\'$time\',\'$_GET[topicid]\');\") or die(mysql_error()); header(\"Location: ?option=main\"); } else { print(\"<button onclick=\'window.location.href=\\\"?option=show\\\"\'>Vissza</button>\"); print(\"<form method=\'POST\'><input type=\'text\' name=\'name\' placeholder=\'Név\'/><br><textarea style=\'resize:vertical;\' cols=\'100\' rows=\'20\' name=\'content\' placeholder=\'Tartalom\'></textarea><br><input type=\'submit\' name=\'redirect\'/></form>\"); } break; case \"delete\": if(!isset($_GET[\"msgid\"])) header(\"Location: ?option=main\"); $query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 1 AND ID = \".$_GET[\"id\"]); $row = mysql_fetch_array($query); if(!is_array($row)) die(\"Nem létezik ilyen téma!\"); if(!isset($_GET[\"sure\"])) die(\"Biztos vagy benne? <button onclick=\'window.location.href= \\\"?option=delete&sure\\\"\'>Törlés</button> | <button>Vissza</button>\"); else mysql_query(\"DELETE FROM `messages` WHERE `topicid` = \".$_GET[\"msgid\"]) or die(mysql_error()); break; /* SQL: messages ID - ISTOPIC - AUTHOR - TITLE - CONTENT - ADDED - TOPICID */ case \"createtopic\": if(isset($_POST[\"redirect\"])) { print(\"<button onclick=\'window.location.href=\\\"?option=createtopic\\\"\'>Vissza</button><br>\"); if(empty($_POST[\"name\"])) die(\"Üres név\"); if(empty($_POST[\"title\"])) die(\"Üres cím\"); if(empty($_POST[\"content\"])) die(\"Üres tartalom\"); $title = $_POST[\"title\"]; $content = $_POST[\"content\"]; $nev = $_POST[\"name\"]; $time = time(); $topicid = mysql_fetch_array(mysql_query(\"SELECT max( TOPICID ) FROM `messages`\")); $topicid = $topicid[\"0\"]+1; mysql_query(\"INSERT INTO `messages` (`ISTOPIC`,`AUTHOR`,`TITLE`,`CONTENT`,`ADDED`,`TOPICID`) VALUES (1,\'$nev\',\'$title\',\'$content\',\'$time\',\'$topicid\');\") or die(mysql_error()); header(\"Location: ?option=main\"); } else { print(\"<button onclick=\'window.location.href=\\\"?option=show\\\"\'>Vissza</button>\"); print(\"<form method=\'POST\'><input type=\'text\' name=\'name\' placeholder=\'Név\'/><br><input type=\'text\' name=\'title\' placeholder=\'Cím\'/><br><textarea style=\'resize:vertical;\' cols=\'100\' rows=\'20\' name=\'content\' placeholder=\'Tartalom\'></textarea><br><input type=\'submit\' name=\'redirect\'/></form>\"); } break; default: header(\"Location: ?option=main\"); } ?> </div>
v1.0 képek: www.nukerdog.tk/private/forumalap/index.php
13
« Dátum: 2014. október 10. - 16:03:56 »
Üdv! Nekem ezek a rangok nem tetszenek, és mivel úgy láttam, hogy nem nagyon tetszik nektek sem, ezért bátorkodtam ezt a témát megnyitni. Errõl kérném a véleményeteket.
14
« Dátum: 2014. október 10. - 15:25:21 »
Gratulálok a ranghoz.\"Üdv itt\" Esetleg névváltáson estél már át? Nem nagyon láttalak ahhoz képest hogy 2011-óta itt vagy.
15
« Dátum: 2014. október 02. - 23:15:50 »
Nice try.. Egyébként azt megkérdezném, hogy hol játszódik a szerver? Felkeltette az érdeklõdésemet. Kik az adminok? Valamint miért lenne a Gay RPG M.O. legjobb RP szervere? Bocs, Fay.. Én tennék bele még egy pár munkát
|