Hallo

Welkom, Gast. Alsjeblieft inloggen of registreren.

Recent

218 gasten, 0 leden

Welkom, Gast. Alsjeblieft inloggen of registreren.

28 maart 2024, 21:30:09

Login met gebruikersnaam, wachtwoord en sessielengte

Nieuws

Welkom op het vernieuwde NL Computer Forum!

Auteur Topic: Het werkt maar hoe!  (gelezen 11309 keer)

0 leden en 1 gast bekijken dit topic.

Offline NLCOMP

  • Forumheld
  • *****
  • Berichten: 14.666
    • NL Computer Forum
Het werkt maar hoe!
« Gepost op: 9 november 2009, 22:41:23 »
Bericht 1 van 4

NL Computer Forum ~ Homepages & Web
 Van:Ton Van Hest (Sysop)Datum:25-03-2005
 Aan:AllenMsgID:2144.1
 Onderwerp:Het werkt maar hoe!Forum:ws-nlcomputer
Ndat het Cookiemonster mij tot waanzin en hysterie had gedreven heb ik ze allemaal opgegeten en ben in het alternatief(http://.............?xxxxxx) gedoken.
En voorwaar eindelijk (het "wie heeft mij opgeroepen") werkend gekregen maar ik ben niet echt gecharmeerd van de knulligheid.
Ik zorg dus dat de betreffende page wordt opgeroepen met "bla/bla/bla?wiebenik" en in de aangeroepen page staat (heel kort door de bocht) volgende:
<html>
<script language="Javascript">
function waarvandaan()
{
var dir = location.href.substring(0,location.href.lastIndexOf('?') 1);
var url = location.href.substring(dir.length,location.href.length 1);
document.write("<br>Vacature<input type='text' name='Vacature' value='"   url   " '>");
return url;
}
// De functie bouwt dus de gewenste regel op en stuurt deze naar de HTML
</script>
<body>
........................
<FORM METHOD="POST" ACTION="http://www.dumonde.nl/php/form.php" enctype="multipart/form-data" >
.........................
<INPUT TYPE="text" name="naw" >
..........................
<script language='javascript'>
document.write(waarvandaan());
</script>
........................
<INPUT TYPE="submit" name="submit" VALUE="Verstuur"></form>
Tja het werkt maar ik kan het niet bijster elegant vinden.
--------------------
Aloha

Ton van Hest




Bericht 2 van 4

NL Computer Forum ~ Homepages & Web
 Van:Michel Uphoff (Sysop)Datum:25-03-2005
 Aan:Ton Van Hest (Sysop)MsgID:2144.2
 Onderwerp:Het werkt maar hoe!Forum:ws-nlcomputer
Hoi Ton,
>> Tja het werkt maar ik kan het niet bijster elegant vinden. <<
Als het volgende je bedoeling is:
HTTP://WWW.DitIsDeUrl?Karel waarbij de naam Karel dus "afgescheiden" moet worden van de url en in een variabele gezet moet worden, dan kan het wel een stúk eenvoudiger. Javascript voorziet in de functie split, die er speciaal voor dit doeleind is. Met de split method kan je die ingewikkelde stringparsing die jij hebt gebruikt overslaan. Ik leg het even uit:
Split gebruiken in een javasrcipt geeft automatisch een array, (zal je bij die heerlijke cookies ook al gezien hebben) en dat is even wennen. Voorbeeld:
<script>
var woord = "een%twee%drie".split("%");
document.write(woord);
</script>

Het resultaat zal zijn: een,twee,drie , je krijgt niet één maar drie antwoorden!
Dus een array bestaande uit drie stukken is het resultaat, en het gekozen scheidingsteken (hier een %) wordt gelukkig auto weggelaten. Om slechts één van de drie antwoorden te tonen, zal je moeten aangeven welk arraynummer (beginnend met 0) je wilt hebben. Het arraynummer moet tussen [] opgegeven worden:

<script>
var woord = "een%twee%drie".split("%");
document.write(woord[1]);
</script>
Het resultaat zal zijn: twee
Verder gebruik jij een function die wordt aangeroepen vanuit het script. Dat is een prima methode, maar het hoeft natuurlijk niet want maakt de code wel ingewikkelder dan nodig.
De meest eenvoudige methode om een woord achter het vraagteken in de url op te vissen en in een variable te plaatsen is dan ook:
<script>
var test = location.href.split("?");
document.write(test[1]);
</script>
 
Met andere woorden: Plaats in het document de inhoud van de tweede array variable, die het resultaat is van splitten van de url op het teken ?. De eerste array variable bevat natuurlijk de url.
Het geheel is dan eenvoudig in het form te zetten, zonder functions en dat soort gedoe. Een werkend voorbeeld:
<html><head><title></title></head>
<body>
<form enctype="text/plain" action="mailto:ton@provider.com" method="post">
<script>
var VacNaam = location.href.split("?");
document.write("Vacature<input type='text' name='Vacature' value='"   VacNaam[1]   " '>");
</script>
<input type=submit value="Verstuur">
</form>
</body>
</html>
Zoals je ziet is javascript best lastig maar ook krachtig. Op internet zie je een aantal prima voorbeelden, maar helaas ook veel rommelige slecht geschreven code.

Michel Uphoff (Sysop)
Homepagina

Gewijzigd 25/03/2005 6:56 ET CET door Michel Uphoff (Sysop)


Bericht 3 van 4

NL Computer Forum ~ Homepages & Web
 Van:Ton Van Hest (Sysop)Datum:25-03-2005
 Aan:Michel Uphoff (Sysop)MsgID:2144.3
 Onderwerp:Het werkt maar hoe!Forum:ws-nlcomputer
Michel,
>>
<script>
var test = location.href.split("?");
document.write("Vacature<input type='text' name='Vacature' value='"   test[1]   " '>");
</script>
Inderdaad, DE oplossing.
Die "truc" met een array als resultaat ken ik ook van Fivewin (exotisch pakket om Clipper onder Windows te laten draaien zonder dat het nog als dBase herkenbaar is)/ Fivewin werkt ook met objects enzo (met alle voor- en nadelen).
Ik heb me uiteraard in de div. websites verdiept maar ik vind de ellende van de meeste dat ze weliswaar hele nuttige voorbeelden geven maar ik liever een basisvoorbeeld zie waarop ik vervolgens zelf verder ga borduren.
Wat ik helaas nog niet gevonden heb is een equivalent van http://www.handleidinghtml.nl/, een mooi reference manual en dan ook nog in het nederlands (toch altijd wat makkelijker). Mocht je er eentje weten (en idem voor PHP) houd ik me aanbevolen.
Op die manier zie je snel wat de diverse mogelijke methods zijn en kun je snel even experimenteren.

--------------------
Aloha

Ton van Hest




Bericht 4 van 4

NL Computer Forum ~ Homepages & Web
 Van:Michel Uphoff (Sysop)Datum:25-03-2005
 Aan:Ton Van Hest (Sysop)MsgID:2144.4
 Onderwerp:Het werkt maar hoe!Forum:ws-nlcomputer
Hoi Ton,
>> Ik heb me uiteraard in de div. websites verdiept maar ik vind de ellende van de meeste dat ze weliswaar hele nuttige voorbeelden geven maar ik liever een basisvoorbeeld zie waarop ik vervolgens zelf verder ga borduren. <<
Klopt. Doe ik ook het liefst. Ik heb in eerste instantie geen interesse in compleet toegepaste method's  maar liever een uitleg van de basic syntaxis en daarna wat toepassingsvoorbeelden. Ik hoop, dat mijn voorbeeld daaraan wat beter voldeed. Los daarvan wordt er wat afgeknoeid op internet, en voor je het weet word je met een draak van een oplossing opgezadeld.
>> equivalent van http://www.handleidinghtml.nl/ <<
Prima ding, ik hem hem daarom locaal staan.
>> Mocht je er eentje weten (en idem voor PHP) houd ik me aanbevolen. <<
Neem eens een kijkje bij: http://www.w3schools.com/default.asp
Links kan je uit een veelheid van talen kiezen, waaronder Js en PHP.

Michel Uphoff (Sysop)
Homepagina