Avatar
David Čápka
Tým ITnetwork
Avatar
David Čápka:

Zdravím všechny programátory, co dělají do PHPčka! V minulosti tu bylo spoustu dotazů na AJAX a proto bude minisoutěž o placku a samolepky na tento týden právě o něm (můžete si vybrat, jestli chcete placku na PHP nebo JS).

Naprogramujte jednoduchou diskuzi v PHP s použitím MySQL databáze (stačí ukládat jen přezdívku a text příspěvku). Do diskuze přidejte několik desítek komentářů, nebojte se za tímto účelem použít for cyklus s nějak jednoduše třeba náhodně skládanou větou z pár slov, nemusí dávat smysl. Zatím hračka na pár minut, ne?

K diskuzi naprogramujte AJAXový skript, který po scrollování na poslední příspěvek načte několik dalších (a tak až do konce diskuze). Určitě se vám takový skript hodí. Pokročilejší ho mohou zkusit udělat univerzální.

Jako vždy se snažte o objektovou aplikaci.

Protože jsem se rozhodl pečovat o své duševní zdraví, nebudu hodnotit řešení, která obsahují SQL injekce, kde nefunguje diakritika nebo obsahují nějakou podobnou zásadní chybu, které zde v diskuzích stále omíláme.

Aplikaci při odevzdání prosím nahrajte na nějaký freehosting. Deadline si dejme v pondělí 17.2. v 10:00.

Podrobnější pravidla soutěží: http://www.itnetwork.cz/…outezi-machr

Odpovědět  +7 11.2.2014 21:19
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
David Čápka
Tým ITnetwork
Avatar
David Čápka:

Ještě jsem zapomněl tradiční obrázek placek, tak tady je.

Nahoru Odpovědět  +1 11.2.2014 21:20
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Odpovídá na David Čápka
Michal Žůrek (misaz):

sakra, takové pěkné zadání, zrovna když nemám moc času. Každopádně mě to láká, tak asi něco budeme muset přesunout, ach to je zas situace.

Nahoru Odpovědět  +2 11.2.2014 21:27
Nesnáším {}, proto se jim vyhýbám.
Avatar
Juraj Mlich
Redaktor
Avatar
Nahoru Odpovědět 11.2.2014 21:57
Vždy je lepšie učiť sa z cudzích chýb, než z vlastných chýb.
Avatar
Zdeněk Bauer
Redaktor
Avatar
Odpovídá na Juraj Mlich
Zdeněk Bauer:

Co v tom prosimtě chceš psát v Nette? Připojení k databázi? o_O
Toto mi spíše přijde jako machr na JS :D

 
Nahoru Odpovědět 11.2.2014 22:36
Avatar
Juraj Mlich
Redaktor
Avatar
Odpovídá na Zdeněk Bauer
Juraj Mlich:

Celú "aplikáciu" ?

Ide hlavne o precvičenie vedomostí. A pri reálnom projekte, ktorý je v napísaný za použitia Nette, by som to využil a kedže Nette používam každý deň, bola by to ďalšia mini-skúsenosť ako toto implementovať.

Nahoru Odpovědět 11.2.2014 22:41
Vždy je lepšie učiť sa z cudzích chýb, než z vlastných chýb.
Avatar
Martin Konečný (pavelco1998):

Nette bych taky rád použil, ale je pravda, že pro takovou minivěc je to zbytečný. Měl bys tam akorát jeden presenter, jeden model, jednu formulářovou komponentu a zpracování jednoho/dvou signálů.

 
Nahoru Odpovědět 11.2.2014 22:46
Avatar
Silvinios
Redaktor
Avatar
Odpovídá na David Čápka
Silvinios:

Rozumím správně, že diskuzní příspěvky mohu vložit přímo do databáze a aplikace v PHP je bude pouze zobrazovat? Vkládat nové příspěvky z aplikace nebude možné.

 
Nahoru Odpovědět 12.2.2014 7:24
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Silvinios
David Čápka:

Ačkoli jsem to tak nemyslel, zadání se takto dá pochopit a je tak i splněné. Ale přidat formulář o 2 polích je práce na 5 minut :)

Nahoru Odpovědět  +1 12.2.2014 20:05
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Juraj Mlich
David Čápka:

Můžeš si to zkusit v Nette, ale nebudu tě potom moct ohodnotit, protože v něm nedělám.

Nahoru Odpovědět 12.2.2014 20:07
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Odpovídá na David Čápka
Michal Žůrek (misaz):

oni se asi bojí ošetřovaní injekce :D nemůžeš je tak strašit, bez nich by se "hackeři" nudili.

Editováno 12.2.2014 20:08
Nahoru Odpovědět  ±0 12.2.2014 20:07
Nesnáším {}, proto se jim vyhýbám.
Avatar
Old Account
Člen
Avatar
Odpovídá na Michal Žůrek (misaz)
Old Account:

Spravny hacker vzdy najde cestu, ako aplikaciu zneuzit, a ver mi, ze je vela inych sposobov, ba i lepsich nez SQLi.

Nahoru Odpovědět  +2 12.2.2014 21:02
"If you keep your eye on the profit, you’re going to skimp on the product. But if you focus on making really gre...
Avatar
Silvinios
Redaktor
Avatar
Odpovídá na Old Account
Silvinios:

