variable met PHP en html

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Rik Pennings

Rik Pennings

06/10/2010 16:32:56
Quote Anchor link
Hallo,

Ik ben nog niet zolang bezig met PHP. Ik wil binnen een website een totaal aantal uitrekenen. Ik heb gezocht op de forum. Ik kwam online bestellen tegen. Ik ben hiermee aan de gang gegaan maar loop vast ermee.

De bedoeling is dat klanten kunnen bestellen op de website.
ik heb een aantal variable met een stuks prijs en er moet een totaal prijs uitgerekend worden.
1 = A = 1 euro
2 = B = 5 euro

Als mensen bestellen 2xA en 2xB zou ik graag uitgerekend op de site willen zien 12 euro.

Graag hoor ik opmerkingen of oplossingen

Het gaat dus omzowel de html code als het php script

Alvast bedankt
 
PHP hulp

PHP hulp

29/03/2024 00:00:14
 
John D

John D

06/10/2010 16:44:48
Quote Anchor link
Je moet steeds het totaal bijhouden van de lopende bestelling, elk product toevoegen aan het totaal. Je gebruikt daar een variabele voor. Verdwijdert men een product dan verminder je het totaal met de waarde van dat product. Bij afrekenen weet je dus het totaal al. Ik neem aan dat je dat in php wel voor elkaar kan krijgen ?
Gewijzigd op 06/10/2010 16:45:15 door John D
 
Karizma Yusuf

Karizma Yusuf

06/10/2010 17:03:21
Quote Anchor link
om gemakkelijk informatie bij te houden kan je gebruik maken van Sessions of Cookies.

en dan later in je script kan je dan ervoor kiezen om sessions/cookies op te roepen om uit te berekenen wat het in totaal kan kosten.
Gewijzigd op 06/10/2010 17:04:06 door Karizma Yusuf
 
Rik Pennings

Rik Pennings

07/10/2010 08:06:51
Quote Anchor link
Ik weet niet of het kan. Ik programeer namelijk ook scada systemen. Daar is het mogelijk om een variable die zichtbaar is op het actuele scherm ook te gebruiken in je code en tevens word deze continu aangepast bij verandering.

Ik weet dus niet of dit kan tussen een text field in html en een variable in php zo ja, hoe geeft ik dit aan in zowel mijn php als html
 
Niek s

niek s

07/10/2010 09:35:38
Quote Anchor link
In je HTML maak je een input veld. (google), die zet je in een form element (google). Dat is basis HTML, en erg simpel:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<form action="index.php" method="post">
<input type="text" name="a" />
<input type="text" name="b" />
<input type="submit" value="OK" />
</form>

regel 1: let op dat dat verwijst naar je scriptje.

In je PHP kan je met $_POST['a'] en $_POST['b'] de waardes van a & b ophalen. Maar alleen als er een formulier "gepost" (zoals dat heet) is.

Daarna kan je daar berekeningen op los laten.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
// check of het formulier gepost is
if($_SERVER['REQUEST_METHOD'] == "POST") {
    $nieuwe_waarde_van_a = $_POST['a'] * 2; // a keer 2
    $nieuwe_waarde_van_b = $_POST['b'] * 2; // b keer 2

    $totaal = $nieuwe_waarde_van_a + $nieuwe_waarde_van_b; // optellen van de 2

    echo 'Het uitgerekende getal is: '. $totaal; // En zet je nieuwe getal op het scherm
}
?>

Dit is nou basis PHP. Hieraan heb je genoeg om verder te kunnen. Verrander in bovenstaand scriptje het getal 2 in de variabele aantal, bouw het om naar prijzen, maar most important: bouw er validaties & controles in.
Dit scriptje hierboven is gemaakt zodat je snapt hoe PHP in elkaar steekt, en niet om je een totaal oplossing te bieden voor je winkelwagen (want dan moet je een topic posten in het Vacatures forum).
Gewijzigd op 07/10/2010 09:38:05 door niek s
 
Rik Pennings

Rik Pennings

07/10/2010 09:52:18
Quote Anchor link
In principe denk ik dat ik hier wel uitkom.

Het is ook niet om de hele winkelwagen via php af te handelen. nu iedergeval nog niet.

Kan ik het PHP script via een button uitlaten voeren?

