Avatar billede j-kay Nybegynder
16. maj 2001 - 19:45 Der er 10 kommentarer og
1 løsning

encode variabel streng fra url

A ka\' ette hit\' ud a\'et!!

Har et lille bitte problem... Jeg har den her formular der bliver sendt til en side, og på den anden side skal jeg have disse informationer op og stå på siden.. Det går også godt nok, men jeg har et lille problem med at encode det....

Her er source koden!!:

<html>

    <head>
        <meta http-equiv=\"content-type\" content=\"text/html;charset=iso-8859-1\">
        <meta name=\"generator\" content=\"Adobe GoLive 5\">
        <title>Welcome to Adobe GoLive 5</title>
    </head>

    <body bgcolor=\"#ffffff\">
        <div align=\"center\">
            <p><b><font size=\"6\">Godkendt</font></b></p>

<FORM name=\"godkendt\" AUTOCOMPLETE=\"off\" METHOD=\"POST\" ACTION=\"https://payment.architrade.com/cgi-ssl/auth.cgi\">

<script>
<!--
function cgiget(field) {
  var s = document.location.search;
  var tr = \'?\'+field+\'=\';
  var start = s.indexOf(tr);
  if(start==-1) {
    tr = \'&\'+field+\'=\';
    start = s.indexOf(tr);
    if(start==-1)
      return \'[\'+field+\']\';
  }
  start += tr.length;
  var end = s.indexOf(\'&\',start);
  if(end==-1)
    return s.substring(start);
  else
    return s.substring(start,end);
}
//-->
</script>
</head>

            <body>
<table border=\"0\" cellpadding=\"0\" cellspacing=\"1\" width=\"auto\">
    <tr>
        <td>Butikkens ordrenummer er: <b>2001</b></td>
       
    </tr>
    <tr>
        <td>Transaktions nummeret er: <b><script>document.write(cgiget(\'transact\'))</script></td></B>
       
    </tr>
    <tr>
        <td>Beløb der bliver hævet på dit Dankort er: <b><script>document.write((cgiget(\'amount\'))/100)</script>.00 DKK.</td></B>
    </tr>
<tr>
<td><font color=\"white\">test</font></td>
</tr>
<tr>
    <td><b>Kundeoplysninger:</b></td>
</tr>
<tr>
    <td width=\"auto\"><br><input type=\"tekst\" name=\"navn\" value=\"asd\"><br><input type=\"tekst\" name=\"firma\" value=\"asd\"><br><input type=\"tekst\" name=\"email\" value=\"asd\"><br><input type=\"tekst\" name=\"adresse\" value=\"asd\"><br><input type=\"tekst\" name=\"post\" value=\"asd\"><br><input type=\"tekst\" name=\"tlf\" value=\"asd\"><br><input type=\"tekst\" name=\"fax\" value=\"asd\"><br></td>
</table>
</form>
</body>

<script>(cgiget(\'navn\'))</script><br>
<script>(cgiget(\'firma\'))</script><br>
<script>(cgiget(\'email\'))</script><br>
<script>(cgiget(\'adresse\'))</script><br>
<script>(cgiget(\'post\'))</script><br>
<script>(cgiget(\'tlf\'))</script><br>
<script>(cgiget(\'fax\'))</script><br>
<script>(cgiget(\'amount\'))</script><br>



<script Language=\"JavaScript\">
   
var navn = (cgiget(\'navn\'))
var firma = (cgiget(\'firma\'))
var email = (cgiget(\'email\'))
var adresse = (cgiget(\'adresse\'))
var post = (cgiget(\'post\'))
var tlf = (cgiget(\'tlf\'))
var fax = (cgiget(\'fax\'))
var amount = (cgiget(\'amount\'))


    document.godkendt.navn.value=unescape(navn)
    document.godkendt.firma.value=unescape(firma)
    document.godkendt.email.value=unescape(email)
    document.godkendt.adresse.value=unescape(adresse)
    document.godkendt.post.value=unescape(post)
    document.godkendt.tlf.value=unescape(tlf)
    document.godkendt.fax.value=unescape(fax)
    document.godkendt.amount.value=unescape(amount)
   


        </script>

</BODY>
</HTML>

Resultatet: (f.eks)

Navn: Tom+jensen
firma: g%25F8l+p%25F8llser+A%252FS
email: tom@g%25F8ll.dk
og så videre

I AM IN DESPERATE NEED OF ASSISTANCE!!

Hvis 250 point ikke er nok, så sig til!!
Avatar billede nikolajdu Nybegynder
16. maj 2001 - 19:56 #1
Avatar billede nikolajdu Nybegynder
16. maj 2001 - 19:58 #2
Avatar billede jakoba Nybegynder
16. maj 2001 - 20:33 #3
http://hjem.get2net.dk/Jakob.Aggernaes/temp/exp32917.html

funktionen buildParStr( ) genererer en streng med alle formdata.
  (udskift  FrontPage_Form1  med navnet på din form.

funktionen getValues( ) bruges på den side data sendes til og returnerer et array med feltnavne og værdier.

mvh JakobA
Avatar billede j-kay Nybegynder
17. maj 2001 - 09:42 #4
Jacoba

Jeg har kigget på den der side du sendte, og jeg har sådan set også fået det til at virke, men jeg får stadig \"+\" ind imellem

Antal3 = 1++X
Vare3 = Art.+226
Pris+pr.+Stk.3 = 510.00
Total+pris3 = 510.00
option3 = -
Antal4 = 1++X
Vare4 = Art.+228
Pris+pr.+Stk.4 = 535.00
Total+pris4 = 535.00


Hvad gør jeg forkert?
Avatar billede jakoba Nybegynder
17. maj 2001 - 10:26 #5
når du trykker på knappen \"send auto\" aktiveres buildParString() funktionen og så skulle data blive sendt nøjagtig som de står.

knappen \"try get\" laver den fejl du får fordi den benytter htms\'s indbyggede \"method=get\" funktion. Knappen er der kun for at demonstrere at det er ikke smart :)

mvh JakobA
Avatar billede j-kay Nybegynder
17. maj 2001 - 12:59 #6
Til:JacobA

Nu virker det, men jeg har stadig et lille problem, og det er at jeg gerne skulle have det til at \"poppe\" op i et nyt vindue. Det har virket før, men så vidt jeg ved, kan man kun have en action på onsubmit..

Avatar billede jakoba Nybegynder
17. maj 2001 - 14:18 #7
Det kan du gøre ve at inkludere et window.open kald i din validering (hvis den lykkes og så sætte target til det vindues navn.

<script language=\'javascript\'>

function valider ( frm ) {
  // først dine validerings tests.

  // hvis fomen er gal returneres false, ellers fortsæt med:
  window.open( \"about:blank\", \"vindue_navn\", features );
  frm.target=\"vindue_navn\";  //samme navn som ovenfor
  return true;
}; //end valider ( Form objekt ) -> boolean;

</script>

og i formen:
<form ...  onsubmit=\"return valider(this);\"

mvh JakobA
Avatar billede j-kay Nybegynder
17. maj 2001 - 14:45 #8
Jeg gør et eller andet forkert... Den \"popper\" godt nok op, men nu formaterer den ikke resultatet igen... Der ser sådan her ud!

Tom+Jensen - Der kommer \"+\" i alle mellemrum!

<script language=\'javascript\'>

function valider ( frm ) {
  // først dine validerings tests.

location.href=\'exp32917.html\'+buildParStr);return false;

  // hvis fomen er gal returneres false, ellers fortsæt med:
  window.open( \"about:blank\", \"betaling\", features );
  frm.target=\"betaling\";  //samme navn som ovenfor
  return true;
}; //end valider ( Form objekt ) -> boolean;

</script>

Avatar billede jakoba Nybegynder
17. maj 2001 - 15:01 #9
sådanher: (jeg havde glemt at formen jo slet ikke skal submittes)

<script language=\'javascript\'>

function valider ( frm ) {
  // først dine validerings tests.

  // hvis fomen er gal returneres false, ellers fortsæt med:
  window.open( \'exp32917.html\'+buildParStr(), \"betaling\");
  return false;
}; //end valider ( Form objekt ) -> false;

</script>
Avatar billede jakoba Nybegynder
19. maj 2001 - 01:21 #10
Jeg har lavet en sendeside og en modtage side som jeg tror de skal være:
http://hjem.get2net.dk/Jakob.Aggernaes/temp/exp73336sender.html
Avatar billede j-kay Nybegynder
21. maj 2001 - 08:22 #11
Jacob - du er en guru!!
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