Article View: pl.comp.lang.php
Article #220075Html_QuickForm i callback - problem
From: Slawomir
Date: Sat, 08 Aug 2009 19:55
Date: Sat, 08 Aug 2009 19:55
69 lines
3136 bytes
3136 bytes
Witam
Mam taki problem że chcę sprawdzić jedną zmienną własną funkcją
korzystając z biblioteki PEAR html_quickform i jakoś robię jak w
różnych faq i dokumentqacji i nic. No nie działa mi.
Kod wygląda mniej więcej tak (już różne wariany przyjmowałem)
.......
$form->addElement('text', 'email', '', array('style'=>'width:
409px;', 'id'=>'txtEmail'));
function in_use_login($value){
$query = "SELECT login FROM users WHERE login = '$value'";
$result = mysql_query($query);
if(!mysql_num_rows($result)){
$flag = false;//jeśli w bazie nie ma
}else{
$flag = true;//jeśli już jest w bazie
}
return $flag;
}
$form->registerRule('use_loginBD', 'callback', 'in_use_login');
$form->addRule('email', 'Email address already in use on the system',
'use_loginBD');
$form->addRule('email', 'Podaj adres email!', 'required', '',
'client');
$form->addRule('email', 'Nieprawidłowy format adresu email!',
'email', '', 'client');
.......
Dodam jeszcze że to wszystko integrowane jest z smarty więc wywołanie
wygląda tak:
if($form->validate()) {
# If the form validates then freeze the data
$form->freeze();
$form->process('process_data', false);
}else{
$form->addElement('submit','submit', 'Zapisz');
$renderer = &new HTML_QuickForm_Renderer_ArraySmarty
($smarty);
$form->accept($renderer);
$smarty->assign('form', $renderer->toArray());
}
function process_data($values){
echo '<pre>';
foreach($values as $key=>$value){
echo $key . ': ' . $value. '<br/>';
}
echo '</pre>';
}
Wszystko dzisała i tylko nie chce mi to sprawdznie czy email już jest
taki w bazie (email jest loginem)
Będę wdzięczny za wszelką pomoc i sugestię bo już naprawdę jestem
skołowany.
z góry wielkie dzięki
pozdrawiam
Sławek
Technical Details
Message-ID:
<8b394eae-2dca-4f5f-bd47-279402f4fc79@g1g2000vbr.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!t-online.de!border2.nntp.dca.giganews.com!nntp.giganews.com!postnews.google.com!g1g2000vbr.googlegroups.com!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!t-online.de!border2.nntp.dca.giganews.com!nntp.giganews.com!postnews.google.com!g1g2000vbr.googlegroups.com!not-for-mail From: Slawomir <grupy@vp.pl> Newsgroups: pl.comp.lang.php Subject: Html_QuickForm i callback - problem Date: Sat, 8 Aug 2009 12:55:00 -0700 (PDT) Organization: http://groups.google.com Lines: 71 Message-ID: <8b394eae-2dca-4f5f-bd47-279402f4fc79@g1g2000vbr.googlegroups.com> NNTP-Posting-Host: 83.23.157.157 Mime-Version: 1.0 X-Trace: posting.google.com 1249761300 20688 127.0.0.1 (8 Aug 2009 19:55:00 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sat, 8 Aug 2009 19:55:00 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: g1g2000vbr.googlegroups.com; posting-host=83.23.157.157; posting-account=FLeV8woAAAAMm47MbtsjWxf_UgvrOLoi User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729),gzip(gfe),gzip(gfe) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit