html form submit / Uudelleenohjaus JavaScrptillä, miten ?

Web-Koodaaja

Helpoin tapa olisi varmaan tämä:

www2.organisaatio.fi = dyndns -domain, joka ohjataan kulloisellekin dynaamisella IP -osoitteella olevalle palvelimelle.

MUTTA: Tämän ratkaisun huono puoli on se, että jotkut dns cache -palvelimet eivät kunnioita esim. 5 minuutin vanhenemisaikaa,
jolloin palvelimen IP -osoitteen muutos voi aiheuttaa pidemmänkin,kuin 5 minuutin katkoksen !

Mutta olisiko jotenkin mahdollista hoitaa homma sensijaan näin ?

html form:in submit -nappi laitetaankin suorittamaan javascript -funktio selaimessa.

Tämä javasrcipt -funktio tekisi jotakin tämäntapaista:

finalhandlerURL = GetUrl("www.organisaatio.fi/cgi-bin/get_final_URL?FormID=001");

// funktio GetUrl kutsuu organisaation kiinteällä IP:llä olevaa palvelinta,ja
// siellä esim. PHP -skriptiä get_final_URL, joka palauttaa yhden rivin mittaisen tekstitiedoston (ilman rivinvaihtomerkkiä)
// joka sisältää: http://162.251.137.186/cgi-bin/formhandler.cgi

// nyt muuttujan finalhandlerURL arvo on esim: "http://162.251.137.186/cgi-bin/formhandler.cgi"


// Seuraavaksi pitäisi kutsua alkuperäisen html form:in käsittelijää, jonka URL on muuttujassa finalhandlerURL, MITEN ?

Eli kysymykset:

1. Miten tehdään JavaScript -funktio, joka hakee määritellyltä palvelimelta yhden rivin tekstitiedoston (ilman rivinvaihtomerkkiä)
ja palauttaa ko. yksirivisen tekstitiedoston sisällön merkkijonomuuttujassa ?

2. Miten voi, jos html -koodissa on määritelty formin submit -nappi kutsumaan javascript -funktiota, niin
miten ko. javascript -funktiosta saa ohjattua formin käsittelyn URL:iin, joka on annettu merkkijonomuuttujassa,
siis siten, että varsinainen URL on merkkijonomuuttujassa, ja selain automaattisesti lisää
ko. URL:in perään esimerkiksi ?Nimi=Kalle&Puhelin=040123456&Salasana=123456 ?

Oletetaan, että html form:illa on tässä esimerkkitapauksessa input -tekstikentät:

Nimi
Puhelin

JA

Salasana

JA että Salasana -kenttä on määritelty password -määreellä, jolloin sen sisältö näytetään esim. tähdillä todellisen sisällön sijasta.

Voiko javascriptillä tehdä tällaista, ja jos, niin miten ?

MOTIIVI:

Organisaatiolla on 2 palvelinta:

www.organisaatio.fi Tämä palvelin on kiinteällä julkisella IP -osoitteella, mutta koska kyse on vuokrattu web -hotelli, niin
on olemassa rajoituksia siinä, minkä tyyppistä koodia voi suorittaa.
Usein esim. niin, että voidaan suorittaa VAIN PHP ja PYTHON -skriptejä, mutta esim. binääriohjelmien ajo on kielletty tai estetty.

www2.organisaatio.fi Tämä palvelin on julkisella, mutta dynaamisesti vaihtuvalla IP -osoitteella tyypillisen laajakaistaliittymän takana, jolloin
sen IP -osoite voi vaihtua koska tahansa, kun laajakaistaliittymän yhteydentarjoaja niin päättää.
Tämän voi toki määritellä esim. dyndns -palvelimeen, mutta jos esim. vanhenemisajaksi laitetaan 5 minuuttia, tästä seuraa 2 haittaa:

1) Kun IP -osoite vaihtuu, tämä palvelin on joka tapauksessa saavuttamattomissa 5 min IP:n muuttumisesta

