Pola wyboru html/php


(Sobladen) #1

Witam

Robię sobie skrypt, w którym mam grupy.

I przy dodawaniu newsa wyświetlam je tak:

$link=mysql_query('SELECT * FROM grupy ORDER BY id ASC');

                while($wiersz=mysql_fetch_array($link))

                {

		echo '
'.$wiersz['nazwa'].'


		';

						    }

następnie chcę dodać "ID" tych grup do jednej kolumny.

$grupy = $_POST['grupy'];

Problem w tym, że dodaje się tylko jedna grupa (ostatnia - id grupy) gdy wybiorę wszystkie.

Jak zrobic aby dodały sie wszystkie id grup. najlepiej po przecinku.

Z góry dziękuje za pomoc.


(kostek135) #2

Dziwisz się jak wszystkie w tej pętli mają identyczny name?


(GediMaster) #3

Jak kolega wyżej wspomniał:

i wyciągasz później dane z tablicy o nazwie 'grupy', a dokładniej z tablicy $_POST['grupy'] :).


(Sobladen) #4

Dziękuje.

To zrobiłem tak jak pisaliście i dodaje mi się do bazy Array

A chciałem żeby dodało się np.

1,6,3


(GediMaster) #5

To dlaczego się nie uczysz PHP :stuck_out_tongue_winking_eye:? http://php.net.pl/manual/pl/book.array.php

Do bazy zapisuj zserializowaną tabelę:

$grupy = serialize($_POST['grupy'] && is_array($_POST['grupy']) ? $_POST['grupy'] : array());

// i zmienną $grupy zapisujesz do bazy.

http://php.net.pl/manual/pl/function.serialize.phpZamieniasz ponownie na tablicę używając unserialize():http://php.net.pl/manual/pl/function.unserialize.phpA jak zależy ci na zapisie od razu do formatu '1,6,3,...', to:

$grupy = $_POST['grupy'] && is_array($_POST['grupy']) ? join(',', $_POST['grupy']) : 0;

// i zmienną $grupy zapisujesz do bazy.

(Sobladen) #6

Bardzo dziękuję za pomoc.

Pozdrawiam