Autor Zpráva
Filipup
Profil *
Dobrý den,
ve škole jsme dostali za úkol přes vánoční prázdniny naprogramovat jeden z několika programů, tak jsem se do toho pustil. Vybral jsem si hru oko bere, avšak už v počátcích v tom jsem až po uši. Dostal jsem se k věci, kdy uživatel resp. hráč tahá z balíčku karet svoji kartu. To jsem zařídil tak, že jsem si dělal pole a po obnově stránky se vždy jedna z těchto karet vytáhne. Jenže já nevím, jak zařídit, aby se právě uložená karta uložila do paměti jako session proměnná a k té bych mohl přičítat další hodnotu karet až bych dosáhl či nedosáhl hodnoty 21. Nevíte někdo, jak bych to mohl zařídit? A ještě menší otázka, moje pole vypadá následovně:
$pole = Array("Karta7", "Karta8", "Karta9", "Karta10", "KartaJ", "KartaQ", "KartaK", "Eso");
ke kartám jsem dále přiřadil jejich obrázek ($pole[0] = .....), ale já bych potřeboval ještě docílit ještě toho, že ke každé kartě přiřadím její hodnotu, tzn. že třeba karta7 bude mít hodnotu sedm...poradíte někdo?
předem děkuji
Alphard
Profil
Nevím, jestli dobře chápu problém, ale do session lze ukládat pole. Takže tam můžete vložit vše, co potřebujete.
Filipup
Profil *
Já se omlouvám, zapsal jsem to trochu nepřesně. Vaši radu přijímám, hned to vyzkouším a uvidím, ale abych vše uvedl na pravou míru, myslel jsem to tak. Uživatel vygeneruje číslo, které se uloží, následně vygeneruje další, které se přičte k tomu prvnímu. A tenhle proces bude pokračovat tak dlouho, dokud hráč dosáhne co nejbližší výsledku k číslu 21. Jde mi o to, aby se to dané vygenerované číslo uložilo a smazalo se tehdy, kdy k tomu dá uživatel příkaz.
Alphard
Profil
Filipup:
Uživatel vygeneruje číslo, které se uloží, následně vygeneruje další, které se přičte k tomu prvnímu.
Nestačilo by tohle?
$_SESSION['cislo'] += $nahodneCislo;

a smazalo se tehdy, kdy k tomu dá uživatel příkaz.
unset()?
Albert
Profil *
Alphard:
Když jsem to vyzkoušel, tak mi prohlížeč sdělil, že to je nepodporovaný operand. Tak nevím.
Alphard_
Profil *
Prohlížeč? Jsou to instrukce pro PHP interpreta. Mělo by to fungovat, je to korektní zápis PHP skriptu.
tomek
Profil *
Alphard:
$_SESSION['cislo'] += $nahodneCislo;
nefungovalo by spíš toto?
$_SESSION['cislo'] .= $nahodneCislo;
panther
Profil
tomek:
obojí jsou korektní zápisy v PHP, ekvivalentní nejsou. Co který dělá, si snadno můžeš s nějakými dosazenými daty vyzkoušet.
anonymní
Profil *
Albert:
to bude zřejmě tím, že ta proměnná nemá při prvním načtení žádnou hodnotu, při prvním načtení tam ulož to náhodné číslo a v dalších ho jen přičítej
if (!isset($_SESSION['cislo'])) {
  $_SESSION['cislo'] = $nahodneCislo;
} else {
  $_SESSION['cislo'] += $nahodneCislo;
}

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0