2) JOS jokin muu dns -palvelin välimuistittaa dyndns -palvelimen vastauksen, niin kaikki tällaiset välimuistittajat
EIVÄT välttämättä kunnioita asetettua 5 min aikaa, vaan saattavat siitä huolimatta välimuistittaa
nyt vanhentunutta IP -osoitetta esim tunnin tai jopa vuorokauden verran.
Tällöin tämä palvelin on saavuttamattomissa esim. tunnin tai jopa vuorokauden !

Tarkoituksena siis olisi, että aina käyttäjän painaessa selaimessaan html formin submit -nappia, niin
silloin käyttäjän selaimessa suoritettava javascript -koodinpätkä aina
hakisi www2.organisaatio.fi:n IP -osoitteen www.organisaatio.fi -palvelimella pyörivältä PHP -skriptiltä,
jonka oletetaan AINA sisältävän ajan tasalla olevan tiedon www2.organisaatio.fi:n IP -osoitteesta.

1

194

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 1 + 1 < 3

      Mitä ihmettä olet tekemässä? Kysymyksestäsi ei saa tolkkua. Jos nimipalvelun kanssa on ongelmia, niin ei jokin lomakkeen lähetyksen uudelleenohjaus javascriptillä ole ratkaisu, ei edes tilapäisratkaisun yrityksen jäljitelmän alfaversio.

      Olisi kannattanut aloittaa kertomalla ongelma, jota olet ratkaisemassa. Tuon sekavan sepustuksen jälkeen ketään tuskin enää kiinnostaisi, vaikka näkisi järkevän ongelmakuvauksen.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Suomen kansa haluaa Antti Lindtmanista pääministerin

      Lindtman on miltei tuplasti suositumpi kuin etunimikaimansa Kaikkonen. Näin kertoo porvarimedian teettämä kysely. http
      Maailman menoa
      280
      4733
    2. Vain 21% kannattaa Lindtmania pääministeriksi

      se on selvästi vähemmän kuin puolueen kannatus, mites nyt noin?
      Maailman menoa
      135
      3056
    3. Miksei Björn Wahlroos jaa rahaa köyhille?

      Esimerkiksi Nordean tiloissa? Vai tuovatko ne köyhät hiekkaa marmorilattioille ja siksi ei pysty mursunviiksi pystyyn k
      Maailman menoa
      42
      2918
    4. Jouluksi miettimistä: kuka tai mikä valmistaa rahan?

      Nyt kun on ollut vääntöä rahasta ja eritoten sen vähyydestä, niin olisi syytä uida rahan alkulähteille, eli mistä se syn
      Maailman menoa
      28
      1531
    5. Julkinen sektori on elänyt aivan liian leveästi yli varojensa!

      Viimeisen 15 vuoden aikana julkisen puolen palkat ovat nousseet n. 40%, kun taas yksitysellä sektorilla vain n. 20%. En
      Maailman menoa
      227
      1232
    6. Missä kunnassa kaivattusi asuu

      Kuinka tarkkaa uskalla sanoa?
      Ikävä
      47
      1169
    7. Yksikään persu ei ole saanut Nobelin palkintoa

      Kertoo paljon persujen älyn puutteesta. Demareista mm. Ahtisaari on kyseisen palkinnon saanut.
      Maailman menoa
      7
      976
    8. Emme koskaan keskustelleet kasvotusten syistä välirikollemme

      Enkä voisi kertoa perimmäistä rehellistä syytä. Kerroin sinulle pintapuolisen ”paketin” ja otin tavallaan omalle vastuu
      Ikävä
      58
      961
    9. Paskalaista valokuitulakiin

      Nyt maksajiksi joutuvat kaupunkilaiset eivätkä mökkiensä ulkohuusseissa kakistelevat mummot. Nimittäin EU määrää jokais
      Maailman menoa
      52
      959
    10. Miten antaa merkki hyvin eri ikäiselle miehelle, että kertoisi toiveensa ja ajatuksensa?

      Olen pitkään pitänyt miehestä, joka myös varmasti minusta. Hän ei tosin kerro ihastumisesta, eli voi hyvin olla, että tu
      Ikävä
      78
      931
    Aihe