Onderliggend ontwerp: invulroute doorlopen op basis van ingevulde waarden in eerdere velden.
Ik heb dit geprobeerd met HTML, PHP-scripts en MySQL. Maar door POST, vind ik het snel erg complex worden, vanwege de hoeveelheid routes + vrij houterig, vanwege elke keer op een knop moeten drukken om resultaat te zien.
De projecten gaan over onderzoek van gebouwen/schepen. Een route m.b.t. de basisgegevens zou kunnen zijn: 1.Kies: gebouw/schip. Stel "gebouw". 2.Kies: bestaand adres/nieuw adres. Stel: "bestaand adres" 3.Kies: nieuw project/bestaand project/volgproject. Stel: "volgproject" 4. Kies: bestaande opdrachtgever/nieuwe opdrachtgever. Stel: "bestaande opdrachtgever" 5.Kies: nieuwe contactpersoon/bestaande contactpersoon. Stel: "nieuwe contactpersoon".
Elke keer wanneer voor "nieuw(e)…" gekozen wordt, moeten bijbehorende attributen ingevuld en opgenomen worden in de database.incl. koppelingen om later query's te kunnen maken.
Is het probleem van de complexiteit op te lossen door met AJAX of Javascript te werken? Met geen van tweeën heb ik ervaring. Of moet ik het heel anders aanpakken? Wie kan me iets verder helpen? Liefst met een simpel voorbeeldje?
je schrijft een heel verhaal en dan begin ik eerst maar met de basis met name ook vanwege je uiteindelijke vraag.
Als eerste: PHP draait op de server en Javascript draait in de webbrowser van de gebruiker. Ze kunnen dus prima 'naast elkaar' hun nut bewijzen in één en dezelfde webpagina en/of formulier en hebben daarbij allebei hele andere verantwoordelijkheden.
In het voorbeeld dat je schetst wordt het inderdaad al snel zeer complex. daarom moet er eerst een goed plan komen met welke vragen wanneer ingevuld dienen te worden.
AJAX is een onderdeel van javascript dat er voor zorgt dat er op de achtergrond informatie vanuit de browser verstuurd wordt naar de server en/of opgevraagd wordt van de server zonder dat de webpagina hierbij ververst wordt.
Overigens zal het altijd zo blijven dat de informatie die in de browser door de gebruiker wordt ingegeven eerst naar de server zal moeten worden teruggestuurd alvorens je deze op de server kunt opslaan in de database. Dat je hiervoor persé op een submit knop moet drukken is niet juist want je kunt dit 'POSTen' ook door javascript laten gebeuren.
Nog even één tip:
Vaak zie je dat in complexe formulieren heel simpel eigenlijk alle formuliervelden in de html staan maar degene die niet van toepassing zijn in bepaalde omstandigheden worden dan met css verborgen gehouden voor de gebruiker (display:none;). Met javascript kunnen delen van het formulier weer snel te voorschijn getoverd worden wanneer dat nodig is.