Witam,
mam sobie o to taki problemik.
quickform rysuje mi tabele ..wszystko cacy. Wysyłam formularz zostaje on poddany walidacji, jeśli cos jest nie tak rysuje go jeszcze raz
ze wskazaniem błędów. Jeśli jest ok powinien go wyświetlić rowniez
jeszcze raz[to jest np. dodawanie czegoś do bazy] ..przyk?ad:
[php:1:0ada0bc681]<?php
[..]

function kategorie(){
$this->dod_kat = new
HTML_QuickForm('dod_kat','post',$_SERVER['PHP_SELF']);$this->rekurencja(); //tworzy tablice z drzewem
kategorii$this->dod_kat->addElement('select', 'ojc_kat', 'W
kategori',$this->naz_drzewo); //dodaje select zawieraj?cy tablic?
pobranych z bazy..danych
[...]
if ($this->dod_kat->validate()){ //je?li walidacja przebiegnie pomy?lnie
[..]
$query="INSERT INTO......."
$wynik=$all->db->query($query); //dodaje do bazy czytanej przez metode $this->rekurencja() rekord.
}
$this->dod_kat->display();
}
[..]
?>[/php:1:0ada0bc681]
I niby wszystko jest ok ..ale po poprawnej walidacji w formularzu
zostają mi poprzednio podane wartości, a $this->naz_drzewo nie zmienia
sie no i w select nie ma nowo dodanego rekordu. Po prostu formularz
*wygląda* dokładnie tak jak by walidacja nie powiodła sie ...ale bez
błędów.

Rozwiązałem sprawę przez dodanie do warunku poprawnej walidacji
czyszczenie wszystkich _POST. i powtórne wykonanie funkcji kategorie().
W takim przypadku kategorie() wykonywane jest 2 razy czego wolałbym
uniknąć.
Czy jest cos co mo?na zrobi? po poprawnej walidacji ale przed
$this->dod_kat->display() aby wartości były wyczyszczone a tablica
została wczytana jeszcze raz?