Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: $_POST, implode, pole wielokrotnego wyboru.
Forum PHP.pl > Forum > Przedszkole
bwgg
Na wejście - $_POST['autor'] JEST tablicą.

Mam ja sobie formularz z polem wyglądającym następujaco:
  1. <select name="autor[]" multiple="multiple" size="5">
  2. {opcje}

Po odebraniu formularza chcę (muszę) sobie to sprowadzić do jednej zmiennej. Na myśl samo się nasuwa
  1. <?php
  2. $autorzy = implode("-", $_POST['autor']);
  3. ?>

Jasne.
Cytat
Warning: implode() [function.implode]: Bad arguments. in (...)

Nie ogarniam tego, wujek Gogiel tez nie pomógł.
sniezny_wilk
Widocznie, ta tablica nie jest tablicą.. Wyświetlasz jej zawartość ? użyj tego i zobacz co zwróci.
bwgg
Nie jest - z tym, że wg wszystkich mądrych źródeł jest ; )
Pomysły jak można opracować wyniki z takiego formularza?
phpion
Może pokaż tą magiczną tablicę? (print_r" title="Zobacz w manualu PHP" target="_manual) domyślam się, że nie jest to tablica typu klucz => wartosc tylko klucz => kolejna_tablica z danymi nt. autora. W takim przypadku musisz ją sprowadzić do postaic klucz => wartosc za wartosc wstawiając np. imię i nazwisko autora.
bwgg
print_r wyrzuca tylko "Array" ; )

Problem w tym, że internet jest zasobny w opisy tego jak przekazać takie pole formularza do skryptu, ale jak na tym operować to już n
kt nie chciał uajwnić ; )

Spreparowałem na szybko całość (formularz i "handler"):

  1. <?php
  2. if (isset($_POST['dodpub'])) {
  3. $autorzy = implode("-", $_POST['autor']);
  4. print_r($_POST['autor'], true);
  5. echo $autorzy;
  6. }
  7.  
  8. echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
  9. <select name="autor[]" multiple="multiple" size="3">
  10. <option value="">Wybierz autora...</option>"
  11. <option value="1">Opcja 1</option>
  12. <option value="2">Opcja 2</option>
  13. <option value="3">Opcja 3</option>
  14. <option value="4">Opcja 4</option>
  15. <option value="5">Opcja 5</option>
  16. </select>
  17. <input type="submit" value="Wyślij" name="dodpub" />
  18. </form>';
  19. ?>
devnul
zastanawiające bo u mnie działa ok )dodaj tylko rozpoczęcie taga przed select bo zjadłes), no i w pront_r true powoduje zwrot a nie wydrukowanie zawartości zmiennej więc w jego przypadku nic się nie dzieje wywal true albo daj echo
bwgg
Cytat(devnul @ 5.01.2008, 20:32:32 ) *
zastanawiające bo u mnie działa ok )

Zabiję s i ę ; )
Cytat(devnul @ 5.01.2008, 20:32:32 ) *
dodaj tylko rozpoczęcie taga przed select bo zjadłes),

W oryginale oczywiście jest.
Cytat(devnul @ 5.01.2008, 20:32:32 ) *
no i w pront_r true powoduje zwrot a nie wydrukowanie zawartości zmiennej więc w jego przypadku nic się nie dzieje wywal true albo daj echo

Było bez true.

edyteusz:
Działa na hoście u znajomego. Czemu nie chciało hulać u mnie mimo tego, że mamy dokładnie to samo poinstalowane - ot zagadka.
3 godziny w plecy.

Dzięki wszystkim za pomoc ; )

Pozdrawiam,
bwgg.
devnul
Cytat
Zabiję s i ę ; )

czyli co - działa w końcu czy nie? bo to takie dwuznaczne troche
bwgg
"Zabiję s i ę ; )" było odnośnie tego, że ten sam skrypt nie działa u mnie, a u kogoś innego już tak. Czego niecierpię ; )

Później poprosiłem kumpla o sprawdzenie - jak napisałem w edyteuszu wszystko u niego ładnie chodzi. Muszę tylko rozpracować czemu mój host (dokładnie ta sama
konfiguracja) nie chce ze mną współpracować!
devnul
może nie jest to ta sama konfiguracja? pewny jesteś że ten sam skrypt co do joty (przeklejony żywcem z forum) testowałes u siebie?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.