<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum CakePHP.org.pl - Relacje i błąd przy generowaniu obrazka]]></title>
		<link>http://forum.cakephp.org.pl/topic/114/relacje-i-blad-przy-generowaniu-obrazka/</link>
		<description><![CDATA[Najświeższe odpowiedzi w Relacje i błąd przy generowaniu obrazka.]]></description>
		<lastBuildDate>Fri, 20 Nov 2009 12:34:03 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Odp: Relacje i błąd przy generowaniu obrazka]]></title>
			<link>http://forum.cakephp.org.pl/post/531/#p531</link>
			<description><![CDATA[<p>Dzięki za informacje, w zasadzie nie wpadłem na to, żeby oprzeć captcha o osobny controller i tak właśnie zrobiłem, więc problem się już nie pojawia.</p>]]></description>
			<author><![CDATA[null@example.com (sabat24)]]></author>
			<pubDate>Fri, 20 Nov 2009 12:34:03 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/531/#p531</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje i błąd przy generowaniu obrazka]]></title>
			<link>http://forum.cakephp.org.pl/post/530/#p530</link>
			<description><![CDATA[<div class="quotebox"><cite>sabat24 napisał/a:</cite><blockquote><p>Problem jest w tym, że przy powyższej deklaracji zależności w modelu Member, do przeglądarki wysyłany jest nagłówek:<br /></p><div class="codebox"><pre><code>Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</code></pre></div><p>natomiast kiedy usunę z modelu Member pole var $belongsTo - wszystko działa w porządku, obrazek się generuje i nagłówek wysyłany do przeglądarki ma wartość:<br /></p><div class="codebox"><pre><code>Accept: image/png,image/*;q=0.8,*/*;q=0.5</code></pre></div><p>Dlaczego dodanie relacji powoduje taki dziwny błąd? Tak jakby jakiś znak był wysyłany wcześniej i psuł definicję nagłówka.</p></blockquote></div><p>Taki nagłóek sugeruje, że niedostajesz obrazka, ale html z informacją o błedzie (nieistniejąca klasa, albo coś w ten desen?).</p><p>Pamiętaj, że Cake przy błedach wysyła stronę (Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8) html (np. o nieistniejącym modelu/kontrolerze/widoku)</p><p>Dodaj sobie metodę w tym samym kontrolerze co generująca captcha. Możliwe, że dostaniesz te same błędy, skoro zależą one od tego jakie relacje zdefiniujesz w modelach. Może gdzieś masz zwykłą literówkę?</p><p>Co do osobnego kontrolera - to jest też niezły pomysł.</p>]]></description>
			<author><![CDATA[null@example.com (id02009)]]></author>
			<pubDate>Fri, 20 Nov 2009 10:28:46 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/530/#p530</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje i błąd przy generowaniu obrazka]]></title>
			<link>http://forum.cakephp.org.pl/post/528/#p528</link>
			<description><![CDATA[<p>hej,</p><p>w ogole to powinienes stworzyc osobny kontroler na Captche - np. CaptchaController - w nim w metodzie index() mozesz generowac obrazek pamietajac o wylaczeniu layoutu i widoku:</p><br /><br /><div class="codebox"><pre><code>function index() {
$this-&gt;layout = null;

$this-&gt;autoRender = false;

Configure::write(&#039;debug&#039;, 0);
//generujesz obrazek
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (tomay7)]]></author>
			<pubDate>Thu, 19 Nov 2009 21:38:21 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/528/#p528</guid>
		</item>
		<item>
			<title><![CDATA[Relacje i błąd przy generowaniu obrazka]]></title>
			<link>http://forum.cakephp.org.pl/post/526/#p526</link>
			<description><![CDATA[<p>Potrzebowałem stworzyć relację pomiędzy użytkownikami, a przypisaną do nich grupą. Stworzyłem model Group</p><div class="codebox"><pre><code>class Group extends AppModel {
    var $name = &#039;Group&#039;;
    var $displayField = &#039;name&#039;;

    var $hasMany = array(
        &#039;Member&#039; =&gt; array(
            &#039;className&#039; =&gt; &#039;Member&#039;,
            &#039;foreignKey&#039; =&gt; &#039;id&#039;,
            &#039;dependent&#039; =&gt; false
        )
    );

}</code></pre></div><p>A w modelu Member (używam go zamiast User), mam:<br /></p><div class="codebox"><pre><code>var $name = &#039;Member&#039;;
    var $displayField = &#039;username&#039;;
    var $belongsTo = array(
        &#039;Group&#039; =&gt; array(
            &#039;className&#039; =&gt; &#039;Group&#039;,
            &#039;foreignKey&#039; =&gt; &#039;group_id&#039;
        )
    );</code></pre></div><p>Wszystko działa dobrze, jednak problem pojawia się w momencie, gdy z controllera chcę wywołać funkcję generującą obrazek captcha. Obrazek generowany jest klasycznie tzn.<br /></p><div class="codebox"><pre><code>header(&quot;Expires: Sun, 1 Jan 2000 12:00:00 GMT&quot;);
    header(&quot;Last-Modified: &quot; . gmdate(&quot;D, d M Y H:i:s&quot;) . &quot;GMT&quot;);
    header(&quot;Cache-Control: no-store, no-cache, must-revalidate&quot;);
    header(&quot;Cache-Control: post-check=0, pre-check=0&quot;, false);
    header(&quot;Pragma: no-cache&quot;);
    header(&quot;Content-Type: image/png&quot;);
    imagepng($this-&gt;im);</code></pre></div><p>Problem jest w tym, że przy powyższej deklaracji zależności w modelu Member, do przeglądarki wysyłany jest nagłówek:<br /></p><div class="codebox"><pre><code>Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8</code></pre></div><p>natomiast kiedy usunę z modelu Member pole var $belongsTo - wszystko działa w porządku, obrazek się generuje i nagłówek wysyłany do przeglądarki ma wartość:<br /></p><div class="codebox"><pre><code>Accept: image/png,image/*;q=0.8,*/*;q=0.5</code></pre></div><p>Dlaczego dodanie relacji powoduje taki dziwny błąd? Tak jakby jakiś znak był wysyłany wcześniej i psuł definicję nagłówka.</p>]]></description>
			<author><![CDATA[null@example.com (sabat24)]]></author>
			<pubDate>Thu, 19 Nov 2009 10:52:49 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/526/#p526</guid>
		</item>
	</channel>
</rss>

