Enrico: Variable wird nicht übergeben

Hallöchen, werte Mitstreiter,

erstmal danke für Eure Unterstützung bei meinem Thread "Beibehaltung von Vokalen / kompliziertes Vorhaben",
jetzt werden die Einträge so angezeigt, wie sie auch in der Textdatei hinterlegt wurden.

Dafür ist ein neues Problem aufgetaucht.

Die Übergabe einer Variablen von einem Link an eine PHP-Datei klappt nicht, hier der relevante Code:

DVD-Verwaltung.html:

<iframe name="ansicht" src="bibliotheken/php/ansicht.php" [...]>

Ansicht.php:

<?php
     include("aktionen.php");
     $aktion = $http_post_vars["aktion"];
     [...]
   ?>

Ich übergebe bzw. will über Links die auszuführenden Aktionen von der
Datei "DVD-Verwaltung.html" an die Datei "Ansicht-php" in folgender
Art und Weise:

<a href="[...]/ansicht.php?aktion=6" target="[...]">

Aber die Variable wird nicht übergeben, egal ob ich $_get, $_post oder
$http_post_vars verwende.

Wo liegt der Fehler ?

Vielen Dank für Eure Hilfe.

Gruß,
Enrico

  1. Hallo,

    Aber die Variable wird nicht übergeben, egal ob ich $_get, $_post oder
    $http_post_vars verwende.

    Wo liegt der Fehler ?

    Bin mir nicht sicher, aber in der "Groß- und Kleinschreibung" vielleicht? Soweit ich weiß unterscheidet PHP da.
    Also lieber $_GET[''] oder $_POST[''] usw.

    Grüße, Matze

    1. Hallo Matze,

      in der Tat lag in der Groß- und Kleinschreibung des Wurzels Übel, jetzt funktioniert es.

      Besten Dank hierzu :-)

      Diese EINE Übergabe hätten wir, *hust* Du, gelöst :-)

      Wie funktioniert das bei Arrays ?

      Ich muß folgendes Array übergeben, wobei die Inhalte sehr stark variieren und zum Teil äusserst lang sind:

      $FILM = ARRAY();
        $FILM['DVD_NR']=ARRAY();
        $FILM['TITEL']=ARRAY();
        $FILM['INHALT']=ARRAY();
        $FILM['GENRE']=ARRAY();
        $FILM['FSK']=ARRAY();

      Kannst Du mir auch weiterhelfen?

      Gruß,
      Enrico

      1. Sorry, muss hier ergänzen, dass ich das Array von einer Funktion zur nächsten übergeben muss.

        Enrico

        1. Hallo

          Sorry, muss hier ergänzen, dass ich das Array von einer Funktion zur nächsten übergeben muss.

          Zwei Möglichkeiten:

          a) Übergib das Array als Übergabeparameter

          myfunction( array myarray )

          b) Arbeite [lin:http://de.wikipedia.org/wiki/Objektorientierte_Programmierung@title=objektorientiert}
             in diesem Fall könnten die Arrays Attribute von Klassen sein.

          Und nochmals ganz dringend der Hinweis:

          Die HTTP_METHOD_VARs sind hoffnungslos veraltet. Verbanne sie aus Deinem Sprachgebrauch. Falls sie in Deinem Buch stehen, an dem Du Dich orientierst, so wirf das Buch weg und besorge Dir etwas Aktuelles.

          Freundliche Grüße

          Vinzenz, der Bücher mag.

          1. Hallo Vinzenz,

            erstmal vielen Dank für Deine rasche Rückantwort.

            Mein bisheriger Ansatz sieht - in Auszügen - folgendermassen aus:

            $aktion = $_GET["aktion"];

            if($aktion=="")
               {
                 [...]
                 Datenbank einlesen
                 [...]
                 call_user_func("ausgabe",$inhalt_datenbank);
               }
               else
               {
                 if(is_numeric($aktion))
                    {
                      switch($aktion)
                      {
                        case 0:
                          call_user_func("sortieren",$film);
                          break;
                        case 1:

            Aber das/der Array wird nicht übergeben, hier zur Erinnerung
            sein Aufbau:

            $FILM = ARRAY();
              $FILM['DVD_NR']=ARRAY();
              $FILM['TITEL']=ARRAY();
              $FILM['INHALT']=ARRAY();
              $FILM['GENRE']=ARRAY();
              $FILM['FSK']=ARRAY();

            Gruß,
            Enrico

            1. Hallo Enrico,

              Mein bisheriger Ansatz sieht - in Auszügen - folgendermassen aus:
                 $aktion = $_GET["aktion"];

              if($aktion=="")
                 {
                   [...]
                   Datenbank einlesen
                   [...]
                   call_user_func("ausgabe",$inhalt_datenbank);

              was bitte soll Dir call_user_func() bringen.
              Ich persönlich habe diese Funktion noch nie benötigt.

              Wenn Du die Funktion ausgabe() aufrufen willst, dann geht das ganz einfach mit

              ausgabe(liste, der, parameter, dieser, Funktion);

              Woher hast Du diese seltsamen Dinge wie

              HTTP_POST_VARS
                  call_user_func

              Bitte benutze ein ordentliches Buch oder Tutorial.

              Freundliche Grüße

              Vinzenz