Avatar billede lsskaarup Nybegynder
03. september 2010 - 14:56 Der er 10 kommentarer og
1 løsning

Definition af dynamiske felter

Jeg skal bede om lidt hjælp til at få følgende side lavet korrekt. http://www.billedeupload.dk/photo/2010-09/50ff8c41/Help.jpg.html

Det er en liste opbygget dynamisk ud fra nogle data liggende hhv. i nogle array samt en MySQL DB.

Brugeren kan udfylde de 2 første felter, men hhv. en position og en beskrivelse. Når de så trykker enter gemmes et indtastede og der fremkommer en ny tom linje nedenunder. Det betyder at der teoretisk ikke er nogen max grænse for hvor mange "rækker" der kan være under hver liste-niveau. Så langt så godt, det har jeg fået til at fungere.

Nu skal det bare udvides med et ubegrænset antal "kolonner" i bredde, der beskriver en kostpris. Der skal som standard kun være en "kolonne", men når brugeren trykker "Lås kolonne", skal den seneste låses, og der skal fremkomme en ny tom "kolonne" til eventuel revision af kostprisen.

Samlet betyder det, både "rækkerne" og "kolonnerne" er uendeligt store.

Mit problem er at jeg ikke lige kan gennemskue, hvordan jeg skal navngive felterne, og hvordan jeg skal kunne trække data ud af dem, så jeg er sikker på at have fat i den rigtige kostpris for én bestemt position.

Jeg har rodet rundt med at navngive felterne a la
kostpris[<?php echo $fores['kostpris_id'];?>][]

men jeg kan ikke rigtige får hoved og hale på, om jeg skal bruge 1, 2 eller 3 [], og om de eventuelt skal navngives også.

Derudover skal jeg jo også kunne fange dem igen og trækker data ud for den rigtige position.

Til info skal jeg lige sige, at jeg på siden har 2 skjulte felter indeholdende en underakt (den 3-cifrede talkode der står på listen) samt den enkelte "rækkes" id.

Jeg forestiller mig, at jeg skal bruge begge oplysninger samt et kolonnenr (som jeg pt. ikke har) til at kunne identificere kostprisen både i forholden positionen og i forhold til kolonneplaceringen.

Jeg har en del kode, men jeg tror det bare forvirrer mere end det gavner, at smide det op lige nu. Men sig til hvis I mangler det.

Det blev en noget lang forklaring, håber den var til at forstå.
Avatar billede Slettet bruger
05. september 2010 - 08:24 #1
På et tidspunkt vil der være så mange kolloner at du måske skal scrolle hozisontalt.

Kan man ikke finde en anden løsning som er mere bruger venlig ?

Er det meget vigtigt at brugeren kan se samtlige kostpriser ?
Avatar billede ggxdg Nybegynder
05. september 2010 - 09:25 #2
Ligger position i en tabel med reference til underakt?

Ligger kostpris i en tabel med reference til position?

Hvis begge er rigtige:
kostpris['position_id']['kostpris_id'] //for hentet data
kostpris['position_id'][] //for nyindtastet data
Avatar billede ggxdg Nybegynder
05. september 2010 - 10:01 #3
som Zeska siger, vil det nok blive lidt uoverskueligt, hvis der kommer ret mange kostpriser, så noget i retningen af
http://www.billedeupload.dk/photo/2010-09/ed6b7494/50ff8c41.jpg.html
kunne måske gøre det lidt mere overskueligt
Avatar billede ggxdg Nybegynder
05. september 2010 - 10:02 #4
eksemplet er kun lige lavet for underakt 225
Avatar billede Slettet bruger
05. september 2010 - 10:25 #5
Løsningen som ggxdg viser er meget god.

Det er også meget simpelt at kode.
Avatar billede lsskaarup Nybegynder
05. september 2010 - 12:05 #6
Lige for at svare på Jeres spørgsmål...

På et tidspunkt vil der være så mange kolloner at du måske skal scrolle hozisontalt.

Kan man ikke finde en anden løsning som er mere bruger venlig ?

Er det meget vigtigt at brugeren kan se samtlige kostpriser ?


