login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Data uit DB laden zonder verversen. (Opgelost)

Offline alex028 - 16/09/2009 16:59
Avatar van alex028Nieuw lid Geachte profs,

Ik heb een probleem waar ik niet uit kom.

Eerst een korte toelichting:
Ik ben op het moment een website aan het schrijven voor een bedrijf dat tenten verhuurt.
Het enige probleem waarvan ik niet weet hoe het op te lossen volgt:

Er zijn verschillende tenten, verschillend in breedte en lengte. echter zijn niet alle combinaties mogelijk dus is het nodig dat de mensen eerst een breedte kiezen > daarna de lijst met mogelijke lengtes geladen wordt > als die lengte gekozen is is de vloeroppervlakte bekend en moet de prijs van de evt vloer en vloerbedekking geladen worden..

Ik ben bang dat dit met enkel php niet gaat lukken, maar hebben jullie een idee hoe dat wel mogelijk is?
(De code's kom ik wsl zelf wel uit, als jullie in grote lijnen weten welke stappen ik moet nemen zou ik dat graag horen.)


Alvast bedankt!

Alexander van den Broek

4 antwoorden

Gesponsorde links
Offline Abbas - 16/09/2009 17:11 (laatste wijziging 16/09/2009 17:14)
Avatar van Abbas Gouden medaille

Crew .NET
Dit kan heel eenvoudig met JavaScript gedaan worden. Als je de waarde van de DropDown (breedte) verandert roep je een functie aan die dan de mogelijke opties voor de DropDown (lengte) weergeeft.

Edit:
Als de breedtes en lengtes in een tabel in een DB staan is het best dat je met AJAX werkt. Al kan het ook werken zonder AJAX natuurlijk! 
Offline alex028 - 16/09/2009 17:14
Avatar van alex028 Nieuw lid Okee. die variabele lengte en breedte uit javascript kan je vervolgens weer naar php schrijven en dan posten gok ik?
Offline Ibrahim - 16/09/2009 18:18 (laatste wijziging 16/09/2009 18:22)
Avatar van Ibrahim PHP expert Nee, ik schets wel het voorbeeld voor je:

Je laad als eerst de eerste dropdown in met gewoon php. Daarna zet je een onchange event op die dropdown die een AJAX request verstuurd naar een pagina die de volgende dropdown opbouwt.

Vervolgens bereken je de vloeroppervlakte en kun je zo de prijs berekenen en eventueel weergeven. Ik heb hieronder simpel zonder al te veel code geïllustreerd wat ik bedoel:

  1. <?php
  2. $selecteerBreedtes = mysql_query(...selecteren...);
  3. while ($breedteInformatie = mysql_fetch_assoc($selecteerBreedtes) {
  4. // dropdown opbouwen met gewoon html of template engine (TemplatePower bijv.)
  5. }
  6. ?>


De output kan dan bijvoorbeeld zijn:
  1. <select name="breedtes" id="breedtes">
  2. <option value="10">10 meter</option>
  3. <!-- enz. -->


De javascript die ik hieronder gebruik, maakt gebruik van de Javascript library jQuery:

  1. $(document).ready(function() {
  2.  
  3. $('#breedtes').change(function() {
  4.  
  5. var gekozenBreedte = $(this).val();
  6. $.get('lengtes.ajax.php', { breedte:gekozenBreedte }, function(data) {
  7. $('#div-voor-nieuwe-dropdown').html(data);
  8. });
  9. });
  10. });


De ajax gaat dan naar het php bestand "lengtes.ajax.php" waar je de nieuwe dropdown opbouwt en dan echoed. De data die van dat bestand komt, word dan in een divje met de html id attribuut "div-voor-nieuwe-dropdown" ingeladen.

Daarna gebruik je de twee dropdowns om met javascript om de oppervlakte en prijs te berekenen. Ik hoop dat dit je heeft geholpen.

Edit: als je dit niet eens kon doen, vraag ik me af of jij wel de aangestelde persoon bent om deze website te maken ?
Offline alex028 - 16/09/2009 23:06
Avatar van alex028 Nieuw lid Zeer bedankt voor alle info, hier kan ik iets mee.

Ik weet wat van PHP en dat is meestal genoeg, in dit geval dus niet.
Soms moet je in het diepe springen om nieuwe dingen te leren heh?

IIG harstikke bedankt
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.188s