Přejít na obsah


Fotka

Formulář pro earthky


  • Pokud chcete vložit odpověď, přihlašte se
41 odpovědí na toto téma

#1 KRON family

KRON family

    Advanced Member

  • Members
  • PipPipPip
  • 1 996 příspěvků(y)

Publikováno 24 květen 2012 - 8:25

EDITOVÁNO:
Pokud máte založenou vlastní earthku a nebaví vás na e-mailu číst správné (nebo špatné) odpovědi, můžete e-mailové odesílání odpovědí nahradit formulářem. Webovou aplikaci EarthForm vytvořil niximor a naleznete ji na earth.gcm.cz.

Původní zpráva:
Pokud máte založenou vlastní earthku a nebaví vás na e-mailu číst správné (nebo špatné) odpovědi, můžete e-mailové odesílání odpovědí nahradit formulářem. Na přání reviewera zveřejňuji zdrojový kód, který si můžete libovolně upravit.
Zdroják tady.
Programující kačeři si s tím zajisté poradí sami, pro ty neprogramující menší návod:
- stačí přepsat věci označené modře a červeně (občas vám poradí poznámky šedě na konci řádku)
- kód nahrát jako soubor PHP na nějaký freewebhosting (např. ic.cz)
Formulář je standartně dělán na čtyři otázky, s tím že:
- na první otázku je jen jedna správná odpověď
- na druhou otázku jsou možné dvě správné odpovědi
- na třetí otázku je správnou možností číslo z předem navolené řady
Samozřejmě není problém si to upravit například tak, aby na druhou otázku byla jen jedna správná odpověď - stačí odstranit

|| $odp2 == (strtolower("dalsi spravna odpoved na druhou otazku"))

Naopak pokud budeme chtít dvě možné odpovědi i na první otázku, stačí tohle samý překopírovat na řádek u správné odpovědi na první otázku před poslední závorku (nezapomeňte přepsat $odp2 na $odpX kde X je číslo otázky).
Pokud byste chtěli například na třetí otázku také odpověď písemnou, stačí najít řádek

if ($odp3>4 && $odp3<12)

a nahradit jej za

if ($odp3 == (strtolower("spravna odpoved na prvni otazku")))

Pokud nemáte kam takový PHP soubor nahrát, stačí napsat, hodím to k sobě.
Ještě malé vysvětlení: Je to dělané tak, že za každou správnou odpověď získá řešitel nějaký (vámi zvolený) počet bodů, a pokud celkem získá (vámi zvolený) počet bodů, jeho nick (společně s datumem, časem a získaným počtem bodů) se připíše do souboru databaze.txt. Tam si to můžete třeba jednou za měsíc zkontrolovat, ten txt soubor smazat, a takhle.
Jen pro příklad jak to pak vypadá: GC3DPVQ

Je to taková první verze, a je jasné, že "pro většinu lidí to bude španělská vesnice". Takže pokud by se toho někdo chytil a upravil to do uživatelsky příjemnější verze, bude jen dobře.
  • 0

#2 mpik

mpik

    Advanced Member

  • Members
  • PipPipPip
  • 4 980 příspěvků(y)

Publikováno 24 květen 2012 - 8:52

Už vidím problém. Někdo napíše s diakritikou, někdo bez ní. Takže mimo strtolower by to chtělo nějakou funkci na odstranění diakritiky. Lze tam napsat, ať píšou bez diakritiky, ale tohle by bylo čistější. Navíc spousta lidí napíše nějaké synonymum, takže asi na konci by při opakovaném neúspěchu měla být možnost zaslat odpovědi mailem.
  • 0

#3 niximor

niximor

    Advanced Member

  • Members
  • PipPipPip
  • 553 příspěvků(y)

Publikováno 24 květen 2012 - 9:09

iconv
  • 0
Správce gcm.cz | cwg.gcm.cz

#4 KRON family

KRON family

    Advanced Member

  • Members
  • PipPipPip
  • 1 996 příspěvků(y)

Publikováno 24 květen 2012 - 9:10

