Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> foreach + sesja, jak wyżej
kosmos
post
Post #1





Grupa: Zarejestrowani
Postów: 367
Pomógł: 17
Dołączył: 4.03.2008

Ostrzeżenie: (0%)
-----


Witam nie znalazłem podonego problemu więc założyłem temat.

jeszcze raczkuję w php a w trakcie nauki wypadł następujący problem:

Chcę aby produkty wybrane przez klienta który chce je kupić, zapisywane były do sesji w postaci tablicy:

próbowałem coś takiego ale nie działa:

CODE
$_SESSION['koszyk']['id_uzytkownika']=001;
$_SESSION['koszyk']['Nazwa_towaru']='Procesor';
$_SESSION['koszyk']['EAN-13']='9834811482301';
$_SESSION['koszyk']['Nazwa_towaru']='myszka';
$_SESSION['koszyk']['EAN-13']='9434821329301';


itd.. są to produkty które wrzuca do koszyka uzytkownik o numerze id 001;


nie wiem czy powyższy kod jest poprawny a juz napewno jak drukowac te dane pętlą FOREACH... próbowałem na różne sposoby i nie wychodziło.

Po zatwierdzeniu przez uzytkownika swoich towarów do kupna w koszyku Towary te wędrowały by do bazy MySql do tabeli zamówienia.

Czytałem już o sesjach ( koszykach ) na tym forum ale poprostu posty są dla mnie niezrozumiałe Nie wiem czy powyzszy kod który napisałem jest dobry ... proszę o jakiś pomysł w związku z tym fantem.
Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
AxZx
post
Post #2





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $_SESSION['koszyk'][] = array(
  3. 'id_uzytkownika' => '001',
  4. 'Nazwa_towaru' => 'procesor',
  5. 'EAN-13' => '9434821329301'
  6. );
  7. $_SESSION['koszyk'][] = array(
  8. 'id_uzytkownika' => '001',
  9. 'Nazwa_towaru' => 'płyta',
  10. 'EAN-13' => '435546'
  11. );
  12.  
  13. echo '<pre>';
  14. print_r($_SESSION);
  15. echo '</pre>';
  16. ?>

wynik
Kod
Array
(
    [koszyk] => Array
        (
            [0] => Array
                (
                    [id_uzytkownika] => 001
                    [Nazwa_towaru] => procesor
                    [EAN-13] => 9434821329301
                )

            [1] => Array
                (
                    [id_uzytkownika] => 001
                    [Nazwa_towaru] => płyta
                    [EAN-13] => 435546
                )

        )


)


--------------------
aplikacje internetowe | Symfony
Go to the top of the page
+Quote Post
Mlodycompany
post
Post #3





Grupa: Zarejestrowani
Postów: 910
Pomógł: 44
Dołączył: 20.02.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


mozesz tez inaczej(chyba:D)
  1. <?php
  2. foreach($_SESSION as $nazwa=>$v){
  3.  
  4. $id = $v['id_uzytkownika'];
  5. $nazwa_towaru = $v['nazwa_towaru'];
  6. $EAN-13 = $v['EAN-13'];
  7. echo $id;
  8. echo $nazwa_towaru;
  9. echo $EAN-13;
  10. }
  11. ?>

Wg mnie to powinno działa ale nie musi. biggrin.gif

W tablicy nie mozesz miec dwoch rekordów o takiej samej wartosci czyli tablice powinna wygladac tak:

$_SESSION['koszyk']['id_uzytkownika']=001;
$_SESSION['koszyk']['Nazwa_towaru']='Procesor';
$_SESSION['koszyk']['EAN-13']='9834811482301';
$_SESSION['koszyk1']['Nazwa_towaru']='myszka';
$_SESSION['koszyk1']['EAN-13']='9434821329301';

lub

$_SESSION['koszyk']['id_uzytkownika']=001;
$_SESSION['koszyk']['Nazwa_towaru1']='Procesor';
$_SESSION['koszyk']['EAN-13-1']='9834811482301';
$_SESSION['koszyk']['Nazwa_towaru'2]='myszka';
$_SESSION['koszyk']['EAN-13-2']='9434821329301';
Go to the top of the page
+Quote Post
kosmos
post
Post #4





Grupa: Zarejestrowani
Postów: 367
Pomógł: 17
Dołączył: 4.03.2008

Ostrzeżenie: (0%)
-----


Dziękuję bardzo za odpowiedzi smile.gif
Widzę że to forum naprawdę jest pomocne i post nie pozostaje bez odpowiedzi co mnie bardzo cieszy.
Jak tylko okiełznam ten świąteczny chaos, przetestuje wasze propozycje i dam znać smile.gif
Dzięki jeszcze raz winksmiley.jpg

Działa elegancko smile.gif

Ten post edytował kosmos 23.03.2008, 00:23:05
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 14:59