Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] tablica dwuwymiarowa jak pobrac dane ?
kielich
post 4.07.2009, 17:34:11
Post #1





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


Witam mam sobie tablice

Kod
echo "<pre>";
  print_r($_SESSION['ksiazka']['nazwa']);
  echo '
  
  
  ';
  print_r($_SESSION['koszyk']);
  echo "</pre>";
  
  $tab[]=$_SESSION['ksiazka'];
  $tab[]= $_SESSION['koszyk'];
  echo "<pre>";
  print_r($tab);
  echo "</pre>";
  
  
  -------------------------
  <pre>jakis tam laptop
  
  
  Array
  (
      [5] => 7
      [6] => 1
      [4] => 16
  )
  </pre><pre>Array
  (
      [0] => Array
          (
              [id] => 4
              [nazwa] => jakis tam laptop
              [nazwa_kategorii] => laptopy
              [opis] => fv
              [status] => 1
              [foto] => lap.jpg
              [foto1] =>
              [foto2] =>
              [foto3] =>
              [cena] => 2500.98
              [czas_wystawienia] => 2009-06-29 23:03:29
              [promo] => 0
              [wysylka] =>
              [gw] =>
              [stan] =>
          )
  
      [1] => Array
          (
              [5] => 7
              [6] => 1
              [4] => 16
          )
  
  )
  </pre>


chce pobrac wszystki nazwy co sa w koszyk mam np. 2 produkty w wyciga mi tylko 1 "jakis tam laptop"
duxo czytałem juz od wczoraj no ale .... sad.gif nic nie moge wymysle bardzo prosze o jaką kolwiek pomoc

Ten post edytował kielich 4.07.2009, 20:39:29


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 19)
Wicepsik
post 4.07.2009, 17:50:35
Post #2





Grupa: Zarejestrowani
Postów: 1 575
Pomógł: 299
Dołączył: 26.03.2009

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


  1. <?php
  2. foreach($_SESSION['ksiazka'] as $key => $value){
  3. echo 'Klucz:  '.$key.'  - wartość:  '.$value.'<br/>';
  4. }
  5. ?>


Ten post edytował Wicepsik 4.07.2009, 17:51:23


--------------------
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 18:03:55
Post #3





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


no tak fajnie wszystko ładnie

Klucz: id - wartość: 6
Klucz: nazwa - wartość: ksiazk jakas
Klucz: nazwa_kategorii - wartość: ksiazki
Klucz: opis - wartość: dgfdgfdgdgfdgdfgdfgdfgdfgdfgdfgdfgdfgiudfd
Klucz: status - wartość: 1
Klucz: foto - wartość: book1.jpg
Klucz: foto1 - wartość: book1.jpg
Klucz: foto2 - wartość: book1.jpg
Klucz: foto3 - wartość:
Klucz: cena - wartość: 59.99
Klucz: czas_wystawienia - wartość: 2009-06-30 16:36:40
Klucz: promo - wartość: 1
Klucz: wysylka - wartość: 7,50
Klucz: gw - wartość: BRAK
Klucz: stan - wartość: Nowa

ale to jest 1 produkt nowo dodany a ja chciałem mieć wszystkie nazwy jakie są w koszyku sad.gif kurcze ... poratujcie jakos

Ten post edytował kielich 4.07.2009, 18:06:33


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
230005
post 4.07.2009, 18:08:32
Post #4





Grupa: Zarejestrowani
Postów: 316
Pomógł: 36
Dołączył: 2.04.2008

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


Jeśli ten kod co Wicepsik podał nie wypisuje całej zawartości koszyka, to znaczy że jest w nim jedna pozycja. Sprawdź lepiej czy dodając produkt nie nadpisujesz poprzednich wartości.
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 18:10:22
Post #5





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


nom w tym poscie mam tam wszystko lecz zrobił sie burder smile.gif to zrobiłem nowy tylko do tablicy z ktara mecze sie juz od 2 dni
[PHP][MYSQL] extract,koszyk,sesja= problem


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
Wicepsik
post 4.07.2009, 18:14:13
Post #6





