| | |
| Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
Autor | Správa |
---|
Registrovaný: 04.08.10 Prihlásený: 27.02.19 Príspevky: 117 Témy: 29 |
Ahojte. Riešim drobný problém a neviem ako na to. Do databázy v kroku 1 pridám údaje z formulára - add.php - formulár, po potvrdení add_potvrdenie.php kde to hodí do databázy - odtiaľ to presmerujem na pridávanie ďalších položiek do inej tabuľky, čo je vlastne krok 2(dáta spolu súvisia). Problém je, že keď používateľ už vpisuje dáta v kroku 2 a uvedomí si, že v prvom spravil chybu a dá v prehliadači krok späť(prípadne backspace), niečo pozmení a znova potvrdí tak do databázy sa uloží aj pôvodný(vlastne hneď pri prvom potvrdení) a aj novy(pri druhom potvrdení). Dá sa tomuto nejako zabrániť? Môžem pridať aj kódy, ale myslím, že by som ich asi dával zbytočne. Ďakujem.
|
|
Registrovaný: 01.05.05 Príspevky: 13348 Témy: 1496 Bydlisko: Bratislava | Napísal JanoF: 09.11.2012 0:44 | |
|
Nie som nejaky koder, ale ja by som to asi cele riesil cez $_SESSION s moznostou odkazov dozadu a az po vyplneni vsetkeho potrebneho sa spravi insert do databazy, ale mozno sa to da riesit efektivnejsie.
_________________ Streacom DA2 | SilverStone Titanium SX800-LTI 800W | ASRock X299E-ITX/ac | Intel Core i9-9980XE & be quiet! Dark Rock TF | Kingston HyperX Impact 64 GB DDR4 2666 MHz | NVIDIA Titan RTX 24 GB | Intel SSD Optane 905P 480 GB NVMe U.2 & Intel SSD 750 1,2 TB NVMe U.2 & Intel SSD 660p 2 TB NVMe M.2 & Seagate BackUp Plus Portable 56 TB USB | 55" 4K OLED Dell Alienware AW5520QF & 24" LCD EIZO FlexScan EV2451 | Ergotron LX Wall Mount Keyboard Arm | Logitech Craft | Logitech G603 | Logitech F710 | Harman Kardon Sabre SB 35 & Sennheiser RS 175 | Microsoft Windows 7 Ultimate | APC Back-UPS ES 700 | Lenovo ThinkPad X250 | iPhone X 256 GB & Pitaka Aramid | SilverStone ML05B Milo | Corsair SF600 SFX 600W | ASRock X99E-ITX/ac | Intel Xeon E5-2683 v4 & NOCTUA NH-L12S | Kingston HyperX Savage 32 GB DDR4 2400 MHz | NVIDIA GeForce GT 710 1 GB | Intel SSD Optane Memory 32 GB NVMe M.2 & Intel SSD 730 240 GB SATA | Ubuntu Server |
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 Bydlisko: Žilina |
Presne tak, takéto krokové operácie sa riešia bez databázy. Do databázy až po skompletizovaní všetkých potrebných informácií.... Samozrejme s patričnými kontrolami už podľa potreby..
_________________ C#, PHP, ... |
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal baumax: 09.11.2012 9:01 | |
|
tych krokov tam snad nemas vela, robil som nieco podobne, ano, session - na kazdu premennu (hodnotu), ktoru vkladas do DB si vytvoris samostatnu session a v poslednom kroku si to vlozis naraz do DB. V kazdom kroku by som aj session hodnoty osetroval a nepustil cloveka do dalsieho kroku, ked v predch. zadal nekorektnu hodnotu
|
|
Registrovaný: 04.08.10 Prihlásený: 27.02.19 Príspevky: 117 Témy: 29 | Napísal autor témy xxx9955: 09.11.2012 20:34 | |
|
Krokov nie je veľa, ale takto. V prvom sa vytvorí kalkulácia(pre koho, dátum, odhadovany pocet hodin, vec popis) a v druhom sa pridáva materiál. Druhý krok sa opakuje kým nie je vložený všetok materiál. Funguje session aj v tomto prípade? Hlavne ak sa napr pri materiály menia názvy, tak treba vytvoriť ďalšie a ďalšie session pre premenné, ktoré sa opakujú, alebo sa to nejak dá "nabalovať"?
|
|
Registrovaný: 24.07.10 Prihlásený: 19.11.22 Príspevky: 107 Témy: 28 Bydlisko: Bratislava |
sessions: http://php.net/manual/en/reserved.variables.session.php
a session_start() creates a session or resumes the current one based on a session identifier passed via a GET or POST request, or passed via a cookie.
session proste trvá až dovtedy kým ju ty sám nezrušíš a ak to máš v cookies tak aj keď zatvoríš/otvoríš stránku
a ohľadom toho nabaľovania - tak %_SESSION je v podstate pole a do nejakého prvku si môžeš hodiť nejaké svoje pole premenných a to potom rozširovať, nie? prípade pole štruktúr, možností je veľa, ale aj premenné nové a nejak ich inkrementovať atd. atd. v php sa aj názvy premenných djaú ukladať takže aj tak sa dá a tak no.
_________________ silentaslash || tiwdaym || tou(x)? NTB: ASUS ROG G752VS (KBL)-GB393T, CPU: Intel Core i7 7700HQ Kaby Lake, Display: 17.3" LED 3840x2160 IPS matný, RAM: 32GB DDR4, GPU: NVIDIA GeForce GTX 1070 8GB GDDR5, SSD: SSD 256GB PCIe + WD Blue PC SSD 1 TB M.2 HDD: 2TB Seagate Barracuda Laptop OS: Windows 10 64-bit Periférie: monitor: 4k 28" ASUS MG28UQ klávesnica: Corsair Gaming straf Cherry MX Silent (US) myš: A4tech Bloody J90 Core 3 kovové pojazdy NAS: Synology DiskStation DS1517 + 8GB HDD: RAID5 (synology): WD Red Plus 4TB + 2x Seagate IronWolf 4 TB Wifi: ASUS RT-AC87U AC2400 Mobil: OnePlus 3T, 64GB |
|
Registrovaný: 04.08.10 Prihlásený: 27.02.19 Príspevky: 117 Témy: 29 | Napísal autor témy xxx9955: 10.11.2012 10:42 | |
|
session sa vykonáva tak ako php tiež na strane servera, alebo s tým pracuje prehliadač? Lebo napr. ak pridávam záznam, tak do formulára povkladám údaje a prejdem na add-potvrdenie.php, kde spracuje dáta a spravím insert do tabuľky. Treba tento krok spraviť tiež, len s tým, že len podávam dáta do session, alebo sa to dá priamo v tabuľke kde údaje zadávam?
|
|
| Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| Opera 9.5 beta - míľové kroky vpred v Novinky | 20 | 1075 | 28.10.2007 11:10 dodo_mt | | Osetrenie formulara v PHP, ASP | 2 | 518 | 25.01.2010 16:36 Slappy | | Bug/osetrenie v Správy pre vedenie fóra | 5 | 1145 | 28.10.2009 19:04 Jaro | | ošetrenie vstupu v Delphi, Visual Basic | 22 | 641 | 12.12.2015 21:11 camarovk19 | | Ošetrenie/zabezpečenie Registracie? v PHP, ASP | 4 | 491 | 04.02.2010 17:00 d0.0b | | Osetrenie ulozenia JAVA v Assembler, C, C++, Pascal, Java | 2 | 560 | 25.11.2009 12:43 dEVIANT | | Chemické ošetrenie spojov v Biosy a ladenie výkonu | 4 | 3745 | 27.01.2013 12:56 shiro | | osetrenie vstupov a DB v PHP, ASP | 8 | 473 | 02.11.2012 18:42 DeiForm | | jquery - osetrenie trvania animacie v JavaScript, VBScript, Ajax | 4 | 566 | 05.06.2009 21:06 chrono | | osetrenie vstupov v delphi v Delphi, Visual Basic | 4 | 910 | 26.01.2009 18:39 ovvo | | C-ošetrenie nulového menovateľa v Assembler, C, C++, Pascal, Java | 3 | 487 | 04.06.2010 13:17 jarrro | | Osetrenie vstupov programu v C v Assembler, C, C++, Pascal, Java | 11 | 1079 | 16.12.2007 15:11 sento | | osetrenie nespravnej hodnoty pri scanf v Assembler, C, C++, Pascal, Java | 5 | 479 | 13.11.2011 16:14 walther | | osetrenie korozie v radiatore vodnika v Chladiče a všetky druhy chladenia | 12 | 759 | 03.08.2011 13:44 zalgoo | | zakaz - navrat spat v HTML, XHTML, XML, CSS | 6 | 542 | 21.11.2007 18:58 Flety | | Osetrenie vyjdenie z drahy (turbo pascal) v Assembler, C, C++, Pascal, Java | 11 | 778 | 14.12.2008 11:54 Blackshadow |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|