Pro synonyma je tam právě v tom vzoru ta druhá odpověď, kam se prostě může napsat za sebe kolik chceme synonym. Odstranění diakritiky jsem zkoušel, ale funkce nereagovala. Ještě na to mrknu odpoledne, s tím že řešitelé by tedy pak mohli psát i odpovědi s diakritikou...
  • 0

#5 niximor

niximor

    Advanced Member

  • Members
  • PipPipPip
  • 553 příspěvků(y)

Publikováno 24 květen 2012 - 9:12

vubec koukam na ten kod, nejake osetreni vstupu koukam vubec neresis... no, osobne bych se takovymhle kodem radeji nechlubil :)
  • 0
Správce gcm.cz | cwg.gcm.cz

#6 KRON family

KRON family

    Advanced Member

  • Members
  • PipPipPip
  • 1 996 příspěvků(y)

Publikováno 24 květen 2012 - 9:32

Ošetření vstupu jen vypadlo při přepisování kódu, to bude rychlovka.
S tou diakritikou si ale rady nevím...
Iconv mi nereaguje.
Našel jsem

$text = strtr($text, 'áäčďéěëíµňôóöŕřšťúůüýžÁÄČĎÉĚËÍĄŇÓÖÔŘŔŠŤÚŮÜÝŽ', 'aacdeeeilnooorrstuuuyzaacdeeelinooorrstuuuyz');

jenže po uložení na server se mi změní znaky na entity, takže z toho mám

$text = strtr($text, 'áäčďéěëíµňôóöŕřšťúůüýžÁÄČĎÉĚËÍĄŇÓÖÔŘŔŠŤÚŮÜÝŽ', 'aacdeeeilnooorrstuuuyzaacdeeelinooorrstuuuyz');

což samozřejmě taky nejede...

EDIT: Tady se zase změní entity zpátky na znaky, ale snad tomu je rozumět co mi z toho vznikne...
EDIT2: A ještě k tomu koukám, že strtolower nefunguje na znaky s diakritikou... Takže to přeci jen nechám bez diakritiky, a když to někdo jiný zprovozní do funkčnosti s diakritikou, budu jen rád.
  • 0

#7 maaaca

maaaca

    Advanced Member

  • Members
  • PipPipPip
  • 688 příspěvků(y)

Publikováno 24 květen 2012 - 10:02

Ja uz dlouho spokojene pouzivam formular z Google Docs...
  • 0

#8 mpik

mpik

    Advanced Member

  • Members
  • PipPipPip
  • 4 980 příspěvků(y)

Publikováno 24 květen 2012 - 10:35

V programátorském pravěku jsme konverze řešili tabulkou, jednorozměrným polem. To bylo blbovzdorné. Ale tady by to mohlo narazit na různé kódování, nebo na automatické překódovávání na serveru, nevím. V PHP jsem dělal jen párkrát
  • 0

#9 puczmeloun

puczmeloun

    Advanced Member

  • Members
  • PipPipPip
  • 1 350 příspěvků(y)

Publikováno 24 květen 2012 - 12:27

maaaca napsal/a:
Ja uz dlouho spokojene pouzivam formular z Google Docs...

Super nápad, hned jsem ho aplikoval - mail už mě začal pěkně štvát :D
  • 0
Užívej života...

#10 dr.vota

dr.vota

    Advanced Member

  • Members
  • PipPipPip
  • 4 091 příspěvků(y)

Publikováno 24 květen 2012 - 13:00

niximor napsal/a:
vubec koukam na ten kod, nejake osetreni vstupu koukam vubec neresis... no, osobne bych se takovymhle kodem radeji nechlubil :)

pššššt! Třeba by někdo mohl chtít známému hackerovi hacknout jeho server ;)B)
  • 0

#11 mpik

mpik

    Advanced Member

  • Members
  • PipPipPip
  • 4 980 příspěvků(y)

Publikováno 24 květen 2012 - 15:35

Tiskar94 napsal/a:

