marmot106
16.06.2014, 07:46:07
Witam, prosze o pomoc mianowicie; mam pewen problem do rozwiązania, przy edycji danych, belka nie wybiera sie wczesniej wybrana pozycja tylko wartość pusta, chcoc zapytanie do bazy jest OK. bo pozycje sie wyswitlają;
<select name="id_trasa" class="textbox" style="width: 160px"> <?php
$zapytanie2 = "SELECT id_trasa, nazwa_trasy FROM trasa";
$wynik = mysql_query($zapytanie2);
while ($dane = mysql_fetch_array($wynik)) {
echo '<option value="'.$dane['id_trasa'].'">'.$dane['nazwa_trasy'].'
</option>'."\r\n";
}
?>

adbacz
16.06.2014, 07:54:04
Nie zaznacza się, ponieważ nie pobierasz nigdzie w skrypcie aktualnie wybranej wartości, a tym bardziej nie widzę w kodzie nigdzie atrybutu dla OPTION, który mówi, że ta opcja ma być zaznaczona (selected="selected"), więc domyślnie zawsze włączy się pierwsza opcja.
nospor
16.06.2014, 07:54:27
Nigdzie w kodzie nie widzę, byś zaznaczał którąś z opcji.... Czemu więc się dziwisz, ze domyslnie zaznacza się pierwsza opcja, ktora akurat jest pusta?
marmot106
16.06.2014, 11:06:23
można prośic o przykład
chodzi o : <option value=></option> tu musze zmienic ?
Turson
16.06.2014, 11:15:28
Ale gdzie masz zapisaną pozycję, którą chcesz wybrać?
marmot106
16.06.2014, 11:26:34
echo $row['nazwisko'];
Turson
16.06.2014, 11:27:48
Nazwiskio dopasowujesz do nazwy trasy? :/
marmot106
17.06.2014, 16:19:41
można prośic o przykład, jak to zrobić ?
adbacz
18.06.2014, 15:40:31
Gdzie zapisujesz dane do bazy? Tą wybraną wartość z pola wyboru?
Jeśli masz zapisaną wartość, to w edycji musisz ją pobrać z bazy podczas edycji danego elementu i w tej pętli, którą rysujesz pole wyboru select, sprawdzać, czy wybrana wartość zapisana w bazie jest taka sama jak wartość aktualnej iteracji pętli. Jeśli tak, dodajesz atrybut selected="Selected" do danego option.
Wybacz, ale prościej się nie da...
marmot106
28.07.2014, 11:11:15
<tr><td bgcolor=\"ffff99\"><label>Kierowca:</td><td bgcolor=\"ffff99\">
<select name="id_kierowca" class="textbox" style="width: 150px">
<option value=""></option>
<?php
$zapytanie3 = "SELECT id, nazwisko FROM kierowca";
echo '<option selected ="Selected" value="'.$dane2['id'].'">'.$dane2['nazwisko'].'</option>'."\r\n"; }
?>
</select>
</td></tr>
dodałem selected ="Selected"
ale zawsze wyswietla sie ostatnia pozycja z bazy
Turson
28.07.2014, 11:13:09
Select musi mieć atrybut multiple, żeby można było zaznaczyć więcej niż 1 opcje
nospor
28.07.2014, 11:13:52
selected ma byc dodane tylko dla opcji, ktorą chcesz zaznaczyc a nie dla wszystkich.... Jak dasz dla wszystkich to niby skad przegladarka ma wiedziec o ktora ci chodzilo? W myslach ci nie czyta.
marmot106
28.07.2014, 12:55:03
gdzie mam umiescic selected ="Selected"

możecie pokazac ?
Turson
28.07.2014, 13:00:49
Ale w ogóle na jakiej podstawie chcesz mieć zaznaczone lub nie?
nospor
28.07.2014, 13:13:20
Cytat
gdzie mam umiescic selected ="Selected" możecie pokazac ?
Tam gdzie umiesciles.... ale tylko dla wybranego option a nie dla wszystkich w petli...
marmot106
28.07.2014, 14:48:57
echo '<option value="'.$dane['id_trasa'].'">'.selected="selected".' '.$dane['nazwa_trasy'].'</option>'."\r\n";
Parse error: syntax error, unexpected '=', expecting ',' or ';'
gdzie jest problem ?
nospor
28.07.2014, 14:52:44
a po grzyba przy selected="selected" wychodziszz tekstu? Przeciez to jest tekst i z niego masz wlasnie nie wychodzic.... A teraz masz blad bo wychodzisz z tekstu w php.
marmot106
28.07.2014, 15:14:52
możesz mi pomóc i napisac ten kawałek kodu jak to ma wygladac ? nie łapie tego
nospor
28.07.2014, 15:19:17
Jesli oczekujesz od nas pomocy, to zacznij czytac co sie do Ciebie pisze i odpowiadac na proste pytania
Cytat
Ale w ogóle na jakiej podstawie chcesz mieć zaznaczone lub nie?
marmot106
28.07.2014, 15:23:08
id_trasa
<tr><td align="right" bgcolor="FFCC66"><label>Trasa:</td><td>
<select name="id_trasa" class="textbox" style="width: 160px">
<option value=""></option>
<?php
$zapytanie2 = "SELECT id_trasa, nazwa_trasy FROM trasa";
echo '<option value="'.$dane['id_trasa'].'">'.selected
=''.' '.$dane['nazwa_trasy'].'</option>'."\r\n"; }
?>
</select>
</td></tr>
nospor
28.07.2014, 15:26:06

Ale co id trasa?
marmot106
31.07.2014, 08:51:21
prosze o pomoc, jak wstwic warunek selected="selected" aby przy edycji wybrała sie wczesniej zapisana w bazie $row['nazwa_trasy']
<tr><td align="right" bgcolor="FFCC66"><label>Trasa:</td><td>
<select name="id_trasa" class="textbox" style="width: 160px">
<option value=""></option>
<?php
$zapytanie2 = "SELECT id_trasa, nazwa_trasy FROM trasa";
echo '<option value="'.$dane['id_trasa'].'">'.$dane['nazwa_trasy'].'</option>'."\r\n"; }
?>
</select>
</td></tr>
Turson
31.07.2014, 08:54:37
$selected = ($row['nazwa_trasy'] == $dane['nazwa_trasy']) ? ' selected="selected"' : '';
echo '<option value="'.$dane['id_trasa'].'"'.$selected.'>'.$dane['nazwa_trasy'].'</option>'."\r\n"; }
marmot106
31.07.2014, 09:21:38
podpowiada sie zawsze pierwsza pozycja z bazy
Turson
31.07.2014, 09:23:27
Czyli ani razu warunek nie został spełniony.
Zobacz co siedzi w $row['nazwa_trasy'] i porównaj to z opcjami
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.