[ Príspevkov: 7 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 27.02.19
Príspevky: 117
Témy: 29 | 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.


Offline

Prevádzkovateľ fóra
Prevádzkovateľ fóra
Ošetrenie kroku späť a znovu vpred

Registrovaný: 01.05.05
Príspevky: 13159
Témy: 1485 | 1485
Bydlisko: Bratislava
NapísalOffline : 09.11.2012 0:44 | Ošetrenie kroku späť a znovu vpred

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 | Ergotron LX Wall Mount Keyboard Arm | Logitech Craft | Logitech G603 | Logitech F710 | Harman Kardon Sabre SB 35 & Sennheiser RS 175 | Microsoft Windows 11 Enterprise | APC Back-UPS BE-850 VA | Lenovo ThinkPad X1 Carbon | 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 & Samsung SSD 860 1 TB | Ubuntu 24.04 LTS | Dell Wyse 3040 | Intel Atom x5-Z8350 | 2 GB DDR3 1600 MHz | 16 GB eMMC | 24" EIZO FlexScan EV2451 | Alpine Linux + XFCE4
Offline

Skúsený užívateľ
Skúsený užívateľ
Ošetrenie kroku späť a znovu vpred

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14571
Témy: 66 | 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, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 11.12.07
Prihlásený: 13.06.24
Príspevky: 488
Témy: 139 | 139
Bydlisko: Bytča
NapísalOffline : 09.11.2012 9:01 | Ošetrenie kroku späť a znovu vpred

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


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 27.02.19
Príspevky: 117
Témy: 29 | 29
Napísal autor témyOffline : 09.11.2012 20:34 | Ošetrenie kroku späť a znovu vpred

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ť"?


Offline

Užívateľ
Užívateľ
Ošetrenie kroku späť a znovu vpred

Registrovaný: 24.07.10
Prihlásený: 05.04.26
Príspevky: 107
Témy: 28 | 28

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.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 04.08.10
Prihlásený: 27.02.19
Príspevky: 117
Témy: 29 | 29
Napísal autor témyOffline : 10.11.2012 10:42 | Ošetrenie kroku späť a znovu vpred

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?


 [ Príspevkov: 7 ] 


Ošetrenie kroku späť a znovu vpred



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Opera 9.5 beta - míľové kroky vpred

v Novinky

20

1167

28.10.2007 11:10

dodo_mt

V tomto fóre nie sú ďalšie neprečítané témy.

ošetrenie vstupu

v Ostatné

22

770

12.12.2015 21:11

camarovk19

V tomto fóre nie sú ďalšie neprečítané témy.

Osetrenie formulara

v Backend

2

593

25.01.2010 16:36

Slappy

V tomto fóre nie sú ďalšie neprečítané témy.

Bug/osetrenie

v Oznámenia a návrhy

5

1241

28.10.2009 19:04

Jaro

V tomto fóre nie sú ďalšie neprečítané témy.

Osetrenie ulozenia JAVA

v Backend

2

633

25.11.2009 12:43

dEVIANT

V tomto fóre nie sú ďalšie neprečítané témy.

Chemické ošetrenie spojov

v Biosy a ladenie výkonu

4

3874

27.01.2013 12:56

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

Ošetrenie/zabezpečenie Registracie?

v Backend

4

570

04.02.2010 17:00

d0.0b

V tomto fóre nie sú ďalšie neprečítané témy.

osetrenie vstupov a DB

v Backend

8

562

02.11.2012 18:42

DeiForm

V tomto fóre nie sú ďalšie neprečítané témy.

jquery - osetrenie trvania animacie

v Frontend

4

648

05.06.2009 21:06

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

osetrenie vstupov v delphi

v Ostatné

4

996

26.01.2009 18:39

ovvo

V tomto fóre nie sú ďalšie neprečítané témy.

C-ošetrenie nulového menovateľa

v Backend

3

592

04.06.2010 13:17

jarrro

V tomto fóre nie sú ďalšie neprečítané témy.

osetrenie nespravnej hodnoty pri scanf

v Backend

5

579

13.11.2011 16:14

walther

V tomto fóre nie sú ďalšie neprečítané témy.

osetrenie korozie v radiatore vodnika

v Chladiče a všetky druhy chladenia

12

861

03.08.2011 13:44

zalgoo

V tomto fóre nie sú ďalšie neprečítané témy.

Osetrenie vstupov programu v C

v Backend

11

1191

16.12.2007 15:11

sento

V tomto fóre nie sú ďalšie neprečítané témy.

zakaz - navrat spat

v Frontend

6

634

21.11.2007 18:58

Flety

V tomto fóre nie sú ďalšie neprečítané témy.

Osetrenie vyjdenie z drahy (turbo pascal)

v Ostatné

11

901

14.12.2008 11:54

Blackshadow



© 2005 - 2026 PCforum, edited by JanoF