GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => A témát indította: b1s - 2013. Május 12. - 18:51:58

Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: b1s - 2013. Május 12. - 18:51:58

website v0.1

Elkészítettem egy weboldalt, amit publikálásra szántam.. Íme hát itt van!



\"width=500http://s1.postimg.org/lt5oa1on3/web_146.png[/img]

\"width=500http://s1.postimg.org/skw3cwdmn/web_148.png[/img]

\"width=500http://s1.postimg.org/7cievgz5r/web_149.png[/img]

\"width=500http://s1.postimg.org/4wglhmh33/web_150.png[/img]

\"width=500http://s1.postimg.org/hcdbbdaf3/web_151.png[/img]

\"width=500http://s1.postimg.org/7ggtpgu0v/web_152.png[/img]

\"width=500http://s1.postimg.org/m0xwkaozj/web_153.png[/img]

\"width=500http://s1.postimg.org/52yvygflr/web_155.png[/img]

\"width=500http://s1.postimg.org/g3u13h7un/web_156.png[/img]

\"width=500http://s1.postimg.org/s6zcr1iwv/web_157.png[/img]

\"width=500http://s1.postimg.org/ooncuni0v/web_158.png[/img]

\"width=500http://s1.postimg.org/6n47wunzz/web_159.png[/img]

\"width=500http://s1.postimg.org/iq9jkez27/web_160.png[/img]

\"width=500http://s1.postimg.org/605b7br3z/web_161.png[/img]




 
http://s1.postimg.org/lt5oa1on3/web_146.png
http://s1.postimg.org/skw3cwdmn/web_148.png
http://s1.postimg.org/7cievgz5r/web_149.png
http://s1.postimg.org/4wglhmh33/web_150.png
http://s1.postimg.org/hcdbbdaf3/web_151.png
http://s1.postimg.org/7ggtpgu0v/web_152.png
http://s1.postimg.org/m0xwkaozj/web_153.png
http://s1.postimg.org/52yvygflr/web_155.png
http://s1.postimg.org/g3u13h7un/web_156.png
http://s1.postimg.org/s6zcr1iwv/web_157.png
http://s1.postimg.org/ooncuni0v/web_158.png
http://s1.postimg.org/6n47wunzz/web_159.png
http://s1.postimg.org/iq9jkez27/web_160.png
http://s1.postimg.org/605b7br3z/web_161.png

 



Amit tartalmaz


> Regisztráció / Bejelentkezés rendszer

> Profil

> Admin panel

       
> Hírek adminisztrálása

       
> Kitiltások kezelése

       
> Tulajdonosoknak admin adás menüpont

> Szerver mutató

> Csapat oldal

> Userbar




Felhasznált dolgok


> SA-MPQuery API




Letöltés

web.zip

web.rar

webpage.sql




 



/*      Hírek      */
CREATE TABLE IF NOT EXISTS `web_news` (
  `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `TITLE` text COLLATE utf8_hungarian_ci NOT NULL,
  `CONTENT` text COLLATE utf8_hungarian_ci NOT NULL,
  `ADDED` text COLLATE utf8_hungarian_ci NOT NULL,
  `DATE` int(40) NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci AUTO_INCREMENT=1 ;
/*   Felhasználók   */
CREATE TABLE IF NOT EXISTS `web_users` (
  `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `NAME` text COLLATE utf8_hungarian_ci NOT NULL,
  `PASS` text COLLATE utf8_hungarian_ci NOT NULL,
  `IP` varchar(20) COLLATE utf8_hungarian_ci NOT NULL DEFAULT \'0.0.0.0\',
  `GROUP` int(2) NOT NULL DEFAULT \'0\',
  `MONEY` int(90) NOT NULL DEFAULT \'0\',
  `KILLS` int(90) NOT NULL DEFAULT \'0\',
  `DEATHS` int(90) NOT NULL DEFAULT \'0\',
  `SCORE` int(90) NOT NULL,
  `EMAIL` text COLLATE utf8_hungarian_ci NOT NULL,
  `REGDATE` int(90) NOT NULL,
  `LASTONLINE` int(90) NOT NULL,
  `BANNED` int(1) NOT NULL DEFAULT \'0\',
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci AUTO_INCREMENT=1 ;
 
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: CANNONN - 2013. Május 12. - 18:55:09
Le a kalappal! ;) :thumbsup:
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Alcatraz - 2013. Május 12. - 18:59:44
Ez nagyon-nagyon jó lett ;)
Csak a linket elirtad,mert nem kell: \" jel :D
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: b1s - 2013. Május 12. - 19:06:47
Idézetet írta: Cannonn date=1368377709\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37287\" data-ipsquote-contentclass=\"forums_Topic
Le a kalappal! ;) :thumbsup:
 
Köszönöm



Ez nagyon-nagyon jó lett ;)
Csak a linket elirtad,mert nem kell: \" jel :D
 