$text = strtr($text, 'áäčďéěëíµňôóöŕřšťúůüýžÁÄČĎÉĚËÍĄŇÓÖÔŘŔŠŤÚŮÜÝŽ', 'aacdeeeilnooorrstuuuyzaacdeeelinooorrstuuuyz');

jenže po uložení na server se mi změní znaky na entity, takže z toho mám

$text = strtr($text, 'áäčďéěëíµňôóöŕřšťúůüýžÁÄČĎÉĚËÍĄŇÓÖÔŘŔŠŤÚŮÜÝŽ', 'aacdeeeilnooorrstuuuyzaacdeeelinooorrstuuuyz');


EDIT2: A ještě k tomu koukám, že strtolower nefunguje na znaky s diakritikou... Takže to přeci jen nechám bez diakritiky, a když to někdo jiný zprovozní do .

Pokud by fungovalo to strtr na ty dva řetězce, tak už převod na malá písmena je hotový při konverzi diakritiky a není třeba převádět na lowercase.
  • 0

#12 niximor

niximor

    Advanced Member

  • Members
  • PipPipPip
  • 553 příspěvků(y)

Publikováno 24 květen 2012 - 16:49

strtr v tehle forme zapisu nebude fungovat pro jakekoliv kodovani, ktere uklada diakritiku jako vicebytovy znak (tedy typicky UTF-8). A pokud nekdo dnes pouziva cokoliv jineho nez UTF-8, nezaslouzi si existovat :P Nicmene existuje i varianta strtr, ktera prijima misto dvou retezcu pole, kdy klicem je original a hodnotou cim se ma original nahradit. To funguje i pro retezce, a lze tak uspesne nahrazovat i diakritiku v UTF-8. Jinak popuzen timto vlaknem pustil jsem se do programovani, brzo bych mohl neco mit... stay tuned!
  • 0
Správce gcm.cz | cwg.gcm.cz

#13 PRESEKA

PRESEKA

    PŘESEKA

  • Members
  • PipPipPip
  • 660 příspěvků(y)

Publikováno 24 květen 2012 - 17:28

Pokud to bude uživatelsky přívětivé tak moc rád takové udělátko využiji pro moji už dlouho plánovanou EC ;)
  • 0
Děláme to pro zážitky a když je hezky tak nikam nechvátáme...
Naše keše zakládáme bez dotací a i jejich provoz si sponzorujeme sami.
Berte na to při jejich návštěvách ohled !

#14 h0--

h0--

    Advanced Member

  • Members
  • PipPipPip
  • 2 079 příspěvků(y)

Publikováno 24 květen 2012 - 18:47

niximor napsal/a:Jinak popuzen timto vlaknem pustil jsem se do programovani, brzo bych mohl neco mit... stay tuned!

<3
  • 0

garmin 60CSx | galaxy nexus + locus pro | lumia 640 + geocaching pro

astrolux S1 | convoy S2+ | 2x aurora ak-p7

norco search a.105 '16 | mibo mastr '12 | #fialka '9x

 

http://openstreetmap.cz/


#15 KRON family

KRON family

    Advanced Member

  • Members
  • PipPipPip
  • 1 996 příspěvků(y)

Publikováno 24 květen 2012 - 20:11

niximior: Mně to bohužel nejde právě při tom nahrání souboru na server a to už fakt nevím jak upravit, takže pokud se toho ujmeš a něco vytvoříš, budu rád.
  • 0

#16 Arne1

Arne1

    Advanced Member

  • Members
  • PipPipPip
  • 4 290 příspěvků(y)

Publikováno 24 květen 2012 - 21:46

Tiskar94 napsal/a:
niximior: Mně to bohužel nejde právě při tom nahrání souboru na server a to už fakt nevím jak upravit, takže pokud se toho ujmeš a něco vytvoříš, budu rád.

A ty to na server nenahráváš přes FTP ?

Obecně ale v táhle automatizaci vidím mnoho slabých míst, která stále budou vyžadovat lidský faktor. Ne každý odpoví česky, slováci určitě budou předpokládat že jejich slovíčkům porozumíme. A ti ostatní při nejlepším použijí nějakou zkomoleninu od angličtiny.
  • 0

