Larges
17.06.2008, 14:29:06
Kod
<form method='POST' action='xxx.php'>
<table border='0' bgcolor='#B51F2A'><tr>
while($wykonaj3 = mysql_fetch_array($baza3)) {
echo "<td><input type='checkbox' name='id_newsa' value='$wykonaj3[0]'>
Witam, nie bardzo wiem jak mogę w następnej podstronie odczytać wiele wyników, tzn id newsów, które zostały zaznaczone ptaszkiem. Moja metoda odczytuje ostatni news, a gdy biorę to w while robi się mnogość, ale również ostatniego newsa. Jak zatem za to się zabrać? Za podpowiedź dziękuję.
Shili
17.06.2008, 14:30:34
Atrybuty name muszą być różne!
mike
17.06.2008, 14:32:21
Cytat(Shili @ 17.06.2008, 15:30:34 )

Atrybuty name muszą być różne!
Niekoniecznie. Mogą przecież być tablicą.
~Larges czek dis ałt:
name="id_newsa[]"
Larges
17.06.2008, 14:33:24
a przekazując metodą get, jak mogę odczytać te same atrybuty? Jest taka opcja?
mam adres np. plik.php?id=1&id=2&id=3
jest opcja odczytania wszystkich?
mike
17.06.2008, 14:36:16
Cytat(Larges @ 17.06.2008, 15:33:24 )

mam adres np. plik.php?id=1&id=2&id=3
jest opcja odczytania wszystkich?
Nie. Tak również odczytasz tylko ostatnia wartość.
A opcja jest. Patrz wyżej mój post.
W przypadku metody GET byłoby to:
http://plik.php?id[]=1&id[]=2&id[]=3
Shili
17.06.2008, 14:36:40
@mike
Ale będąc tablicą są jak najbardziej różne - są to różne elementy tablicy.
@Larges
Też nie można, nie możesz robić tego w ten sposób, że każda zmienna przekazywana ma dokładnie tą samą nazwę, bo będą one nadpisywane.
Larges
17.06.2008, 14:45:54
Jak zatem rozwiązać tą sprawę?
mike
17.06.2008, 14:47:59
Przeczytać poprzednie posty i wprowadzić u siebie podane przeze mnie rozwiązanie.
Shili
17.06.2008, 14:50:50
Ja może jeszcze rozszerzę, czemu tak się pluję o nazwę, a rozwiązanie mike'a i tak działa mimo że pozornie nazwy argumentów są takie same. Taka składania tablicy powoduje, że wypełniane są KOLEJNE elementy tablicy, nie jeden ten sam, więc w rezultacie zmienne są inne, pierwsza to $id[0], druga $id[1] i tak dalej. Jest to po prostu uproszczenie języka.
Larges
17.06.2008, 14:53:23
wprowadziłem tablicę tak jak radziłeś,
następnie na kolejnej postronie muszę ją odczytać
Pierwszy pomysł i wiadomo, zły:
echo $_POST[id_newsa[]] - odpada, nie można używać 2 nawiasów kwadratowych
kolejny zły pomysł:
for($i=0; $i<$wszystkie_newsy; $i++) {
$_POST[id_newsa$i] - w nawiasach klamrowych metody POST, GET się nie używa $ znaku zmiennej...
}
Jak mam to odczytać? Dziękx za podp.
mike
17.06.2008, 14:58:52
<?php
foreach ($_POST['id_newsa'] as $key => $value) {
echo $key . ' => ' . $value . "\n"; }
?>
Larges
17.06.2008, 16:28:28
teraz napotkałem na problem przy zapisie do bazy danych wyżej wymienionej wyników zawartości kolumny value.
mam tabelę w bazie:
id, news1, news2, news3, news4 i chciałbym aby w tych kolumnach znalazły się cztery (tyle wynosi maks, który już zdefiniowałem) wartości z tabeli. Nie chcę przedstawiać moich wypocin bo się ośmieszę ;/
Dodam że każda moja próbwa zakonczyla sie wpisaniem jednego, ostatniego wyniku..;/
erix
17.06.2008, 21:19:30
Może by jakieś zapytanie, którego używasz?
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.