Grupa: Zarejestrowani
Postów: 1 575
Pomógł: 299
Dołączył: 26.03.2009

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


To zrób w sesji:
Jeżeli osoba dodaje produkt to dodajesz do $_SESSION['ile'] +1
Jeżeli osoba usuwa produkt to odejmujesz od $_SESSION['ile'] -1
Początkowa wartość to 0

No i dodajesz do
  1. <?php
  2. $_SESSION['koszyk'][$_SESSION['ile']]
  3. ?>


Ten post edytował Wicepsik 4.07.2009, 18:15:09


--------------------
Go to the top of the page
+Quote Post
230005
post 4.07.2009, 18:15:07
Post #7





Grupa: Zarejestrowani
Postów: 316
Pomógł: 36
Dołączył: 2.04.2008

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


Przeczytałem twojego posta pięć razy Kielich i nic nie rozumiem. Mógłbyś napisać jeszcze raz, tym razem bardziej po polsku smile.gif? Sprawdziłeś i rzeczywiście nadpisuje, czy jak?
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 20:42:48
Post #8





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


to jest mój koszyk
Kod
    <?php

@ $nowy = $_GET['nowy'];



  if($nowy)

  {

    // wybrany nowy produkt

    if(!isset($_SESSION['koszyk']))

    {

      $_SESSION['koszyk'] = array();

      $_SESSION['produkty'] = 0;

      $_SESSION['calkowita_wartosc'] ='0';

    }

    if(isset($_SESSION['koszyk'][$nowy]))

      $_SESSION['koszyk'][$nowy]++;

    else

      $_SESSION['koszyk'][$nowy] = 1;

    $_SESSION['calkowita_wartosc'] =      

                                      oblicz_wartosc($_SESSION['koszyk']);

    $_SESSION['produkty'] = oblicz_produkty($_SESSION['koszyk']);



  }

  if(isset($_POST['zapisz']))

  {  

    foreach ($_SESSION['koszyk'] as $isbn => $ilosc)

    {

      if($_POST[$isbn]=='0')

        unset($_SESSION['koszyk'][$isbn]);

      else

        $_SESSION['koszyk'][$isbn] = $_POST[$isbn];

    }

    $_SESSION['calkowita_wartosc'] =

oblicz_wartosc($_SESSION['koszyk']);

    $_SESSION['produkty'] = oblicz_produkty($_SESSION['koszyk']);

  }

if($_SESSION['koszyk']&&array_count_values($_SESSION['koszyk']))

    wyswietl_koszyk($_SESSION['koszyk']);



  else

  {

echo "<span style='border:1px solid silver; color:#993a4e; font-weight:bold; padding:10px 250px 10px 25px; width:250px; line-height:100px;'>Koszyk jest pusty exclamation.gif!</span>";

header ('Refresh: 1; url=index.php');

  }
/* tu tylko tak na chwile bo patrze czy działa  :) */
echo "<pre>";
print_r($_SESSION['ksiazka']['nazwa']);
echo '<br /><br /><br />';
print_r($_SESSION['koszyk']);
echo "</pre>";

$tab[]=$_SESSION['ksiazka'];
$tab[]= $_SESSION['koszyk'];
echo "<pre>";
print_r($tab);
echo "</pre>";



foreach($_SESSION['koszyk'] as $nazwa => $value){
echo 'Klucz:  '.$nazwa.'  - wartość:  '.$value.'<br/>';
}


no chyba sie nadpisuje bo w koszyka mam powiedzmy 5 produktów i chce zeby na innej stronie byly same nazwy (ktore umieszcze w bazie) a jest tylko ostatio dodana do kosza

teraz luknijcie poprawiłem bo zle wkleiłem

Wicepsik

czy możesz podac przykład widzę ze znasz sie na zeczy dlatego bardzo cie prosze poradz Coś człowiekowi .... blinksmiley.gif


kurde czy na tym forum naprawde nie ma osoby która mogłaby pomóc questionmark.gifquestionmark.gif?exclamation.gif!!!

