Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> w zmiennej $_POST['nazwa'] jest wartośc z array
scorpion10
post
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 8.07.2016

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


Witam ! jak mając odczytane wartości z tablicy Array w zmiennej $_POST['nazwa'] jak teraz odczytać poszczególne indexy tablicy
przypisać do nowych zmiennych. odczytując dane z bazy to łatwe np w pętli while. Ale tu nie wiem jak ma wyglądać poprawny zapis nie wiem gdzie
podać nr indeksu z tablicy, próbowałem tak:

$zmienna = $_POST['nazwa'][0];


ale nie działa. Jak ma wyglądać poprawna forma składni ?


Go to the top of the page
+Quote Post
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 381
Pomógł: 1116
Dołączył: 30.08.2006

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


Najpierw sprawdź co jest w tej tablicy var_dump($_POST['x']); a później już wedle życzenia, foreach, while, list. Tak opisałeś problem że nie do końca wiadomo o co chodzi.
Go to the top of the page
+Quote Post
scorpion10
post
Post #3





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 8.07.2016

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


<form action="test4.php" method="post">

<SELECT name="dzien[]" size="1">
<option>pon</option>
<option>wt</option>
<option>śr</option>
<option>czw</option>
<option>pia</option>
<option>sob</option>
</SELECT>

<button type="submit" name="dzien[]" value = " " >Kasuj Rekord</button>

</form>

$wynik = count ($_POST['dzien']);

i teraz mając odczytaną wartośc wybranej pozycji <option> w zmiennej z tablicy chce ją przypisac do nowej zmiennej i potem podstawić jako wartość rekordu do skasowania w bazie. Chce do tego uzyć
opcji <button> bo wysłam formularz roznymi przyciskami i jak chce skasować powiedzmy dany dzień z bazy to wlasnie przez przycisk jak wyzej podany. Mysle ze teraz opisałem lepiej o co mi chodzi. I proszę ci podaj mi dokladny zapis a nie czym. Bo wiemze while lub foreach itp.. ale niemoge dopasowac zapisu bo mam syntax albo zero wyniku a w tablicy jest. Mozesz pop prostu zapisac mi poprawnie jak przypisac nową wartośc do tej zmiennej z wartościa z tablicy $_POST['dzien']. Bo print_r pokazuje ze wartośc jest przypisana wybrana z listy wartości <option>
Go to the top of the page
+Quote Post
viking
post
Post #4





Grupa: Zarejestrowani
Postów: 6 381
Pomógł: 1116
Dołączył: 30.08.2006

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


Trochę bez sensu ten formularz.
SELECT name="dzien[]" mowi ze będzie tablica wartości czyli od razu powinien być multiple="multiple" ale zarazem limitujesz do jednej wartości (size=1) czyli wtedy powinno być name=dzien. Submit połączy obie tablice i wydrukuje dwa elementy: wybrany dzień oraz spację " ".

Jeśli chcesz kasować kilka dni na raz to wywal size, submit nazwij załóżmy name="kasuj_rekord", option niech mają value po kolei 1,2,3 dla każdego dnia i w PHP:

  1. <form action="" method="post">
  2.  
  3. <SELECT name="dzien[]" multiple="multiple">
  4. <option>pon</option>
  5. <option value=2>wt</option>
  6. <option value=3>śr</option>
  7. <option>czw</option>
  8. <option>pia</option>
  9. <option>sob</option>
  10. </SELECT>
  11.  
  12. <button type="submit" name="kasuj_rekord" value = " " >Kasuj Rekord</button>
  13.  
  14. </form>
  15.  
  16. <?php
  17.  
  18. if (isset($_POST['kasuj_rekord'])) {
  19. $doSkasowania = implode(',', $_POST['dzien']);
  20. DELETE... WHERE costam IN($doSkasowania)
  21. }}

Go to the top of the page
+Quote Post
scorpion10
post
Post #5





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 8.07.2016

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


W sumie potrzebuje wybrać jedną wartość ale nie wiem jak odczytać zaznaczoną pozycje na liście wyboru, jak rozpoznać która została wybrana i przesłać ją
do zmiennej. Zdecydowalem sie więc na tablice i z niej wybrać wymagany index, ale nie jest to raczej dobry wybór w sytuacji w jakiej ja chce uzyć tylko jedenj wartości.
Dzięki twojemu przykładowi na tablice wiem juz jak to zrobic z pojedynczą wartości za co wielkie dzięki.

Ten post edytował scorpion10 10.07.2016, 14:14:21
Go to the top of the page
+Quote Post
trueblue
post
Post #6





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Tu miałeś odpowiedź: Temat: Wynik z bazy Mysql wyswietlany w %3Coption%3E%3C option%3E jak rozpoznac
Go to the top of the page
+Quote Post
viking
post
Post #7





Grupa: Zarejestrowani
Postów: 6 381
Pomógł: 1116
Dołączył: 30.08.2006

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


Opisałem dokładniej twój problem jeśli chcesz poczytać.
Go to the top of the page
+Quote Post
IAmBoskiM
post
Post #8





Grupa: Zarejestrowani
Postów: 72
Pomógł: 11
Dołączył: 8.05.2016

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


  1. <form action="test4.php" method="post">
  2. <SELECT name="dzien[]" size="1">
  3. <option>pon</option>
  4. <option>wt</option>
  5. <option>śr</option>
  6. <option>czw</option>
  7. <option>pia</option>
  8. <option>sob</option>
  9. </SELECT>
  10. <button type="submit" name="dzien[]" value="kasuj">Kasuj Rekord</button>
  11. </form>


test4.php
  1. <?php
  2. function pre ($arr, $var = false) {
  3. echo '<pre>;
  4. if ($var) {
  5. var_dump($arr);
  6. } else {
  7. print_r($arr);
  8. }
  9. echo '</pre>';
  10. }
  11. pre($_POST);
  12. // jezeli zaznaczysz np pon dostaniesz cos takiego
  13. Array (
  14. 'dzien' => Array (
  15. 0 => 'pon',
  16. 1 => 'kasuj'
  17. )
  18. )
  19. // jezeli inny dzien to ten pon zamieni sie na ten dzien
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: 15.09.2025 - 14:40