Nechtěl bys o tom napsat článek? Bezpečnost webových aplikací je zajímavé téma ;)

 
Nahoru Odpovědět  +1 12.2.2014 21:20
Avatar
Old Account
Člen
Avatar
Odpovídá na Silvinios
Old Account:

Ak si najdem cas, mozem nieco napisat, kazdopadne by som nedufal, ze to bude este tento mesiac.

Nahoru Odpovědět 12.2.2014 21:39
"If you keep your eye on the profit, you’re going to skimp on the product. But if you focus on making really gre...
Avatar
Marek Z.
Redaktor
Avatar
Odpovídá na Silvinios
Marek Z.:

Doporučuji toto video z prezentace Michala Špačka.. ;)

http://www.youtube.com/watch?…

Nahoru Odpovědět  +3 13.2.2014 8:57
Chybami se člověk učí, běžte se učit jinam!
Avatar
dzejkob
Neregistrovaný
Avatar
dzejkob:

Nešla by prodloužit deadline do dalšího pondělí?

 
Nahoru Odpovědět 16.2.2014 18:17
Avatar
Ondrca
Redaktor
Avatar
Odpovídá na dzejkob
Ondrca:

Já si myslím, že ne - času na to bylo stejně jako u ostatních machrů a jestli to nikdo nestihne tak bude někdy příště stejné téma. A taky se to musí prostřídat, když teď sdraco nemá moc času protože přepisuje systém a kvůli tomu je teď pouze 1 machr.

Nahoru Odpovědět  +1 16.2.2014 18:23
Zase jsem o něco chytřejší
Avatar
dzejkob
Neregistrovaný
Avatar
dzejkob:

No já to tady chvíli sleduju - že bych si nějakýho machra taky zkusil - ovšem to jsem nevěděl, že pondělí 17 je už zítra. Přitom tady žádný řešení ještě vystavený není.

 
Nahoru Odpovědět 16.2.2014 18:47
Avatar
Michal Žůrek (misaz):

Kruci časem mi to vůbec nevyššlo, včera jsem slavil narozeniny a dneska jsem měl celodenní školení a přes týden jsem řešil soutěže do školy (deadline se blíží mílovými kroky), kdyby byl deadline zítra později, tak bych možná něco vykutil, víc mi vyhovoval v 18:00.

Nahoru Odpovědět 16.2.2014 18:58
Nesnáším {}, proto se jim vyhýbám.
Avatar
done
Člen
Avatar
Odpovídá na dzejkob
done:

Hodlám to dnes sdracovi posílat, a bylo by to vůči těm co to udělají nefér oddalovat.

 
Nahoru Odpovědět 16.2.2014 19:02
Avatar
David Čápka
Tým ITnetwork
Avatar
David Čápka:

Zaznamenal jsem jen řešení od done, zřejmě máme prázdniny. Tak alespoň bude mít soukromé hodnocení.

Co se týče toho MySQL ovladače, tak s DB můžeš pracovat pomocí PDO i bez znalosti objektů. Stačí ti stáhnout si místní wrapper, je součástí tohoto tutoriálu: http://www.itnetwork.cz/…eni-wrapperu. Potom píšeš jen DB::dotaz(). Budu ho lépe popisovat i pro začátečníky, ale chvíli potrvá, než se k tomu dostanu.

Přijde mi divné, když skriptu vypiš odesíláš data přes POST. K dotazu na data je metoda GET, v JS by tedy bylo něco jako vypis.php?pocet=...

Co jsem vyčetl z toho JS, tak stále na pozadí aktualizuje data. V zadání je: "K diskuzi naprogramujte AJAXový skript, který po scrollování na poslední příspěvek načte několik dalších", nevím, jestli to splňuje zadání.

Máš to docela pěkně napsané, jen ten JS by mohl být přehlednější. Že jsi sám, tak ti tu placku dám, ale pod podmínkou, že se naučíš s tím wrapperem a zapomeneš na funkce s mysql prefixem! :P Napiš x adresu. Jestli to chceš publikovat, tak uprav tu databázi pro PDO.

Nahoru Odpovědět  +1 17.2.2014 12:15
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Ondrca
Redaktor
Avatar
Odpovídá na David Čápka
Ondrca:

Nemohl bys nového machra vyhlásit už dneska?

Nahoru Odpovědět  ±0 17.2.2014 12:42
Zase jsem o něco chytřejší
Avatar
done
Člen
Avatar
Odpovídá na David Čápka
done:

Metodu $.post tam používám na odesílání vstupu od uživatele a také aby PHP zkontrolovalo, zda nejsou nové zprávy, ale posílám tím počet vypsaných zpráv a PHP vrací pouze počet, takže myslím že je to použito správně a příspěvky vypisuji pomocí $.get. Každopádně se omlouvám za to mysql_connect, četl jsem tady tutoriály na ovladač PDO od Kita a taky trošku na php.net, ale stále jsem si nezvykl to používat ve všech projektech, ale určitě si stáhnu ten wrapper a začnu s tím.
Jelikož jsem byl jediný, tak mi přijde nefér odnést si placku, nepřišlo by mi to zaloužené :) Zkusím si jí "vybojovat" v příštím Machrovi.

 
Nahoru Odpovědět  +3 17.2.2014 18:10
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 23 zpráv z 23.