Ja, det vil skabe et problem, i første omgang skal jeg dog bare have det lavet, så må jeg prøve at optimere det senere. Jeg tænker dog på, tildels at vende dem om, så den sidste kommer først, og så vise et par stykker. Hvis der så bliver rigtigt mange, kan jeg måske lave en knap, der åbner en anden side/vindue, hvor man kan se resten. Men det kommer også an på hvad brugerne ønsker, mærkeligt så var dette faktisk deres ide, og jeg kunne ikke overbevise dem om andet. Engang imellem må de jo så lærer, at ikke alle ideer er lige gode...

Ligger position i en tabel med reference til underakt?

Ligger kostpris i en tabel med reference til position?

Hvis begge er rigtige:
kostpris['position_id']['kostpris_id'] //for hentet data
kostpris['position_id'][] //for nyindtastet data


Jeg har en kalkulationstabel, der beskriver den overordnede struktur. Den ser sådan ud:
id
ordre_id (hvilken ordre den er tilknyttet)
underakt (underaktets nummer)
navn (positionsnavn)
beskrivelse (positionsbeskrivelse)
underakt_id (id til kostpriserne)


Derudover har jeg som sagt en kostpris/kalkulationspris tabel indeholdende:
id
kostpris (prisen)
kolonnenr (kolonnenummeret)
låst (er den låst eller ej)

Jeg burde nok normalisere tabellen og flytte kolonnenr og låst over i en anden tabel der derudover kun skal beskrive sammenhængen imellem underaktetne og kostpriserne. Men det tabte jeg fuldstændigt overblikket over.

som Zeska siger, vil det nok blive lidt uoverskueligt, hvis der kommer ret mange kostpriser, så noget i retningen af
http://www.billedeupload.dk/photo/2010-09/ed6b7494/50ff8c41.jpg.html
kunne måske gøre det lidt mere overskueligt

Jeg vil faktisk påstå at det vil blive mindre overskueligt, da man vil have svært ved at se hvilken priser der hører under hvilken kolonner. Især når der kommer priser på mange flere underakter. Men jeg kan godt se, det vil være lettere at lave, og jeg vil da ikke afvise den 100% før jeg har vendt den med brugerne. I skal se kolonnerne som beskrivende for en pris udvikling i en stor produktionssag. Vi starter måske på 0, men som tiden går stiger prisen, som f.eks. skal faktures til kunden. Det vil de så kunne symbolisere i form af de forskellige kolonner.

Men tilbage til
kostpris['position_id']['kostpris_id'] //for hentet data
kostpris['position_id'][] //for nyindtastet data


Position_id er det de enkelte underakterne, eller er det for den enkelte kolonne?
Avatar billede lsskaarup Nybegynder
05. september 2010 - 13:00 #7
Jeg tror nu jeg kan fange dem ved at navngivne dem som

kostpris[<?php echo $fores['id'];?>][<?php echo $fores['kolonnenr'];?>][<?php echo $fores['kostpris_id'];?>]

<==> kostpris[underakt_id][kolonnenr][kostpris_id]

Men hvordan skal jeg håndtere de tomme felter, hvor der endnu ikke er oprettet en underakt?

Hvis jeg navngivner dem kostpris[][][], så bliver dem vel ikke smidt i samme array eller hvad?
Avatar billede lsskaarup Nybegynder
08. september 2010 - 17:17 #8
Så er det vist lykkedes mig, at få det hele til at gå op funktionsmæssigt. Jeg vedtog at brugerne skal oprette en underakt, før de får mulighed for at oprette en kostpris. På den måde, sikre jeg mig at jeg har de data jeg skal bruge, for at navngive kostpris-felterne.

Hvis I ligger et svar hver, så dele I pointene.
Avatar billede lsskaarup Nybegynder
16. november 2010 - 22:02 #9
Smider I et svar?
Avatar billede lsskaarup Nybegynder
15. januar 2011 - 13:27 #10
Hallo?
Avatar billede lsskaarup Nybegynder
14. februar 2011 - 11:48 #11
Nå, men så lukker jeg selv
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester