SWabek: Array

Hallo und Guten Tag ,

Ich habe folgendes Problem. Ich erzeuge ein Array.

-> $link['name'] ='name';
-> $link['email']='email';

Das Funktioniert auch bis dahin auch und z.B. mit

-> echo ($link['email']);

Wird mir das Ergebnis korrekte ausgegeben.

Nun benötige ich aber diese Array nicht hier sondern an einer anderen Stelle in
der Datei. Mit switch und case habe ich das Programm unterteilt und diese Zeile
eingefügt.

echo "<br><br><a class='link'
href='userlinks.php?action=links&link=$link'>Klicken Sie hier, um
zurückzukehren</a></b></center></font>";

Nun fängt das Problem an. Ich schreibe an der Stelle wo es gebraucht wird

-> $link = $HTTP_GET_VARS['link'];

Und anschließend

-> echo ($link['email']);

Das Ergebnis ist nur ein

-> A

Mache ich das alles mit einer Variablen z.B $link = "test"; Funktioniert es. Warum wird aber mein Array nicht richtig übergeben.

Danke im Voraus!

Swabek.

  1. Hi,

    Du definierst:

    -> $link['email']='email';

    und ueberschreibst anschliessend:

    -> $link = $HTTP_GET_VARS['link'];

    Warum wird aber mein Array nicht richtig übergeben.

    Weil da jetzt $HTTP_GET_VARS['link'] drinnesteht.

    Gruesse  Joachim

    1. Hallo,

      wie muss ich das aber richtig machen. Habe alles mögliche ausprobiert aber nichts hat funktioniert. Ein kleines Beispiel wäre nett.

      Danke!

      Swabek

      1. hi,

        wie muss ich das aber richtig machen.

        was willst du denn eigentlich erreichen?

        gruss,
        wahsaga

        1. hi,

          wie muss ich das aber richtig machen.

          was willst du denn eigentlich erreichen?

          gruss,
          wahsaga

          Ich erzeuge ein Array z.B.

          -> $link['name'] ='Hans';
          -> $link['email']='hans@test.de';

          Nun Übergebe ich das Array.

          echo "<br><br><a class='link'
          href='userlinks.php?action=links&link=$link'>Klicken Sie hier, um
          zurückzukehren</a></b></center></font>";

          angekommen bei

          case links;

          soll der Inhalt in ein Formular eingetragen werden. Aber in meinem Array steht nichts mehr drin. Übergebe ich statt ein Array einen Text z.B. test ist alles OK.

          Ich bin schon am verzweifeln.

          Swabek

          1. hi,

            -> $link['name'] ='Hans';
            -> $link['email']='hans@test.de';

            Nun Übergebe ich das Array.

            nein, tust du nicht.

            echo "<br><br><a class='link'
            href='userlinks.php?action=links&link=$link'>Klicken Sie hier, um
            zurückzukehren</a></b></center></font>";

            was gibt bei dir
            echo $link;
            aus?

            na siehst du - also steht in deinem link jetzt auch nichts anderes.

            beschäftige dich mit serialize()/unserialize(), wenn du auf diese weise ein array per link übergeben willst.

            Ich bin schon am verzweifeln.

            solche hinweise kannst du dir sparen.
            wir sind hier, um probleme zu besprechen, nicht irgend jemands seelische verfassung.

            gruss,
            wahsaga

            1. Das mit dem Verzweifeln sollte kein Hilferuf gewesen sein sondern nur Gerede. Aber trotzdem vielen Dank.

              http://www.sb-tools.de

              Swabek

          2. Hi,

            href='userlinks.php?action=links&link=$link'>

            So haengst Du als Parameter lediglich "Array" an -  denn genau das ist $link.

            // test
            $str = "";
            foreach ($link as $key => $val) $str .= "&" . $key . "=" . $val;
            // erzeugt &name=Hans&email=hans@test.de
            // das kannst Du dann anhaengen
            ansonsten kannst Du den Array auch serialisieren:
            http://www.php.net/manual/de/function.serialize.php

            Gruesse  Joachim

      2. Hi,

        -> $link = $HTTP_GET_VARS['link'];

        Wenn Du alle Get-Parameter in $link speichern willst, musst Du
        $link = $HTTP_GET_VARS schreiben.
        Dann sollte auch $link['email'] einen Wert enthalten, sofern email als Parameter uebergeben wurde.

        Gruesse  Joachim