Jump to content
individual14XX

Php lottery ?

Recommended Posts

Salut! Nu stiu de unde sa incep.. 

Ma tot gandesc sa fac un system de loterie asemanator cu cel folosit pe siteurile de pariuri cu skinuri cs go . Un fel de ruleta unde sansa de castig e proportionala cu numarul de "credite" care il depui sa intri in joc . Am dat exemplu loteria aia pentru ca nu am gasit altceva mai asemanator cu ce vreau eu sa fac. 

img 1

img 2

img 3

Exemplu site

Din cate am inteles eu , php trebuie sa folosesc sau cel putin aia asta folosesc , am descarcat un site asemanator doar ca sa vad scriptul dar nu prea inteleg nimic . Html/css stiu , cu javascript ma descurc un pic dar php habarnam.. Am cautat putin pe stackoverflow dupa ce mi-a fost inchisa propria intrebare -_- si am gasit asta :

<?php

class TicketMaster {
    private $players = array();
    public $total = 0;

    public function addPlayer($player) {
        $player->tickets[0] = $this->total;
        $this->total += $player->value;
        $player->tickets[1] = $this->total;
        $this->players[] = $player;
    }

    public function selectWinner() {
        $ticket = rand(0, $this->total);

        foreach ($this->players as $player)
            if ($ticket >= $player->tickets[0] && $ticket <= $player->tickets[1])
                return $player;
        return false;
    }
}

class Player {
    public $name = '';
    public $value = 0;
    public $tickets = array(0, 0);

    function __construct($name, $value) {
        $this->name = $name;
        $this->value = $value;
    }
}

$ticketMaster = new TicketMaster();

$ticketMaster->addPlayer(new Player("John", 200));
$ticketMaster->addPlayer(new Player("Mike", 200));
$ticketMaster->addPlayer(new Player("Dave", 1000));

echo $ticketMaster->selectWinner()->name;

Dar mie nu prea imi pare asemanator ..,nu il inteleg complet oricum..

Vreau sa stiu cum as putea sa iau sistemul (jocul ) , sa il modific si sa il implementez unde am eu nevoie. 

Am nevoie de el in 14 zile , nu cred ca daca o iau de la 0 cu php ajung undeva..

Are cineva vreo sugestie? De unde sa incep ? Orice link sau tutorial e apreciat .

Imi pare rau pentru greselile de exprimare sau de gramatica , nu mai stau in tara de mult

 

Share this post


Link to post
Share on other sites

Salut!

Presupun ca nu ai alte cunostinte de programare in afara de ce ai mentionat deja, pentru a intelege codu' de mai sus ai putea sa cauti infomatii de baza despre OOP(Object Oriented Programming), clase, obiecte, constructori, metode, encapsulare  si eventual sa treci prin niste tutoriale sa te obisnuiesti putin si cu PHP.

 

Legat de proiect, depinde cat de mare vrei sa-l faci si ce vrei sa faci cu el.Oricum,s-ar putea sa ai sau nu nevoie sa te gandesti la  urmatoarele:

#1. un sistem de useri(inregistrare, logare,implicit sesiune, pagina profil,etc)

#1. 1.unde tii informatiile despre useri(nume,parola,mail, credite etc)? folosesti un sistem de login bazat pe facebook/steam etc ? ai nevoie de o baza de date,eventual SQL in care sa tii datele?

 

#2. cum apar creditele? fiecare user primeste un numar pentru inceput si i se aduna/scad cand castiga/pierde pe parcurs? se cumpara cu card/crypto/cartofi? se iau din inventarul unui joc/de pe steam?

 

Quote

sansa de castig e proportionala cu numarul de "credite" care il depui sa intri in joc

#3. asta implica putina matematica, in functie de cat de tare vrei sa-i favorizezi pe cei cu numarul de credite mai mare? cum faci sa fie relativ fair sistemul incat sa nu castige mereu cine putin cel mai mult?(asta e optionala, depinde de tine cum vrei sistemu' asta)  --de treaba asta ar trebui sa se ocupe un manager de joc aka TicketMaster de mai sus de exemplu

 

#4. cat de "frumos",  vizual vorbind vrei sa fie? (implica sa iei datele de la php si sa le aranjezi cu js/css/html)

 

*** Mai sunt si problemele de securitate care pot sa apara in functie de implementare***

 

 

  • Thanks 1
  • Upvote 1

Share this post


Link to post
Share on other sites

Timelord , mersi pentru sfaturile de mai sus. M-am apucat deja de tutoriale de php , am luat niste cursuri iar acum incerc sa invat cat pot. Am inceput deja sa fac un sistem de log in cu o baza de date pe local host si ma tot joc cu ea. Sper sa pot macar sa ma apuc de proiectul meu in 2 luni. Pot sa invat destul php pana atunci , right? :))

Share this post


Link to post
Share on other sites

@individual14XX Oricand ^__^

Nu e nevoie sa devii un guru al PHP-ul(sau al oricarui alt limbaj) inainte sa te apuci de proiect, numai sa simti cum merge si ce posibilitati are limbaju'/paradigma(OOP si procedurala), dupa care sa iti faci un design(schema) initial cu ce lucruri ai nevoie si dupa daca ceva nu merge la unul dintre ele sau nu stii de unde sa le apuci bagi research, cauti ce functii care te-ar ajuta exista(nu te apuca sa reinventezi roata, desi amuzant, uneori mananca timp si s-ar putea s-o faci mai prost ca ce e deja in limbaj/librarie) etc.

Incearca sa nu ramai impotmolit in lucruri de genul "ah, nu-mi iese nustiuce pe care l-am facut nustiucum" aka sa nu-ti fie frica sau lene sa stergi bucata aia de cod sa refaci de la 0 eventual in alt mod care ar merge.

Also, desginu' initial, am zis initial pentru ca probabil o sa-l schimbi o sa mai adaugi/scoti lucruri, nu e ceva fix cand faci un proiect de capul tau fara specificatii, doar sa nu o dai nici in extrema cealalta si sa ajungi sa ai o shaorma cu de toate.

O sa ma opresc acum,deja o dau in offtopic, bafta in continuare ^___^

  • Like 1
  • Upvote 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...