Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wiele wartości w option + explode
kristaps
post
Post #1





Grupa: Zarejestrowani
Postów: 279
Pomógł: 36
Dołączył: 1.03.2012

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


Witam, mam mały problem. Mam pętlę, która pobiera mi z bazy danych wartości. Na ogół jest to jeden rekord, jednak czasami zdarza się, że jest ich więcej i muszę mieć możliwość wyboru. Przekazuje więc wszystkie wartości do option value:

  1. $moreproducers .= '<option value="'. $row0["ARTNR"] .','. $row0["CENA"] .','. $row0["ILOSC"] .'">' . $row10["MARKA"] .'</option>';


Następnie używam funkcji explode i rozdzielam wartości separatorem, w tym przypadku ','.

Następnie wyświetlam select:

  1. echo '<form action="" method="POST">
  2. <select name="moreartnr" onchange="this.form.submit()">';
  3.  
  4. echo $moreproducers;
  5. echo '</select>';



Po wszystkim pobieram rozdzielam i przypisuje do zmiennej.

  1. $moreartnr = $_POST['moreartnr'];
  2.  
  3. if($moreartnr) {
  4.  
  5. print_r(explode(',', $moreartnr, 3));
  6.  
  7. $artnr = $moreartnr[0];
  8. $cena = $moreartnr[1];
  9. $ilosc = $moreartnr[2];
  10.  
  11. }


Tutaj wkrada się błąd. Gdy wyświetlam tablicę wszystkie dane są ok, jednak gdy przypiszę je do zmiennych to otrzymuję niejasne wyniki.

Array ( [0] => 1033 [1] => 89 [2] => 70 )

a zmienne wyświetlają:


1
0
3

Pewnie robię jakiś głupi błąd.

Z góry dziękuję za pomoc,
pozdrawiam.
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




explode to wypadałoby do zmiennej przypisać, nie sądzisz?

nie: print_r(explode(',', $moreartnr, 3));
a:

$moreartnr = explode(',', $moreartnr, 3);
print_r($moreartnr);

ps: jako VALUE dla option powinieneś dawać ID rekordu a nie dane tego rekordu. Później jakby ci te dane były potrzebne to możesz je bez problemu na podstawie ID odczytać.
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: 23.08.2025 - 10:20