Norbit_24
(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
(kostek135)
#2
Dziwisz się jak wszystkie w tej pętli mają identyczny name?
Jak kolega wyżej wspomniał:
i wyciągasz później dane z tablicy o nazwie ‘grupy’, a dokładniej z tablicy $_POST[‘grupy’] :).
Norbit_24
(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
To dlaczego się nie uczysz PHP ;P? 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.
Norbit_24
(Sobladen)
#6
Bardzo dziękuję za pomoc.
Pozdrawiam