bijvoorbeeld bereken? en dan het berekeken.php uitlaten voeren?
 
Niek s

niek s

07/10/2010 21:00:03
Quote Anchor link
Rik Pennings op 07/10/2010 09:52:18:
In principe denk ik dat ik hier wel uitkom.

Het is ook niet om de hele winkelwagen via php af te handelen. nu iedergeval nog niet.

Kan ik het PHP script via een button uitlaten voeren?

bijvoorbeeld bereken? en dan het berekeken.php uitlaten voeren?


Nee. Dat kan jij blijkbaar niet.
PHP Beginners handleiding
 
Rik Pennings

Rik Pennings

08/10/2010 11:46:19
Quote Anchor link
Hallo Niek,

Ik had de reactie of ik het via een button kon uitvoeren al geplaatst voor ik het had geprobeerd, maar het is gelukt.

Maar nu is mijn vraag of er ook een for next lus is te bouwen is dat de functie continu uitgevoerd word? zal maar zeggen ieder 5 sec?
Of is dit niet gebruikelijk in PHP?
Ik programeer normaal scada systemen en dat werkt toch allemaal anders
 
Niek s

niek s

08/10/2010 14:59:53
Quote Anchor link
Rik Pennings op 08/10/2010 11:46:19:
Maar nu is mijn vraag of er ook een for next lus is te bouwen is dat de functie continu uitgevoerd word? zal maar zeggen ieder 5 sec?
Of is dit niet gebruikelijk in PHP?
Ik programeer normaal scada systemen en dat werkt toch allemaal anders


Dat is inderdaad niet gebruikelijk in PHP.
PHP is eigenlijk niet bedoeld om als Daemon te draaien.

Je kan de volgende 2 opties overwegen:
- Cronjob
- Een 'slim script'

Het eerste wordt echt alleen gebruikt als het echt niet anders kan, en is echt af te raden.

Met de tweede optie bedoel ik het volgende.
Stel je hebt 1 of andere game (die krijgen we genoeg hier op de site, dus een mooi voorbeeld).
In deze game krijg je 10 'credits' per uur. Gewoon omdat je lid ben. Gewoon omdat het kan ;-)
Nou kan je natuurlijk met een cronjob oid ieder uur de credits += 10 doen, maar dat is kansloos, omdat deze dingen meestal beters en anders opgelost worden.
Jantje bezoekt de website om 12.00. Jantje bezoekt de website om 18.00. Systeem denkt "he! Daar zit 6 uur tussen!". het systeem berekend op het moment van je tweede bezoek hoeveel credits er nodig zijn voor de bepaalde tijd, en doet zo de bewerking. Daarna wordt de volledige site getoond, en de bezoeker weet niet dat de data pas beschikbaar was op het moment dat hij de website bezoekt. Eerder is die data ook niet nodig ;-)

Dus: kortom: wat is de toepassing? Waarom wil je het? Meestal zijn Daemons & cronjobs niet echt nodig namelijk.
 
Jel le

Jel le

08/10/2010 15:10:00
Quote Anchor link
Jij bedoelt dat het totaal meteen word bewerkt zonder op submit te drukken?
Dan zul je met AJAX moeten werken.
 
Rik Pennings

Rik Pennings

08/10/2010 15:14:53
Quote Anchor link
Inderdaad Jelle,

Indien mensen invullen 2xA
Dat dan de totaal prijs meteen aangepast word.

AJAX zegt mij eerlijk gezegd totaal niets.

Dank voor alle snelle en hulpzame reacties
 

08/10/2010 15:16:24
Quote Anchor link
Hoeft niet per se met ajax. Javascript zelf kan ook rekenen.
 
Jel le

Jel le

08/10/2010 15:18:50
Quote Anchor link
AJAX is een manier om te communiceren met de webserver zonder dat de browser refreshed moet worden.
AJAX is geschreven in javascript.


Misschien dat je hier wat van kan leren:
http://www.w3schools.com/ajax/default.asp

Toevoeging op 08/10/2010 15:19:28:

Oja natuurlijk, mijn fout.
 
Niek s

niek s

08/10/2010 16:01:40
Quote Anchor link
Ahja, ik heb je vraag verkeerd begrepen dan inderdaad.