[/quote]
Javítva.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Beckham - 2013. Május 12. - 19:21:46
Ügyes vagy kjoki :))
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Hugo.Cy - 2013. Május 12. - 19:25:17
Gratulálok! Ez szép!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Truz - 2013. Május 12. - 19:32:27
Vagány cucc, erre büszke is lehetsz! :)
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Lowasz - 2013. Május 12. - 19:37:45
Piszok jó lett krooki ;)
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: b1s - 2013. Május 12. - 21:49:27
Köszönöm mindenkinek!

További verziók várhatók, extrákkal!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: vektor1998 - 2013. Május 12. - 21:57:16
Na ez tényleg egy jól megírt website.
Szerintem ezt felfogom használni :D Csak másik styleban
GG
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: ZyZu. - 2013. Május 12. - 21:57:48
Csalódtam benned kedves KROOK.. de most nem negatív érelemmel hanem pozítivan :D Nagyon szép lett..  :o
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Sajtiikaa - 2013. Május 12. - 22:13:50
Szép kis webet összehoztál Kroki.

Gratulálok, csak így tovább.:)
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: EnterR - 2013. Május 13. - 06:54:33
Grat, nagyon jól néz ki, sok sikert a továbbiakban :D
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: ZSOLTI99 - 2013. Május 13. - 14:27:32
Hogy lehet ezt elindítani vagy valami?
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: shadee - 2013. Május 13. - 14:30:20
Minõségi munka.Grat
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Sajtiikaa - 2013. Május 13. - 14:37:55
Idézetet írta: ZSOLTI99 date=1368448052\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37287\" data-ipsquote-contentclass=\"forums_Topic
Hogy lehet ezt elindítani vagy valami?
 
Összekell kötni egy adatbázissal amivel a szerver is összevan.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Csabesz - 2013. Május 13. - 15:56:17
Na, ennek az \"agya\" nagyon jól jött most :) Szép munka!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: [(The_Pro_Kari)] - 2013. Május 13. - 15:59:10
Gratulálok! :D
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: UppeR! - 2013. Május 13. - 16:59:50
Gratulálok Mr. Vijjú!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: b1s - 2013. Május 13. - 17:21:01
Vijjú vijjú!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: citromhun - 2013. Május 13. - 19:47:41
Fasza lett!
+
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: scripter01 - 2013. Május 16. - 08:25:04
Jó lett Krook :) grat!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: xD1999 - 2013. Május 16. - 20:00:33
Nagyon szép lett le a kalapal repül a \"+\"
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: James_Raynor - 2013. Május 17. - 18:37:29
Igazi Krook munka. :)
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: EnterR - 2013. Május 19. - 21:48:28

Warning: fsockopen() [function.fsockopen]: UDP protocol is not allowed in /home/a7598082/public_html/inc/SampQuery.class.php on line 32
Warning: socket_set_timeout(): supplied argument is not a valid stream resource in /home/a7598082/public_html/inc/SampQuery.class.php on line 33
 
[/quote]
Miért kapom ezt a két warningot?
000webhost.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Csabesz - 2013. Május 19. - 23:32:48
Idézetet írta: A.S.S.A date=1368992908\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37287\" data-ipsquote-contentclass=\"forums_Topic


Warning: fsockopen() [function.fsockopen]: UDP protocol is not allowed in /home/a7598082/public_html/inc/SampQuery.class.php on line 32
Warning: socket_set_timeout(): supplied argument is not a valid stream resource in /home/a7598082/public_html/inc/SampQuery.class.php on line 33
 
Miért kapom ezt a két warningot?
000webhost.
 
[/quote]
 
UDP protocol is not allowed[/quote]
Nincs engedélyezve az UDP protokoll.
Magyarul, nem fog mûködni a \'Szerver állapota\' menüpont.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: EnterR - 2013. Május 20. - 12:22:44
UDP protocol is not allowed[/quote]
Nincs engedélyezve az UDP protokoll.
Magyarul, nem fog mûködni a \'Szerver állapota\' menüpont.
 
Hogy tudnám engedélyezni?
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Csabesz - 2013. Május 20. - 12:36:23
Idézetet írta: A.S.S.A date=1369045364\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37287\" data-ipsquote-contentclass=\"forums_Topic
Hogy tudnám engedélyezni?
 
szolgáltatóval kell beszélni, de kétlem hogy engedélyezné.  :)
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: b1s - 2013. Május 20. - 13:09:48
Idézetet írta: Csabesz date=1369046183\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37287\" data-ipsquote-contentclass=\"forums_Topic


Hogy tudnám engedélyezni?
 
szolgáltatóval kell beszélni, de kétlem hogy engedélyezné.  :)
 