Ten post edytował kielich 4.07.2009, 18:37:47


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
zbig
post 4.07.2009, 20:50:46
Post #9





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

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


Witam !
Z tego co widze to w sesji koszyk nie masz danych o produkcie jedynie informacje o ilosci ksiazek zgrupowanych przez isbn , dlatego z sesji nie wyciagniez danych ksiazki jedynie jej isbn

Pozdrawiam


--------------------
Flash Flex PHP JAVA RED5 http://www.easyweb24.net
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 20:59:47
Post #10





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


no tak ale nie w tym rzecz
mam taka funkcjie która mi pobiera ksiazke w funkcji wyswietl_koszyk
Kod
foreach ($koszyk as $isbn => $ilosc)

  {

    $ksiazka = pobierz_dane_ksiazki($isbn);
    $_SESSION['ksiazka']=$ksiazka;

    echo '<tr>';



      echo '<td align = center>';

  





           echo '<img src="Foto/'.$ksiazka['foto'].'" border="0" ';

           echo 'width = "150px" height = "130px;" />';

    





      echo '</td>';





    echo '<td align = left>';

    echo '<a href = "opis.php?kategoria='.$ksiazka['nazwa_kategorii'].'&nazwa='.$ksiazka['id'].'" style="color:black; text-decoration:none; margin-left:10px;">'.$ksiazka['nazwa'].'</a>';

    echo '</td><td align = center>PLN: '.str_replace(',','.',$ksiazka['cena']);

    echo '<td align = center>';

    // jeżeli zmiany są dozwolone, ilości znajdują się w polach tekstowych

    if ($zmiana == true)

      echo "<input type = 'text' name = \"$isbn\" value = \"$ilosc\" size = \"3\">";

    else

      echo $ilosc;

    echo '</td><td align = "center">PLN '.str_replace(',','.',$ksiazka['cena']*$ilosc).'<a href="delete_produkt.php?nazwa='.$ksiazka['id'].'" alt = "Usuń" title= "usuń"  ><span class="basket"></span></a></td></tr>';

    



  }

i jak widac do zminnej ksiazka przypisałem sobie zminna
Kod
  $ksiazka = pobierz_dane_ksiazki($isbn);
    $_SESSION['ksiazka']=$ksiazka;

no i w koszyk dałem sobie 3 produkty i teraz robie jak Wicepsik poradził
Kod
echo "<pre>";
$_SESSION['ile']=0;
if(isset($_SESSION['koszyk'][$nowy]))
{
$_SESSION['ile']++;
$_SESSION['ksiazka']['nazwa'][$_SESSION['ile']];
}

foreach($_SESSION['ksiazka'] as $nazwa => $value){
echo 'Klucz:  '.$nazwa.'  - wartość:  '.$value.'<br/>';
}
echo "</pre>";

i wyswietla mi tylko nowo todany produkt (jego nazwe) ale w koszyku wszytsko jest ładnie nazwa-fota-cena itp
PS.same nazwy musze wiciagnać ponieważ musze je umieścic w bazie po złóżeniu zamówienia no a funkcji wyswietl koszyk raczej do bazy nie wsadze tongue.gif

Ten post edytował kielich 4.07.2009, 21:00:29


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
zbig
post 4.07.2009, 21:20:34
Post #11





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

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


Wiem w koncu co Cie boli smile.gif .

W twojej funkcji wyswietl koszyk zastosuj niezalezna sesje do zebrania ksiazek do wyswietlenia.
  1. <?php
  2. $counter = 0;
  3. foreach ($koszyk as $isbn => $ilosc)
  4. {
  5.      $ksiazka = pobierz_dane_ksiazki($isbn);
  6.      $_SESSION['ksiazka']=$ksiazka;
  7.  
  8.      $_SESION[booksToDisplay][$counter] = $ksiazka;
  9.      $counter ++;
  10.      
  11.      //twoja dalsza czesc kodu .......
  12.  
  13. }
  14. ?>


a dalej

  1. <?php
  2. foreach($_SESION[bookToDisplay] as $v)
  3. {
  4.     echo $v["'nazwa'"];
  5. }
  6. ?>



