login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Checken of variabele al bestaat in URL (Opgelost)

Offline markvegmond - 16/12/2009 16:46 (laatste wijziging 17/12/2009 12:01)
Avatar van markvegmondNieuw lid Hallo allemaal,

Ik heb het volgende probleem:
Via een drop-down menu wil ik de waarde van een variable in een url wijzigen.

Nu doe ik dat zo:


  1. <FORM NAME="nav" style="display:inline;margin:0;padding:0;">
  2. <SELECT NAME="SelectURL" style="width:254px;" onChange="document.location.href=document.location.href+'&variabele='+this.options[this.selectedIndex].value;">
  3. <OPTION VALUE="pulldown.html" SELECTED>Keuze:
  4. <OPTION VALUE="1">Home
  5. <OPTION VALUE="2">FAQs
  6. <OPTION VALUE="3">Artikelen
  7. <OPTION VALUE="4">Suggesties
  8. </SELECT>
  9. </FORM>


Dit werkt goed, maar: Als de variabele al bestaat, dan plakt hij deze nogmaals er achter. Ik wil dus eigenlijk checken of hij al bestaat, en zo ja; dan de waarde ervan wijzigen met de gekozen value uit het dropdownmenu.

Is dit mogelijk?

Alvast dank!

Groeten Mark

---------------------------------

Edit:

Nu heb ik het zo:

  1. <form method="POST" name="form" action="index.php?pagina=product&variabele='this.value'">
  2.  
  3. <select name="show" onChange="document.form.submit();">
  4. <OPTION VALUE="0" SELECTED>Keuze:
  5. <OPTION VALUE="1">Home
  6. <OPTION VALUE="2">FAQs
  7. <OPTION VALUE="3">Artikelen
  8. <OPTION VALUE="4">Suggesties
  9. </SELECT>
  10.  
  11. </FORM>


Alleen wordt de variabele niet gevuld. Heeft iemand een idee of het op deze manier kan?

Alvast dank!

8 antwoorden

Gesponsorde links
Offline Martijn - 17/12/2009 11:51 (laatste wijziging 17/12/2009 11:52)
Avatar van Martijn Crew PHP je zou er een functie van kunnen maken, die in je head plaatsen, en dan met php checken 

  1. var varExist = <?=isset($_GET['whatever']) ? true : false?>;


je zou ook een functie kunnen maken die de url uitleest en kijkt of je var er in voorkomt 

edit: En ik zou je options afsluiten met </option> is wat netter. Verder mag al je uppercase lowercase worden ;)
Offline Koen - 17/12/2009 12:02
Avatar van Koen PHP expert
Martijn schreef:
je zou er een functie van kunnen maken, die in je head plaatsen, en dan met php checken 

[..code..]

je zou ook een functie kunnen maken die de url uitleest en kijkt of je var er in voorkomt 

edit: En ik zou je options afsluiten met </option> is wat netter. Verder mag al je uppercase lowercase worden ;)


Ooit al eens een boolean proberen te echo'en?
Offline Stijn - 17/12/2009 12:08
Avatar van Stijn PHP expert
  1. <form method="GET" name="form" action="index.php">
  2.  
  3. <input type="hidden" name="pagina" value="product" />
  4.  
  5. <select name="show">
  6. <OPTION VALUE="0" SELECTED>Keuze:
  7. <OPTION VALUE="1">Home
  8. <OPTION VALUE="2">FAQs
  9. <OPTION VALUE="3">Artikelen
  10. <OPTION VALUE="4">Suggesties
  11. </SELECT>
  12.  
  13. </FORM>

Waarom complexe javascript gaan gebruiken als dit evengoed werkt.
Offline Martijn - 17/12/2009 12:22
Avatar van Martijn Crew PHP
Koen schreef:
[..quote..]

Ooit al eens een boolean proberen te echo'en?


0 en 1 toch? en anders verander je t in 0 en 1 
Offline Kevin - 18/12/2009 19:17
Avatar van Kevin Crew Ajax/REST Iets complexer maar mss handig is je url gaan nalezen op volgende manier:

  1. // hieronder niet aanpassen
  2. function gup( name )
  3. {
  4. name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  5. var regexS = "[\\?&]"+name+"=([^&#]*)";
  6. var regex = new RegExp( regexS );
  7. var results = regex.exec( window.location.href );
  8. if( results == null )
  9. return "";
  10. else
  11. return results[1];
  12. }
  13.  
  14. // hieronder wel aanpassen
  15. var product = gup('product');
  16. if(!product) {alert('geen product gekozen');}
  17. else {alert('u koos voor: '+product);}


URL moet in dit voorbeeld zijn:
pagina.html?product=broek
-> resultaat: alert met boodschap dat je een broek koos.

pagina.html?bla=niets
-> resultaat: alert met boodschap dat er geen product gekozen is.

Helpt dit je verder?
Offline markvegmond - 19/12/2009 11:14
Avatar van markvegmond Nieuw lid Dank jullie voor de uitgebreide reacties!
Ik ben het nu via action = "url + variabele = gekozen value" aan het doen, dat lijkt te werken. Als het klaar is post ik het wel even.
Offline Kevin - 19/12/2009 12:28
Avatar van Kevin Crew Ajax/REST Laat iets weten als het werkt. (of net niet hehe)
En bedank een poster die jou het beste hielp zodat deze post afgerond wordt erna.
Offline markvegmond - 20/12/2009 22:33 (laatste wijziging 21/12/2009 18:34)
Avatar van markvegmond Nieuw lid Uhm.. ik heb toch op de 19e bedankt voor de reacties? 

-- edit: ik zie nu wat je bedoelt!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.204s