Manu: Variablen Übergabe/Ausgabe

hallo,

ich habe ein problem.
ich habe nun eine datei1 und eine datei2, in die datei1 gibt man per felder einige angaben ein die dann per js variablen zugewiesen werden.
nun will ich die variablen an die datei2 senden:
(ich benutze hier mal nur 2 der vielen variablen)

:
:
URL='datei2.html?'+firma+branche;
window.location=URL;
:
:

die definition der variablen und so ist klar und auch eindeutig.
mit dem obigen teilcode sende ich ja die angehängten virablen und derren inhalt an die datei2.
das funktioniert auch.

nun kommt die ausgabe der variablen in der datei2, hier fängt dann der fehler den ich begangen habe offensichtlich zu werden, hier der code:

<html>
<head>
<title>Drucker Test Ausgabe</title>
<link rel="stylesheet" href="anmeldung.css" type="text/css">

<script language="javascript">
var uebernahme=new String(document.location.href);
var uebergabe=uebernahme.indexOf("?");

var firma=new String(uebernahme.substring(uebergabe+1));
var branche=new String(uebernahme.substring(uebergabe+2));
</script>

</head>
<body>
<script language="javascript">document.write(firma)</script><br>
<script language="javascript">document.write(branche)</script><br>
</body>
</html>

so, der fehler äussert sich wie folgt:
ausgabe der eingegebenen daten über das textfeld ohne unterbrechung d.h. --> "firma = 1234" und "branche = 5678" ergibt in der ausgabe bei "firma --> 12345678" und bei branche --> "2345678".

was muss ich verändern das er mit "firma --> 1234" und "branche --> 5678" ausgibt?
ich vermute das der fehler beim anhängen der variablen anfängt, hat jemand ne lösung für mein prob?

mir ist klar das das viele über php machen, leider bin ich der sprache nicht mächtig ;) und will es daher über js lösen, bin ja auch relativ weit, was ich noch brauche ist lediglich das beschriebene problem...

vielen dank für eure hilfe
Manu

  1. Hi,

    ausgabe der eingegebenen daten über das textfeld ohne unterbrechung d.h. --> "firma = 1234" und "branche = 5678" ergibt in der ausgabe bei "firma --> 12345678" und bei branche --> "2345678".

    was muss ich verändern das er mit "firma --> 1234" und "branche --> 5678" ausgibt?

    EshatsichinderSchriftsprachebeispielsweisebewaehrteinTrennzeichenzwischendenWoerternzubenutzenerhoehteinfachdieLesbarkeit.

    Und das gleiche solltest du auch tun - ein Trennzeichen verwenden, anhand dessen du die einzelnen Bestandteile dann wieder trennen kannst. Dass dieses Trennzeichen innerhalb der Daten dann nicht vorkommen darf (und wenn, irgendwie maskiert werden muss), sollte sich von selbst verstehen.

    MfG ChrisB

    1. Hallo Chris,

      EshatsichinderSchriftsprachebeispielsweisebewaehrteinTrennzeichenzwischendenWoerternzubenutzenerhoehteinfachdieLesbarkeit.

      eine wirklich anschauliche Erklärung :-)

      Und das gleiche solltest du auch tun - ein Trennzeichen verwenden, anhand dessen du die einzelnen Bestandteile dann wieder trennen kannst. Dass dieses Trennzeichen innerhalb der Daten dann nicht vorkommen darf (und wenn, irgendwie maskiert werden muss), sollte sich von selbst verstehen.

      auch hier noch eine Ergänzung:
      Auch die Parameterinhalte sollten angemessen kodiert werden, der OP sollte sich
      dazu in SELFHTML die objektunabhängigen Funktionen anschauen.

      Freundliche Grüße

      Vinzenz

      1. so, nachdem ich das problem jetzt eigendlich soweit gelöst habe und auch schon mal ne funktionierende lösung "hatte" :/
        habe ich nun wieder nen problem, das ich wohl irgendwie selbst verursacht habe...

        ich poste hier mal den veränderten codeteil:
        (dabei hat mir das split() aus dem anderen thread geholfen^^)

        ---> Die übergabe der Variablen aus der Datei1
        :
        :
        var uebernahme=new String(document.location.href);
        var uebergabe=uebernahme.indexOf("?");
        var daten = uebergabe;
        var daten1 = daten.split("*");
          </script>
        :
        :
        ---> Aufruf des Inhalts der 2ten angehängten Variable
        <script language="javascript:document.write(daten1[1]);"></script>
        :
        :

        so hab ich das nun für alle variablen gemacht.
        die übergabe funktioniert soweit ich weis, allerdings hackt irgendwas bei der ausgabe...
        das die übergabe funktioniert vermute ich da bei der datei1 die funktion korrekt bis zum ende ausgeführt wird.

        grüsse und bitte um hilfe^^
        Manu

        1. ich poste hier mal den veränderten codeteil:
          (dabei hat mir das split() aus dem anderen thread geholfen^^)

          ---> Die übergabe der Variablen aus der Datei1
          :
          :
          var uebernahme=new String(document.location.href);

          Das ist überflüssig.

          var uebergabe=uebernahme.indexOf("?");
          var daten = uebergabe;
          var daten1 = daten.split("*");

          Warum benutzt du nicht wie alle das '&' und '=' als Trenner?

          ---> Aufruf des Inhalts der 2ten angehängten Variable
          <script language="javascript:document.write(daten1[1]);"></script>

          Das ist Unsinn. Das 'javascript:' Pseudo Protokol ist nur in Links nötig, da diese ein Protokoll erwarten hat man sich da auf 'javascript:' geeignet, ist aber kein guter weg.
          Wo hast du das language Attribut ausgegraben?
          Wo ist das type Attribut?

          So müßte das also aussehen:

          <script type="text/javascript">  
          document.write(daten1[1])  
          </script>  
          
          

          Struppi.