Noch eine Frage...

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

  • Noch eine Frage...

    Hallo Forum,

    es wäre nett, wenn mir hier noch jemand folgendes erklären könnte:

    PHP-Code:
    $this->contents[$products_id] = array('qty' => $quantity'aktion' => $aktion); 
    Folgende Abfrage würde ich gerne umsetzen:

    Falls es ein $products_id gibt, für welches gilt dass ($this->contents[$products_id]['aktion']==1), dann obige Zeile ausführen.

    Wie setze ich das in PHP um?
    Danke für jeden Hinweis!

    Chriss

  • #2
    Was willst du genau in PHP umsetzten??? Versteh das jetzt nicht so ganz???
    mfg
    Günni


    Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
    Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
    Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
    City-Tiger - Online durch die Straßen tigern...

    Kommentar


    • #3
      Re: Noch eine Frage...

      Original geschrieben von Chriss
      Falls es ein $products_id gibt, für welches gilt dass ($this->contents[$products_id]['aktion']==1), dann obige Zeile ausführen.
      du willst also haben:

      falls bedingung wahr ergibt, dann anweisungsblock ausführen.

      in php:

      Code:
      if([b]bedingung[/b])
      {
      [b]anweisungsblock[/b]
      }
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Re: Re: Noch eine Frage...

        Original geschrieben von wahsaga
        Code:
        if([b]bedingungdu willst also haben:
        )
        {
        [b]anweisungsblock[/b]
        }
        [/B]
        Hallo @wahsaga!

        Wie eine if-schleife aussieht weiss ich. Mir fehlt nur noch die Bedingungsanweisung für diesen Fall.

        @Günni: Das Problem hier zu beschreiben ist recht aufwendig... Ich bastle ich gerade einen fertigen Shop in einen Handy-Shop um.

        Ich denke ich weiss jetzt wo mein Problem liegt. Ich möchte zwei Datensätze in einem Array haben, die dieselbe ID nutzen. In meinem Warenkorbsystem werden die Produkte über ihre Artikel-Nummern angesprochen. Nun möchte ich aber zwei gleiche Artikel mit der gleichen Artikel-Nummer im Korb haben und zwar einmal mit dem Attribut "Aktion" und einmal ohne dieses Attribut. Nur kann das ja leider nicht funktionieren.

        So stelle ich mir den Warenkorb in Tabellenform vor:

        Artikel-Nr. -- Anzahl -- weitere Attribute (z. B. Farbe) -- Preis -- Aktion(ja/nein)

        12 -- 1 -- rot -- €59 -- 0
        15 -- 2 -- weiß -- €39 -- 0
        17 -- 2 -- grün -- €59 -- 0
        17 -- 2 -- grün -- €59 -- 1

        22 -- 2 -- weiß -- €9 -- 0
        ...

        Im gezeigten Beispiel-Warenkorb wäre der Artikel-Nr. 17 zweimal vorhanden (einmal mit Aktion gesetzt und einmal nicht gesetzt). Das kann wohl mit einem Array nicht funktionieren... Denn wie sollte ich nun zwischen den beiden Artikeln unterscheiden? Wenn ich nun die Artikel-Anzahl erhöhe mit

        PHP-Code:
        $this->contents[$products_id] = array('qty' => $quantity); 
        (mit $products_id =17) ist es unklar, welcher Artikel erhöht werden soll.

        Der ganze Shop mit allen Funktionen ist auf diesem Warenkorb aufgbaut, so dass möglichst wenig an der grundlegenden Datenstrukturen geändert werden sollte. Aktionen brauche ich aber für Handys mit und ohne Vertrag.

        Wie würdet Ihr dieses Problem lösen?

        Chriss

        Kommentar


        • #5
          Re: Noch eine Frage...

          Original geschrieben von Chriss
          Falls es ein $products_id gibt, für welches gilt dass ($this->contents[$products_id]['aktion']==1), dann obige Zeile ausführen.
          dann durchlaufe das array doch in einer schleife, prüfe jedes element auf == 1 ab.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            @wahsaga: Danke für den Hinweis. Eine einfacherer Lösung wird es wohl nicht geben.

            Chriss

            Kommentar

            Lädt...
            X