[/quote]Ahogy mondod, ingyeneseken nincsen általában UDP lehetõség, \"biztonsági okok\"-ra hivatkozva.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: tuborg - 2013. Május 20. - 16:53:20
Le a kalappal . Ez igen . Grat ment a +
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: TheClauss - 2013. Május 22. - 22:16:31
Lenne 1-2 szakmai észrevételem ha megengeded.
Nagyon sok helyen látom ezt:
 
\"...= \'$_SERVER[REMOTE_ADDR]\' WHE...\"

 
Ilyen formát nem szoktunk használni. Helyette:
 
\"...= \'\".$_SERVER[\'REMOTE_ADDR\'].\"\' WHE...\"

 
Ez a kód idõtállósága miatt fontos. Az elõbbi kódrészlet hivatalosan nincsen, és bár még (ebben a verzióban) mûködik, nem tudjuk meddig.
Ez minden asszociatív (nem számmal indexelt) tömbnél fontos. Nincs $tomb[elem] csak $tomb[\"elem\"] vagy $tomb[\'elem\'].


Még egy idõtállósági dolog (Kis biztonság is) . Ilyen MySql függvényeket nem használunk. Igen, régen csak ez volt és rengeteg minden ezzel van írva, de újabb fejlesztéseknél messzire elkerüljük. A jelenlegi stabil php verzió az 5.4 , ezek a MySql függvények amiktõl hemzseg a kód, a php 5.5-ben már hibaüzeneteket fognak dobni, (régi függvény, kéri hogy használj mást) a jövõben meg teljesen ki lesznek iktatva. Ajánlom: MySqli,PDO (Személy szerint a PDO-t preferálom, illetve nézz utána az elõkészített lekérdezéseknek, PDO és MySqli is támogatja.) A szimpla MySql függvények lecserélése a biztonsági kérdéseket is megvariálja. A mysql_query függvény nem tud egyszerre több parancsot végrehajtani (Pl. nem tudsz egyszerre kiválasztani értékeket és törölni valamit egy lekérdezésben, tárolt eljárások nélkül). A PDO/MySqli viszont igen, ezért azok veszélyesebbek. Természetesen erre is van megoldás. (Elõkészített lekérdezések)


Admin függvények egyáltalán nincsenek szûrve. Ez végzetes hiba. Egy laikus/\"bosszúvágyú\" admin bármit megtehet, ha pedig olyan is hozzáférhet a panelhez adminként aki egyébként a szerveren/egyéb helyen nem rendelkezik jogokkal akkor az kellemetlen. Igaz, amíg van mysql_query ami csak 1 lekérdezést küld kicsit nehezebb dolga van (nem töröl instant adatbázist), de tényleg nem kéne ennek a függvénynek ezt a hátrányát biztonsági elõnyként kezelni, pl. lekérések feltételeit meg lehet kerülni könnyedén.


Sok kimeneti hibaüzenet szintén nincsen ellátva szûréssel, így azokba gyilkos JavaScript kódokat lehet injectelni.
 
echo \"<div class=\'msgbox\'>$_GET[msg]</div>\";

 
http://www.php.net/manual/en/function.strip-tags.php
http://php.net/manual/en/function.htmlspecialchars.php
http://www.php.net/manual/en/function.htmlentities.php
Ezzel az ügyeskedéssel a weblapot nem lehet feltörni. Vagyis önmagában nem. Ezzel a módszerrel felhasználókat lehet lopni, anélkül hogy szerencsétlen xy egyáltalán ezt észlelné. (Természetesen nem fejtem ki :) ) Pontosítok. Csak (bejelentkezett) admin felhasználókat lehet lopni vele. Az admin felületrõl már beszéltünk. Nem egyszerû ezt sem megcsinálni, de meg lehet.


                  if(file_exists(\"pages/$_GET[p].php\"))
            {
               require(\"pages/$_GET[p].php\");
            }

 
Kritikus php/szerver sebezhetõségi hiba, beállításoktól függõen. Ezzel a módszerrel tulajdonképpen bármilyen fájlt be tudok ágyazni illetve lefuttatni a php motor segítségével. Mint említettem, ezzel a php.ini-tõl függõen még akár helyben beinjectelhetem magát a php-t és helyben módosíthatom a forrást. (Vagy azt csinálok vele amit akarok) Miután azt futtatok amit akarok, adatbázisom is van. Igen, ott van hogy \"pages/\" az elején illetve a \".php\" a végén, de ezek lényegtelen információk amiket csupán az url-hez fûzött összesen 6 karakterrel el is távolítottam, onnantól meg csak a szûretlen változó van. A file_exists csak azt nézi létezik-e a fájl. Nem érdekli hogy hol van. Ha túl nagy jogköre lenne a szerveren ennek az oldalnak akkor már a szervert lehetne kóstolgatni, onnan meg hátulról minden mást ami rajta van. (Pl. ha nem rendesen beállított hostolt környezetben fut az oldal.) Ez a sebezhetõség függ a php verziójától is. 5.3.4 elõtt azt hiszem veszélyesebb volt, a frissebb php-k mintha már figyelnek a kiterjesztés eltüntetésére, de még sok helyen van 5.3.3 sõt még 5.2 is. Igazából azt se szeretnéd ha bármely php fájl ami csak megtetszene beágyaznék.
Ajánlom hogy reguláris kifejezésekkel távolíts el a változóból mindent ami nem betû,esetleg szám.
Egy tömbben tárolhatod hogy milyen oldalak vannak (http://php.net/manual/en/function.scandir.php) és ha nem szerepel a tömbben a változó akkor ne jelenítsd meg az oldalt.
Stb...


Regisztrációnál nem ellenõrzöd az E-Mail cím valódiságát. Simán lehet tolni egy \"a@a\" semmiséggel egy felhasználót, ha rászánnék egy percet bármilyen más karakterlánccal is. A kliens oldali HTML5(ami nálad van)/JavaScript ellenõrzés nem valódi ellenõrzés.
Felhasználónév és jelszó hosszát ajánlom korlátozni. (Minimum/maximum)
Felhasználónévbe írható karaktereket ajánlom leszûkíteni betûkre/számokra.


Egy kis adatbázis tervezési észrevétel. Azoktól a nagybetûktõl az oszlop nevek nagyon menõn néznek ki meg minden. Kár hogy Windows/Linux kompatibilitási gondot okozhatnak.


Csak belenéztem a kódba, ezeket nem feltétlenül azért írtam hogy most azonnal javíts/írj át mindent vagy ilyesmi,ócsárolni sem volt szándékom, csupán szerintem ezeket a dolgokat hasznos tudni a jövõbeli projektjeid tervezésénél.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: b1s - 2013. Május 29. - 20:13:27
Idézetet írta: TheClauss date=1369253791\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37287\" data-ipsquote-contentclass=\"forums_Topic
Lenne 1-2 szakmai észrevételem ha megengeded.
Nagyon sok helyen látom ezt:
 
\"...= \'$_SERVER[REMOTE_ADDR]\' WHE...\"

 
Ilyen formát nem szoktunk használni. Helyette:
 
\"...= \'\".$_SERVER[\'REMOTE_ADDR\'].\"\' WHE...\"

 
Ez a kód idõtállósága miatt fontos. Az elõbbi kódrészlet hivatalosan nincsen, és bár még (ebben a verzióban) mûködik, nem tudjuk meddig.
Ez minden asszociatív (nem számmal indexelt) tömbnél fontos. Nincs $tomb[elem] csak $tomb[\"elem\"] vagy $tomb[\'elem\'].


Még egy idõtállósági dolog (Kis biztonság is) . Ilyen MySql függvényeket nem használunk. Igen, régen csak ez volt és rengeteg minden ezzel van írva, de újabb fejlesztéseknél messzire elkerüljük. A jelenlegi stabil php verzió az 5.4 , ezek a MySql függvények amiktõl hemzseg a kód, a php 5.5-ben már hibaüzeneteket fognak dobni, (régi függvény, kéri hogy használj mást) a jövõben meg teljesen ki lesznek iktatva. Ajánlom: MySqli,PDO (Személy szerint a PDO-t preferálom, illetve nézz utána az elõkészített lekérdezéseknek, PDO és MySqli is támogatja.) A szimpla MySql függvények lecserélése a biztonsági kérdéseket is megvariálja. A mysql_query függvény nem tud egyszerre több parancsot végrehajtani (Pl. nem tudsz egyszerre kiválasztani értékeket és törölni valamit egy lekérdezésben, tárolt eljárások nélkül). A PDO/MySqli viszont igen, ezért azok veszélyesebbek. Természetesen erre is van megoldás. (Elõkészített lekérdezések)


Admin függvények egyáltalán nincsenek szûrve. Ez végzetes hiba. Egy laikus/\"bosszúvágyú\" admin bármit megtehet, ha pedig olyan is hozzáférhet a panelhez adminként aki egyébként a szerveren/egyéb helyen nem rendelkezik jogokkal akkor az kellemetlen. Igaz, amíg van mysql_query ami csak 1 lekérdezést küld kicsit nehezebb dolga van (nem töröl instant adatbázist), de tényleg nem kéne ennek a függvénynek ezt a hátrányát biztonsági elõnyként kezelni, pl. lekérések feltételeit meg lehet kerülni könnyedén.


Sok kimeneti hibaüzenet szintén nincsen ellátva szûréssel, így azokba gyilkos JavaScript kódokat lehet injectelni.
 
echo \"<div class=\'msgbox\'>$_GET[msg]</div>\";

 
http://www.php.net/manual/en/function.strip-tags.php
http://php.net/manual/en/function.htmlspecialchars.php
http://www.php.net/manual/en/function.htmlentities.php
Ezzel az ügyeskedéssel a weblapot nem lehet feltörni. Vagyis önmagában nem. Ezzel a módszerrel felhasználókat lehet lopni, anélkül hogy szerencsétlen xy egyáltalán ezt észlelné. (Természetesen nem fejtem ki :) ) Pontosítok. Csak (bejelentkezett) admin felhasználókat lehet lopni vele. Az admin felületrõl már beszéltünk. Nem egyszerû ezt sem megcsinálni, de meg lehet.


                  if(file_exists(\"pages/$_GET[p].php\"))
            {
               require(\"pages/$_GET[p].php\");
            }

 
Kritikus php/szerver sebezhetõségi hiba, beállításoktól függõen. Ezzel a módszerrel tulajdonképpen bármilyen fájlt be tudok ágyazni illetve lefuttatni a php motor segítségével. Mint említettem, ezzel a php.ini-tõl függõen még akár helyben beinjectelhetem magát a php-t és helyben módosíthatom a forrást. (Vagy azt csinálok vele amit akarok) Miután azt futtatok amit akarok, adatbázisom is van. Igen, ott van hogy \"pages/\" az elején illetve a \".php\" a végén, de ezek lényegtelen információk amiket csupán az url-hez fûzött összesen 6 karakterrel el is távolítottam, onnantól meg csak a szûretlen változó van. A file_exists csak azt nézi létezik-e a fájl. Nem érdekli hogy hol van. Ha túl nagy jogköre lenne a szerveren ennek az oldalnak akkor már a szervert lehetne kóstolgatni, onnan meg hátulról minden mást ami rajta van. (Pl. ha nem rendesen beállított hostolt környezetben fut az oldal.) Ez a sebezhetõség függ a php verziójától is. 5.3.4 elõtt azt hiszem veszélyesebb volt, a frissebb php-k mintha már figyelnek a kiterjesztés eltüntetésére, de még sok helyen van 5.3.3 sõt még 5.2 is. Igazából azt se szeretnéd ha bármely php fájl ami csak megtetszene beágyaznék.
Ajánlom hogy reguláris kifejezésekkel távolíts el a változóból mindent ami nem betû,esetleg szám.
Egy tömbben tárolhatod hogy milyen oldalak vannak (http://php.net/manual/en/function.scandir.php) és ha nem szerepel a tömbben a változó akkor ne jelenítsd meg az oldalt.
Stb...


Regisztrációnál nem ellenõrzöd az E-Mail cím valódiságát. Simán lehet tolni egy \"a@a\" semmiséggel egy felhasználót, ha rászánnék egy percet bármilyen más karakterlánccal is. A kliens oldali HTML5(ami nálad van)/JavaScript ellenõrzés nem valódi ellenõrzés.
Felhasználónév és jelszó hosszát ajánlom korlátozni. (Minimum/maximum)
Felhasználónévbe írható karaktereket ajánlom leszûkíteni betûkre/számokra.


Egy kis adatbázis tervezési észrevétel. Azoktól a nagybetûktõl az oszlop nevek nagyon menõn néznek ki meg minden. Kár hogy Windows/Linux kompatibilitási gondot okozhatnak.


Csak belenéztem a kódba, ezeket nem feltétlenül azért írtam hogy most azonnal javíts/írj át mindent vagy ilyesmi,ócsárolni sem volt szándékom, csupán szerintem ezeket a dolgokat hasznos tudni a jövõbeli projektjeid tervezésénél.
 
Üdv!
Köszönöm a normális hangvételû hozzászólásod, egyáltalán nem vettem ócsárlásnak, vagy ilyesminek, igazad van. Az általad említett hibákat a következõ verzióban javítani fogom.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: instant - 2013. Június 02. - 16:18:04
1 kérdés, a web_users-t ki szabad cserélni hogy a saját szerveren lévõ Játékosok adatait mutassa?
E: Megoldva..


Ha beregisztrálok azt elfogadja de amikor be akarok jelentkezni akkor azt írja : Nem létezik ilyen felhasználó név , miért?
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Rupert - 2013. Június 12. - 12:31:26
És még csak most látom ezt elõször... örülök hogy Malibunál vagy, aranypofa. ; ) < 3
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: kamionos - 2013. Július 05. - 03:21:34
Hálám üldözzön!!!:)
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: mototiger - 2013. Július 10. - 02:49:37
A design nem rossz választás, viszont az oldal felépítését tekintve tényleg nem 100-as (Ne vedd bántásnak).
Ha van kedved és idõd ajánlom a mysqli használatát, mert sokkal gyorsabb, object orientált és támogatás is van rá, ellentétben a sima mysql-el függvénykönyvtárral.
session_start()-ot pedig mindig a forráskód elsõ sorában, vagy legalább is az elején használjuk elkerülendõ az esetleges hibákat.
Ha elnyeletést használsz (ob_start()-ot), akkor zárd is le ob_end_flush() függvénnyel.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: nhunor58 - 2013. Augusztus 16. - 18:14:18
Bocs,hogy újra életet leheltem e topicba de én ha regizek,amikor nem hoz létre egy accountot!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: martinokok02 - 2013. Augusztus 21. - 10:12:31
Szép lett Grat.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: vortexY - 2013. Szeptember 26. - 15:23:40
Ment a  :thumbsup: :) Szuper :yes:
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Lester - 2013. Szeptember 26. - 16:29:14
Azosztigen!

Szép munka!


Gratula!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: almasiweb - 2014. Január 22. - 19:56:37
Regeltem, de nem hoz létre felhasználót....Annak ellenére jó
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: ᵀᴴᴱ ᴼᴿᴵᴳᴵᴻᴬᴸ D - 2014. Január 26. - 06:24:25
Nagyon, de nagyon szép munka.Gondolom, nemvagy már kezdõ ebben...le a kalappal. :)
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Mr_Jack - 2014. Augusztus 10. - 08:35:07
Idézetet írta: krook date=1368377518\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37287\" data-ipsquote-contentclass=\"forums_Topic


website v0.1

Elkészítettem egy weboldalt, amit publikálásra szántam.. Íme hát itt van!



\"width=500http://s1.postimg.org/lt5oa1on3/web_146.png[/img]

\"width=500http://s1.postimg.org/skw3cwdmn/web_148.png[/img]

\"width=500http://s1.postimg.org/7cievgz5r/web_149.png[/img]

\"width=500http://s1.postimg.org/4wglhmh33/web_150.png[/img]

\"width=500http://s1.postimg.org/hcdbbdaf3/web_151.png[/img]

\"width=500http://s1.postimg.org/7ggtpgu0v/web_152.png[/img]

\"width=500http://s1.postimg.org/m0xwkaozj/web_153.png[/img]

\"width=500http://s1.postimg.org/52yvygflr/web_155.png[/img]

\"width=500http://s1.postimg.org/g3u13h7un/web_156.png[/img]

\"width=500http://s1.postimg.org/s6zcr1iwv/web_157.png[/img]

\"width=500http://s1.postimg.org/ooncuni0v/web_158.png[/img]

\"width=500http://s1.postimg.org/6n47wunzz/web_159.png[/img]

\"width=500http://s1.postimg.org/iq9jkez27/web_160.png[/img]

\"width=500http://s1.postimg.org/605b7br3z/web_161.png[/img]




 
http://s1.postimg.org/lt5oa1on3/web_146.png
http://s1.postimg.org/skw3cwdmn/web_148.png
http://s1.postimg.org/7cievgz5r/web_149.png
http://s1.postimg.org/4wglhmh33/web_150.png
http://s1.postimg.org/hcdbbdaf3/web_151.png
http://s1.postimg.org/7ggtpgu0v/web_152.png
http://s1.postimg.org/m0xwkaozj/web_153.png
http://s1.postimg.org/52yvygflr/web_155.png
http://s1.postimg.org/g3u13h7un/web_156.png
http://s1.postimg.org/s6zcr1iwv/web_157.png
http://s1.postimg.org/ooncuni0v/web_158.png
http://s1.postimg.org/6n47wunzz/web_159.png
http://s1.postimg.org/iq9jkez27/web_160.png
http://s1.postimg.org/605b7br3z/web_161.png

 



Amit tartalmaz


> Regisztráció / Bejelentkezés rendszer

> Profil

> Admin panel

       
> Hírek adminisztrálása

       
> Kitiltások kezelése

       
> Tulajdonosoknak admin adás menüpont

> Szerver mutató

> Csapat oldal

> Userbar




Felhasznált dolgok


> SA-MPQuery API




Letöltés

web.zip

web.rar

webpage.sql




 




/*      Hírek      */
CREATE TABLE IF NOT EXISTS `web_news` (
  `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `TITLE` text COLLATE utf8_hungarian_ci NOT NULL,
  `CONTENT` text COLLATE utf8_hungarian_ci NOT NULL,
  `ADDED` text COLLATE utf8_hungarian_ci NOT NULL,
  `DATE` int(40) NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci AUTO_INCREMENT=1 ;
/*   Felhasználók   */
CREATE TABLE IF NOT EXISTS `web_users` (
  `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `NAME` text COLLATE utf8_hungarian_ci NOT NULL,
  `PASS` text COLLATE utf8_hungarian_ci NOT NULL,
  `IP` varchar(20) COLLATE utf8_hungarian_ci NOT NULL DEFAULT \'0.0.0.0\',
  `GROUP` int(2) NOT NULL DEFAULT \'0\',
  `MONEY` int(90) NOT NULL DEFAULT \'0\',
  `KILLS` int(90) NOT NULL DEFAULT \'0\',
  `DEATHS` int(90) NOT NULL DEFAULT \'0\',
  `SCORE` int(90) NOT NULL,
  `EMAIL` text COLLATE utf8_hungarian_ci NOT NULL,
  `REGDATE` int(90) NOT NULL,
  `LASTONLINE` int(90) NOT NULL,
  `BANNED` int(1) NOT NULL DEFAULT \'0\',
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci AUTO_INCREMENT=1 ;
 

[/spoiler



krook,le a kalappal elõtted!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: blackdog476 - 2014. Augusztus 10. - 09:38:55
Fel a kalappal!


:wall:
 
Amúgy jó lett grat :D
Mr_Jack, tudtommal régi témákhoz nem-igen kéne hozzászólni nem?  :unsure:


FONTOS!!
Akármilyen szép és jó, azért hiba az még van benne.. Próbáltad úgy letesztelni krook, hogy a settings.php-ben másik adatbázisnevet adsz meg? Hm, ugyanis a func.php-ben a regisztrációnál nem a settings.phpbõl importálja be a beállítást :confused:
 

function Register($user2, $pass2, $mail2) {
mysql_query(\"SET NAMES UTF8\");
$user = mysql_real_escape_string($user2);
$pass = sha1(mysql_real_escape_string($pass2));
$mail = mysql_real_escape_string($mail2);
$time = time();
$vane = mysql_num_rows(mysql_query(\"SELECT * FROM web_users WHERE NAME = \'$user\'\"));
if($vane == 0 && !empty($user2) && !empty($pass2) && !empty($mail2) ) {
   mysql_query(\"INSERT INTO `krukveb`.`web_users` (`ID`, `NAME`, `PASS`, `IP`, `GROUP`, `MONEY`, `KILLS`, `DEATHS`, `SCORE`, `EMAIL`, `REGDATE`, `LASTONLINE`, `BANNED`) VALUES (NULL, \'$user\', \'$pass\', \'$_SERVER[REMOTE_ADDR]\', \'0\', \'0\', \'0\', \'0\', 0, \'$mail\', \'$time\', \'$time\', 0);\");
   //mail($mail, \"Üdvözöllek!\", \"Szia $user!\\nEzt a mailt azért kapod mert regisztráltál a szerverre!\\n\\nNév: $user\\nÜdvözlettel: Valaki\"); # Ha támogatja az email küldést a szolgáltatód akkor vedd ki a //-t
   echo \'Sikeres regisztráció! Mostmár bejelentkezhetsz!\';
}
else {
   echo \'Valami üresen maradt, vagy már létezik a felhasználónév!\';
}
}

 
A querynél van, én most csak simán átállítottam, de oda php kéne :/
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Mr_Jack - 2014. Augusztus 10. - 22:27:11
Mr_Jack tudtommal régi  témákhoz nem-igen  kéne hizzászólni nem? :unsure:[/quote]
Pfff... Hol láttad ezt? Mert én a fórumon nem láttam ilyesmit... De most komolyan,jó páran hozzászóltak régi témákhoz,semmit nem kaptak   :noexpression:
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: blackdog476 - 2014. Augusztus 11. - 09:20:09
Elég baj. Ha én pl hozzászólnék ehhez a témához, hogy jó lett, akkor az most kit fog érdekelni, hogyha már rég lejárt, ha már rég újabb dolgok vannak a fórumon, hogyha már a fórum is üzen hogy nem kéne.... ?
Valamint ilyesmit nem láttál?
\"120nap.png\"
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: b1s - 2014. Augusztus 16. - 09:20:44
bump.

mint utóbb kiderült, van néhány biztonsági rés az UCP-ben, elég régen írtam már.. mindenkinek csak saját felelõsségre ajánlom, mindenki javítsa ki a hibákat, hamarosan elõfordulhat, hogy kiadok egy javított változatot. :)
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Almosvezer1 - 2014. Augusztus 17. - 15:45:48
Helló. baj van :/ (utálom az ilyen mysql-os dolgokat.....)
ahh.. betettem a WAMP progival ahogy kell, phpmyadminba csináltam egy adatbázist, abba feltöltöttem az SQL-t amit te is feltettél ide, beolvasta rendesen, func.php-be átírtam így:
 

$db_con = mysql_connect($sql[\"samp\"], $sql[\"samp\"], $sql[\"samp\"]);
$db_db    = mysql_select_db($sql[\"samp\"]);

 
(már bepipultam és mindennek a sampot írtam...) és semmi.. csak ez a hiba:
 

( ! ) Notice: Undefined index: samp in D:\\wamp\\www\\inc\\func.php on line 6
Call Stack
#   Time   Memory   Function   Location
1   0.0010   142544   {main}( )   ..\\index.php:0
2   0.0020   178784   require_once( \'D:\\wamp\\www\\inc\\func.php\' )   ..\\index.php:3
( ! ) Notice: Undefined index: samp in D:\\wamp\\www\\inc\\func.php on line 6
Call Stack
#   Time   Memory   Function   Location
1   0.0010   142544   {main}( )   ..\\index.php:0
2   0.0020   178784   require_once( \'D:\\wamp\\www\\inc\\func.php\' )   ..\\index.php:3
( ! ) Notice: Undefined index: samp in D:\\wamp\\www\\inc\\func.php on line 6
Call Stack
#   Time   Memory   Function   Location
1   0.0010   142544   {main}( )   ..\\index.php:0
2   0.0020   178784   require_once( \'D:\\wamp\\www\\inc\\func.php\' )   ..\\index.php:3
( ! ) Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in D:\\wamp\\www\\inc\\func.php on line 6
Call Stack
#   Time   Memory   Function   Location
1   0.0010   142544   {main}( )   ..\\index.php:0
2   0.0020   178784   require_once( \'D:\\wamp\\www\\inc\\func.php\' )   ..\\index.php:3
3   0.0117   216048   mysql_connect ( )   ..\\func.php:6
( ! ) Notice: Undefined index: samp in D:\\wamp\\www\\inc\\func.php on line 7
Call Stack
#   Time   Memory   Function   Location
1   0.0010   142544   {main}( )   ..\\index.php:0
2   0.0020   178784   require_once( \'D:\\wamp\\www\\inc\\func.php\' )   ..\\index.php:3
Nem tudtam csatlakozni az adatbázishoz: Aucune base n\'a été sélectionnée

 
Válaszod elõre köszönöm.
Ha én b*tam el valamit, akkor sry.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: blackdog476 - 2014. Augusztus 22. - 18:53:27
Aucune base n\'a été sélectionnée[/quote] Én félek.
Egyébként a csatlakozás + kiválasztós résznél lesz a gond, mivel mindenhova ugyan azt az adatot adtad meg.
Helyesen így kell:
 

mysql_connect(HOST,FELHASZNÁLÓNÉV,JELSZÓ);
mysql_select_db(ADATBÁZIS NEVE);

 
A host az legyen localhost, a felhasználónév legyen root és a jelszó résznél csak simán \"\" legyen (tehát semmi).
Utána létre kell hozni egy adatbázist, és az adatbázis nevéhez kell írni.
 
Peace
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Falamatistic - 2014. Augusztus 29. - 19:02:43
De ha nagyon átláthatóan szeretnéd, igaz kicsit bonyolultabb akkor így is megoldhatod.
 

// Beállítások
$mysql[\'host\']=       \"localhost\"; // Mysql hoszt név
$mysql[\'user\']=       \"a\"; // Felhasználó
$mysql[\'pass\']=       \"a\"; // Jelszó
$mysql[\'adatbazis\']=    \"a\"; // Adatbázis
// Mysql Csatlakozás
$mysql_kap= mysql_connect($mysql[\'host\'], $mysql[\'user\'], $mysql[\'pass\'])or die(mysql_error());
mysql_selectdb($mysql[\'adatbazis\'], $mysql_kap)or die(mysql_error());
mysql_query(\"SET NAMES utf-8\", $mysql_kap);
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: blackdog476 - 2014. Augusztus 29. - 19:26:51
WAT?
 

// Beállítások
$mysql = array(
    \'host\' => \'localhost\',
    \'user\' => \'root\',
    \'pass\' => \'\',
    \'adatbazis\' => \'mysql\'
);
// Mysql Csatlakozás
$mysql_kap= mysql_connect($mysql[\'host\'], $mysql[\'user\'], $mysql[\'pass\'])or die(mysql_error());
mysql_selectdb($mysql[\'adatbazis\'], $mysql_kap)or die(mysql_error());
mysql_query(\"SET NAMES utf-8\", $mysql_kap);
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: KisCsavo15 - 2014. Szeptember 02. - 00:54:12
Azz nagyon jó lett, grat
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: Benedek - 2014. Október 16. - 20:01:55
És az SQL Injection védve van rajta ? :\'D
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: halasz11 - 2015. Február 06. - 16:12:12
Nekem majdnem minden jó szép lett!  :facepalm:
Csak amikor beregisztrálnék és utána belépnék mindig azt írja ki: A felhasználónév nem létezik!
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: blackdog476 - 2015. Február 06. - 18:23:28
Idézetet írta: Benedek date=1413482515\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37287\" data-ipsquote-contentclass=\"forums_Topic
És az SQL Injection védve van rajta ? :\'D
 
Ha jól emlékszem nincs, vagy nem mindenhol. Egyébként nem ajánlott már ezt használni, elavult.
Cím: [MYSQL] UCP / WEBOLDAL v0.1
Írta: b1s - 2015. Február 07. - 16:12:43
XSSelhető, injectelhető, nem ajánlom a használatát senkinek. Rég volt, mikor ezt írtam.