These are chat archives for mosbth/oophp

3rd
Apr 2018
mosbth @mosbth läste igenom redovisningstexterna på kmom01 i forumet för att få lite koll på läget.
thba17
@thba17
Apr 03 10:30
kmom01 uppgift 2 (gissa numret med SESSION)
Kanske gör det svårare än det är... I htmlphp lärde vi oss att en session startas med session_start() som skall ligga i config.php.
Men varje gång spelsidan laddas om skapas ju en ny session. Så då tappar man ju alla värden som satts i $_SESSION - väl???
När jag sen försöker göra $_SESSION['game'] = new Guess($number, $tries); får jag felet object(__PHP_Incomplete_Class)
Har jag missuppfattat uppgiften eller tekniken?
Mikael Roos
@mosbth
Apr 03 15:48
nje, det som ligger i $_SESSION är "samma" hela tiden. Det räcker att du initierar objektet en gång och lagrar det i sessionen, sen är det samma objekt när du kommer tillbaka i nästa sidladdning.
Man kan starta med ett tomt, oinitierat objekt och spara det i sessionen. Sedan kan man använda samma objekt hela tiden.
Anette
@anebar
Apr 03 21:30
kmom01, uppg 2. Guess.php: function __construct
` * Constructor to initiate the object with current game settings,
 * if available. Randomize the number if null is sent in.
 *
 * @param int $number The current secret number, default -1 to initiate
 *                    the number from start.`
  1. Tänker mig att man behöver göra random om -1 skickas in som $number. Då startar spelet. Är det tänkt så?
  2. Eftersom funktionsanropet är definierat så att $number ska vara en int så kan jag inte skicka in null (=> krasch). Vad menas med att null kan skickas in?
Mikael Roos
@mosbth
Apr 03 21:31
Gör en dbwebb update så bör referensen till null försvinna. Jag uppdaterade den kommentaren häromdagen.
Anette
@anebar
Apr 03 21:37
Ja, nu står det "Randomize the current number if no value is sent in.". Men jag är fortfarande inte med.
Tänker mig att man behöver göra random om -1 skickas in som $number. Då startar spelet. Är det tänkt så?
Dvs skickar man inte in ngn parameter så är $number = -1 samt kan man skicka in -1.
Mikael Roos
@mosbth
Apr 03 21:39
Skicka inte in något alls, så blir defaultvärdet -1. Men det är same-same som att skicka in argumentet -1. Om så sker, slumpa fram ett tal.
Anette
@anebar
Apr 03 21:39
Ok. Då är det som jag tänkte. Fint.
"Man skall kunna initiera ett objekt av klassen, genom att injecta information såsom det gissade talet och antalet gissningar gjorda. I mall-klassen injectas informationen via konstruktorn."
Vad menas med "det gissade talet"? Det är väl detsamma som det hemliga talet? Inte gissningen man gör?
Mikael Roos
@mosbth
Apr 03 21:45
Ja, du har koll.
Om du ger mig länken till artikeln så lagar jag den meningen.
En till fundering: "Det skall finnas en länk/knapp som möjliggör omstart. Talet ska då slumpas om och antalet gissningar ska nollställas."
Antalet gissningar ska väl sättas till defaultläget, dvs 6?
Mikael Roos
@mosbth
Apr 03 21:54
Japp. Eller, antalet gjorda gissningar nollställs, antalet kvarvarande möjliga gissningar sätts till defaultläget.
Anette
@anebar
Apr 03 22:04
ok
Mikael Roos
@mosbth
Apr 03 23:04
Eraly adopters kan nu ta sig an kmom03: https://dbwebb.se/f/59860