Array mit $_get übergeben

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Array mit $_get übergeben

    So, also nach 2 Monaten Ausbildung muss ich mal langsam anfangen PHP "wirklich zu verstehen"!

    Also mein Problem bezieht sich auf das Übergeben von einem Array mit
    $_GET. Ich entwickle gerade ein Menü mit einer Kinderebene.
    Vater: customer (customerid)
    Kind: project (projectid)
    Wenn ich auf ein Menüpunkt klicke öffnet sich das Untermenü ohne Probleme. Allerdings kann ich momentan leider nur einen Zweig öffnen.

    Da ich aber erst seit kurzem weiß, dass man mehrere Zweige gleichzeitig aufgeklappen muss, hab ich das bei der Entwicklung noch nicht bedacht.
    Habe mir schon überlegt, den ganzen Baum mit Nested Sets wieder neu zu schreiben, allerdings würde dies zu weit führen.

    Hier mal der Code:

    PHP-Code:
    //Hier soll die neue Customerid in das Array geschrieben werden
    $arr[] = $customerid;

    //Hier wird die Customerid ausgelesen und weggeschickt
    echo "<a href='nav.php?arr="; echo $arr;echo"&customerid=";
    echo 
    mysql_result($result,$i,'customerid'); 
    echo
    "' target='main' \"' \">" 
    Hoffe dies ist verständlich.

    Wenn ich die Seite nun neu lade wird immer der alte Wert des Arrays überschrieben und nicht ein neuer Wert ans Ende des Arrays eingefügt.

    Nun stellt sich für mich die Frage ob ich auf dem Holzweg bin oder ob meine Variante doch nicht so falsch ist.

    Schonmal Danke im Vorraus.
    Computer können einen wahnsinnig machen, aber nicht dumm.

  • #2
    kannste so machen!
    ich geb dir mal code beispiel:

    PHP-Code:
    $arr['test1'] = 1;
    $arr['test2'] = 2;
    $arr['test3'] = 3;
    $arr[4] = 4;

    $url '';

    foreach (
    $arr as $str_schluessel => $str_inhalt)
      {

      
    $url $url."&arr[".$str_schluessel."]=".$str_inhalt;
      }

    echo 
    $url
    und da kommt diese stringkette raus

    &arr[test1]=1&arr[test2]=2&arr[test3]=3&arr[4]=4

    So kannst du ein Array mit $_GET übergeben!
    Beziehung? Klar habe ich mit Beziehungen zu tun ... ich bin Datenbankprogrammierer :-D

    Kommentar


    • #3
      Nein, da kommt dieser String raus:

      &arr[test1]=1&arr[test2]=2&arr[test3]=3&arr[4]=4

      Ich würde einen Array in eine Session packen. Dann ist die URL auch deutlich schicker.
      Zuletzt geändert von onemorenerd; 16.11.2005, 11:02.

      Kommentar


      • #4
        mhhh? mal ne frage! welchen code führst du aus?

        habe mir den string mit var_dump ausgegeben und komme zu diesem ergebnis:

        string(48) "&arr[test1]=1&arr[test2]=2&arr[test3]=3&arr[4]=4"
        Beziehung? Klar habe ich mit Beziehungen zu tun ... ich bin Datenbankprogrammierer :-D

        Kommentar


        • #5
          Hoppla, ich hatte ein b im BBCode vergessen. Habs oben schon geändert, aber damit du auch nochmal hier reinschaust (ggf. eine Mail bekommst), schreib ich noch diesen Beitrag.

          Also nochmal zur Klarstellung: Der String ist (wie auch bei dir)

          &arr[test1]=1&arr[test2]=2&arr[test3]=3&arr[4]=4

          was wegen des anfänglichen & Probleme machen könnte.
          Könntest nun die Konstruktion des Strings umschreiben. Aber kannst es auch so lassen und beim Anhängen an eine URL '?foo' vorweg setzen.

          Hast du denn auch mal über Session nachgedacht?

          Kommentar


          • #6
            Ich würde den Status einfach in 'ne Session packen ... und per $_GET lediglich übergeben ob öffen oder schliessen ...
            carpe noctem

            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

            Kommentar


            • #7
              wie wär es denn wenn er einfach

              customerid

              an die erste stelle nimmt

              Somit wäre das problem gelöst!

              Ansonsten kann man das Script auch noch ein bisschen umbauen, sodass am Anfang das & weg ist.

              Über die Sessiongeschichte habe ich mir keine Gedanken gemacht.
              Beziehung? Klar habe ich mit Beziehungen zu tun ... ich bin Datenbankprogrammierer :-D

              Kommentar


              • #8
                Vielen Dank für die Antworten.
                Hab mir den Rat mit der Session zu Herzen genommen und es klappt. War zwar etwas schwierig aber es funkt.
                THX for support
                Computer können einen wahnsinnig machen, aber nicht dumm.

                Kommentar

                Lädt...
                X