Avatar billede floetti Nybegynder
13. april 2005 - 20:23 Der er 19 kommentarer og
1 løsning

Sætte computersammen på hjemmeside

Hej...

Jeg kunne godt tænke mig at lave et system som man kan sætte en computer sammen på en hjemmeside, ligesom ma kan se på forskellige hjemmesider. F.eks. som denne http://www.nemdirect.dk/vare.asp?vare_nr=490&tab=3&menu=010203

Dog i PHP

På forhånd tak

floetti
Avatar billede olebole Juniormester
13. april 2005 - 20:26 #1
<ole>

... og?

/mvh
</bole>
Avatar billede thesurfer Nybegynder
13. april 2005 - 20:26 #2
Hvorfor er spm'et oprettet i JavaScript kategorien..?
Avatar billede floetti Nybegynder
13. april 2005 - 20:42 #3
Tja... Jeg ville have oprættet det i PHP, men da jeg gerne vil vide hvordan jeg med javascript kan lave nogle radio kanpper som opdaterer en pris uden at reloade siden. PHP'et skal jeg nokk finde ud af.... skal bare have en eller anden løsning til javascriptet, noget med en onclick funktion

Eller kan jeg godt oprætte spm. på ny i PHP kategorien om det er bedre.
Avatar billede thesurfer Nybegynder
13. april 2005 - 20:50 #4
Hvis det skal laves i JavaScript (hvilket det skal), har du oprettet spm'et i den rette kategori. Ingen grund til at flytte det til PHP kategorien.
Avatar billede floetti Nybegynder
13. april 2005 - 21:29 #5
ok... men har du nogen ide om hvordan det kan laves, har har bare ikke forståelse på javascript.
Avatar billede thesurfer Nybegynder
13. april 2005 - 21:31 #6
Her er et eksempel:

<form name="frmpris">
Pris: <span id="prisen">10000</span> kr

<br><br>

Cpu:
<br><input type="radio" name="cpu" value="200" onclick="udregnpris()" checked>1 GHz - 200 kr
<br><input type="radio" name="cpu" value="400" onclick="udregnpris()">2 GHz - 400 kr
<br><input type="radio" name="cpu" value="600" onclick="udregnpris()">3 GHz - 600 kr
<br><br>

RAM:
<br><input type="radio" name="ram" value="100" onclick="udregnpris()" checked>1 GB - 200 kr
<br><input type="radio" name="ram" value="300" onclick="udregnpris()">2 GB - 300 kr
<br><input type="radio" name="ram" value="500" onclick="udregnpris()">3 GB - 500 kr

</form>

<script type="text/JavaScript">
var startpris = 5000; // f.eks. kabinet + bundkort + whatever..
var prisen, f, c, r; // til komponenterne;
var f = document.frmpris; // formen
var el = f.elements; // formens elementer, bruges til udregning


function udregnpris()
{
prisen = 0; // nulstil "prisen" der skal lægges til startpris

for (i=0; i<el.length;i++) // start loop
{
// hvis form-elementen/objektet er en radiobutton, og den er markeret,
// tilføj den værdi (prisen på komponenten) til variablen "prisen"
if (el[i].type == "radio" && el[i].checked == true) prisen = prisen + parseInt(el[i].value);
}

// hvis brugeren hvor man han/hun er oppe på:
document.getElementById("prisen").innerHTML = startpris + prisen;
}

udregnpris(); // udfør start-regnskabet
</script>
Avatar billede thesurfer Nybegynder
13. april 2005 - 21:32 #7
hovsa.. der skal ikke stå "10000" i mellem "<span>...</span> kr".. var bare en test..
Avatar billede thesurfer Nybegynder
13. april 2005 - 21:33 #8
Priserne (value="xxx" og startpris) hentes via php (f.eks. fra en database)..
Avatar billede thesurfer Nybegynder
13. april 2005 - 21:34 #9
"hvis" skulle ha' været "vis": "// hvis brugeren hvor..."
Men det har ingen påvirkning på scriptet..

Stavefejl kan forekomme :-)
Avatar billede thesurfer Nybegynder
13. april 2005 - 21:39 #10
På den side du linker til, bruger de en IFrame til at vise den nuværende/opdaterede pris.. lidt fusket, da IFramen jo reloades hver gang, at man klikker på en radiobutton.. :-)

Dvs, hvis du loader siden, og der er meget traffik/siden ikke kan vises, kan man ikke få den opdaterede pris, før serveren kører igen..

Med denne metode, skal siden bare indlæses.. så kan du vælge hvad du vil ha, selvom serveren skulle gå ned, efter at du loadede siden.. du beholder dine data.. så kan du submitte når du er helt færdig + serveren er oppe igen.
Avatar billede floetti Nybegynder
13. april 2005 - 21:42 #11
jamen super... det var lige den enkle version jeg ledte efter;) - om du svarer så giver jeg points;)

Lige et til, kan jeg få javascript til at sende variablen "prisen" videre til en PHP variabel om brugeren går til en anden side?
Avatar billede thesurfer Nybegynder
13. april 2005 - 21:44 #12
Ja, ved submit kan du lave action om.. f.eks.

onsubmit="return fixaction();"

og:
function fixaction();
{
document.frmpris.action = 'dinside.php?minnyepris=' + prisen;
return true;
}

- Svar lagt.
Avatar billede floetti Nybegynder
13. april 2005 - 21:47 #13
mm... ok, det lyder logisk nok;)
Avatar billede thesurfer Nybegynder
13. april 2005 - 21:47 #14
PS: det er lidt af en uærligt side.. den lægger 0,50 kr til prisen :-)

9.390 * 1.25 (moms er 25%) = 11737,5, og ikke 11.738 ... :-)

med mindre at deres moms er 25,005324813631522896698615548456 % :-)  (sådan cirka)
Avatar billede thesurfer Nybegynder
13. april 2005 - 21:49 #15
hmm.. variablerne c og r bruger jeg ikke mere.. de kan fjernes:

var prisen; // prisen af komponenterne der lægges til startpris;
Avatar billede floetti Nybegynder
13. april 2005 - 23:48 #16
så runder jeg den bare;)
Avatar billede floetti Nybegynder
15. april 2005 - 19:47 #17
Hej igen...

Nu har jeg prøvet på alle mulige måder at indsætte den javascript kode du gav mig, men jeg kan simpelthen ikke finde ud af at få den at virke:/

Kan du eller er der andre som kan hjælpe mig lidt?

Floetti
Avatar billede floetti Nybegynder
15. april 2005 - 19:48 #18
Altså denne:

onsubmit="return fixaction();"

og:
function fixaction();
{
document.frmpris.action = 'dinside.php?minnyepris=' + prisen;
return true;
}
Avatar billede thesurfer Nybegynder
15. april 2005 - 21:24 #19
Hvad er det der ikke virker? Hvilken fejlmelding/linie/kode?
Avatar billede floetti Nybegynder
16. april 2005 - 01:47 #20
hej... eg får en meddelse om at der mangler et "{" efter function fixaction();, men så fjernede jeg ; og så var fejlmeddelsen væk. Jeg lukker hermed dette sprøgsmål, da jeg har oprettet et nytt spørgsmål på samme evne på http://www.eksperten.dk/spm/610090
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