Avatar
Michal Zouhar:

Ahoj,

moc prosím o pomoc ... mám tabulku (například faktur) v MySQL a rád bych, aby uživatel mohl doplnit (např. dle výpisu z banky) údaje o zaplacení (datum) a po vyplnění se pak odehrála nějaká akce (odeslání faktury emailem zákazníkovi). Jenže, když vypíšu uživateli v tabulce všechny základní údaje , jak tam doplním datumy zaplacení? (když dám to každého řádku tabulky <input>, tak name bude pro všechny řádky stejný (např."datumza­placeni") a metodou post se pak zpracuje akorát poslední input (nebo možná první). Podotýkám, že nechci uživateli povolit přístup přímo do tabulky MySQL a chci to řešit rozumnou formou.

(snad se mi to podařilo vysvětlit pochopitelně ... )

Dík

 
Odpovědět 2. července 11:47
Avatar
Erik Bystroň:

Ahoj, tyto věci se programuji pomocí php ne html/css, prostuduj si návody php mohlo by ti to pomoct :) V php začínám takže ti nepomohou...

Editováno 2. července 19:12
 
Nahoru Odpovědět 2. července 19:10
Avatar
mkub
Redaktor
Avatar
Odpovídá na Michal Zouhar
mkub:

ako uz Erik napisal, jedine pomocou PHP/ASP/Perl/Pyt­hon... totiz potrebujes nieco, co bezi na webovom serveri a dokaze pracovat s databazou v MySQL a co posiela uz hotovu HTML stranku klientovi a na zaklade reakcie klienta uklada/meni udaje v databaze.
HTML/JS iba plni ulohu prezentacie udajov u klienta, nezabezpecuje ziadnu funkcionalitu na pracu s DB

 
Nahoru Odpovědět 2. července 19:51
Avatar
Michal Zouhar:

Vyjádřil jsem se špatně. Ano, chápu a používám php pro spojení s databází. To je fpoho. Ale když si z databáze (pomocí php) vezmu všechny řádky tabulky (např. vydaných faktur), které ještě nejsou zaplacené a umístím je (tyto řádky) administrátorovi na obrazovku, vznikne tabulka (nikoliv databáze) ,... prostě to umístím pomocí <tab>. a v každém řádku této tabulky mám nevyplněné datum zaplacení, které chci po administrátorovi, aby vyplnil. Ale to mi není jasné, jak provést tak, aby to fungovalo a bylo elegantní. Jistě, mohu dát za okno "datumzaplaceni" ještě button "aktualizuj" a na základě zmáčknutí daného buttonu zapsat datum zaplacení zpět (přes php) do MySQL. Nicméně, to se mi nezdá elegantní, já bych chtěl, aby při zadání datumu zaplacení to aktualizovalo buď samo a nebo mohl administrátor vyplnit více řádků této tabulky a teprve po vyplnění zmáčknutím jednoho buttonu se aktualizovalo vše naráz. Tak snad už se mi povedlo to vysvětlit ...

 
Nahoru Odpovědět 2. července 23:08
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na Michal Zouhar
David Hynek:

jde o to, že prohlížeč a databáze spolu nemluví napřímo, ale jsou jim ku pomoci javascript na straně počítače a PHP na straně serveru. A nechceš-li znovunačítání stránek, je to doplněno na straně počítače ještě AJAXem, pro zvýšení plynulé komunikace se serverem. Tedy bez javascriptu a PHP to dost dobře nepůjde...

Nahoru Odpovědět 3. července 0:07
Čím víc vím, tím víc věcí nevím.
Avatar
petr.jouza
Člen
Avatar
Odpovídá na Michal Zouhar
petr.jouza:

Ahoj,
ano... jak píše David Hynek: Potřebuješ pro tento případ na stranu klienta využít JavaScript. Na ten input by stačila použít nějaká událost onmouse s nějakou podmínkou. Jako že: Při opuštění pole input s vyplněným inputem ve formátu data proveď odeslání dat na server.

Já osobně JavaScript nemám vůbec rád a snažím se mu co nejvíce vyhýbat. S PHP se dají dělat také zajímavé věci, ale pokud bys chtěl řešení výše, tak bych se podíval po tutoriálech na JavaScript.

Osobně bych to raději udělal přes to PHP...
Načetl bych si tabulku a ve foreach bych si definoval pro každý řádek ten input. do name bych si spíše dal ID měněného záznamu, abych mohl input přiřadit záznamu po odeslání dat. a jedním tlačítkem pak odeslat data na server.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 3. července 9:57
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 6 zpráv z 6.