Jeżeli chcemy aby po naciśnięciu "wyślij" użytkownik nie tracił danych, w razie popełnienia błędu, np. niewypełnienia pola, piszemy tak:
<input name="imie" value="<? echo $imie;?>" type="text" maxlength="10" />
Dzięki temu, po naciśnięciu wyślij, w polu "imie" pojawi się to, co wpisaliśmy.
A co z listami wyboru (list menu)????
Jak ustawić, która lista została wybrana?
Oczywiście, możemy ustawić atrybut selected="selected"
Ale co zrobić, żeby w razie błędów lista nie wracała do stanu początkowego (do pierwszej pozycji), tylko pokazywała to, co wybrał użytkownik?
Cała obsługa walidacji odbywa się w tym samym pliku, przy użyciu zmiennej PHP_SELF
Walidacja list rozwijanych :) obsługa błędów, atr. selected
Re: Walidacja list rozwijanych :) obsługa błędów, atr. selected
Proponuję przesiąść się na QuickForm czyli obsluge formularzy w PHP. tam mozesz swobodnie generowac sobie formularze oraz ich validacje, szybciej, taniej, bezstresowo, polecam...
http://pear.php.net/package/HTML_QuickForm
http://pear.php.net/package/HTML_QuickForm
Dzięki za link! Na pewno sprawdzę!
Zaprojektowałem dość skomplikowany formularz na stronie:
http://www.taniec.lap.pl/index.php?opti ... &Itemid=38
(to na razie projekt)
Wszystko działa, ale na pewno znajdzie się tam sporo słabych punktów. Chętnie bym to sprawdzil, niestety nie znam nikogo, kto mógłby się skutecznie "włamać", albo wykryć jakieś poważniejsze błędy. Na razie cała strona jest w fazie testów i zobaczymy, jakie problemy sie pojawią!
http://www.taniec.lap.pl/index.php?opti ... &Itemid=38
(to na razie projekt)
Wszystko działa, ale na pewno znajdzie się tam sporo słabych punktów. Chętnie bym to sprawdzil, niestety nie znam nikogo, kto mógłby się skutecznie "włamać", albo wykryć jakieś poważniejsze błędy. Na razie cała strona jest w fazie testów i zobaczymy, jakie problemy sie pojawią!
Re: Walidacja list rozwijanych :) obsługa błędów, atr. selected
No właśnie ustawić selected:Ale co zrobić, żeby w razie błędów lista nie wracała do stanu początkowego (do pierwszej pozycji), tylko pokazywała to, co wybrał użytkownik?
[php]<?php
echo '<select name="lista">';
foreach($opcje as $klucz=>$opcja) {
if($klucz==$_POST['lista'])
$sel=' selected="selected"';
else
$sel='';
echo '<option'.$sel.'>'.$opcja.'</option>';
}
echo '</select>';
?>[/php]
Albo coś w ten deseń.
mimo wszystko, wybieram pear!
Chyba się zakocham w tych skryptach! Właśnie ściągnąłem sobie instrukcję i teraz drukarka wypluwa ją kartka po kartce. No, to teraz kawa i czytanie do trzeciej w nocy
Kto by pomyślał, że php doczeka się czegoś w rodzaju bibliotek z innych języków!
Re: Walidacja list rozwijanych :) obsługa błędów, atr. selected
Doczeka???
Biblioteki php zawiera już od wersji 3, albo wcześniej.
Wszystkie są napisane w innym języku niż php.
Biblioteki php zawiera już od wersji 3, albo wcześniej.
Wszystkie są napisane w innym języku niż php.
