[PHP] Arrays...

Dieses Thema im Forum "Webentwicklung" wurde erstellt von GaYlORd, 14. Januar 2008 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 14. Januar 2008
    Arrays...

    Hi!

    Hab folgendes:

    PHP:
    $erledigt  nein ;
    $art  $_REQUEST [ "ware" ];
    $anz  $_REQUEST [ "anzahl" ];
    $user_id  $_SESSION [ "user_id" ];
    $preis  $_REQUEST [ "preis" ] *  $anz ;
    $alte  $_REQUEST [ "alte" ];
    $gewicht  $_REQUEST [ "gewicht" ];

    $artikel [ 1 ][ 'artnummer' ] =  $art ;
    $artikel [ 1 ][ 'anz' ] =  $anz ;
    $artikel [ 1 ][ 'preis' ] =  $preis ;
    $artikel [ 1 ][ 'gewicht' ] =  $gewicht ;
    $artikel [ 1 ][ 'alte' ] =  $alte ;
    $_SESSION [ 'wk' ] =  $artikel ;

    foreach(
    $_SESSION [ 'wk' ][ 1 ] as  $wk )
    {
    echo 
    $wk ;
    echo 
    "<br />" ;
    }
    ausgabe is:
    PHP:
    382615
    1
    188.95
    98
    N
    so soll die ausgabe auch sein! :)
    Problem is jetzt.

    Kann ich das [1] automatisch hochzählen lassen?
    Ich möchte das ganze als Warenkorb verwenden.
    Artikel A wird hinzugefügt gespeichert in der Session bzw. array werden
    dann die werte von oben. Das ganze funzt aber nur wenn ich nur 1 artikel hinzufüge!
    Beim zweiten wird ja der erste ersetzt.
    Kann ich das [1] irgendwie variabel machen?

    gruß
    gl
     

  2. Anzeige
    Dealz: stark reduzierte Angebote finden.
  3. #2 14. Januar 2008
    AW: Arrays...

    Du willst den ersten Schlüssel hochzählen?

    PHP:
    <? php
      $iNext 
    count ( $artikel );
    ?>
     
  4. #3 14. Januar 2008
    AW: Arrays...

    vorher ne kleine anmerkung:
    die erste zeile gehört so:
    PHP:
    $erledigt  'nein' ;
    oder
    PHP:
    $erledigt  false ;
    oder
    PHP:
    $erledigt  0 ;
    so, zum problem: warum nicht einfach noch eine äußere foreach schleife?
     
  5. #4 14. Januar 2008
    AW: Arrays...

    joa, das mit "nein" is klar! :D
    War ich schlampig, als ichs hier reingeschrieben hab! ;)

    zur foreach schleife:
    ne, mir gehts ja ums speichern nicht ums ausgeben.
    Ich hab auf seite A den einen artikel (speichern als array in der session) und
    auf der nächsten is ein weiterer artikel und der soll auch als array in die selbe
    session! :)

    @MakenX: wenn ich inext ausgeb, kommt immer 1 raus.

    Gibt es eine möglichkeit den letzten Wert, also hier [1], auszulesen?


    gruß
    gl
     
  6. #5 14. Januar 2008
    AW: Arrays...

    PHP:
    $last  count ( $array )- 1 ;
    print_r ( $array [ $last ]);
    oder
    PHP:
    $last  end ( $array );
    print_r ( $last );
     
  7. #6 14. Januar 2008
    AW: Arrays...

    count() würde dir immer den nächsten Key ausgeben, wenn du fortlaufende Nummer haben willst, denn Element 1, hat den Key 0, letztes Element hat wie Murdoc schon sagte!
     
  8. #7 14. Januar 2008
    AW: Arrays...

    nicht, das letzte was hinzugefügt wurde.

    Brauch halt ne Zahl. Wenn das erste Array bei 4 is, soll der nächste den wert 5 erhalten.
    Also so:
    PHP:
    $artikel [ 1 ][ 'artnummer' ] =  $art ;
    $artikel [ 1 ][ 'anz' ] =  $anz ;
    $artikel [ 1 ][ 'preis' ] =  $preis ;
    $artikel [ 1 ][ 'gewicht' ] =  $gewicht ;
    $artikel [ 1 ][ 'alte' ] =  $alte ;
    $artikel [ 2 ][ 'artnummer' ] =  $art ;
    $artikel [ 2 ][ 'anz' ] =  $anz ;
    $artikel [ 2 ][ 'preis' ] =  $preis ;
    $artikel [ 2 ][ 'gewicht' ] =  $gewicht ;
    $artikel [ 2 ][ 'alte' ] =  $alte ;

    Und ich möchte jtezt das "2" ausgegeben wird.

    Dann kann ich danach 1 zur 2 hinzuzählen = 3 und
    ich hab den nächsten, etc...!

    gruß
    gl
     
  9. #8 14. Januar 2008
    AW: Arrays...

    Wenn das Array bei 4 ist, bekommst du doch mit count() die 5 und kannst sofort weitermachen, nix anderes sage ich die ganze Zeit ;) ... und wenn du halt den aktuellen key wissen willst, count - 1, oder max() von array_keys() etc .... eigentlich haste jetzt so gut wie alles!
     
  10. #9 14. Januar 2008
    AW: Arrays...

    hmm, dann mach ich was andres falsch^^
    weil der gibt mir immer 1 zurück.

    PHP:
    if(!isset( $_SESSION [ 'wk' ]))
    {
    $i  0 ;
    }
    else
    {
        
    $i  count ( $_SESSION [ 'wk' ]);
        echo 
    $i ;   // Ausgabe is immer 1
        
    $i  $i + 1 ;
        echo 
    "<br />" ;
    }

    $artikel [ $i ][ 'artnummer' ] =  $art ;
    $artikel [ $i ][ 'anz' ] =  $anz ;
    $artikel [ $i ][ 'preis' ] =  $preis ;
    $artikel [ $i ][ 'gewicht' ] =  $gewicht ;
    $artikel [ $i ][ 'alte' ] =  $alte ;
    $_SESSION [ 'wk' ] =  $artikel ;

    print_r  $artikel  );  // Ausgabe immer nur das eine Array!
    }
     
  11. #10 14. Januar 2008
    AW: Arrays...

    PHP:
    $arr  = array();
    $arr [] =  'foo' //item 0
    $arr [] =  'bar' //item 1
    print  $arr [ 0 ];  //foo
    print  $arr [ 1 ];  //bar
    ohne ne angabe erhöht sich der array automatisch

    PHP:
    $arr  = array();
    $arr [] = array(
        
    'artnummer'  =>  $art ,
        
    'anz'  =>  $anz ,
        
    'preis'  =>  $preis ,
        
    'gewicht'  =>  $gewicht ,
        
    'alte'  =>  $alte
    );
     
  12. #11 14. Januar 2008
    AW: Arrays...

    ja, das schon.
    aber da erhöht sich das array ja für alles einzeln um eins!
    PHP:
    $artikel [ 1 ][ 'artnummer' ] =  $art ;
    $artikel [ 1 ][ 'anz' ] =  $anz ;
    $artikel [ 1 ][ 'preis' ] =  $preis ;
    $artikel [ 1 ][ 'gewicht' ] =  $gewicht ;
    $artikel [ 1 ][ 'alte' ] =  $alte
    alle 1 haben.
    Das Wäre dann Artikel 1 im Warenkorb.

    Dann surf ich weiter und will noch einen Artikel.

    und da soll alles von dem artikel auf [2]. Und der alte soll immer noch [1] haben!

    gruß
    gl
     
  13. #12 14. Januar 2008
    Zuletzt von einem Moderator bearbeitet: 15. April 2017
  14. #13 14. Januar 2008
    AW: Arrays...

    juhuu!
    danke :D

    bw, geht nimmer, trotzdem danke!

    gruß
    gl
     

  15. Videos zum Thema
Die Seite wird geladen...
Similar Threads - PHP Arrays
  1. Antworten:
    5
    Aufrufe:
    769
  2. Antworten:
    4
    Aufrufe:
    355
  3. Antworten:
    9
    Aufrufe:
    597
  4. Antworten:
    2
    Aufrufe:
    334
  5. Antworten:
    1
    Aufrufe:
    1.248
  • Annonce

  • Annonce