#17 mpik

mpik

    Advanced Member

  • Members
  • PipPipPip
  • 4 980 příspěvků(y)

Publikováno 24 květen 2012 - 22:40

To už jsem psal, že kontaktní mail bude pořád potřeba. Ale mohlo by to hodně zredukovat jeho potřebu. A asi by šlo dát jako správnou českou/slovenskou/anglickou variantu odpovědi. Ale synonymům se nevyhneme a určitě bude někdo tak vynalézavý, že odpoví správně, ale jinak než bude naprogramováno. A pokaždé to asi nejde. Na otázku Jaká je v okolí fauna a flóra se odpověď automaticky vyhodnotit nedá. Mě to netíží, eartku jsem žádnou nepublikoval a logoval jsem zatím jen tři. Ani jeden owner se neozval, tak to snad bylo správně.
  • 0

#18 niximor

niximor

    Advanced Member

  • Members
  • PipPipPip
  • 553 příspěvků(y)

Publikováno 25 květen 2012 - 0:33

Tak jo,
misto vymysleni vsech moznych veci proc by neco nemelo jit, jsem radeji sedl a neco stvoril...
http://earth.gcm.cz/

Berte to prosim spis jako betaverzi, vzniklou za jedno odpoledne programovani. Je mozne, ze tam budou chyby, je mozne, ze to nebude fungovat vubec (ac doufam ze tenhle pripad nenastane :))

Jako vzdy pripominky vitam, ale prosim konstruktivni a k veci. Uvidime, jestli se z to povede rozjet, nebo to umre v zapomeni :)
  • 0
Správce gcm.cz | cwg.gcm.cz

#19 mpik

mpik

    Advanced Member

  • Members
  • PipPipPip
  • 4 980 příspěvků(y)

Publikováno 25 květen 2012 - 6:40

Zdá se mi to pěkné. Možná ještě doplnit jako variantu odpovědí interval od do. Např. Výška kamenu je: a zadat nějakou minimální a maximální hodnotu, nebo hodnotu a toleranci.
  • 0

#20 k-lord

k-lord

    Advanced Member

  • Members
  • PipPipPip
  • 1 874 příspěvků(y)

Publikováno 25 květen 2012 - 8:35

No prace je to mozna zaslusna, ale ja se ptam co pak? Co kdyz mi prijde, ze mam 1 nebo vice odpovedi spatne? Mam si smazat log? Cekat na vyjadreni autora? Jak poznam, zda je moje spatna odpoved naprosto mimo nebo jsem se jen nevesel do limitu? Co kdyz odpovim celou vetou? Jak to resit, kdyz kacer misto earthky evidentne navstivi (viz jeho foto), ale stejne budou jeho odpovedi ne uplne presne? Ano, da se to pouzit na otazky typu: Jaká je vymera rezervace nebo z ceho se sklada kremen. Proste otazky, kde clovek jen vycte udaj a prilis se s myslenim namahat nemusi. Co otazky vice analyticke, kde mate neco popsat ci vyjadrit nazor? Z vlastnich zkusenosti vim, ze na takove otazky prijde temer kazda druha odpoved jinak napsana a presto spravne ci priblizne spravne. Jak se s tim ten vas vytvor vyporada? Jestli to nakonec nebude spis pro autora earthkese vice prace, kdyz bude s kazdym druhym resit spravnost odpovedi presne podle formulare. PS: toto neni kritika vasi prace, jen jsem chtel podotknout, ze to s tim formularem nebude v mnoha pripadech tak jednoduche. edit: paklize by to bylo mysleno jen tak, ze kacerovi prijde email se spravnymi odpovedmi, aby si to mohl zkontrolovat, jak odpovedel, tak pak to beru. ;)
  • 0




0 uživatel(ů) prochází toto téma

0 uživatelů, 0 návštěvníků 0 anonymních uživatelů

Reklama