Kijk inderdaad eens naar javascript. Dat is client-side en gemaakt voor deze bewerkingen ;-)
 
Rik Pennings

Rik Pennings

12/10/2010 14:52:40
Quote Anchor link
Nu ben ik niet zo erg thuis in de materie javascript.

Kan er iemand een klein voorbeeldje geven van hetgene wat ik er mee wil gaan doen.
Ik kan er dan zelf verder mee gaan stoeien.

Moet ik ook nog controleren of er bepaalde functies draaien op de host server?

alvast bedankt
 
- Mark -

- Mark -

12/10/2010 15:15:32
Quote Anchor link
Je weet het verschil tussen client en server side niet zo te zien. Client side is de kant van de gebruiker, Je hebt daar geen controle over. PHP en MySQL draaien aan de server kant en Javascript aan de gebruikers kant. Het kan dus voorkomen dat de gebruiker javascript heeft uit staan. Je website zal dan dus niet of maar gedeeltelijk werken voor die persoon. Tevens zijn er ook nog verschillen tussen de browsers op het gebied van javascript waar je rekening mee moet houden. Javascript is leuk om het voor mensen gemakkelijker te maken maar probeer er altijd voor te zorgen dat je website er niet afhankelijk van is.
 
Rik Pennings

Rik Pennings

12/10/2010 15:36:43
Quote Anchor link
Dank je, ik ben er nog niet zo bekend met deze talen en functies allemaal.

Ik wil eigenlijk maken dat er 2 velden opgeteld worden indien er 1 van de 2 velden veranderd.

Er is mij duidelijk geworden dat dit met een Javascript gemaakt moet worden.
Omdat ik er al mee geprobeerd heb, nadat de functie 1 maal uitgevoerd is moet het eigenlijk wel zo zijn dat de waardes blijven staan op de pagina.

De website is nooit helemaal afhankelijk van de gebruiker, want indien javascript niet werkt dan kunnen ze toch alles invullen en versturen alleen de totaal prijs staat er dan niet bij.
Gewijzigd op 12/10/2010 15:37:17 door Rik Pennings
 
Jel le

Jel le

12/10/2010 16:06:58
Quote Anchor link
Wanneer de waarde word veranderd voert hij de functie rekenen() uit.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<input id="val1" onChange="rekenen()"/><br />
<input id="val2" onChange="rekenen()"/>


En dit staat er dan in je functie rekenen():

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<script type="text/javascript">
function rekenen() {
    var val1 = document.getElementById('val1').value;
    var val2 = document.getElementById('val2').value;
    
    var resultaat = Number(val1) + Number(val2);
    document.getElementById('totaal').innerHTML = resultaat;
    
}
</script>


En het resultaat zet hij dan in een span:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<span id="totaal"></span>


Hier kan je vast wel mee verder bouwen
Gewijzigd op 12/10/2010 16:08:01 door Jel le
 
Rik Pennings

Rik Pennings

12/10/2010 16:34:21
Quote Anchor link
Jelle,

Ik heb de code die je geplaatst hebt in een nieuw .js bestand gezet. Hij geeft hier meteen een syntax error op de regel onder function rekenen()

Wat kan dit zijn(ik ben er nog niet in thuis)

Tevens waar moet ik de regel resultaat plaatsen.
 
Jel le

Jel le

12/10/2010 16:37:33
Quote Anchor link
Je moet alleen dit in .js zetten he:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
function rekenen() {
    var val1 = document.getElementById('val1').value;
    var val2 = document.getElementById('val2').value;
    
    var resultaat = Number(val1) + Number(val2);
    document.getElementById('totaal').innerHTML = resultaat;
    
}

niet het <script type="..etc dus.

En wat bedoel je met de regel resultaat?
Bedoel je de span id="totaal"?
 
Rik Pennings

Rik Pennings

12/10/2010 17:18:31
Quote Anchor link
jah inderdaad. moet ik die als id bij een input field gebruiken.?

Ik ben nog een leek op dit gebied en wil er graag meer van leren.

Toevoeging op 12/10/2010 17:18:33:

jah inderdaad. moet ik die als id bij een input field gebruiken.?

Ik ben nog een leek op dit gebied en wil er graag meer van leren.
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.