<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Forum CakePHP.org.pl - walidacja daty urodzenia]]></title>
	<link rel="self" href="http://forum.cakephp.org.pl/feed/atom/topic/100/"/>
	<updated>2009-08-19T10:13:46Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.cakephp.org.pl/topic/100/walidacja-daty-urodzenia/</id>
		<entry>
			<title type="html"><![CDATA[Odp: walidacja daty urodzenia]]></title>
			<link rel="alternate" href="http://forum.cakephp.org.pl/post/489/#p489"/>
			<content type="html"><![CDATA[<p>hej, udalo mi sie znalezc rozwiazanie jak sprawdzic poszczegolne czesci daty. Po prostu w kontrolerze stworzylem &#039;tymczasowe&#039; pole &#039;birthdate2&#039; ktora bedzie trzymac polaczona date z selectow w formie stringa:</p><br /><div class="codebox"><pre><code>$this-&gt;data[&#039;User&#039;][&#039;birthdate2&#039;] = $this-&gt;data[&#039;User&#039;][&#039;birthdate&#039;][&#039;year&#039;] . &#039;-&#039; . $this-&gt;data[&#039;ser&#039;][&#039;birthdate&#039;][&#039;month&#039;] . &#039;-&#039; . $this-&gt;data[&#039;User&#039;][&#039;birthdate&#039;][&#039;day&#039;];  
if ($this-&gt;data[&#039;User&#039;][&#039;birthdate2&#039;] == &#039;--&#039;) $this-&gt;data[&#039;User&#039;][&#039;birthdate2&#039;] = &#039;&#039;; //wszystkie selecty puste</code></pre></div><p>a pozniej w modelu podpialem pod pole birthdate2 cake`owa walidacje. Czyli stworzylem sobie tymczasowe pole ktorego nie ma w tabeli i podpialem pod to pole walidacje (fajna sprawa). A pozniej juz w widoku pod selectami wyswietlam po prostu $form-&gt;error(&#039;birthdate2&#039;) <img src="http://forum.cakephp.org.pl/img/smilies/smile.png" width="15" height="15" alt="smile" /></p><p>pozdrawiam</p>]]></content>
			<author>
				<name><![CDATA[tomay7]]></name>
				<uri>http://forum.cakephp.org.pl/user/227/</uri>
			</author>
			<updated>2009-08-19T10:13:46Z</updated>
			<id>http://forum.cakephp.org.pl/post/489/#p489</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[walidacja daty urodzenia]]></title>
			<link rel="alternate" href="http://forum.cakephp.org.pl/post/485/#p485"/>
			<content type="html"><![CDATA[<p>hej,</p><p>mam pewien problem z ustawieniem walidacji daty urodzenia aby zachowywala sie tak jakbym chcial.</p><p>w widoku mam cos takiego:</p><div class="codebox"><pre><code>&lt;?php echo $form-&gt;day(&#039;birthdate&#039;, null, array(), &#039;wybierz...&#039;); ?&gt;
&lt;?php echo $form-&gt;month(&#039;birthdate&#039;, null, array(), &#039;wybierz...&#039;); ?&gt;
&lt;?php echo $form-&gt;year(&#039;birthdate&#039;, (date(&#039;Y&#039;)-100), date(&#039;Y&#039;), null, array(), &#039;wybierz...&#039;); ?&gt;
&lt;?php echo $form-&gt;error(&#039;birthdate&#039;); ?&gt;</code></pre></div><p>teraz tak - podanie daty jest opcjonalne. czyli jak wszystie selecty sa &quot;czyste&quot; (w pozycji wybierz...) nie ma pojawiac sie zaden blad. <br />niemniej jednak jesli uzytkownik wybierze np jakis rok a pozostale selecty zostawi puste ma pojawic sie blad. dodatkowo jesli wszystkie pola sa wypelnione musi byc rowniez sprawdzenie wieku.</p><p>jak zrobie debug($this-&gt;data) w kontrolerze mam cos takiego (np w przypadku wypelnienia jednego selecta):</p><div class="codebox"><pre><code>[birthdate] =&gt; Array
                (
                    [day] =&gt; 03
                    [month] =&gt; 
                    [year] =&gt; 
                )</code></pre></div><p>a w modelu mam juz tylko</p><div class="codebox"><pre><code>[birthdate] =&gt;</code></pre></div><p>wiec cake w ktoryms miejscu musi robic jakis merge tych danych z kontrolera. macie pojecie gdzie to sie dzieje?</p><p>pozdrawiam</p>]]></content>
			<author>
				<name><![CDATA[tomay7]]></name>
				<uri>http://forum.cakephp.org.pl/user/227/</uri>
			</author>
			<updated>2009-08-17T13:54:15Z</updated>
			<id>http://forum.cakephp.org.pl/post/485/#p485</id>
		</entry>
</feed>

