Jump to content
Prosíme všetkých užívateľov, ktorý sa chcú opätovne pripojiť na discord aby znovu spárovali svoje účty kliknutím na "Discord" v navigácií a pripojili sa na server Read more... ×

QWER

Uživatel
  • Příspěvků

    19
  • Registrován

  • Aktivní

  • Vítězných dnů

    2

QWER last won the day on Květen 13

QWER had the most liked content!

Reputace

265 Madd Dog

1 Follower

About QWER

  • Moto
    Bronze I - nováček

Návštěvníci

4 717 profile views
  1. Ahojte, ffredyk ma svojim príspevkom nadchol. (bozužiaľ ma nenadchla informácia, že majiteľ to nechce posunúť ďalej, aj keď na to evidentne celé tie roky sere) Dnes by som vám chcel ukázať node.js. Povedať vám čo to je a prečo by vás mal zaujímať. Pravdepodobne to bude celá séria návodov, kde budem preberať backend (ak výraz nepoznáte, nižšie bude vysvetlený) aj frontend (ak výraz nepoznáte, nižšie bude vysvetlený) a na konci série budeme mať SA-MP administráciu. Som rád, že ste taký môj predboj na ktorom budem testovať. V tomto návode preberieme hlavne teóriu a na konci si napíšeme najjednoduchšiu node.js appku. Z čoho sa skladá Webová stránka? Webová stránka sa skladá z 2 častí. Frontend a Backend. Frontend je to, čo užívateľ vidí čiže css štýly, html dokument, obrázky, fonty, videá... Najčastejšie ho tvorí HTML, CSS a JavaScript. HTML by mal slúžiť prevažne na texty, CSS slúži na dizajn (bude tento link mať farbu modrú alebo červenú?) a JavaScript na interakciu. Backend je to jadro webu, ku ktorému užívateľ nemá prístup (teda, až na lacesove adminky, tam má prístup každý). Patrí tam databáza a scripty na servery (registrácia, autentifikácia, API...). Najčastejšie sa robí v PHP ale môže sa aj v .NET, Pythone, Jave a už pár rokov aj v JavaScripte na backende - Node.js. Aké má výhody oproti PHP? Výhod je dosť. NPM. Používanie jedného jazyka na frontende aj backende. Omnoho jednoduchšia práca s real-time aplikáciami, stúpajúca popularita a s ním aj počet pracovných miest... Pre viac detailov si môžete prečítať Want to be a Web Developer? Learn Node.js not PHP alebo Why the Hell Would You Use Node.js. Ak by vás zaujímalo, ktoré veľké spoločnosti používajú Node.js tak môžete zostať prekvapený Netflix, Linkedin, Trello, Uber, Paypal, Medium, eBay, NASA. Zdroj 1 a Zdroj 2 a stackshare Inštalácia Node.js Aby sme mohli vyvíjať budeme si musieť nainštalovať Node.js. Je to jednoduchý inštalátor takže to určite zvládnete. Ďalšia potrebná vec je naučiť sa trochu používať konzolu. Konzola alebo aj príkazový riadok je dôležitá súčasť lebo nám umožňuje spúšťanie node.js scriptov. Našťastie nebudeme potrebovať zložité vedomosti, vystačíme si so základnými príkazmi `cd` a `ls`. Ak používate Windows tak odporúčam nainštalovať si Cmder a používať ten. Lebo konzola vo Windowse je strašná. Ak máte MacOS alebo Linux tak netreba nič viac. Keď už máme nainštalovaný node, tak sa nám pribudli 2 nové príkazy pre konzolu. Jeden je `node` a druhý `npm`. V predchádzajúcom bode som schválne nevysvetlil čo je to npm. NPM je balíčkovací systém. Môžete vďaka nemu sťahovať závislosti pre vášu appku. Napríklad potrebujete posielať emaily tak nemusíte chodiť na google a hladať nejakú knižicu, sťahovať ju, dávať si ju do projektu... Jednoducho iba napíšete `npm install nodemailer` a rovno používate tú knižnicu. Základy s terminálom/príkazovým riadkom Ako som už písal, budeme používať základné, jednoduché, príkazy. `cd` znamená change directory (v preklade zmena priečinka). Vďaka tomuto príkazu sa môžete dostať do priečinka a pracovať v ňom napríklad `cd dokumenty/praca/` vás dostane do priečinka dokumenty a v ňom do priečinka praca. `ls` pre zmenu vypíše obsah priečinka, v ktorom sme nastavený cez `cd`. Na prácu s terminálom si treba chvíľku zvykať ale zistíte, že to je veľmi dobrý pomocník. Tu je link na pár základných príkazov. Vďaka Southclawovy aj pawn má svoje "npm" nazvané http://sampctl.com/ Takže prácu s terminálom si môžete vyskúšať aj v pawn. Hello world v node.js Už takto je to docela obsiahly návod (hlavne na zdroje, ktoré odporúčam pozrieť) tak si ukážeme ako si spustiť webovú stránku cez node.js Vytvoríme si priečinok napríklad "navod" a do neho súbor app.js (môžete sa nazvat ako chcete) a do neho vložíme tento jednoduchý kód. var http = require("http"); var port = 8000; http.createServer(function (request, response) { // toto sú dôležité hlavičky ktoré sa posiela server na clienta response.writeHead(200, {'Content-Type': 'text/plain'}); response.end('Hello World\n'); }).listen(port); // Vypíšeme do konzole že server ide a na akom porte je console.log('Server running at http://127.0.0.1:' + port); Sǔbor uložíme. Cez konzolu sa dostaneme do nášho priečinka "navod" (čiže napríklad `cd navod/`) a iba spustíme server cez príkaz `node app.js`. Ak sme všetko správne urobili, konzola nám oznámila že server je spustený na porte 8000. V prílohe je obrázok ako by to malo vyzerať. Tento návod beriem ako "nutné zlo" ktoré treba. V ďalšiom dieli sa zameriame viac na programovanie a potom by som mohol urobiť tú sériu, v ktorej by sme robili samp administráciu.
  2. QWER

    návod Práce 2019 - Systémy #4

    Bude aj Color Systém?
  3. QWER

    ostatní Regitrace feedback

    Vyhýbam sa tomu
  4. Díky, konečne viem ako si urobiť VIP a Admin Systém
  5. QWER

    ostatní Regitrace feedback

    Rovnakú vec som riešil pred cca 2 rokmi. Webová služba mala mať "free trial" na 10 dní ale ako zabezpečiť, aby to ľudia nezneužívali (inú **jednoduchú** možnosť ako overenie kreditky/mobilu nevidím) Vyriešili sme to tiež cez SMS, že mu prišiel kód. Ale nebolo to v registrácii. V registrácii by som mu napísal že si môže založiť účet ale ten účet mu bude "k ničomu" ak si nezaplatí službu alebo ak si potom nepotvrdí účet mobilom - dostane free trial. Po registrácii mu niekde, na viditeľnom mieste, písať niečo v štýle "Chceš si našu super službu vyskúšať na 10 dní úplne zadarmo? [Klikni sem]". Tam by som mu jasne a zretelne vysvetlil načo je treba jeho telefónne číslo. A toto je vec ktorú som chcel implementovať - ale nedalo sa lebo užívatelia potom mohli zapnúť službu "sms notifikácia" - že by sa po poslaní kódu tel. číslo uložilo do nečitateľnej podoby (bcrypt?). Stalo by sa z toho vlastne druhé heslo. A aj to by som mu vysvetlil - že telefónne číslo sa nebude ukladať v čitatelnej podobe a nikto k nemu nebude mať viac prístup. Že slúži iba na overenie. Následne pri pokuse 2x použiť to isté tel. číslo by som kontroloval iba hashe. btw cca 10% užívateľov (allusers <=10k) dalo svoje tel. číslo
  6. QWER

    pomoc Ban

    Tak znovu. Prečo ukladáš údaje o pozícii, admin levelu, peňazí, farby... do súboru súbor2 alias Bannlist /%s.txt
  7. QWER

    pomoc Ban

    *myslel som tieto veci GetPlayerPos(playerid,px[playerid],py[playerid],pz[playerid]); DOF2_SetInt(subor,"Peniaze",GetPlayerMoney(playerid)); DOF2_SetFloat(subor,"X",px[playerid]); DOF2_SetFloat(subor,"Y",py[playerid]); DOF2_SetFloat(subor,"Z",pz[playerid]); DOF2_SetInt(subor,"AdminLevel",AdminLevel[playerid]); DOF2_SetInt(subor,"FarbaMena", GetPlayerColor(playerid)); v súbore s banom by si mal mať iba veci spojené s banom (npr. admin ktorý mu dal ban, ip admina, nick zabanovaného, ip zabanovaného, čas kedy ho dostal, čas dokedy ho má...).
  8. QWER

    pomoc Ban

    Je nejaký špeciálny dôvod, prečo to ukladáš do súboru s banom a nie do jeho súboru s účtom?
  9. QWER

    pomoc Nemovitosti a House System

    Ahoj @REGA]DaFE Veľmi ma mrzí, že sa ti môj House System nepáči. Čo konkrétne ti nevyhovovalo? Ako ti mám pomôcť? Ozvi sa a ja ti napíšem nový tak, aby ti úplne vyhovoval.
  10. QWER

    pomoc Systém smrti

    Ja si to prečítam za teba a tiež to za teba urobím. Ok?
  11. QWER

    pomoc Systém smrti

    Najlepšie čo môžeš urobiť je použiť https://github.com/oscar-broman/samp-weapon-config ale vyžaduje plugin
  12. Na tom servery čo si písal je tím pádom iní mód http://prntscr.com/jg7s21
  13. QWER

    script AntiReklama System

    Tento script je od Om3na z roku asi 2011. EDIT: 10 sekúnd na googli a našiel som to #include <a_samp> public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Anti-reklama by Om3n"); print("--------------------------------------\n"); return 1; } public OnFilterScriptExit() { return 1; } public OnPlayerText(playerid, text[]) { //-------------------------------------------------------- for(new ip1=1;ip1 < 9; ip1++) { for(new ip2=0;ip2 < 9; ip2++) { for(new ip3=0;ip3 < 9; ip3++) { for(new ip4=0;ip4 < 9; ip4++) { new string2[16]; format(string2, sizeof(string2), ":%d%d%d%d", ip1, ip2, ip3, ip4); new string3[16]; format(string3, sizeof(string3), ": %d%d%d%d", ip1, ip2, ip3, ip4); new string4[16]; format(string4, sizeof(string3), ": %d %d %d %d", ip1, ip2, ip3, ip4); if(strfind(text, string2) >= 0) { SendClientMessage(playerid, 0xE10000AA, "Banned. No advertising ."); SendClientMessage(playerid, 0xE10000AA, "For unban write to www.ZombiesEra.tk ."); new string[256]; format(string, sizeof(string), "advertising"); BanEx(playerid, string); return 0; } if(strfind(text, string3) >= 0) { SendClientMessage(playerid, 0xE10000AA, "Banned. No advertising ."); SendClientMessage(playerid, 0xE10000AA, "For unban write to www.ZombiesEra.tk ."); new string[256]; format(string, sizeof(string), "advertising"); BanEx(playerid, string); return 0; } if(strfind(text, string4) >= 0) { SendClientMessage(playerid, 0xE10000AA, "Banned. No advertising ."); SendClientMessage(playerid, 0xE10000AA, "For unban write to www.ZombiesEra.tk ."); new string[256]; format(string, sizeof(string), "advertising"); BanEx(playerid, string); return 0; } } } } } return 1; }
  14. QWER

    pomoc Pickup ve filterscriptu

    Neviem s čím šaškuješ, tak zostane jedna premenná nevyužitá (fuel[0]). Nič také sa nestane. Prípadne pri autách môžeš začať cykliť od 1, ak vieš, že definícia je väčšia ako 1. Prípadne použi foreach
×