Rinox Skrevet 26. juni 2007 Rapporter Del Skrevet 26. juni 2007 Hei! Jeg lurer litt på hvordan jeg skal kunne gjøre slik at jeg har to skjemaer med selecter og så gjøre slik at hvis brukeren har fylt ut det og det i det første skjemaet så vil det og det vises i det andre skjemaet. La oss si at vi har et skjema med en select. I den selecten har vi to felter man kan velge mellom; "elektronikk" og "biler". Jeg vil gjøre slik at med en gang man har valgt f.eks. elekronikk så skal det andre skjemaet inneholde "mobil", "mp3" og "spill". Men hvis man velger biler så er valgene i det andre skjemaet "opel", "nissan" og "fiat". Altså skal valgene i det andre skjemaet være avhengig av valget som ble valgt i det første skjemaet Vet noen hvordan jeg kan gjøre dette? Takker så mye for svar Lenke til kommentar
Crowly Skrevet 26. juni 2007 Rapporter Del Skrevet 26. juni 2007 Dette er nok best løst med javascript, evt ajax. Kan veldig lite om javascript, og enda mindre om ajax. Det kan også løses med php, med det betinger at siden lastes på nytt for hver gang du gjør ett valg i select boksen. For å få siden til å lastes på nytt etter ett gjordt valg, så kan en modifisert utgave av dette scriptet http://www.thesitewizard.com/archive/navigation.shtml gjøre jobben, hvor newurl parameteret må inneholde en id som forteller php hva som da skal skrives ut i neste select boks. Men jeg ville ha prøvd å få til en løsning i javascript/ajax på dette. Lenke til kommentar
Rinox Skrevet 26. juni 2007 Forfatter Rapporter Del Skrevet 26. juni 2007 Ja, jeg tenkte meg at jeg sikkert ville måtte bruke AJAX, men jeg var da ikke sikker på hvor jeg skulle spørre.. Men Er det noen her som har en slik kode da? Jeg har sett mange nettsider som har det slik... Lenke til kommentar
Rupal Skrevet 26. juni 2007 Rapporter Del Skrevet 26. juni 2007 Ja, jeg tenkte meg at jeg sikkert ville måtte bruke AJAX, men jeg var da ikke sikker på hvor jeg skulle spørre.. Men Er det noen her som har en slik kode da? Jeg har sett mange nettsider som har det slik... 8947259[/snapback] På w3schools finner du en del gode eksempler som du kan bruke. Se under submenyen "Php og ajax". Her er det både vist eksempler som er hentet fra database, php-fil og XML-fil! Lenke til kommentar
Crowly Skrevet 26. juni 2007 Rapporter Del Skrevet 26. juni 2007 Mulig denne siden kan være til hjelp om ajax: http://www.ajax-tutorials.com/tutorial-list/ ,se på tutorial nr 3, tror det skal ta for seg det du har behov for. Har ikke sett noe særlig på den siden selv, bare lagd ett bokmerke til senere når jeg for behov for ajax Lenke til kommentar
Gjest Slettet+142 Skrevet 26. juni 2007 Rapporter Del Skrevet 26. juni 2007 Er vel enkelt og greit å gjøre som resten her sier. - Javascript + Ajax. Hvis det 2. skjemaet skal endres etter hvilke verdier det skjemaet som allerede var fylt ut, blir det vel enklest å lage et php-dokuement som tar POST-verier, som da skriver ut et ferdig skjema til deg. Da kan du enkelt bare føre denne skjemaet inn i en div eller span som innerHTML Ble kanskje litt uforståelig forklart Men skal ikke denne tråden til Javascript? Lenke til kommentar
Peter Skrevet 27. juni 2007 Rapporter Del Skrevet 27. juni 2007 Synes du burde lære å gjøre dette i PHP først, og deretter legge på javascript senere. Husk at meningen med AJAX og javascript generelt er å forbedre brukeropplevelsen, ikke erstatte annen funksjonalitet. Flere grunner til det: 1) For ikke lenge siden var det en del nettlesere som ikke støttet eller hadde javascript skrudd av. Dette har nå sunket til < 1%, så det er ikke like viktig lenger, men det er kunnskap folk ihvertfall burde ha. 2) Roboter leser ikke javascript. Med mindre siden din fungerer uten javascript, vil ikke en indekseringsrobot, som f.eks. google sin webcrawler, kunne indeksere hele siden din. I dette tilfellet er det snakk om en form, og sikkert ikke like viktig å bli indeksert, men teorien er fortsatt veldig gjeldene. Lenke til kommentar
Crowly Skrevet 27. juni 2007 Rapporter Del Skrevet 27. juni 2007 (endret) Fordelen med PHP mot Javascript (eller browser side scripting) er at PHP vil alltid fungerer, mens Javascript kan skrus av av brukeren, og dermed kan en del funksjonalitet forsvinne. Kan prøve å lage en enkel php løsning når jeg kommer hjem fra jobb. Edit: Første gang jeg har lagd noe slikt selv, så jeg begynte slik PHP <?php session_start(); if (!isset($_POST['x'])) { $_POST['x']=''; if (isset($_SESSION['x'])) unset($_SESSION['x']); } echo "<div style='margin: 1em; font-weight: bold;'>"; if (isset($_SESSION['x'])) echo $_SESSION['x']." - ".$_POST['x']; else echo $_POST['x']; echo "</div>"; echo "<form action='test.php' method='post' style='margin: 1em;'>"; echo "<select name='x'>"; switch ($_POST['x']) { case 'Test_1': if (!isset($_SESSION['x'])) $_SESSION['x']=$_POST['x']; else $_SESSION['x'].=" - ".$_POST['x']; echo "<option>Test_1.1</option> <option>Test_1.2</option> <option>Test_1.3</option>"; break; case 'Test_2': if (!isset($_SESSION['x'])) $_SESSION['x']=$_POST['x']; else $_SESSION['x'].=" - ".$_POST['x']; echo "<option></option> <option>Test_2.1</option> <option>Test_2.2</option> <option>Test_2.3</option>"; break; case 'Test_3': if (!isset($_SESSION['x'])) $_SESSION['x']=$_POST['x']; else $_SESSION['x'].=" - ".$_POST['x']; echo "<option>Test_3.1</option> <option>Test_3.2</option> <option>Test_3.3</option>"; break; default: echo "<option>Test_1</option> <option>Test_2</option> <option>Test_3</option>"; } echo "</select> <input type='submit' value='Ok' /></form>"; ?> Dette var mest for å teste noe enkelt, men hver case bør jo endres til å hente ut verdier fra f.eks en database/tabell slik at det blir litt mere dynamisk. Session biten er kun for skrive ut kategoriene du har valgt tidligere over dropdownboksen. Håper dette kan være til litt nytte, sikker mulig å gjøre dette på en bedre måte. Endret 27. juni 2007 av crowly Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå