ďťż

[PHP] Tablica

       

Podstrony


telcocafe

Witam ! Mam mały problem, poniżej znajduję się kod który miał za zadanie dodawać kolejne elementy do tablicy a w rzeczywistości pamięta tylko ostatni dodany element. Zapewne gdzieś jest błąd typu elementarnego ale prosze o pomoc

<? $liczba = $_POST['liczba']; $tab[]=$liczba; ?> <form method="post" action="test.php"> <input type="text" name="liczba"> <input type="submit" name="dodaj"> </form> <? for ($x = 0; $x < count($tab); $x++) {        echo $tab[$x];    } ?>



wsio jest ok :-)

1. wchodzisz na stronę
2. wysyłasz formę
3. zapisanaliczba zapisywana jest w zmiennej $tab[0]
4. wyświetlasz tą zmienną
5. otwierasz formę i zmienna zostaje usunięta z pamięci
6. pkt1 :-)

napisz co chcesz zrobić

Chodzi mi o to żeby pamiętał wczesniejsze wpisy czyli wpisuje 1 później naprzykład 3, dalej 4 i wtedy przy wsywietlaniu po wpisaniu tych 3 liczb wyświetlił 1 3 4

Mam nadzieje że w miarę jasno to napisałem, poprostu żeby pamiętał wcześniejsze wpisy

możesz zamiast tablicy $tab użyć tablicy sesyjnej $_SESSION['tab'][] albo serializować tablicę za każdym razem



A możesz napisac prosty kod z wykorzystaniem tego co podałeś ? Jestem początkującym i najlepiej jest się uczyć na przykłądzie :D Z góry dzięki

zamień $tab[] na $_SESSION['tab'][] ;-)

Hmmm... nie wiem czy dobrze podmieniłem ponieważ wyrzuca mi bład w linijce odpowiedzialnej za wypisanie

<? $liczba = $_POST['liczba']; $_SESSION['tab'][]=$liczba; ?> <form method="post" action="test.php"> <input type="text" name="liczba"> <input type="submit" name="dodaj"> </form> <? for ($x = 0; $x < count($_SESSION['tab'][]); $x++) {        echo $_SESSION['tab'][$x];   // tutaj wysypuje mi bład    } ?>

rozpocznij sesje - session_start(); na początku

przed $liczba = $_POST['liczba']; daj session_start( ); jaki błąd?

Błąd to: Fatal error: Cannot use [] for reading in /home/site/13950/www/sklep/test.php on line 25

A session_start(); dałem już wcześniej

for ($x = 0; $x < count($_SESSION['tab'][]); $x++) { => for ($x = 0; $x < count($_SESSION['tab']); $x++) {

ok, thx za pomoc o to mi właśnie wchodziło

eot :D

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.