Jakos tak mniej wiecej smile.gif . Mam nadzieje ze o to Ci chodzi


--------------------
Flash Flex PHP JAVA RED5 http://www.easyweb24.net
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 21:24:39
Post #12





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


nom teraz nic nawet ostation dodanej nazwy nie pokazuje NIC


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
zbig
post 4.07.2009, 21:29:06
Post #13





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

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


Masz jedynie do twojej istniejacej juz petli dodac te dwie linijki

  1. <?php
  2. $_SESION[booksToDisplay][$counter] = $ksiazka;
  3.       $counter ++;
  4. ?>



Nie maja one wplywu na dalsza czesc kodu . Twoj poprzedni kod musi pozostac bez zmian

EDIT

sorry jest
  1. <?php
  2. echo $v["'nazwa'"];
  3. ?>


powinno byc
  1. <?php
  2. echo $v["nazwa"];
  3. ?>


Ten post edytował zbig 4.07.2009, 21:32:01


--------------------
Flash Flex PHP JAVA RED5 http://www.easyweb24.net
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 21:31:34
Post #14





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


zbig

no dokładnie
teraz mam w funkacjach
Kod
foreach ($koszyk as $isbn => $ilosc)

  {

    $ksiazka = pobierz_dane_ksiazki($isbn);
    $_SESSION['ksiazka']=$ksiazka;
$_SESION[booksToDisplay][$counter] = $ksiazka;
     $counter ++;

    echo '<tr>';



      echo '<td align = center>';

  





           echo '<img src="Foto/'.$ksiazka['foto'].'" border="0" ';

           echo 'width = "150px" height = "130px;" />';

    





      echo '</td>';


.......


a na innej podstronie wyswietlam sobie
Kod
foreach($_SESION[bookToDisplay] as $v)
{
    echo $v["'nazwa'"];
}


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
zbig
post 4.07.2009, 21:34:02
Post #15





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

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


Spojrz na moj poprzedni edit

nie $v["'nazwa'"]; a $v["nazwa"];


--------------------
Flash Flex PHP JAVA RED5 http://www.easyweb24.net
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 21:35:54
Post #16





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


juz tak od razu zrobiłem i NIC kurcze sad.gif


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
zbig
post 4.07.2009, 21:37:38
Post #17





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

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


A co pokazuje ci var_dump($_SESION[bookToDisplay])?

EDIT

jeszcze jedna literowka sad.gif

nie $_SESION[bookToDisplay] a $_SESION[booksToDisplay]

zapisujesz do $_SESION[booksToDisplay] dlatego w takiej samej sesji powinienes szukac smile.gif

Ten post edytował zbig 4.07.2009, 21:40:36


--------------------
Flash Flex PHP JAVA RED5 http://www.easyweb24.net
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 21:40:15
Post #18





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


NULL sad.gif


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
Go to the top of the page
+Quote Post
zbig
post 4.07.2009, 21:41:29
Post #19





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

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


zobacz na ostani edit tam jest odpowiedz


--------------------
Flash Flex PHP JAVA RED5 http://www.easyweb24.net
Go to the top of the page
+Quote Post
kielich
post 4.07.2009, 21:46:58
Post #20





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

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


OKKKKKKKKKKKKK działaaaaaaaa tongue.gif

dałem
Kod
$_SESSION['ile'][$counter] = $ksiazka;
     $counter ++;

i na stonie
Kod
foreach($_SESSION['ile'] as $v)
{
    echo $v["nazwa"];
}


ale ze mnie bardzo nakierowałeś dostajesz songa smile.gif

chyba tez tak moze być co nie questionmark.gif

co do

$_SESION[booksToDisplay]

z ciekawosci spradziłem i tez nie działa ale ale probelm ogolnie rozwiązany smile.gif
thx


--------------------
Życie jest jak SESJA kiedyś wygaśnie ....

Jeśli moja odpowiedź jakoś Cię nakierowała lub pomogła kliknij Pomógł
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 Wersja Lo-Fi Aktualny czas: 6.07.2025 - 21:47