Autor Zpráva
Jcas
Profil *
A stále dokola stejné dotazy. - Omlouvám se
Můj dotaz bude tak triviální, že asi nepochopíte, na co se ptám.
Studuji PHP a první věc, co chi udělat je anketa. Už jsem toho pročetl hodně, ale nemůžu najít vysvětlený základ. tj. přepsání hodnot výsledků.

1. na určité místo si includuji php anketa.php
2. php si otevře soubor s výsledky a dle toho zobrazí počet hlasování a jak se hlasovalo.
Nevím jak na první použití, kdyz v souborech nic není/ asi otevřít soubor s výsledky a zapsat tam nulu.
3. hlasuji = odešu formulář a tím předám výsledky do proměnných, které uložím do souboru s výsledky.
4. a dál???

Je mi jasné, že kdybych teď zova načetl stránku, tak už se moje hlasování zobrazí. Ale chci, aby se graf přepsal.
ps. nevím co mám vyhledávat, abych našel odpověď.
děkuji
Lamicz
Profil
Dělejte to přes databázi, tohle není vhodné na použití souborů
AM_
Profil
Jcas:

2 - dej si tam podmínku - pokud soubor neexistuje, tak proměnné naplníš prázdnými hodnotami nebo vypíšeš třeba "ještě nikdo nehlasoval" - funkce file_exists()
4 - co bys chtěl dělat dál? zobrazit výsledky už umíš (bod 1 a 2), uložit nové hlasování také (bod 3)
AM_
Profil
Lamicz:
Pokud je to první skript, tak klidně do souborů. V uložení triviálního souboru o pár číslech pro každou anketu nevidím problém.
Jcas
Profil *
AM:
co bys chtěl dělat dál? zobrazit výsledky už umíš (bod 1 a 2), uložit nové hlasování také (bod 3)
Takže celý trik je v tom, že udělám kolečko? Provedu znovu include? To je celé?

web page

<div><?php include("anketa.php");?></div>


anketa.php

<? kod........?>
<form.....>.......$vysledek...</form>
<? include ("anketa.php")?>


Tohle zajistí, že se přepíší hodnoty hlasování?
Danqo
Profil
Keď chceš aby sa hlas zobrazil bez obnovenia stránky tak by si si mal preštudovať ajax. Daju sa s ním robiť naozaj úžastné veci :) ináč ti neostáva nič iné (pravdepodobne) len refreshnut stránku po každom hlasovaní napr. hearedom. Ajax by ti spravil vlastne to isté, len by ti tu stránku "refreshol" avšak nepostrehnuteľne.
AM_
Profil
a proč bys prováděl znovu include? na jedné stránce se zobrazí aktuální stav ankety a formulář pro hlasování, víc nepotřebuješ. Takhle se ti pouze anketa zobrazí dvakrát.
Jcas
Profil *
Stále nechápu, jak to kolečko uzavřu.
1. zobrazím form a dosadím si do něj hodnoty ze souboru
2. odesláním formuláře získám proměnné, které zapíšu do souboru.
V tomto okamžiku script zkončí, protože provedl vše co má.
3. A teď potřebuji znova zobrazit form, čili znova udělat krok č.1

Už jsem našel řešení přes dva soubory, funkci header a metodu GET. Ale stále nemůžu najít, jak se to dělá na úrovni jednoho souboru a pomocí mety POST.
Je řešením funkce, která volá sama sebe?
Danqo
Profil
Jcas:
hovorim nastuduj si ajax... Uz ked to chces silou mocou spravit cez header tak po ulozeni do suboru zavolaj header na refresh na stranku s anketou... takze ak uzivatel napriklad hlasuje z index.php ty odosles data v ankete po ulozeni do suboru zavolaj
header("Location: index.php"); 

aj tak ti hovorim nastuduj si ajax...

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: