Diskuze: Hodnocení pomocí hvězdiček

PHP PHP Hodnocení pomocí hvězdiček American English version English version

Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Zdeněk Pavlátka:

Potřeboval bych poradit s tvorbou hodnocení aplikací na svých stránkách. Mohl by mi to prosím někdo vysvětlit? Na googlu jsem našel jen příšerné ukázky kódu bez pořádného popisu.

Odpovědět 28.1.2014 17:05
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Filip Pýrek
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Filip Pýrek:

A čemu že to přesně nerozumíš?

Nahoru Odpovědět 28.1.2014 17:10
„The best way to predict the future is to invent it.“ — Alan Kay
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Filip Pýrek
Zdeněk Pavlátka:

Jak je umístit na stránku, aby se měnily při najetí myší a volba se odeslala na server.
Edit: S uložením hlasu do databáze a získáním průměru z hlasů při generování stránky bych neměl problém.

Editováno 28.1.2014 17:13
Nahoru Odpovědět 28.1.2014 17:12
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Juraj Mlich
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Juraj Mlich:

JavaScript/jQuery a AJAX :) pri "najetí" myši na hviezdičku zmeníš src obrázku alebo nehradíš celý obrázok ... a pri kliknutí to odošleš ajaxom - http://api.jquery.com/jquery.ajax/ (alebo normálne pomocou presmerovania)

Nahoru Odpovědět 28.1.2014 17:14
Vždy je lepšie učiť sa z cudzích chýb, než z vlastných chýb.
Avatar
Michal Žůrek (misaz):

místo obrázku, můžeš použít obrázkové fonty, půjde ten hover napsat i v CSS.

Nahoru Odpovědět 28.1.2014 17:15
Nesnáším {}, proto se jim vyhýbám.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Juraj Mlich
Zdeněk Pavlátka:

Trochu podrobněji by to nešlo?

Nahoru Odpovědět 28.1.2014 17:17
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Filip Pýrek
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Filip Pýrek:

Vložíš si vedle sebe hvězdičky(třeba divy) a ještě jim dáš atribut data-rating="1,2,3 etc.". Při najetí na hvězdičku stačí zjistit jaký má ta hvezdička rating a podle toho to vykreslit. Potom při kliknutí se pomocí ajaxu odešlou data do php souboru(dál si to musíš nějak zabezpečit)

Editováno 28.1.2014 17:18
Nahoru Odpovědět 28.1.2014 17:17
„The best way to predict the future is to invent it.“ — Alan Kay
Avatar
Honza Bittner
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Honza Bittner:

Máš, nejčastěji, 5 hvězdiček. Ty chceš, aby když klikneš na 4. hvězdu, tak aby byly změněné všechny 4. To asi v CSS nepůjde, proto musíš využít JS.

To uděláš tak, že vlastně ty hvězdičky mají v nějakém <div class="hodnoceni"> svůj index, takže když šáhneš na 4., index máš 3 (počítá se samozřejmě od 0) a jen stačí změnit obrázek všem hvězdám co mají index <= 3.

Po kliku na hvězdu se ti odešle třeba ten index + 1 a uloží se ke článku. :)

Takto nějak bych to udělal já. :)

Editováno 28.1.2014 17:19
Nahoru Odpovědět 28.1.2014 17:17
Ptejte se mě na cokoli na https://github.com/HoBi/ama a followujte mě na Twitteru https://twitter.com/tenhobi. :-)
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Honza Bittner
Zdeněk Pavlátka:

A ten AJAX se používá jak? Nikdy jsem ho nepoužíval.

Nahoru Odpovědět 28.1.2014 17:20
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Juraj Mlich
Redaktor
Avatar
Nahoru Odpovědět 28.1.2014 17:21
Vždy je lepšie učiť sa z cudzích chýb, než z vlastných chýb.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Nahoru Odpovědět 28.1.2014 17:23
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Honza Bittner
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Honza Bittner:

Co dělá AJAX :

Vlastně ty máš nějaký PHP na serveru, a JS pro klienta.
Ale můžeš v JS zavolat AJAXem nějaký script na serveru a třeba vytáhnout z databáze po kliku na tlačítko nějaký text nebo tak.

Nahoru Odpovědět  +1 28.1.2014 17:26
Ptejte se mě na cokoli na https://github.com/HoBi/ama a followujte mě na Twitteru https://twitter.com/tenhobi. :-)
Avatar
Honza Bittner
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Honza Bittner:

Pak někdy ukážu základy AJAXu přes jQuery :)

Nahoru Odpovědět  +1 28.1.2014 17:26
Ptejte se mě na cokoli na https://github.com/HoBi/ama a followujte mě na Twitteru https://twitter.com/tenhobi. :-)
Avatar
Filip Pýrek
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Filip Pýrek:
$.ajax({
  type: "POST",
  url: "adresa php souboru",
  data: {pocetHvezdicek:4, dalsidata:"..."},
  success: function(){
             window.alert("Váš hlas byl zaznamenán")ů
      }
});
Editováno 28.1.2014 17:29
Nahoru Odpovědět 28.1.2014 17:29
„The best way to predict the future is to invent it.“ — Alan Kay
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Honza Bittner
Zdeněk Pavlátka:

Takže něco na styl

var request = $.ajax({
  url: "PHP/rate.php",
  type: "POST",
  data: { starId : 4 }
});

?

Nahoru Odpovědět 28.1.2014 17:29
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Nahoru Odpovědět 28.1.2014 17:30
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Honza Bittner
Redaktor
Avatar
Odpovídá na Zdeněk Pavlátka
Honza Bittner:

Tak nějak, v PHP si jen načteč to starId a s tím pak pracuješ. :)

Dělá se to nejlépe tak, aby to vše běželo i bez JS, tzn. když je JS zaplý, udělá se to přes AJAX, když ne, udělá se to s reloadem stránky. :)

Nahoru Odpovědět 28.1.2014 17:31
Ptejte se mě na cokoli na https://github.com/HoBi/ama a followujte mě na Twitteru https://twitter.com/tenhobi. :-)
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Honza Bittner
Zdeněk Pavlátka:

To už je na mě moc složité. :D

Nahoru Odpovědět 28.1.2014 17:33
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Honza Bittner
Zdeněk Pavlátka:

Ještě otázka mimo téma - Jak vyřešit počet stažení aplikace?

Nahoru Odpovědět 28.1.2014 17:49
Kolik jazyků umíš, tolikrát jsi programátor.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 19 zpráv z 19.