Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Tablica liczb w sesji
Jadranko
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.12.2013

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


Witam, chcę przekazać tablicę liczb (każda liczba, odpowiada zaznaczonemu checkbox-owi) pomiędzy stronami za pomocą sesji. Problem jest chyba z zapisywaniem wartości do tablicy:

  1. <form action="zmodyfikowana_galeria.php" method="post" >

  1. $tablica = array();
  2. for ($i=0, $j=0; $i<$licznik_plikow; $i++)
  3. {
  4. <input type="checkbox" name="input_checkbox[]" value= "$i"/>
  5. if (isset ($_POST['input_checkbox[]']))
  6. {
  7. $tablica[$j] = $i;
  8. $_SESSION['cos'] = $tablica;
  9. $j++;
  10. }
  11. }

  1. <input type="submit" value="wyslij" />
  2. </form>


Licznik_plikow to jest liczba checkbox-ów.

Ten post edytował Jadranko 27.12.2013, 15:57:28
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




A co Ci nie działa? Jakie błędy? Dlaczego INPUT bez ECHO?

I co to za szalona pętla?
Go to the top of the page
+Quote Post
Jadranko
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.12.2013

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


Ogólnie ta szalona pętla służy do wyświetlania obrazków z katalogu, a obok każdego obrazka jest checkbox. Chodzi o to, że zaznaczone checkboxy wskazują na obrazki które mają być wyświetlone a które nie (na nowej stronie). I chcę, aby "indeksy" obrazków były zapisywane do tablicy, którą będę mógł przekazać do podstrony zmodyfikowana_galeria.php
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #4





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




żeby wrzucić to do tablicy wystarczy coś na podobę:
  1. echo '<form action="" method="post">';
  2. foreach($lista as $plik) {
  3. echo '<input type="checkbox" name="input_checkbox[]" ';
  4. echo 'value="'.$plik.'" />'.$plik.'<br />';
  5. }
  6. echo '<input type="submit" value="wyslij" /></form>';
Go to the top of the page
+Quote Post
com
post
Post #5





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

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


a dane do tablicy dodajesz tak jak to zrobiłeś tylko nie dajesz indexu tylko robisz
  1. $tablica[] = $i;

A
  1. $_SESSION['cos'] = $tablica;

zrób za foreach z przykładu Kshyhoo (IMG:style_emoticons/default/wink.gif)

Ten post edytował com 27.12.2013, 19:48:21
Go to the top of the page
+Quote Post
Jadranko
post
Post #6





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 25.12.2013

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


Kshyhoo czym jest Ciebie $lista w foreach? I te checkboxy umieścić tylko w tej pętli?

com czy dane do tablicy mam dodawać w pętli foreach?
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #7





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Jak lukniesz do jakiegokolwiek kursu PHP, dowiesz się. Interesują Cię dwie zmienne: $lista i $plik. Dowiedz się, co robią a już nigdy nie zadasz pytania na ten temat (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
com
post
Post #8





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

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


@up tak patrze na to co napisałeś i nie dziwę się, że autor nie zrozumiał bo zmieniłeś sens działania tego co on chciał.. no chyba ze uznałeś $lista jako n liczbowy array tylko poco mu array z samymi kluczami?

Generalnie tu masz przykład tego co chcesz uzyskać :
  1. <?php
  2.  
  3. echo "<form method=\"post\" >";
  4. echo '<input type="checkbox" name="formDoor[]" value="A" />Acorn Building<br />
  5. <input type="checkbox" name="formDoor[]" value="B" />Brown Hall<br />
  6. <input type="checkbox" name="formDoor[]" value="C" />Carnegie Complex<br />';
  7. echo '<input type="submit" value="wyslij" />
  8. </form>';
  9.  
  10. if(!empty($_POST['formDoor']))
  11. {
  12. $lista = $_POST['formDoor'];
  13. $_SESSION['cos'] = $lista;
  14. var_dump($_SESSION['cos']);
  15. }
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 13:58