Avatar billede jnrmgs Juniormester
19. september 2023 - 19:10 Der er 8 kommentarer og
1 løsning

Link fra form input

Hej!

Jeg vil lave en simpel side, der genererer et link der åbnes når man trykker på en knap.

Eksempelvis sådan her: http://www.hjemmeside.dk/ efterfulgt at det man nu skriver i et input-felt i en form. Når man så trykker på en knap, skal man komme til det link man selv har skrevet noget af.

På forhånd tak!
Avatar billede jnrmgs Juniormester
19. september 2023 - 19:51 #1
Det skulle gerne være i den her stil:

<body>
<form id="form1" name="form1" method="post" action="http://www.hjemmeside.dk/">
  <label>Tognummer
    <input type="text" name="Tognr" id="Tognr" />
  </label>
  <input type="submit" name="Link" id="Link" value="Find tog" />
</form>
</body>

Jeg vil så gerne have at indholdet af input "text", "Tognr" tilføjes adressen der er i form action
Avatar billede ejvindh Ekspert
20. september 2023 - 11:08 #2
Jeg ved ikke hvordan, hvis det skal være ren html, men hvis du lavede det i php, kunne du lave noget med, at hvis ikke der er noget i $_POST-variablerne, så vises formen blot, hvorimod hvis der ER noget, så "Header" til den side, som fremgår af variablerne.
Avatar billede ejvindh Ekspert
20. september 2023 - 13:40 #3
Alternativt kan du jo også bare bruge get som method i stedet for post. Så bliver inputs jo gjort til en del af adresselinjen bagefter. Dog således at starten af adressen er defineret i "action"-strengen.
Avatar billede jnrmgs Juniormester
20. september 2023 - 20:01 #4
Jeg har ikke ret meget forstand på at kode, men hvordan skulle det se ud, hvis man lavede i det i PHP?

Det jeg reelt ønsker er 2 felter man udfylder, som så sættes sammen med et link, der allerede er defineret
Avatar billede ejvindh Ekspert
20. september 2023 - 21:51 #5
Inden vi tyer til php, så prøv lige og udskift "post" med "get" i den kode, du har ovenfor, og fortæl i hvilken grad dette ikke er hvad du ønsker :-)
Avatar billede jnrmgs Juniormester
21. september 2023 - 17:12 #6
Hej igen!

Min kode er nu følgende:

<form id="Tog" name="Tog" method="get" action="baahn.expert/details">
    Tognummer<input type="text" id="Tognr" name="/"/>
    Dato<input type="text" id="Dato" name="/2023-" />
  <input type="submit" id="Link" value="Find tog" />
</form>

Dette returnerer følgende adresse: https://baahn.expert/details?%2F=RB+16419&%2F2023-=08-25

Problemet er at jeg ikke kan blive fri for "?" og "&", og så laver den "/" om til "%2F"
Avatar billede ejvindh Ekspert
22. september 2023 - 14:15 #7
Ok, så får du nok brug for noget php. Jeg ser nærmere på det lidt senere, hvis ikke andre i mellemtiden har budt ind.
Avatar billede ejvindh Ekspert
22. september 2023 - 19:50 #8
Jeg tænker at følgende kode i princippet kan gøre, hvad du ønsker. Du skal gemme det i en fil, du giver filendelsen php:

<?php
$site = "https://baahn.expert/details/";
if (isset($_POST["dato"]) && isset($_POST["tognr"])) {
    $headerString = $site.$_POST["tognr"].$_POST["dato"];
    if(filter_var($headerString, FILTER_VALIDATE_URL)) {
        header('Location: '.$headerString);
    } else {
        echo "Invalid url";
    }
} else {
    echo '
    <form id="Tog" name="Tog" method="post">
        Tognummer<input type="text" id="tognr" name="tognr"/>
        Dato<input type="text" id="dato" name="dato" />
    <input type="submit" id="Link" value="Find tog" />
    </form>';
}
?>
Avatar billede jnrmgs Juniormester
23. september 2023 - 13:11 #9
Tusind tak for hjælpen. Efter en smule modificering virker det helt som det skal.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester