<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CE4DSHg7eip7ImA9WhRaFE0.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755</id><updated>2012-02-16T06:36:19.602-08:00</updated><category term="Symfony 2" /><category term="hibakezelés" /><category term="phpDocumentor" /><category term="news" /><category term="SQL Injection" /><category term="websocket" /><category term="dátum" /><category term="hash" /><category term="kereső funkciók" /><category term="keresés" /><category term="iterátor" /><category term="regexp" /><category term="Windows" /><category term="Test" /><category term="TCC" /><category term="mouse" /><category term="Doxygen" /><category term="Puppy Linux" /><category term="authentikáció" /><category term="ORM" /><category term="Windows Phone SDK" /><category term="véletlen szám" /><category term="SPL" /><category term="Apache" /><category term="parancssor" /><category term="IsolatedStorage" /><category term="Symfony 2.0" /><category term="FOSUserBundle" /><category term="Admin Generator" /><category term="öröm" /><category term="wxWidgets" /><category term="újdonságok" /><category term="felhasználhatóság" /><category term="giix Crud Generator" /><category term="WampServer" /><category term="Gii" /><category term="authentication" /><category term="CMS fejlesztés" /><category term="Adatbázis" /><category term="használhatóság" /><category term="Phraw" /><category term="error handling php 5.3" /><category term="user management" /><category term="rotate" /><category term="LAMPSecurityToolkit" /><category term="socket" /><category term="Far Manager 2" /><category term="DateTime" /><category term="AdmigeneratorGeneratorBundle" /><category term="Django" /><category term="CMS" /><category term="CD" /><category term="Entites" /><category term="űrlapok" /><category term="SonataAdminBundle" /><category term="error" /><category term="specifikáció" /><category term="programozási szerkesztő" /><category term="MSN Messenger" /><category term="php extension" /><category term="php5" /><category term="web workers" /><category term="XPBurn" /><category term="xmlSerializer" /><category term="sessionStorage" /><category term="W3C" /><category term="öregebb számítógép" /><category term="PHP 6" /><category term="Symfony2" /><category term="yii-user extension" /><category term="jelszavak" /><category term="micro frameworks" /><category term="Symfony 2 command line" /><category term="írás" /><category term="egér" /><category term="frameworks" /><category term="térkép" /><category term="preg_match" /><category term="szakmai alázat" /><category term="ternary operator" /><category term="online linux" /><category term="DVD" /><category term="image" /><category term="online térkép" /><category term="konvertálás monokrómmá" /><category term="File Manager" /><category term="usability" /><category term="first day" /><category term="keretrendszerek" /><category term="openId" /><category term="Sphinx" /><category term="convert to grayscale" /><category term="php kommentezés" /><category term="npm install" /><category term="visual C++" /><category term="Twig" /><category term="RFE/LFI" /><category term="seo" /><category term="Canvas" /><category term="jquery" /><category term="munkamenet" /><category term="virusade" /><category term="header injection" /><category term="Symmfony2" /><category term="Database" /><category term="beléptetés" /><category term="Damn Small Linux" /><category term="database model" /><category term="server" /><category term="symfony" /><category term="Imapi2" /><category term="md5" /><category term="adatbázis modell" /><category term="emulátor" /><category term="install" /><category term="SPlQueue" /><category term="online maps" /><category term="protecting" /><category term="PHP Security" /><category term="Final" /><category term="informatika" /><category term="keresőmarketing" /><category term="helyes jelszavak" /><category term="User Bundle" /><category term="Symfony 2 sandbox" /><category term="Google Checkout" /><category term="címlista" /><category term="Processing.js" /><category term="Wamp" /><category term="c#" /><category term="WP7 fejlesztés" /><category term="Adobe Edge" /><category term="Bundle" /><category term="PC" /><category term=".net" /><category term="PHP framework" /><category term="sfDoctrineGuardPlugin" /><category term="Elapsed times" /><category term="LyraAdminBundle" /><category term="MySQL" /><category term="leírás" /><category term="camera" /><category term="security" /><category term="authorizáció" /><category term="XML" /><category term="CRUD" /><category term="links" /><category term="Symfony 1.4" /><category term="teszt" /><category term="saját keresőfunkció" /><category term="alapok" /><category term="Wp7" /><category term="logut" /><category term="SensioGeneratorBundle" /><category term="MinGW" /><category term="SoanataAdmin" /><category term="last day" /><category term="PostgreSQL" /><category term="validáció" /><category term="UAC" /><category term="Ovi Maps" /><category term="color" /><category term="HTML" /><category term="testing" /><category term="eseménykezelés" /><category term="yii" /><category term="JavaScript" /><category term="XSS" /><category term="öreg laptop" /><category term="node.js" /><category term="Google Maps" /><category term="Windows Mobile" /><category term="admin" /><category term="exec Windows" /><category term="Rajzolás" /><category term="Date" /><category term="php filter class" /><category term="reguláris kifejezések" /><category term="validator" /><category term="Access Contact Data for Windows Phone" /><category term="form" /><category term="Doctrine" /><category term="localStorage" /><category term="Silex" /><category term="picture" /><category term="python" /><category term="start windows application" /><category term="telepítés" /><category term="autoload" /><category term="ternális műveletjel" /><category term="AdminBundle" /><category term="biztonság" /><category term="Bellard" /><category term="clean URL" /><category term="authorization" /><category term="HTML5" /><category term="Windows 7" /><category term="linux" /><category term="php 5.3" /><category term="védelem" /><category term="ellenőrzés" /><category term="Graphs" /><category term="restarting application" /><category term="php filter osztály" /><category term="php" /><category term="ajax" /><category term="Djanog" /><category term="random" /><category term="könyv" /><category term="programozás" /><category term="Drupal 7.8" /><category term="grafikon" /><category term="szerializálás" /><category term="php filters" /><category term="egyedi keresés" /><category term="felhasználó kezelés" /><category term="ViaMichelin" /><category term="keresőoptimalizálás" /><category term="Symfony 2 telepítés" /><category term="php 5.4" /><category term="Yii Dao" /><category term="Count Number of Black colors And Unique Colors in an Image" /><category term="model" /><category term="tcpClient" /><title>nyúlkál, piszkál, szétszed...</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://nyukapiszka.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>101</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/NylklPiszlSztszed" /><feedburner:info uri="nylklpiszlsztszed" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CkYHR3c7eyp7ImA9WhRVGE8.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-788769775541337526</id><published>2012-01-18T08:59:00.000-08:00</published><updated>2012-01-17T09:08:56.903-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-17T09:08:56.903-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="seo" /><category scheme="http://www.blogger.com/atom/ns#" term="keresőoptimalizálás" /><category scheme="http://www.blogger.com/atom/ns#" term="keresőmarketing" /><title>A SEO témakör margójára :)</title><content type="html">Már régebben is szerettem volna írni a &lt;a href="http://en.wikipedia.org/wiki/Search_engine_optimization"&gt;SEO&lt;/a&gt;-ról, de végül mindig elhalasztottam, mert úgy éreztem, hogy túlságosan sok negatív élményem volt a témával kapcsolatban és emiatt elfogult lennék. Mindegy, ez egy szubjektív blog. Belefér. :) &lt;br /&gt;
Azt nem szeretném boncolgatni, hogy mi a SEO , vagyis a keresőoptimalizálás (Search Engine Optimization), ez sok helyen le van írva, elég ha elolvasod például a &lt;a href="http://hu.wikipedia.org/wiki/Keresőoptimalizálás"&gt;Wikit&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Nekem a keresőoptimalizálással (mostantól SEO, mert így rövidebb) alapvetően semmi bajom nincs, hiszen ez nekem, mint olyan programozónak, aki webes alkalmazásokat is fejleszt, valójában a megélhetésem egyik "alapköve", ugyanis ha az ügyfelek, akiknek dolgozom, vagy a cég amiben dolgozom, sikertelen, alacsony látogatottságú weboldalakat készít, vagy üzemeltet, akkor felkopik az állam - tehát, a SEO fontos. Ez evidens, de nem jelenti azt, hogy minden siker csakis egy mechanikus műveletsoron, egy Csodarecepttel elérhető Nagy Ugráson múlna, amit egy úgynevezett SEO mágus birtokol, de ezen a ponton ismét megjegyezném, hogy nem szeretnék beleesni az elfogultság csapdájába, tehát leszögezném, hogy nem gondolom azt, hogy a SEO és a SEO-val foglalkozó minden szakember sarlatán, de a tapasztalataim alapján úgy gondolom, hogy ezen a területen akadnak zavarosban halászó "szakértők". Hagyjuk ezt, aki nem becsületes, azt ez úgysem zavarja, vigyorogva fog továbbra is "varázsolni".&lt;br /&gt;
&lt;br /&gt;
A sikeres internetes projektet a látogatottsággal szoktuk mérni, ebből nagyon sok fajta van, hiszen nem mindegy, hogy a látogató visszatérő látogató-e, nem mindegy, hogy 5 másodpercet, vagy 15 percet töltött-e nálunk, az sem mindegy, hogy belépett-e, eljutott-e a vásárlásig, befejezte-e azt, és sorolhatnám, hiszen ahány fajta oldal van, annyi fajta szempont-rendszert tudunk leképezni és mérni, egészen a legapróbb részletekig, egy blognál teljesen más szempontok vannak, mint egy zoknit áruló webáruháznál, de a cél minden esetben az, hogy lehetőleg minden típusú látogatottsága növekedjen az oldalnak. Szerintem ezen a ponton lehet eldönteni egy SEO szakemberről, hogy amit ígér az blabla, vagy tényleg egy komolyan vehető, megvalósítható módszer, amely elvezethet a sikerhez, vagyis a keresők szeretni fognak bennünket, a látogatottság nő.&lt;br /&gt;
&lt;br /&gt;
Először ezen a blogon szeretném bemutatni, hogy én hogyan növeltem meg a látogatottságomat, alig két hónap alatt körülbelül háromszorosára az addiginak, majd egy folyamatos, dinamikus növekedés következett és utána stagnálás :). Én nem vagyok SEO szakértő, nem ebből élek, csak úgy gondoltam, hogy ezen a példán tudom legjobban szemléltetni azt, ami szerintem a látogatottság növekedésének legfontosabb összetevője: a saját tartalom.&lt;br /&gt;
&lt;br /&gt;
Ezt a blogot 2009-ben kezdtem írni, akkor még Magyarországon éltem, Budapesten dolgoztam egy fejlesztő cégben és egyik délután unatkoztam és gondoltam csinálok egy szakmai blogot, csak úgy,  cél nélkül. Tehát volt egy ötlet, igaz nem túl fantáziadús :) nem is volt nagy eredménye, körülbelül 2 évig nem is érdekelt az, hogy olvassák-e, vagy sem, a látogatottság szinte ugyanakkora volt. Ezután eszembe jutott, hogy megpróbálom megnövelni a látogatottságot, első lépésben felcímkéztem rendesen a már meglévő bejegyzéseket, ez persze nem segített semmit. :) Majd elkezdtem olyan témájú cikkeket írni, amilyen témákban én is keresgéltem az interneten, de nem találtam megfelelő leírásokat, nah, ez meg is hozta az eredményt, lassan növekedni kezdett a látogatottság. Ezek után jött az, hogy rendszeresen publikáltam újabb bejegyzéseket és mindig tudatosan olyan témákban, ami szerintem hiánypótló volt és valójában ennyi volt a nagy trükk, a "csoda" megtörtént... :) Elkezdtek rám mutatni külső hivatkozások, és ami nagyon fontos megjöttek az első "kommentek" - ez valószínűleg nagyon fontos (bár nem ismerem a keresők algoritmusát, de ez lenne a logikus). Utána nem írtam 1-2 hónapig, a növekedés lassan le is állt, de nem süllyedt, csak stagnált.&lt;br /&gt;
&lt;br /&gt;
Persze, nyilván más egy webáruház, vagy egy céges honlap, és sokat számítanak a hirdetések, de nincs csoda. Nincs varázspálca. Szerintem ha nincs saját, egyedi tartalom, akkor nem lehet komoly sikert elérni, és igazán komoly látogatottsághoz szerintem legalább 1-2 év felfutási idő kell, állandó, friss tartalommal, aki mást ígér az szerintem gyanús. :)&lt;br /&gt;
&lt;br /&gt;
Szerintem egy korrekt, becsületes SEO szakember elsődleges feladata az, hogy el tudja magyarázni a laikus ügyfélnek, hogy nem létezik csoda, és a marketinges eszközök csak segíteni tudják a meglévő saját energiákat abban, hogy elérjék a célt, de ha nincs saját koncepció, nincs saját ötlet, szenvedély, akarat stb., akkor a marketingre költött pénzt akár a WC-ben is lehúzhatták volna. Csak sajnos nagyon sok ügyfél nem is tudja mit akar, vagy nem érdekli, csak látogatottságot szeretne (mert a főnöke utasította, mert egy megbeszélésen így döntöttek stb.), bármi áron és nagyon-nagyon boldog ha jön valaki - egy mágus, aki elhiteti vele és esetleg a főnökeivel, hogy csodák márpedig léteznek, minden csak pénz kérdése... hát így lehet a zavarosban halászni és ebből megélni. Ez olyan egy kicsit mint a csodatoktorok, akik kézrátétellel operálnak... (amiben kik hisznek?) :) Ezt nem írom le, mindenki találja ki! :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-788769775541337526?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/poSEzdEMMZ7w3Op3880jScG-qak/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/poSEzdEMMZ7w3Op3880jScG-qak/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/poSEzdEMMZ7w3Op3880jScG-qak/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/poSEzdEMMZ7w3Op3880jScG-qak/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/k4lbxiV4NbI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/788769775541337526/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=788769775541337526&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/788769775541337526?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/788769775541337526?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/k4lbxiV4NbI/nagy-seo-varazslas.html" title="A SEO témakör margójára :)" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2012/01/nagy-seo-varazslas.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cCQnwzeip7ImA9WhRVF0U.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-7290989970448829226</id><published>2012-01-18T07:11:00.000-08:00</published><updated>2012-01-16T23:24:23.282-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-16T23:24:23.282-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="symfony" /><category scheme="http://www.blogger.com/atom/ns#" term="űrlapok" /><category scheme="http://www.blogger.com/atom/ns#" term="validáció" /><category scheme="http://www.blogger.com/atom/ns#" term="jquery" /><category scheme="http://www.blogger.com/atom/ns#" term="form" /><category scheme="http://www.blogger.com/atom/ns#" term="ajax" /><category scheme="http://www.blogger.com/atom/ns#" term="Symfony 1.4" /><title>Symfony 1.4, 1.3 űrlapok és ajax validáció</title><content type="html">Nem nagyon találtam leírást arról, hogy a Symfony 1.4-ben és a &lt;a href="http://www.symfony-project.org/"&gt;Symfony&lt;/a&gt; régebbi változataiban hogyan lehet ajaxos validációt készíteni úgy, hogy ne kelljen változtatni az űrlapjainkon és csakis &lt;i&gt;BaseFormDoctrine&lt;/i&gt;-ból származtatott űrlapokat használjuk.&lt;br /&gt;
&lt;br /&gt;
Ez lenne a Symfony esemény és a feldolgozó metódus:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt;  public function executeUpdate(sfWebRequest $request)  
  {  
   $this-&amp;gt;forward404Unless($request-&amp;gt;isMethod(sfRequest::POST) || $request-&amp;gt;isMethod(sfRequest::PUT));  
   $this-&amp;gt;forward404Unless($family = Doctrine_Core::getTable('Family')-&amp;gt;find(array($request-&amp;gt;getParameter('id'))), sprintf('Object family does not exist (%s).', $request-&amp;gt;getParameter('id')));  
   $this-&amp;gt;form = new UpdateFamilyCollectionForm($family);  
   $this-&amp;gt;processForm($request, $this-&amp;gt;form);  
   return sfView::NONE;  
  }  

  /**
   * 
   * Process Form
   * @param sfWebRequest $request
   * @param sfForm $form
   * @author BlaBla :)
   */
  protected function processForm(sfWebRequest $request, sfForm $form)  
  {  
    $sJsonReturnString = "";  
    $this-&amp;gt;setLayout(false);  
    $form-&amp;gt;bind($request-&amp;gt;getParameter($form-&amp;gt;getName()), $request-&amp;gt;getFiles($form-&amp;gt;getName()));  
   if ( $form-&amp;gt;isValid())   
   {  
    $family = $form-&amp;gt;save();  
    $sJsonReturnString = json_encode(array( "msg"=&amp;gt;"ok" ));  
   }  
   else  
   {  
           $errors = $form-&amp;gt;getErrorSchema()-&amp;gt;getErrors();  
           $aErrors = array();  
             if (count($errors) &amp;gt; 0)  
             {  
          {  
               $i = 0;  
               foreach ($errors as $name =&amp;gt; $error)  
               {  
                 $aErrors[ $name ] = $error-&amp;gt;getMessage();  
               }  
          }       
           }  
           $sJsonReturnString = json_encode($aErrors);       
   }  
   echo $sJsonReturnString;  
  } //processForm  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Az &lt;i&gt;$errors = $form-&gt;getErrorSchema()-&gt;getErrors();&lt;/i&gt; visszaadja a hibákat és ezeket írjuk ki a kliensnek.&lt;br /&gt;
&lt;br /&gt;
A kliensen pedig valahogy így dolgozhatjuk fel a kapott értékeket (én most JQuery-t használtam):&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; var dataString = jQuery('#updatefamilyForm').serialize();  
 var postUrl = jQuery('#updatefamilyForm').attr('action');  
 $.ajax({  
           type: "POST",  
           url: postUrl,  
           data: dataString,  
           success: function(response) {  
            var FormErrors = $.parseJSON(response);  
            jQuery.each(FormErrors, function(i, val) {  
                     alert(i+val);  
                });                         
           }  
      });  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Az űrlapunkat a sablonban a klasszikus Symfony-s módon készítjük el, annyi különbséggel, hogy a form elem kap egy id-t:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;form id="updatefamilyForm" action="&amp;lt;?php echo url_for('family/'.($form-&amp;gt;getObject()-&amp;gt;isNew() ? 'create' : 'update').(!$form-&amp;gt;getObject()-&amp;gt;isNew() ? '?id='.$form-&amp;gt;getObject()-&amp;gt;getId() : '')) ?&amp;gt;" method="post" &amp;lt;?php $form-&amp;gt;isMultipart() and print 'enctype="multipart/form-data" ' ?&amp;gt;&amp;gt;  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Ezt a problémát sokféleképpen meg lehetne oldani, ez csak egy módszer a sok közül.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-7290989970448829226?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hKFX6JYXvNX67vOoZmKZ3m3lae8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hKFX6JYXvNX67vOoZmKZ3m3lae8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hKFX6JYXvNX67vOoZmKZ3m3lae8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hKFX6JYXvNX67vOoZmKZ3m3lae8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/p3IQ8yq39OU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/7290989970448829226/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=7290989970448829226&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7290989970448829226?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7290989970448829226?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/p3IQ8yq39OU/symfony-14-13-urlapok-es-ajax-validacio.html" title="Symfony 1.4, 1.3 űrlapok és ajax validáció" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2012/01/symfony-14-13-urlapok-es-ajax-validacio.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE8MRXw_fCp7ImA9WhRVF0k.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-7143093998751281321</id><published>2012-01-17T04:25:00.000-08:00</published><updated>2012-01-16T12:48:04.244-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-16T12:48:04.244-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="hibakezelés" /><category scheme="http://www.blogger.com/atom/ns#" term="php 5.3" /><category scheme="http://www.blogger.com/atom/ns#" term="error handling php 5.3" /><title>Hibakezelés 5.3-as PHP-ban névtelen függvénnyel</title><content type="html">A hibakezelést sokféleképpen meg lehet valósítani PHP-ban, nem minősítem egyik módszert sem, kivéve ha nem használunk kivételkezelést, mert az szerintem helytelen. :) &lt;br /&gt;
A PHP legújabb lehetőségeit kihasználva készíthetünk egy ilyen megoldást, névtelen függvénnyel:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 $filename = "data.txt";  
 $newfilename = "newfile.txt";  
 set_error_handler(  
   function($error, $message = '', $file = '', $line = 0) use ($filename, $newfilename) {  
     throw new RuntimeException( sprintf(  
       'Error opening file "%s" (in %s@%d): %s - %s not created',  
       $filename, $file, $line, $message, $newfilename  
     ), $error);  
   },  
   E_WARNING  
 );  
 copy ( $filename,   
           $newfilename  
           );  
 restore_error_handler();  
 ?&amp;gt;  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Ez végül is nem egy nagy újítás, de érdekes. Az ötlet egyébként Matthew Weier O'Phinney-tól származik, érdemes elolvasni a blogbejegyzését: &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://mwop.net/blog/on-error-handling-and-closures"&gt;http://mwop.net/blog/on-error-handling-and-closures&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
ebben vannak további példák és a hozzászólásokban is akad néhány érdekes ötlet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-7143093998751281321?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/N0ZyfHEL1yXLqVvZcr8bXvqw6xI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/N0ZyfHEL1yXLqVvZcr8bXvqw6xI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/N0ZyfHEL1yXLqVvZcr8bXvqw6xI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/N0ZyfHEL1yXLqVvZcr8bXvqw6xI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/IpPSFiGoxNc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/7143093998751281321/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=7143093998751281321&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7143093998751281321?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7143093998751281321?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/IpPSFiGoxNc/hibakezeles-53-as-php-ban-nevtelen.html" title="Hibakezelés 5.3-as PHP-ban névtelen függvénnyel" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2012/01/hibakezeles-53-as-php-ban-nevtelen.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4NQns_cSp7ImA9WhRVF0k.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-4328296146884219895</id><published>2012-01-16T17:11:00.000-08:00</published><updated>2012-01-16T12:49:53.549-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-16T12:49:53.549-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="WP7 fejlesztés" /><category scheme="http://www.blogger.com/atom/ns#" term="Wp7" /><category scheme="http://www.blogger.com/atom/ns#" term="könyv" /><title>Szabadon letölthető fejlesztői kézikönyv jelent meg a Windows Phone programozásáról</title><content type="html">Szabadon letölthető fejlesztői kézikönyvet adott ki devPortal.hu a Windows Phone programozásáról, a könyv PDF formában letölthető a következő címről:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="https://devportal.hu/wp7/konyv"&gt;https://devportal.hu/wp7/konyv&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
A könyv színvonalasan összeállított és nagyon fontos, hasznos témákat érint, mint például az adatkötések, WP7 vezérlők, erőforrások kezelése, animációk, XAML - és még nagyon sok egyéb. :)&lt;br /&gt;
&lt;br /&gt;
Ha valakit érdekel a WP7 fejlesztés, akkor ennek a könyvnek szerintem örülni fog!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-4328296146884219895?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1xOThA8NRkfS4DhK9BZ2JYLMDHE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1xOThA8NRkfS4DhK9BZ2JYLMDHE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1xOThA8NRkfS4DhK9BZ2JYLMDHE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1xOThA8NRkfS4DhK9BZ2JYLMDHE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/ecxx58TT708" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/4328296146884219895/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=4328296146884219895&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/4328296146884219895?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/4328296146884219895?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/ecxx58TT708/szabadon-letoltheto-fejlesztoi.html" title="Szabadon letölthető fejlesztői kézikönyv jelent meg a Windows Phone programozásáról" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2012/01/szabadon-letoltheto-fejlesztoi.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4MRHgyeSp7ImA9WhRXGE8.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-8029475283589338497</id><published>2011-12-25T15:11:00.000-08:00</published><updated>2011-12-25T06:56:25.691-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-25T06:56:25.691-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Symfony2" /><category scheme="http://www.blogger.com/atom/ns#" term="LyraAdminBundle" /><title>LyraCMS and LyraAdminBundle</title><content type="html">&lt;a href="http://www.lyra-cms.com/blog/2011/12/status-lyra-cms-development.html"&gt;http://www.lyra-cms.com/blog/2011/12/status-lyra-cms-development.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="https://github.com/mgiagnoni/LyraAdminBundle"&gt;https://github.com/mgiagnoni/LyraAdminBundle&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-8029475283589338497?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/sbTs9XYidgcNcd5hUTuI5McBmVs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sbTs9XYidgcNcd5hUTuI5McBmVs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/sbTs9XYidgcNcd5hUTuI5McBmVs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sbTs9XYidgcNcd5hUTuI5McBmVs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/jYMjBz1Tes0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/8029475283589338497/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=8029475283589338497&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/8029475283589338497?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/8029475283589338497?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/jYMjBz1Tes0/lyracms-and-lyraadminbundle.html" title="LyraCMS and LyraAdminBundle" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/12/lyracms-and-lyraadminbundle.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IGRX4ycCp7ImA9WhRREk0.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-1757692685870690981</id><published>2011-11-25T04:32:00.000-08:00</published><updated>2011-11-24T22:12:04.098-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-24T22:12:04.098-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="címlista" /><category scheme="http://www.blogger.com/atom/ns#" term="Access Contact Data for Windows Phone" /><category scheme="http://www.blogger.com/atom/ns#" term="Windows Mobile" /><title>Windows Mobile: hozzáférés a címlistához</title><content type="html">Vettem egy új telefont és elkezdtem tesztelgetni. Ezekkel a bejezésekkel ("Windows Mobile" kezdetűek) csak dokumentálom magamnak a példakódjaimat, azért, hogy 2 hónap múlva ne kelljen újra átnyálaznom az API-t... &lt;br /&gt;
&lt;br /&gt;
A kódok a Visual Studio Express-el készültek, ez Visual Basic-ben.&lt;br /&gt;
&lt;br /&gt;
Szóval, a címlistához így lehet hozzáférni:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; Imports Microsoft.Phone.UserData  
   
   
 Partial Public Class MainPage  
   Inherits PhoneApplicationPage  
   
   ' Constructor  
   Public Sub New()  
     InitializeComponent()  
   End Sub  
   
   
   Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click  
     ApplicationTitle.Text = "Test Application"  
     Dim cons As Contacts = New Contacts()  
     AddHandler cons.SearchCompleted, AddressOf Contacts_SearchCompleted  
     cons.SearchAsync(String.Empty, FilterKind.DisplayName, "James Bond")  
   End Sub  
   
   
   Private Sub Contacts_SearchCompleted(sender As Object, e As ContactsSearchEventArgs)  
     MessageBox.Show(e.Results.Count().ToString())  
   End Sub  
 End Class  
   
&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-1757692685870690981?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/SYn-TF8bwpyaU_uMrq9PAKf9DQI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SYn-TF8bwpyaU_uMrq9PAKf9DQI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/SYn-TF8bwpyaU_uMrq9PAKf9DQI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SYn-TF8bwpyaU_uMrq9PAKf9DQI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/Dj1A-RQmr_A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/1757692685870690981/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=1757692685870690981&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1757692685870690981?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1757692685870690981?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/Dj1A-RQmr_A/windows-mobile-hozzaferes-cimlistahoz.html" title="Windows Mobile: hozzáférés a címlistához" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/11/windows-mobile-hozzaferes-cimlistahoz.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IBSHc8eCp7ImA9WhRREk0.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-1260137421878915183</id><published>2011-11-23T06:11:00.000-08:00</published><updated>2011-11-24T22:12:39.970-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-24T22:12:39.970-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Windows Phone SDK" /><title>Windows Mobile: fejlesztői környezet</title><content type="html">A fejlesztői környezet létrehozása eléggé egyszerű lett (régebben külön kellett mindent feltelepíteni) elegendő letölteni az SDK-t (jelenleg a 7.1 az ajánlott). Innen töltheted le: &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://create.msdn.com/en-us/home/getting_started"&gt;http://create.msdn.com/en-us/home/getting_started&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Ez a következő szoftvereket tartalmazza:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Microsoft Visual Studio 2010 Express for Windows Phone&lt;/li&gt;
&lt;li&gt;Windows Phone Emulator&lt;/li&gt;
&lt;li&gt;Windows Phone SDK 7.1 Assemblies&lt;/li&gt;
&lt;li&gt;Silverlight 4 SDK and DRT&lt;/li&gt;
&lt;li&gt;Windows Phone SDK 7.1 Extensions for XNA Game Studio 4.0&lt;/li&gt;
&lt;li&gt;Microsoft Expression Blend SDK for Windows Phone 7&lt;/li&gt;
&lt;li&gt;Microsoft Expression Blend SDK for Windows Phone OS 7.1&lt;/li&gt;
&lt;li&gt;WCF Data Services Client for Window Phone&lt;/li&gt;
&lt;li&gt;Microsoft Advertising SDK for Windows Phone&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
Szerintem ez kezdésnek bőven elegendő... :) A Microsoft Visual Studio 2010 Express támogatja a Visual Basic-et és a C#-t, mindenki döntse el melyiket szereti. Nagyon sok sablont is kapunk az SDK-val együtt, ezeket érdemes kipróbálgatni, ha az időm engedi, akkor majd írok a saját próbálkozásaimról.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-1260137421878915183?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qfLaVNa6o9t7GQWo4dGas_K17js/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qfLaVNa6o9t7GQWo4dGas_K17js/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qfLaVNa6o9t7GQWo4dGas_K17js/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qfLaVNa6o9t7GQWo4dGas_K17js/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/l4Q0Z4kEzfI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/1260137421878915183/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=1260137421878915183&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1260137421878915183?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1260137421878915183?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/l4Q0Z4kEzfI/windows-mobile-fejlesztoi-kornyezet.html" title="Windows Mobile: fejlesztői környezet" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/11/windows-mobile-fejlesztoi-kornyezet.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D08FQ38zeCp7ImA9WhdaFE4.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-4670720564894663248</id><published>2011-10-24T06:47:00.000-07:00</published><updated>2011-10-23T22:56:52.180-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-23T22:56:52.180-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Symmfony2" /><category scheme="http://www.blogger.com/atom/ns#" term="AdmigeneratorGeneratorBundle" /><title>Symmfony2 AdmigeneratorGeneratorBundle</title><content type="html">Úgy látszik másoknak is elegük lett a Sonata Admin Bundle-ból és ezért elindítottak egy teljesen új admin generátor fejlesztését, a projekt még kezdeti stádiumban van, de biztató. Ezen a címen érhető el:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://symfony2admingenerator.org/"&gt;http://symfony2admingenerator.org/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Egyelőre még nem volt időm komolyabban letesztelni, de a hét végéig valószínűleg szakítok rá időt, ha valakit érdekel akkor próbálja ki! :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-4670720564894663248?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qC3QcnGWiEmJKxoYZiNnZlKQYsU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qC3QcnGWiEmJKxoYZiNnZlKQYsU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qC3QcnGWiEmJKxoYZiNnZlKQYsU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qC3QcnGWiEmJKxoYZiNnZlKQYsU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/PG8zxS2PgXI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/4670720564894663248/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=4670720564894663248&amp;isPopup=true" title="4 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/4670720564894663248?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/4670720564894663248?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/PG8zxS2PgXI/symmfony2-admigeneratorgeneratorbundle.html" title="Symmfony2 AdmigeneratorGeneratorBundle" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>4</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/10/symmfony2-admigeneratorgeneratorbundle.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D08HR3w-fip7ImA9WhdbF0k.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-64426896209378785</id><published>2011-10-16T07:08:00.000-07:00</published><updated>2011-10-15T23:17:16.256-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-15T23:17:16.256-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="install" /><category scheme="http://www.blogger.com/atom/ns#" term="wxWidgets" /><category scheme="http://www.blogger.com/atom/ns#" term="MinGW" /><category scheme="http://www.blogger.com/atom/ns#" term="Windows" /><category scheme="http://www.blogger.com/atom/ns#" term="Symfony 2 telepítés" /><title>C és C++ fordító Windows alá, MinGW, wxWidgets</title><content type="html">Sokféle C fordítót kipróbáltam, végül a &lt;a href="http://www.mingw.org/"&gt;MingW&lt;/a&gt; lett az amit használok. (A MinGW egy GNU C fordító - ha valaki nem ismerné) Ez csak egy rövid leírás a telepítésről.&lt;br /&gt;
&lt;br /&gt;
1. le kell tölteni a mingGW-t, én ezt ajánlom: &lt;a href="http://sourceforge.net/projects/mingw/"&gt;http://sourceforge.net/projects/mingw/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
majd telepíteni kell (a  jelenlegi telepítője nem túl bonyolult, régebben volt rosszabb is). Ha kész a telepítés, akkor a Windows PATH változó értékei közé fel kell venni a MinGW elérési útjait is, nálam ezek a következők: &lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; H:\MinGW\bin\;H:\MinGW\lib\;H:\MinGW\include;  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
2. Telepíteni kell a mingw32-make-t, pl. innen:&lt;br /&gt;
&lt;br /&gt;
http://sourceforge.net/projects/mingw/files/MinGW/make/mingw32-make-3.80-3/mingw32-make-3.80.0-3.exe/download&lt;br /&gt;
&lt;br /&gt;
Telepítésnél ajánlatos jól megadni a minGW elérési útját, a későbbi problémák elkerülése végett :) Ha telepítetted, akkor a minGW /bin könyvtárában fogod megtaláni mingw32-make.exe néven, én ezt átneveztem make.exe-re. Ezen a néven ugyanis valami fura oknál fogva minden könnyebben megtalálta, aminek szüksége volt rá...nem is értem, hogy miért... :)&lt;br /&gt;
&lt;br /&gt;
4. telepíteni kell a gdb-t, pl. innen:&lt;br /&gt;
&lt;br /&gt;
http://sourceforge.net/projects/mingw/files/MinGW/BaseSystem/GDB/Current%20Release_%20gdb-5.2.1/gdb-5.2.1-1.exe/download&lt;br /&gt;
&lt;br /&gt;
Erre ugyanaz vonatkozik mint ami a make-ra, átnevezni nem kell.&lt;br /&gt;
&lt;br /&gt;
5. ha eddig készen vagy, akkor egy "Hello World!" programot már tudsz fordítani :) (Nem tudom, hogy ez miért lett egy külön pont...)&lt;br /&gt;
&lt;br /&gt;
6. én nem szeretem az Eclipse-t, de mégis használom, mert a kakik (khm, ilyet nem illik leírni!) közt a király :) Szóval letöltöd az Eclipse C-hez készült klónját:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers-includes-incubating-components/indigosr1"&gt;http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers-includes-incubating-components/indigosr1&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Én az Eclipse-t a MinGW-n belül, egy alkönyvtárba telepítettem és a munkakönyvtárát is itt hoztam létre, mert PHP-hoz is van egy Eclipse a gépemben és jobb a békesség.&lt;br /&gt;
&lt;br /&gt;
7. így már minden adott a fejlesztéshez, de ha még Windows alá is szeretnél (vagy szinte bármilyen OS alá) készíteni ablakos alkalmazásokat, akkor telepítened kell a wxWidgets-et, ezt így lehet:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Letöltés: &lt;a href="http://www.wxwidgets.org/downloads/"&gt;http://www.wxwidgets.org/downloads/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Ezt szintén a minGW könyvtárán belülre telepítettem, majd a Windows PATH értékei közé felvettem ezt: H:\MinGW\wxWidgets-2.9.2\include\wx\&lt;br /&gt;
&lt;br /&gt;
Ezek után le kell fordítani a következő paranccsal:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; make -f makefile.gcc BUILD=release SHARED=0 UNICODE=1 USE_ODBC=1  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Ezt én a H:\MinGW\wxWidgets-2.9.2\build\msw\ könyvtáron belül futtattam, nálad ez nyilván más lesz, de a lényeg, hogy itt van az egész wxWidgets makefile-ja, ezt kell lefordítani, ez el fog tartani egy ideig (nélam kb. 30 percig futott), ha elkészült, akkor a /lib könyvtár alatt létrejönnek a szükséges könyvtárak és fájlok - egészen pontosan a  lib/gcc_lib alatt.&lt;br /&gt;
&lt;br /&gt;
Ha ez készen van, akkor érdemes ellátogatni a /samples könyvtárba és ott lefordítani a példákat, a következő parancs jó lesz kezdésnek:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; make -f makefile.gcc BUILD=release SHARED=0 UNICODE=1 USE_ODBC=1  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Tátva fog maradni a szánk, hogy milyen "csoda" dolgokra képes, cserébe azért majd nézzük meg a létrejött bináris fájlok méretét is ;--)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-64426896209378785?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9PPRUkuXkhmyZVPNEPsYjqNyHLs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9PPRUkuXkhmyZVPNEPsYjqNyHLs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9PPRUkuXkhmyZVPNEPsYjqNyHLs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9PPRUkuXkhmyZVPNEPsYjqNyHLs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/MFH8ia62vyU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/64426896209378785/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=64426896209378785&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/64426896209378785?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/64426896209378785?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/MFH8ia62vyU/alternativ-c-es-c-fordito-windows-ala.html" title="C és C++ fordító Windows alá, MinGW, wxWidgets" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/10/alternativ-c-es-c-fordito-windows-ala.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUAHRn09cSp7ImA9WhdbFUs.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-8149315307130087679</id><published>2011-10-14T04:40:00.000-07:00</published><updated>2011-10-13T20:42:17.369-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-13T20:42:17.369-07:00</app:edited><title>70 éves korában elhunyt Dennis Ritchie</title><content type="html">70 éves korában elhunyt &lt;a href="http://hu.wikipedia.org/wiki/Dennis_M._Ritchie"&gt;Dennis Ritchie&lt;/a&gt;, ő találta ki a &lt;a href="http://hu.wikipedia.org/wiki/C_programoz%C3%A1si_nyelv"&gt;C programozási nyelvet&lt;/a&gt; és ő készítette el az első változatát, melyben azután &lt;a href="http://hu.wikipedia.org/wiki/Ken_Thompson"&gt;Ken Thompson&lt;/a&gt;-al közösen újraírták a &lt;a href="http://hu.wikipedia.org/wiki/Unix#A_UNIX_t.C3.B6rt.C3.A9nete"&gt;Unix&lt;/a&gt; operációs rendszert.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-8149315307130087679?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3bdvLYdSzLA9OGjoLZ4Ee2X2Lw8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3bdvLYdSzLA9OGjoLZ4Ee2X2Lw8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3bdvLYdSzLA9OGjoLZ4Ee2X2Lw8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3bdvLYdSzLA9OGjoLZ4Ee2X2Lw8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/5bby7KZHMdQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/8149315307130087679/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=8149315307130087679&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/8149315307130087679?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/8149315307130087679?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/5bby7KZHMdQ/70-eves-koraban-elhunyt-dennis-ritchie.html" title="70 éves korában elhunyt Dennis Ritchie" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/10/70-eves-koraban-elhunyt-dennis-ritchie.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cHQHY_cSp7ImA9WhdUGUQ.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-7678218928998407888</id><published>2011-10-07T14:43:00.000-07:00</published><updated>2011-10-07T06:43:51.849-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-07T06:43:51.849-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Symfony2" /><category scheme="http://www.blogger.com/atom/ns#" term="security" /><title>Symfony2 Security Audit</title><content type="html">Csak egy link:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://symfony.com/blog/symfony2-security-audit"&gt;http://symfony.com/blog/symfony2-security-audit&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-7678218928998407888?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/AiwICDz_dex6tsMOtiWr6zk8TDM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AiwICDz_dex6tsMOtiWr6zk8TDM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/AiwICDz_dex6tsMOtiWr6zk8TDM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AiwICDz_dex6tsMOtiWr6zk8TDM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/hBbxlr59fsI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/7678218928998407888/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=7678218928998407888&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7678218928998407888?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7678218928998407888?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/hBbxlr59fsI/symfony2-security-audit.html" title="Symfony2 Security Audit" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/10/symfony2-security-audit.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEDSXg7cCp7ImA9WhdVEk4.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-5369405549745771249</id><published>2011-09-17T05:11:00.000-07:00</published><updated>2011-09-16T21:27:58.608-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-16T21:27:58.608-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="clean URL" /><category scheme="http://www.blogger.com/atom/ns#" term="Windows" /><category scheme="http://www.blogger.com/atom/ns#" term="Wamp" /><category scheme="http://www.blogger.com/atom/ns#" term="Drupal 7.8" /><title>Drupal 7.8 - barátságos URL (Clean URLs) beállítása  WampServer, Windows 7 környezetben</title><content type="html">A &lt;a href="http://drupal.org/node/1265840"&gt;Drupal 7.8&lt;/a&gt;-ban nagyon egyszerűen lehet konfigurálni a "barátságos" URL-eket, de nálam alapbeállításokkal, Windows 7 és &lt;a href="http://www.wampserver.com/en/"&gt;WampServer&lt;/a&gt; alatt nem működtek a rövid URL-ek, ezt a Drupal egy teljesen semmitmondó üzenettel hozta - illetve a gond éppen az volt, hogy nem hozta a tudtomra...egyszerűen csak nem működött és kész. :) Na mindegy, a lényeg, hogy ha ez a probléma, akkor a következőképpen lehet megoldani:&lt;br /&gt;
&lt;br /&gt;
1. a C:\wamp\bin\apache\Apache2.2.17\conf\extra\httpd-vhosts.conf fájlba (értelemszerűen ez ott lesz ahová telepítetted) fel kell venni a Drupalnak egy új "virtual hostot":&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;VirtualHost *:80&amp;gt;  
      DocumentRoot "C:\wamp\www\drupal-7.8"  
      ServerName drupal_test  
      &amp;lt;Directory "C:\wamp\www\drupal-7.8"&amp;gt;  
             Options None  
             AllowOverride All  
             Order deny,allow  
             Allow from all  
      &amp;lt;/Directory&amp;gt;  
 &amp;lt;/VirtualHost&amp;gt;  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
2. A C:\Windows\System32\drivers\etc\hosts fájlba fel kell venni egy sort:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; 127.0.0.1    drupal_test  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
3. újra kell indítani a webszervert és máris megjelenik az áhított checkbox a "Clean URLs" menüben (persze a mod_rewrite Apache modulnak engedélyezve kell lennie, de gondolom ez nyilvánvaló. Példa egy tartalom URL-re, a fenti beállítások alapján: http://drupal_test/blablblabla-01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
U.i.:&lt;br /&gt;
Egyébként, ha mindezek nincsenek beállítva, akkor a felhasználók mentésénél, ha szeretnél beállítani egy új szerepkört (Role), akkor a Drupal rossz URL-re fog irányítani, hibát kapsz, illetve egy nagy semmit, de a háttérben minden adat elmentődik. Ha a fentieket beállítod, akkor ez a hiba is "megjavul".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-5369405549745771249?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HibfACqipI50wXyxnIRpnX2z_gI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HibfACqipI50wXyxnIRpnX2z_gI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HibfACqipI50wXyxnIRpnX2z_gI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HibfACqipI50wXyxnIRpnX2z_gI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/KIdqqWID06U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/5369405549745771249/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=5369405549745771249&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/5369405549745771249?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/5369405549745771249?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/KIdqqWID06U/drupal-78-baratsagos-url-clean-urls.html" title="Drupal 7.8 - barátságos URL (Clean URLs) beállítása  WampServer, Windows 7 környezetben" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/09/drupal-78-baratsagos-url-clean-urls.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcFRX4yeCp7ImA9WhdWGEQ.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-3893908948982850897</id><published>2011-09-13T05:12:00.000-07:00</published><updated>2011-09-12T22:50:14.090-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-12T22:50:14.090-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="protecting" /><category scheme="http://www.blogger.com/atom/ns#" term="XSS" /><category scheme="http://www.blogger.com/atom/ns#" term="php" /><category scheme="http://www.blogger.com/atom/ns#" term="links" /><title>Linkgyűjtemény: XSS elleni védekezés (Protecting against XSS )</title><content type="html">&lt;h2&gt;Összegyűjtöttem a témáról néhány hasznos linket&lt;/h2&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.thespanner.co.uk/2011/09/12/protecting-against-xss/"&gt;http://www.thespanner.co.uk/2011/09/12/protecting-against-xss/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.acunetix.com/websitesecurity/cross-site-scripting.htm"&gt;http://www.acunetix.com/websitesecurity/cross-site-scripting.htm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)"&gt;https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.webhostingtalk.com/showthread.php?t=682647"&gt;http://www.webhostingtalk.com/showthread.php?t=682647&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://phpsec.org/projects/guide/2.html"&gt;http://phpsec.org/projects/guide/2.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bytetouch.com/blog/programming/protecting-php-scripts-from-cross-site-scripting-xss-attacks/"&gt;http://www.bytetouch.com/blog/programming/protecting-php-scripts-from-cross-site-scripting-xss-attacks/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jimbojw.com/wiki/index.php?title=Sanitizing_user_input_against_XSS"&gt;http://jimbojw.com/wiki/index.php?title=Sanitizing_user_input_against_XSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=tjREWp5XTx8"&gt;http://www.youtube.com/watch?v=tjREWp5XTx8&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;h2&gt;Ami még hasznos lehet&lt;/h2&gt;&lt;br /&gt;
&lt;b&gt;Suhosin&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.hardened-php.net/suhosin/index.html"&gt;http://www.hardened-php.net/suhosin/index.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Htmlpurifier&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://htmlpurifier.org/"&gt;http://htmlpurifier.org/&lt;br /&gt;
&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;PHP Data Filtering&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.php.net/manual/en/book.filter.php"&gt;http://www.php.net/manual/en/book.filter.php&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-3893908948982850897?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/g1T_WevDXGuH4Ft9pYVQ6XoSa9g/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/g1T_WevDXGuH4Ft9pYVQ6XoSa9g/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/g1T_WevDXGuH4Ft9pYVQ6XoSa9g/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/g1T_WevDXGuH4Ft9pYVQ6XoSa9g/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/Pg3mcBaSgTc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/3893908948982850897/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=3893908948982850897&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/3893908948982850897?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/3893908948982850897?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/Pg3mcBaSgTc/linkgyujtemeny-xss-elleni-vedekezes.html" title="Linkgyűjtemény: XSS elleni védekezés (Protecting against XSS )" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/09/linkgyujtemeny-xss-elleni-vedekezes.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4NQXw_cSp7ImA9WhdWE0o.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-6595161361374413363</id><published>2011-09-07T06:43:00.000-07:00</published><updated>2011-09-06T22:56:30.249-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-06T22:56:30.249-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MySQL" /><category scheme="http://www.blogger.com/atom/ns#" term="PostgreSQL" /><category scheme="http://www.blogger.com/atom/ns#" term="Windows" /><category scheme="http://www.blogger.com/atom/ns#" term="python" /><category scheme="http://www.blogger.com/atom/ns#" term="Djanog" /><title>Python, Django, MySQL, PostgreSQL fejlesztői környezet Windows alatt</title><content type="html">Többféle megoldást próbáltam, nagyon sokáig külön-külön töltögettem le a szoftvereket, telepítgettem őket, majd következett az olykor "hajhullató" konfiguráció és finomhangolás. Ezt többször is végigcsináltam, ezek után próbálkoztam például a Wamp mellé beállítani a Python-t és a Django-t, ami sikerült is, de a MySQL használatba vétele mindig döcögős volt, különösen akkor ha a 2.7-es Python 64 bites verziójával próbálkoztam - amire nem a Django miatt volt szükségem, hiszen az a régebbi Pythonok alatt is működik, hanem csak úgy... :)&lt;br /&gt;
&lt;br /&gt;
Nemrég találtam a &lt;a href="http://bitnami.org/stack/djangostack"&gt;BitNami DjangoStack&lt;/a&gt; nevű "minden az egyben" alkalmazást, mely a MySQL és az sqlite3 mellett, nagy örömömre felrakja a PostgeSQL-t is :). Dokumentáció itt: &lt;a href="http://bitnami.org/files/stacks/djangostack/1.3-1/djangostack.pdf"&gt;http://bitnami.org/files/stacks/djangostack/1.3-1/djangostack.pdf&lt;/a&gt;. &lt;br /&gt;
Most sajnos nincs időm bővebben írni róla, de amint lesz megpróbálok összehozni valamilyen értelmes leírást.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-6595161361374413363?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KoKfQNrusgHRq2n985mnfYhJ1lM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KoKfQNrusgHRq2n985mnfYhJ1lM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KoKfQNrusgHRq2n985mnfYhJ1lM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KoKfQNrusgHRq2n985mnfYhJ1lM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/aBVJxBRSMyo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/6595161361374413363/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=6595161361374413363&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/6595161361374413363?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/6595161361374413363?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/aBVJxBRSMyo/python-django-mysql-postgresql.html" title="Python, Django, MySQL, PostgreSQL fejlesztői környezet Windows alatt" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/09/python-django-mysql-postgresql.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEAGRn4zcSp7ImA9WhdXFUQ.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-1880667064251084584</id><published>2011-08-29T02:35:00.000-07:00</published><updated>2011-08-28T22:45:27.089-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-28T22:45:27.089-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Symfony2" /><category scheme="http://www.blogger.com/atom/ns#" term="Django" /><category scheme="http://www.blogger.com/atom/ns#" term="python" /><category scheme="http://www.blogger.com/atom/ns#" term="php" /><title>Symfony2 összképem - egyelőre :)</title><content type="html">Tegnap délután kicsit elgondolkodtam a Symfony2-ről és mivel ma &lt;a href="http://en.wikipedia.org/wiki/Bank_holiday"&gt;Bank Holiday&lt;/a&gt; van és ma sem dolgozok, ezért túl sok időm maradt a gondolkodásra. :-) ?&lt;br /&gt;
&lt;br /&gt;
Tegnap több Symfony2 bundle-t kipróbáltam, írtam is egy &lt;a href="http://nyukapiszka.blogspot.com/2011/08/sonataadminbundle-telepites.html"&gt;bejegyzést&lt;/a&gt; a SonataAdmin-ról, de ezen kívül megnéztem még a &lt;a href="http://symfony2bundles.org/"&gt;symfony2bundles.org&lt;/a&gt;-on található bundlek közül néhányat és a &lt;a href="http://nyukapiszka.blogspot.com/2011/08/symfony2-fosuserbundle.html"&gt;FOSUserBundle&lt;/a&gt;-t is teszteltem, erről is írtam nemrég.&lt;br /&gt;
&lt;br /&gt;
Őszintén szólva hiányérzetem van a Symfony2-vel kapcsolatban. Maga az alaprendszer nagyon erős, szerintem jelenleg ez a legjobb PHP 5.3-as keretrendszer azok közül amiket én ismerek, de tény, hogy jelenleg a Symfony2-höz nincs olyan admin felületek készítésére alkalmas eszköz, amit én bátran mernék használni a projektjeimhez, a SonataAdmin sajnos a jelen állapotában és fejlesztési stílusában használhatatlan, mert triviális hibák maradnak benne (tegnap délután például befrissítettem a legújabb verzióra, azóta nem működik...és már nincs is kedvem keresgélni, hogy mi a kínja, mert épp eleget szívtam vele a "dokumentációja" miatt.) és csapnivaló a leírása, a Symfony beépített admin generátora pedig kicsit több a nullánál, űrlapok és alaplisták generálására jó - mivel más nincs. :) Ugyanígy nincs egy komolyan vehető beléptető, felhasználó kezelő rendszere bár a FOSUSerBundle jól használható, de néhány dolog hiányzik belőle (profil például). &lt;br /&gt;
De folytathatnám a sort, a legtöbb bundle kipróbálása után hiányérzetem volt - alapvető dolgok nem voltak megoldva bennük, dokumentáció szinte soha nincs, ellenben hibák és teljesítmény beli hiányosságok bőven akadtak...&lt;br /&gt;
&lt;br /&gt;
Szóval, a Symfony2 nagyszerű lett. Csakhát...ez nem biztos, hogy elegendő, legalábbis nekem, szerintem lassítani és hátrálni kellene a fejlesztőknek és átgondolni, hogy a jelenlegi keretrendszer összességében mennyire használható, és elkészíteni egy valódi admin generátort, felhasználó-kezelő rendszert, egy média bundlet stb. - mert a jelenlegiek nem megfelelőek. Szerintem.&lt;br /&gt;
&lt;br /&gt;
Azt hiszem, hogy mostanában újra többet fogok Djangozni, ma éjjel kicsit dolgoztam vele és felüdülés volt... :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-1880667064251084584?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/srItK61nLWFx6mY6_eHC402ujW0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/srItK61nLWFx6mY6_eHC402ujW0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/srItK61nLWFx6mY6_eHC402ujW0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/srItK61nLWFx6mY6_eHC402ujW0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/Vq3Z9AgTSlc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/1880667064251084584/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=1880667064251084584&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1880667064251084584?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1880667064251084584?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/Vq3Z9AgTSlc/symfony2-django-csak-semmi.html" title="Symfony2 összképem - egyelőre :)" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/symfony2-django-csak-semmi.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cHQ30zfip7ImA9WhdXFU8.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-2405674736277064683</id><published>2011-08-28T08:36:00.000-07:00</published><updated>2011-08-28T02:50:32.386-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-28T02:50:32.386-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="symfony" /><category scheme="http://www.blogger.com/atom/ns#" term="SonataAdminBundle" /><category scheme="http://www.blogger.com/atom/ns#" term="SoanataAdmin" /><category scheme="http://www.blogger.com/atom/ns#" term="Admin Generator" /><category scheme="http://www.blogger.com/atom/ns#" term="Symfony 2" /><title>SonataAdminBundle - telepítés</title><content type="html">A &lt;a href="https://github.com/sonata-project/SonataAdminBundle"&gt;SonataAdminBundle&lt;/a&gt; adminisztrációs felületek készítésére való bundle.&lt;br /&gt;
&lt;br /&gt;
A SonataAdminBundle alapelvei számomra először nem voltak egyértelműek, eltértek a Symfony beépített, de egyelőre még nagyon egyszerű admin generátorától (mely hasonló a Symfony 1.x verziókban lévő admin generátorhoz - elgondolásában), a SonataAdmin egyelőre nem annyira kényelmes mint a beépített generátor - cserébe viszont többet tud annál, de manuálisan kell létrehozni az osztályokat, ez nem annyira bonyolult. &lt;br /&gt;
&lt;br /&gt;
A blogbejegyzéshez két adatbázis táblát használtam, ugyanazokat melyeket az előző blogbejegyzésekben is, a létrehozásukról és az ORM model generálásáról minden leírást és adatot megtalálsz itt:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://nyukapiszka.blogspot.com/2011/08/symfony-2-telepites-bundle-keszites.html"&gt;http://nyukapiszka.blogspot.com/2011/08/symfony-2-telepites-bundle-keszites.html&lt;br /&gt;
&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
A SonataAdminBundle elgondolása az, hogy egy központi menüben gyűjtheted össze az admin felületeket (Dashboard), engem kicsit emlékeztetett a &lt;a href="https://www.djangoproject.com/"&gt;Django&lt;/a&gt; admin felületeire, de a Django kiforrottabb és gyorsabb is.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Öt lépésben a SonataAdmin használatáról&lt;/h2&gt;&lt;br /&gt;
0. :) telepítened kell a SonataAdminBUndle-t.&lt;br /&gt;
&lt;br /&gt;
1. a bundlen belül, ahol használni szeretnéd SonataAdmin-t, létre kell hoznod egy "Admin" nevű könyvtárat, ebbe a könyvtárba kerülnek majd az admin felületekkel kapcsolatos osztályok, melyek gyakorlatilag egy konfigurációt írnak le, mely alapján a listázás, a szerkesztő űrlap és a szűrési felület össze fog állni.&lt;br /&gt;
&lt;br /&gt;
2. létre kell hoznod az admin kontrollereket, melyekben ha kell a későbbiekben bele tudsz nyúlni az admin felület működésébe.&lt;br /&gt;
&lt;br /&gt;
3. az /app/config.yml-ben definiálnod kell a Sonata számára a szükséges szervizeket és a dashboard számára a kilistázandó admin felületeket - ez a legutolsó lépés sajnos sehol nincs megemlítve a hivatalos dokumentációban, ami szerintem nem túl szerencsés.&lt;br /&gt;
&lt;br /&gt;
4. ürítened kell a cache-t, ami nem fontos, de nagyobb változások után szükség lehet rá.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
És most részletesebben.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Telepítés&lt;/h2&gt;&lt;br /&gt;
A telepítés annyiból áll, hogy le kell tölteni néhány bundlet, melyek kellenek a SoanataAdmin működéséhez, ezek a következők:&lt;br /&gt;
&lt;a href="https://github.com/knplabs/KnpMenuBundle"&gt;KnpMenuBundle&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://github.com/sonata-project/SonatajQueryBundle/blob/master/SonatajQueryBundle.php"&gt;SonatajQueryBundle&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://github.com/sonata-project/SonataBluePrintBundle"&gt;SonataBluePrintBundle&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://github.com/sonata-project/SonataUserBundle"&gt;SonataUserBundle&lt;/a&gt; és a &lt;a href="https://github.com/FriendsOfSymfony/FOSUserBundle"&gt;FOSUserBundle&lt;/a&gt; - mindkettővel együtt tud működni az admin, én az utóbbit javaslom, a leírásomat erről itt olvashatod: &lt;a href="http://nyukapiszka.blogspot.com/2011/08/symfony2-fosuserbundle.html"&gt;http://nyukapiszka.blogspot.com/2011/08/symfony2-fosuserbundle.html&lt;/a&gt; ha ez fel van telepítve, akkor is fel kell telepíteni SonataUserBUndle-t, de az AppKernel.php-ban így kell engedélyezni:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; new Sonata\UserBundle\SonataUserBundle('FOSUserBundle'),  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
és így azonnal tudsz akár authentikálni is.&lt;br /&gt;
&lt;br /&gt;
Én pontosan a leírásuk alapján telepítettem őket, egyszerűen a letöltésük után bemásoltam mindet az ajánlott könyvtárba. Itt olvashatsz egy másik telepítési útmutatót:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="https://github.com/sonata-project/SonataAdminBundle/blob/master/Resources/doc/reference/installation.rst"&gt;https://github.com/sonata-project/SonataAdminBundle/blob/master/Resources/doc/reference/installation.rst&lt;br /&gt;
&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Részlet az AppKernel.php-ból:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; new Sonata\jQueryBundle\SonatajQueryBundle(),  
 new Sonata\BluePrintBundle\SonataBluePrintBundle(),  
 new Sonata\AdminBundle\SonataAdminBundle(),  
 new Sonata\UserBundle\SonataUserBundle('FOSUserBundle'),  
 new Knp\Bundle\MenuBundle\KnpMenuBundle(),  
 new FOS\UserBundle\FOSUserBundle(),  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Admin osztályok készítése&lt;/h2&gt;&lt;br /&gt;
Ez sem túl bonyolult, tavasszal amikor először teszteltem a SonataAdmin-t még nem lehetett használni, tele volt hibákkal, most viszont egy dolgot kivéve mindent be tudtam állítani amit szerettem volna. (Azt, hogy JQuery UI-val működjön a felhasználói felület nem tudtam beállítani, sehol nem találtam leírást róla.)&lt;br /&gt;
&lt;br /&gt;
Tehát először a Tesztceg\TesztBundle\Controller könyvtárba létre kell hozni az adminhoz tartozó kontrollereket:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CustomerAdminController.php&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 namespace TesztCeg\TesztBundle\Controller;  
 use Sonata\AdminBundle\Controller\CRUDController as Controller;  
 class CustomerAdminController extends Controller  
 {  
 }  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CustomerPaymentAdminController.php&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 namespace TesztCeg\TesztBundle\Controller;  
 use Sonata\AdminBundle\Controller\CRUDController as Controller;  
 class CustomerPaymentAdminController extends Controller  
 {  
 }  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Ha ez készen van, akkor ugyanitt létre kell hozni egy Admin nevű könyvtárat, amelybe az admin osztályok kerülnek:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CustomerAdmin.php:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 namespace TesztCeg\TesztBundle\Admin;  
 use Sonata\AdminBundle\Admin\Admin;  
 use Sonata\AdminBundle\Form\FormMapper;  
 use Sonata\AdminBundle\Datagrid\DatagridMapper;  
 use Sonata\AdminBundle\Datagrid\ListMapper;  
 use Sonata\AdminBundle\Show\ShowMapper;  
 class CustomerAdmin extends Admin  
 {  
   public function configureShowFields(ShowMapper $showMapper)  
   {  
     $showMapper  
       -&amp;gt;add('id')  
       -&amp;gt;add('customerName')  
     ;  
   }  
   public function configureFormFields(FormMapper $formMapper)  
   {  
     $formMapper  
       -&amp;gt;with('Customer')  
         -&amp;gt;add('customerName')  
       -&amp;gt;end()  
     ;  
   }  
   public function configureListFields(ListMapper $listMapper)  
   {  
     $listMapper  
       -&amp;gt;addIdentifier('id')  
       -&amp;gt;add('customerName')  
     ;  
   }  
   public function configureDatagridFilters(DatagridMapper $datagridMapper)  
   {  
     $datagridMapper  
       -&amp;gt;add('id')  
       -&amp;gt;add('customerName');  
   }  
 }  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;b&gt;CustomerPaymentAdmin.php&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 namespace TesztCeg\TesztBundle\Admin;  
 use Sonata\AdminBundle\Admin\Admin;  
 use Sonata\AdminBundle\Form\FormMapper;  
 use Sonata\AdminBundle\Datagrid\DatagridMapper;  
 use Sonata\AdminBundle\Datagrid\ListMapper;  
 use Sonata\AdminBundle\Show\ShowMapper;  
 class CustomerPaymentAdmin extends Admin  
 {  
      protected $maxPerPage = 10;  
   public function configureShowFields(ShowMapper $showMapper)  
   {  
     $showMapper  
       -&amp;gt;add('id')  
       -&amp;gt;add('amount')  
       -&amp;gt;add('payDate', null, array('type' =&amp;gt; 'date'))  
       -&amp;gt;add('customer')  
     ;  
   }  
   public function configureFormFields(FormMapper $formMapper)  
   {  
     $formMapper  
       -&amp;gt;with('CustomerPayment')  
       -&amp;gt;add('amount')  
       -&amp;gt;add('payDate')  
       -&amp;gt;add('customer')  
       -&amp;gt;end()  
     ;  
   }  
   public function configureListFields(ListMapper $listMapper)  
   {  
     $listMapper  
       -&amp;gt;addIdentifier('id')  
       -&amp;gt;add('amount')  
       -&amp;gt;add('payDate')  
       -&amp;gt;add('customer')  
     ;  
   }  
   public function configureDatagridFilters(DatagridMapper $datagridMapper)  
   {  
     $datagridMapper  
       -&amp;gt;add('id')  
       -&amp;gt;add('amount')  
       -&amp;gt;add('pay_date')  
       -&amp;gt;add('customer');  
   }  
 }  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Ezzel gyakorlatilag készen is vagyunk, még három apró lépés van hátra. Először fel kell venni a SonataAdmin routingjait, ebből csak kettő van, ezek átirányítják a routingolást a SonataAdmin bundle-ra, tehát a routing.yml fájlunkba ezt a két routingot kell felvenni:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; admin:  
   resource: '@SonataAdminBundle/Resources/config/routing/sonata_admin.xml'  
   prefix: /admin  
 _sonata_admin:  
   resource: .  
   type: sonata_admin  
   prefix: /admin  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Ezek után a config.yml-ben regisztrálnunk kell az admin szervizeket:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; services:  
   tesztCeg.tesztbundle.admin.customer:  
    class: TesztCeg\TesztBundle\Admin\CustomerAdmin  
    tags:  
     - { name: sonata.admin, manager_type: orm, group: Customer, label: Customers }  
    arguments: [null, TesztCeg\TesztBundle\Entity\Customer, TesztCegTesztBundle:CustomerAdmin]  
   tesztCeg.tesztbundle.admin.customerpayment:  
    class: TesztCeg\TesztBundle\Admin\CustomerPaymentAdmin  
    tags:  
     - { name: sonata.admin, manager_type: orm, group: CustomerPayment, label: CutomersPayment }  
    arguments: [null, TesztCeg\TesztBundle\Entity\CustomerPayment, TesztCegTesztBundle:CustomerPaymentAdmin]  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Ugyanide, a config.yml-be fel kell vinni azokat a szervizeket, amelyeket az admin Dashboard meg fog jeleníteni:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; sonata_admin:  
   dashboard_groups:  
     Customers:  
       label: Customers  
       items: [tesztceg.tesztbundle.admin.customer]    
     CustomerPayments:  
       label: Customer Payments  
       items: [tesztceg.tesztbundle.admin.customerpayment]    
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Ha mindez megvan, akkor már csak egy dolog van hátra, (ami kettő :)) - ki kell adni két Symfony parancsot:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Windowson:&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; php app/console assets:install web  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;b&gt;Linuxon:&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt;  php app/console assets:install web --symlink  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
majd pedig frissíteni kell a cache-t:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; php app/console cache:clear  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Ha mindezt végigcsináljuk, akkor elvileg működnie kellene az admin felületnek, a következő linken:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; http://localhost/Symfony/web/app_dev.php/admin/dashboard  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Csatolok néhány képet az admin felületekről, remélem a leírás alapján másoknak is sikerül beállítani!&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;A SonataAdmin Dashboard-ja:&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-wMnLy6UB7Ys/Tln1Epeyk2I/AAAAAAAABhA/CRKxxSZYtE0/s1600/dashboard.jpg" imageanchor="1" style=""&gt;&lt;img border="0" height="126" width="320" src="http://4.bp.blogspot.com/-wMnLy6UB7Ys/Tln1Epeyk2I/AAAAAAAABhA/CRKxxSZYtE0/s320/dashboard.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Lista lapozóval:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-MRzProiwsaE/Tln1bW8dGcI/AAAAAAAABhI/Bxri9b4F_L0/s1600/costomer_payment_list_sonataA_admin.jpg" imageanchor="1" style=""&gt;&lt;img border="0" height="175" width="320" src="http://2.bp.blogspot.com/-MRzProiwsaE/Tln1bW8dGcI/AAAAAAAABhI/Bxri9b4F_L0/s320/costomer_payment_list_sonataA_admin.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
És egy egyszerű szerkesztő ablak:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-bSzKz7ZLhwo/Tln1ob0tFwI/AAAAAAAABhQ/d2TG8YYPd-E/s1600/edit_customer.jpg" imageanchor="1" style=""&gt;&lt;img border="0" height="134" width="320" src="http://2.bp.blogspot.com/-bSzKz7ZLhwo/Tln1ob0tFwI/AAAAAAAABhQ/d2TG8YYPd-E/s320/edit_customer.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Amint azt fentebb is írtam, a JQuery UI-t nem sikerült beállítanom - egyelőre :) &lt;br /&gt;
&lt;br /&gt;
Viszont továbbra is azt gondolom, hogy nem biztos, hogy a SonataAdminBundle a jó választás, ugyanis teljesen követhetetlen a fejlesztése, mivel a dokumentációja nincs rendszeresen frissítve, nagyon sok dolog elavult benne, ami még a kisebbik gond... A nagyobb probléma az, hogy egészen egyszerűen nincs hozzá rendes, részletes leírás (&lt;a href="http://sftuts.com/doc/jobeet/en/the-admin-generator.html"&gt;ez régi, elavult&lt;/a&gt;, &lt;a href="http://rabaix.net/AdminBundle/html/index.html"&gt;ez úgy van összecsapva&lt;/a&gt; és csak a legelemibb dolgok vannak benne, de azok is hiányosak...), ezért minden egyes funkciót nehéz megkeresni, mintha szándékosan nem akarnák a készítői, hogy használja valaki... Kár érte.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-2405674736277064683?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9n0_x0d6ZEBpG-LVdBaa3qgZlfQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9n0_x0d6ZEBpG-LVdBaa3qgZlfQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9n0_x0d6ZEBpG-LVdBaa3qgZlfQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9n0_x0d6ZEBpG-LVdBaa3qgZlfQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/NxnIjqK2jRc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/2405674736277064683/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=2405674736277064683&amp;isPopup=true" title="2 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/2405674736277064683?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/2405674736277064683?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/NxnIjqK2jRc/sonataadminbundle-telepites.html" title="SonataAdminBundle - telepítés" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-wMnLy6UB7Ys/Tln1Epeyk2I/AAAAAAAABhA/CRKxxSZYtE0/s72-c/dashboard.jpg" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/sonataadminbundle-telepites.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0YHSHk6fCp7ImA9WhdXEUk.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-640686092298938012</id><published>2011-08-23T06:24:00.000-07:00</published><updated>2011-08-23T18:25:39.714-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-23T18:25:39.714-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Symfony2" /><category scheme="http://www.blogger.com/atom/ns#" term="sfDoctrineGuardPlugin" /><category scheme="http://www.blogger.com/atom/ns#" term="FOSUserBundle" /><category scheme="http://www.blogger.com/atom/ns#" term="User Bundle" /><category scheme="http://www.blogger.com/atom/ns#" term="Doctrine" /><title>Symfony2 - FOSUserBundle a sfDoctrineGuardPlugin helyett</title><content type="html">A &lt;a href="https://github.com/stof/FOSUserBundle"&gt;FOSUserBundle&lt;/a&gt; egy Symfony2-höz készült felhasználó kezelő, biztonsági bundle, mely kiválthatja az sfDoctrineGuardPlugin-t (vagy az sfGuardPlugin-t).&lt;br /&gt;
&lt;br /&gt;
A FOSUserBundle telepítése viszonylag egyszerű, ha pontosan követed a telepítési útmutatót:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/index.md"&gt;https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/index.md&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
akkor működnie kell, legalábbis nekem elsőre működött :) ami nem éppen átlagos jelenség...&lt;br /&gt;
&lt;br /&gt;
A telepítés végén ne felejtsd el az adatbázist frissíteni:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; php app/console doctrine:schema:update --force  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Ezek után én a regisztrációs űrlapon keresztül hoztam létre egy felhasználót, de használhatók a parancssori utasítások is:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; php app/console fos:user:create testuser test@example.com p@ssword  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
A többi parancs leírását itt találod:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/command_line_tools.md"&gt;https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/command_line_tools.md&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
A FOSUserBundle alap telepítés után eléggé fapados jelenségnek tűnt, de a forráskódját nézegetve az a benyomásom alakult ki, hogy nagyon szépen meg lett tervezve és szinte minden kibővíthető, kiterjeszthető benne.&lt;br /&gt;
&lt;br /&gt;
Elég ha megnézzük, hogy milyen konfig beállításai vannak:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/configuration_reference.md"&gt;https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/configuration_reference.md&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Alap esetben nem csak Doctrine ORM-el, hanem CouchDB és MongoDB-vel is működik.&lt;br /&gt;
&lt;br /&gt;
Én a telepítéséhez először létrehoztam egy új bundlet, ebben egy Entity könyvtárat, amelyben csináltam egy saját User osztályt, mely a FOSUserBundle BaseUser osztályából származik, ez a lépés nagyon fontos, de ezt írja is a legfelül belinkelt telepítési útmutató. Az én egyszerű User osztályom így néz ki:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 // src/Tesztceg/TesztUserBundle/Entity/User.php  
 namespace Tesztceg\TesztUserBundle\Entity;  
 use FOS\UserBundle\Entity\User as BaseUser;  
 use Doctrine\ORM\Mapping as ORM;  
 /**  
  * @ORM\Entity  
  * @ORM\Table(name="fos_user")  
  */  
 class User extends BaseUser  
 {  
   /**  
    * @ORM\Id  
    * @ORM\Column(type="integer")  
    * @ORM\GeneratedValue(strategy="AUTO")  
    */  
   protected $id;  
   public function __construct()  
   {  
     parent::__construct();  
     
   }  
 }  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Egy Id mezőnek kötelezően lennie kell definiálva és persze a BaseUser-ből kell származnia.&lt;br /&gt;
&lt;br /&gt;
Az adatok migrálásása sfGuard-ból: &lt;a href="http://qpleple.com/migrate-from-sfguard-to-fosuserbundle/"&gt;http://qpleple.com/migrate-from-sfguard-to-fosuserbundle/&lt;/a&gt;&lt;br /&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-640686092298938012?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/B9yA_gI_cCnfQQThVZfQjH2B8AY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/B9yA_gI_cCnfQQThVZfQjH2B8AY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/B9yA_gI_cCnfQQThVZfQjH2B8AY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/B9yA_gI_cCnfQQThVZfQjH2B8AY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/Uxh4jVgd8hc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/640686092298938012/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=640686092298938012&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/640686092298938012?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/640686092298938012?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/Uxh4jVgd8hc/symfony2-fosuserbundle.html" title="Symfony2 - FOSUserBundle a sfDoctrineGuardPlugin helyett" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/symfony2-fosuserbundle.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0MFQ3s-fip7ImA9WhdQGUQ.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-7644301953459997771</id><published>2011-08-21T06:54:00.000-07:00</published><updated>2011-08-21T22:36:52.556-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-21T22:36:52.556-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="beléptetés" /><category scheme="http://www.blogger.com/atom/ns#" term="symfony" /><category scheme="http://www.blogger.com/atom/ns#" term="admin" /><category scheme="http://www.blogger.com/atom/ns#" term="authorization" /><category scheme="http://www.blogger.com/atom/ns#" term="felhasználó kezelés" /><category scheme="http://www.blogger.com/atom/ns#" term="munkamenet" /><category scheme="http://www.blogger.com/atom/ns#" term="sessionStorage" /><category scheme="http://www.blogger.com/atom/ns#" term="logut" /><category scheme="http://www.blogger.com/atom/ns#" term="authorizáció" /><category scheme="http://www.blogger.com/atom/ns#" term="user management" /><category scheme="http://www.blogger.com/atom/ns#" term="authentikáció" /><category scheme="http://www.blogger.com/atom/ns#" term="authentication" /><category scheme="http://www.blogger.com/atom/ns#" term="Symfony 2" /><title>Symfony2 - felhasználókezelés, biztonság (authentication, authorization)</title><content type="html">A &lt;a href="http://symfony.com/"&gt;Symfony2&lt;/a&gt; technikailag másképpen közelíti meg a felhasználókezelést mint az elődei (&lt;a href="#symfony2_security_why"&gt;lásd lentebb, hogy miért&lt;/a&gt;), ezen belül az authentikáció és authorizáció nagyon világosan elválik egymástól - itt álljunk is meg egy kicsit, hogy mit is jelent ez a két fogalom.&lt;br /&gt;
&lt;br /&gt;
Az authorizáció engedélyezést jelent (Symfony-ban: &lt;a href="http://hu.wikipedia.org/wiki/Webc%C3%ADm"&gt;URL&lt;/a&gt;-hoz való hozzáférést, objektumokhoz, metódusokhoz való hozzáférést,  hozzáférés-vezérlési tábla (Access Control List - ACL) kezelést  foglalja össze), melyet az authentikáció (Symfony-ban: belépési űrlap kezelést, HTTP authentikációt, &lt;a href="http://en.wikipedia.org/wiki/Digest_access_authentication"&gt;HTTP digestet&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/X.509"&gt;X.509&lt;/a&gt; certifikációt és/vagy tetszőleges authentikációs eljárás kidolgozását jelenti) előz meg. &lt;br /&gt;
Ezeknek a fogalmaknak természetesen semmi közük a Symfony2-höz, ezek minden beléptető rendszerben megtalálhatóak, kisebb-nagyobb mértékben felfedezhetjük ezeket a folyamatokat/fogalmakat még a legegyszerűbb rendszereken belül is, itt a hangsúly inkább azon van, hogy a Symfony2-vel kapunk egy átgondolt és szépen kivitelezett megvalósítást (pl. &lt;a href="https://github.com/symfony/Security/tree/master/Acl"&gt;ACL&lt;/a&gt;), vagy a &lt;a href="https://github.com/symfony/Security/tree/master/Core/Authentication/Provider"&gt;authentikációs providerek&lt;/a&gt;, melyekről érdemes lenne bővebben is írni..)&lt;br /&gt;
&lt;br /&gt;
A Symfony2 felhasználó-kezelése &lt;a name="symfony2_security_why"/&gt;&lt;/a&gt; annyiban különbözik a régebbi Symfony verzióktól, hogy elsősorban letisztultabb lett és nagyon világosan meg lettek különböztetve a konkrét lépések a biztonsággal kapcsolatos alrendszerekben (ez a régebbi Symfony verziókban is így volt, de nem nem volt ennyire letisztult) - másodsorban pedig elmondható, hogy mindez a Symfony2-vel párhuzamosan fejlesztett &lt;a href="https://github.com/symfony/Security"&gt;security component&lt;/a&gt;-nek köszönhető, mely teljesen független a Symfony2-től és bármely PHP-s projekthez használható, ezt a Symfony beépítve tartalmazza és itt találjuk: &lt;i&gt;\vendor\symfony\src\Symfony\Component\Security&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nézzünk egy egyszerű példát a HTTP authentikációra. A &lt;a href="http://nyukapiszka.blogspot.com/2011/08/symfony-2-telepites-bundle-keszites.html"&gt;múltkori példámból&lt;/a&gt; indulok ki, az ott használt Tesztceg TesztBundle-jét fogom piszkálni.&lt;br /&gt;
&lt;br /&gt;
A Bundle tartalmaz két, az admin generátorral készített listát, melyek közül a továbbiakban én a CustomerList-et fogom használni.&lt;br /&gt;
&lt;br /&gt;
Tehát, ez az URL-em:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; http://localhost/Symfony/web/app_dev.php/customer/  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Erre szeretnék egy HTTP autentikációt, ennek megvalósításához elég az app/config/security.yml-t egy kicsit átalakítnunk:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; security:  
   firewalls:  
     secured_area:  
       pattern:  ^/  
       anonymous: ~  
       http_basic:  
         realm: "Secured Area"  
   access_control:  
     - { path: ^/customer, roles: ROLE_ADMIN }  
   providers:  
     in_memory:  
       users:  
         admin: { password: banan, roles: 'ROLE_ADMIN' }  
   encoders:  
     Symfony\Component\Security\Core\User\User: plaintext  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Az &lt;i&gt;users&lt;/i&gt; részben tetszőleges számú felhasználót adhatunk meg, ez nagyon egyszerű, hatékony módszer, de általában inkább a saját beléptető űrlapot szoktuk használni.&lt;br /&gt;
&lt;br /&gt;
Tehát, először készítek egy TestSecurity nevű bundlet, a TesztCeg névtéren belül, ehhez a generátort használtam.&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; php app/console generate:bundle  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Oké, ne így, hanem paraméterezzük fel...nálam, Windows alatt így néz ki a Security bundle generálása:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt;php app/console generate:bundle --namespace=Tesztceg/TesztSecurityBundle  --bundle-name=TesztSecurityBundle --no-interaction --structure=yes --dir C:\wamp\www\Symfony\src  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Ez a parancs beregisztrálta a kernel.php-ba és a routingok közé és felvette az új bundlet.&lt;br /&gt;
&lt;br /&gt;
Ha egy login űrlapot szeretnénk, akkor Symfony2 alatt szinte zavaróan sok lehetőségünk áll rendelkezésünkre, én most a legegyszerűbbet választottam, először is nézzük a security.yml fájlt, ami az /app/config könyvtárban található.&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; security:  
   encoders:  
     Symfony\Component\Security\Core\User\User: plaintext  
   role_hierarchy:  
     ROLE_ADMIN:    ROLE_USER  
     ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]  
   providers:  
     in_memory:  
       users:  
         user: { password: userpass, roles: [ 'ROLE_USER' ] }  
         admin: { password: adminpass, roles: [ 'ROLE_ADMIN' ] }  
   firewalls:        
     in_memory:  
       pattern:  /.*  
       anonymous: true  
       logout: true  
       form_login:  
         login_path: /login  
         failure_path: /login_failure  
   access_control:  
      - { path: /customer/.*, role: ROLE_USER }   
      - { path: /.*, role: IS_AUTHENTICATED_ANONYMOUSLY }   
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Látható, hogy a bejelentkezéshez nem használtam adatbázist - illetve a felhasználók tárolására nem használtam, hanem egyszerűen csak a security.yml-ben felsoroltam a felhasználóimat, ide természetesen bármilyen adatbázis entitást fel tudtam volna venni adatszolgáltatónak (&lt;b&gt;provider&lt;/b&gt;), a szolgáltató szerintem nem jó fogalom, én inkább adatfolyamnak nevezném, de ízlések és pofonok. (talnán mégiscsak a szolgáltató a jobb :))&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Például így:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; security:  
   providers:  
     main:  
       entity: { class: Tesztceg\SecurityBundle\Entity\User, property: username }  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
A security.yml következő fontos része a &lt;b&gt;firewalls&lt;/b&gt;, mely gyakorlatilag az authentikációt végzi, itt beállíthatjuk, hogy melyik oszály, melyik metódusa vezérelje a beléptetést, hová kerüljön (ha kell ilyen) a felhasználó ha nem sikerült belépnie, meghatározhatjuk, hogy legyen-e logout és még nagyon sok egyéb dolgot is beállíthatunk, ezeket ajánlom elolvasásra:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://symfony.com/doc/2.0/reference/configuration/security.html"&gt;http://symfony.com/doc/2.0/reference/configuration/security.html&lt;br /&gt;
&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://symfony.com/doc/2.0/cookbook/security/form_login.html"&gt;http://symfony.com/doc/2.0/cookbook/security/form_login.html&lt;br /&gt;
&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://symfony.com/doc/2.0/cookbook/security/force_https.html"&gt;http://symfony.com/doc/2.0/cookbook/security/force_https.html&lt;br /&gt;
&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A következő rész az &lt;b&gt;access_control&lt;/b&gt;, ez gyakorlatilag az authorizáció, itt például beállíthatjuk, hogy melyik URL-ek milyen láthatósággal rendelkezzenek, a példában a customer URL-t lezártam és beléptetéshez kötöttem, így az admin felületek ellenőrzése nagyon egyszerűvé válik és egy helyről beállítható minden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A kontrollerem a következő volt:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 namespace Tesztceg\TesztSecurityBundle\Controller;  
 use Symfony\Bundle\FrameworkBundle\Controller\Controller;  
 use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;  
 use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;  
 use Symfony\Component\Security\Core\SecurityContext;  
 class DefaultController extends Controller  
 {  
   /**  
    * @Route("/hello/{name}")  
    * @Template()  
    */  
   public function indexAction($name)  
   {  
     return array('name' =&amp;gt; $name);  
   }  
    /**  
    * @Route("/login")  
    * @Template()  
    */  
      public function loginAction()  
   {  
     $request = $this-&amp;gt;getRequest();  
     $session = $request-&amp;gt;getSession();  
     if ($request-&amp;gt;attributes-&amp;gt;has(SecurityContext::AUTHENTICATION_ERROR)) {  
       $error = $request-&amp;gt;attributes-&amp;gt;get(SecurityContext::AUTHENTICATION_ERROR);  
     } else {  
       $error = $session-&amp;gt;get(SecurityContext::AUTHENTICATION_ERROR);  
     }  
     return $this-&amp;gt;render('TesztSecurityBundle:Default:login.html.twig', array(  
       'last_username' =&amp;gt; $session-&amp;gt;get(SecurityContext::LAST_USERNAME),  
       'error'     =&amp;gt; $error,  
     ));  
   }  
    /**  
    * @Route("/login_failure")  
    * @Template()  
    */  
      public function loginFailureAction()  
   {  
     $request = $this-&amp;gt;getRequest();  
     $session = $request-&amp;gt;getSession();  
           return $this-&amp;gt;render('TesztSecurityBundle:Default:index.html.twig', array(  
                'name' =&amp;gt; $session-&amp;gt;get(SecurityContext::LAST_USERNAME),  
           ));  
   }    
    /**  
    * @Route("/logout")  
    * @Template()  
    */  
      public function logoutAction()  
   {  
     $request = $this-&amp;gt;getRequest();  
     $session = $request-&amp;gt;getSession();  
           $session-&amp;gt;clear();  
   }    
 }  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
A logout :) nagyon primitívre sikeredett, de példának szerintem megfelel. A legalapvetőbb dolgok ezek voltak, ennyivel már össze lehet állítani egy egyszerű beléptetést.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-7644301953459997771?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/TVMNupB3LnuXNgtbwdirgNXLIko/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TVMNupB3LnuXNgtbwdirgNXLIko/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/TVMNupB3LnuXNgtbwdirgNXLIko/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TVMNupB3LnuXNgtbwdirgNXLIko/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/k-NTd62jYYg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/7644301953459997771/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=7644301953459997771&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7644301953459997771?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7644301953459997771?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/k-NTd62jYYg/symfony2-felhasznalokezeles-biztonsag.html" title="Symfony2 - felhasználókezelés, biztonság (authentication, authorization)" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/symfony2-felhasznalokezeles-biztonsag.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AMR3o-fip7ImA9WhdQGU0.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-1424159789945004254</id><published>2011-08-20T23:51:00.000-07:00</published><updated>2011-08-20T23:56:26.456-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-20T23:56:26.456-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Phraw" /><category scheme="http://www.blogger.com/atom/ns#" term="PHP framework" /><category scheme="http://www.blogger.com/atom/ns#" term="php" /><title>Phraw keretrendszer</title><content type="html">A múltkoriban írtam egy teljesen &lt;a href="http://nyukapiszka.blogspot.com/2011/08/php-pehelysulyu-keretrendszerek-korkep.html"&gt;szubjektív blogbejegyzést&lt;/a&gt; a kicsi, pehelysúlyú PHP keretrendszerekről és sok visszajelzést kaptam, először a Silex-el kapcsolatban, majd a Phraw-al kapcsolatban is.&lt;br /&gt;
&lt;br /&gt;
A &lt;a href="http://phraw.dav-muz.net/"&gt;Phraw&lt;/a&gt; alap verziója, mely csak a keretrendszert és egy egyszerű példát tartalmaz számomra továbbra sem indult el, a leírása sem volt világos - végigcsináltam a step-by-step súgót, de a végén nem történt semmi, valószínűleg az index.php nem került a megfelelő helyre (ugyanis nem derült ki a leírásból, hogy hová kellene bemásolnom) és telepítenem kellett volna a Smarty-t is, ezért erről továbbra is ugyanaz a véleményem ami az eredeti cikkben volt, de...&lt;br /&gt;
&lt;br /&gt;
...emiatt nem írtam volna újra, az ok, amiért írtam a Phraw-ról az az, hogy letölthető a hivatalos oldalról egy ORM-el és sablonkezelővel is megtámogatott változat (Phraw + Smarty + Idiorm + Paris) és ez tetszett. &lt;br /&gt;
Ezt a disztribúciót múltkor nem teszteltem, mert észre sem vettem, hogy létezik és ugyaninnen &lt;a href="http://phraw.dav-muz.net/downloads/"&gt;letölthető&lt;/a&gt; még két másik változat is - az egyik a Smarty-t, a másik a RainTPL-t tartalmazza. &lt;br /&gt;
&lt;br /&gt;
Az &lt;i&gt;Idirom&lt;/i&gt; és a &lt;i&gt;Paris&lt;/i&gt; beépítése nagyon jó ötlet volt, ezekkel együtt a Phraw egy tényleg jól használható, mini keretrendszer, mely valóban gyorsan és kis erőforrás igénnyel működik.&lt;br /&gt;
&lt;br /&gt;
Íme egy kontroller:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 /* Put here your views. */  
 # Load the databse models  
 require_once('./resources/models.php');  
 /**  
  * View sample.  
  *  
  * @param object $phraw Phraw instance  
  * @param object $smarty Smarty instance  
  */  
 function home($phraw, $smarty) {  
   # Quering the database via the ORM  
   $users = ORM::for_table('user')-&amp;gt;find_many();  
   # Quering the database via the models  
   $tizio = Model::factory('User')-&amp;gt;where('name', 'Tizio')-&amp;gt;find_one();  
   $tizio_profile = $tizio-&amp;gt;profile()-&amp;gt;find_one();  
   $smarty-&amp;gt;assign(array(  
     'version' =&amp;gt; $phraw-&amp;gt;version,  
     'users' =&amp;gt; $users,  
     'tizio' =&amp;gt; $tizio,  
     'tizio_profile' =&amp;gt; $tizio_profile,  
   ));  
   $smarty-&amp;gt;display('dynamicpages/home.html');  
 }  
 ?&amp;gt;  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Tehát a Phraw-nak létezik gyorsan telepíthető és működésre bírható változata, lehetséges, hogy ennek kellene lennie a fő verziónak... :)Ha valakit mélyebben is érdekel, akkor tesztelgesse.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-1424159789945004254?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/7jk3rCGmCf9G1wIp-RszmCPds9c/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7jk3rCGmCf9G1wIp-RszmCPds9c/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/7jk3rCGmCf9G1wIp-RszmCPds9c/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7jk3rCGmCf9G1wIp-RszmCPds9c/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/BLMmFPu-bKQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/1424159789945004254/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=1424159789945004254&amp;isPopup=true" title="3 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1424159789945004254?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1424159789945004254?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/BLMmFPu-bKQ/phraw-keretrendszer.html" title="Phraw keretrendszer" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/phraw-keretrendszer.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkIFQHc_fip7ImA9WhdQE0k.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-556670942263751839</id><published>2011-08-14T18:20:00.000-07:00</published><updated>2011-08-14T10:55:11.946-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-14T10:55:11.946-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="PHP Security" /><category scheme="http://www.blogger.com/atom/ns#" term="biztonság" /><category scheme="http://www.blogger.com/atom/ns#" term="testing" /><category scheme="http://www.blogger.com/atom/ns#" term="ellenőrzés" /><category scheme="http://www.blogger.com/atom/ns#" term="php" /><category scheme="http://www.blogger.com/atom/ns#" term="LAMPSecurityToolkit" /><category scheme="http://www.blogger.com/atom/ns#" term="Apache" /><title>LAMPSecurityToolkit - hasznos eszköz a LAMP eszközeink teszteléséhez</title><content type="html">A &lt;a href="https://github.com/janoszen/LAMPSecurityToolkit"&gt;LAMPSecurityToolkit&lt;/a&gt; egy nagyon friss fejlesztésű eszköz, szerintem óránként változik rajta valami, ezért egyelőre csak a létéről szerettem volna írni, mert nagyon tetszett az alapötlete és a kivitelezése is.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Telepítés&lt;/h2&gt;Le kell tölteni és bemásolni egy könyvtárba :) Ennyi.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Amit tud és amit nem - egyelőre&lt;/h2&gt;A "LAMPSecurityToolkit" elnevezés szerintem kicsit önkorlátozó, főleg ha ilyen lelkesen fejlesztik tovább, ugyanis előfordulhat, hogy a Windows specifikus beállításokat is fel kell majd ismernie és az ugye már WAMP :) Szerintem a PHPSecurityToolkit elnevezés ezért szerencsésebb lett volna, de ez részletkérdés.&lt;br /&gt;
&lt;br /&gt;
A LAMPSecurityToolkit logikusan épül fel, a kezelőfelületén be lehet állítani, hogy milyen tesztek fussanak le - erről szerintem nem érdemes ennél többet írni, mert ha valaki elindítja, akkor azonnal nyilvánvalóvá válik minden beállítási lehetőség.&lt;br /&gt;
&lt;br /&gt;
Ami nekem leginkább hiányzott, hogy nincs pontosan vezetve, hogy melyik PHP függvények vannak ellenőrizve - viszont minden teszthez van leírás, de az nem egy valódi log, hanem inkább csak egy támpont.&lt;br /&gt;
&lt;br /&gt;
Nem tudtam például eldönteni, hogy a bináris fájlok indítására szolgáló ellenőrzés nézi-e a PHP-s dl() függvényt is - nyilván nem, mert egyrészt nem arra szolgál, hiszen ez csak a PHP bővítményeinek dinamikus betöltésére jó és a &lt;a href="https://github.com/janoszen/LAMPSecurityToolkit/wiki/Dangerous-php-functions-test"&gt;dokumentációban fel is vannak sorolva&lt;/a&gt;, hogy melyik függvényeket ellenőrzi a fent említett teszt, de lehetne valamilyen jelzés, hogy éppen mit ellenőriz, vagy egy nagyon részletes log fájl, amiben tételesen le van írva minden egyes teszt, minden egyes függvény hívási kísérlete és annak eredménye: PHP-s hibajelzéssel, saját megjegyzéssel együtt.&lt;br /&gt;
&lt;br /&gt;
Ami még hiányzott az a CURL ellenőrzése, a &lt;a href="http://php.net/manual/en/function.proc-open.php"&gt;proc_open&lt;/a&gt;() és &lt;a href="http://www.php.net/manual/en/function.proc-close.php"&gt;proc_close&lt;/a&gt;() ellenőrzése, a &lt;a href="http://www.php.net/manual/en/function.show-source.php"&gt;show_source&lt;/a&gt;() ellenőrzése, a &lt;a href="http://www.php.net/manual/en/function.symlink.php"&gt;symlink&lt;/a&gt;() ellenőrzése (ez pl. Windows alatt nincs).&lt;br /&gt;
&lt;br /&gt;
Érdemes kipróbálni, sokat segíthet egy ilyen eszköz lefuttatása és sem erőfeszítésbe, sem időbe nem kerül.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-556670942263751839?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/42PefP7kZAPEOlYf-5jBPnrLDzc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/42PefP7kZAPEOlYf-5jBPnrLDzc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/42PefP7kZAPEOlYf-5jBPnrLDzc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/42PefP7kZAPEOlYf-5jBPnrLDzc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/vlo8eSt9JuE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/556670942263751839/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=556670942263751839&amp;isPopup=true" title="2 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/556670942263751839?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/556670942263751839?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/vlo8eSt9JuE/lampsecuritytoolkit-hasznos-eszkoz-lamp.html" title="LAMPSecurityToolkit - hasznos eszköz a LAMP eszközeink teszteléséhez" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/lampsecuritytoolkit-hasznos-eszkoz-lamp.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0QFQ34ycCp7ImA9WhdQEU8.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-1940603645500216827</id><published>2011-08-12T23:08:00.000-07:00</published><updated>2011-08-11T23:08:32.098-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-11T23:08:32.098-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="HTML5" /><category scheme="http://www.blogger.com/atom/ns#" term="specifikáció" /><category scheme="http://www.blogger.com/atom/ns#" term="W3C" /><title>Webfejlesztőknek szóló, egyszerűsített HTML5 specifikáció</title><content type="html">Webfejlesztőknek szóló, egyszerűsített HTML5 specifikációt adott ki a W3C, amely az eredeti specifikációra épül, de átláthatóbbá tették azt, érdemes átolvasni, itt található:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.w3.org/TR/2011/WD-html5-author-20110809/"&gt;http://www.w3.org/TR/2011/WD-html5-author-20110809/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Talán ez segíti a HTML5 megértését azok számára is, akik nem szeretnek specifikációkat olvasgatni :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-1940603645500216827?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/RlVA7mbenuXAFwgJwUgXm814QpE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RlVA7mbenuXAFwgJwUgXm814QpE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/RlVA7mbenuXAFwgJwUgXm814QpE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RlVA7mbenuXAFwgJwUgXm814QpE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/grTBPtDIf04" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/1940603645500216827/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=1940603645500216827&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1940603645500216827?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/1940603645500216827?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/grTBPtDIf04/webfejlesztoknek-szolo-egyszerusitett.html" title="Webfejlesztőknek szóló, egyszerűsített HTML5 specifikáció" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/webfejlesztoknek-szolo-egyszerusitett.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4ARn47eSp7ImA9WhdQEU8.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-5200835590665547941</id><published>2011-08-12T04:32:00.000-07:00</published><updated>2011-08-11T22:29:07.001-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-11T22:29:07.001-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Sphinx" /><category scheme="http://www.blogger.com/atom/ns#" term="install" /><category scheme="http://www.blogger.com/atom/ns#" term="exec Windows" /><title>Sphinx telepítése Windows 7 alá</title><content type="html">A Sphinx egy nyílt forráskódú keresőszerver, nagyon jól együttműködik a MySQL-el és a PostgreSQL-el, a megadott feltételek alapján képes leindexelni a tartalmakat, természetesen van saját API-ja, mellyel akár PHP-ból, Java-ból vagy Ruby-ból is könnyen lehet programozni. &lt;br /&gt;
&lt;br /&gt;
Leggyakrabban Linux alatt szokták használni, de én Windows 7 alatt próbáltam beüzemelni, de elsőre hibaüzenettel indult:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; Installing service...  
 FATAL: OpenSCManager() failed: code=5, error=Access is denied.  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
A megoldás annyi, hogy indítasz egy parancssort rendeszergazdaként (elég ha az Asztalon készítesz egy prancsikont a cmd.exe-re, majd arra kattintasz jobb egérgombbal és a menüben a "Run as administrator"-al indítod". &lt;br /&gt;
Ezek után, ha ebből az admin parancssorból indítod, akkor elvileg minden rendben lesz; én a következő parancssal indítottam:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; C:\Windows\system32&amp;gt;H:\Sphinx\bin\searchd --install --config H:\SPHINX\sphinx.co  
 nf --servicename SphinxSearch  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
És ennyi :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-5200835590665547941?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9LVrhK5iK1S8jzhdVbdDECDWUT0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9LVrhK5iK1S8jzhdVbdDECDWUT0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9LVrhK5iK1S8jzhdVbdDECDWUT0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9LVrhK5iK1S8jzhdVbdDECDWUT0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/2ALx9WoZrBU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/5200835590665547941/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=5200835590665547941&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/5200835590665547941?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/5200835590665547941?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/2ALx9WoZrBU/sphinx-telepitese-windows-7-ala.html" title="Sphinx telepítése Windows 7 alá" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/sphinx-telepitese-windows-7-ala.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4NQn0zfCp7ImA9WhdRGUk.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-3107313355413283544</id><published>2011-08-10T04:27:00.000-07:00</published><updated>2011-08-09T20:29:53.384-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-09T20:29:53.384-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="start windows application" /><category scheme="http://www.blogger.com/atom/ns#" term="node.js" /><category scheme="http://www.blogger.com/atom/ns#" term="exec Windows" /><title>Node.js - alkalmazás indítása Windows alatt (execute child process)</title><content type="html">&lt;a href="http://nyukapiszka.blogspot.com/2011/08/nodejs-kezdo-lepesek-npm-beuzemelese.html"&gt;Múlt héten írtam&lt;/a&gt; a Windows-os &lt;a href="http://nodejs.org/"&gt;node.js&lt;/a&gt;-ről, azóta javították azt a hibát amibe akkor én is "belefutottam" és a fórumok alapján sokan mások is, a node.js &lt;a href="https://github.com/joyent/node/wiki/ChangeLog"&gt;changelog&lt;/a&gt; szerint a 2011.08.01, Version 0.5.3-ba belekerült a Windows: improvements, child_process támogatás. Ezt véletlenül vettem észre és gondoltam kipróbálom, és valóban tökéletesen működik, tehát ha például a DIR parancsot szeretném futtatni, akkor most már lefut Windows alatt a következő kód:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; var util  = require('util'),  
   exec = require('child_process').exec,  
   child;  
 child = exec('dir *.*',   
  function (error, stdout, stderr) {  
   console.log('stdout: ' + stdout);  
   console.log('stderr: ' + stderr);  
   if (error !== null) {  
    console.log('exec error: ' + error);  
   }  
 });  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Ha pedig egy ablakos alkalmazást, pl. a notepadot (:)) szeretném indítani, akkor így:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; ar util  = require('util'),  
 spawn = require('child_process').spawn,  
 ls  = spawn('notepad.exe', ['bigyo.txt']);  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
ebben látható, hogy paramétert is egyszerű átadni.&lt;br /&gt;
&lt;br /&gt;
Ezek a változások a 0.5.3-as (unstable) node.js-ben találhatóak meg, ez azért jó, mert így most a node.js tökéletesnek tűnik arra, hogy Windows alatt is bármire használni lehessen, pl. én mindenféle karbantartó szkripteket tervezek benne készíteni.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-3107313355413283544?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vxrjAztGKAas6GVpR6KGsgMcQqw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vxrjAztGKAas6GVpR6KGsgMcQqw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vxrjAztGKAas6GVpR6KGsgMcQqw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vxrjAztGKAas6GVpR6KGsgMcQqw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/immw71PFZ6o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/3107313355413283544/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=3107313355413283544&amp;isPopup=true" title="0 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/3107313355413283544?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/3107313355413283544?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/immw71PFZ6o/nodejs-alkalmazas-inditasa-windows.html" title="Node.js - alkalmazás indítása Windows alatt (execute child process)" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/nodejs-alkalmazas-inditasa-windows.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUAGQno4cSp7ImA9WhdRGEs.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-9052067654836635523</id><published>2011-08-09T06:11:00.000-07:00</published><updated>2011-08-08T22:28:43.439-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-08T22:28:43.439-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Twig" /><category scheme="http://www.blogger.com/atom/ns#" term="Silex" /><title>Silex és Twig telepítése</title><content type="html">Tegnap este még keresgéltem, megnéztem három különféle keretrendszert, de egyik sem tetszett, úgy tűnik, hogy a &lt;a href="http://silex-project.org/"&gt;Silex&lt;/a&gt; az ami teljesíti azokat a követelményeket amiket pehelysúlyúnak lehet nevezni - kicsi, gyors és egyszerű telepíteni (kivéve, ha nem rontod el elsőre, mint én...).&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;A telepítés&lt;/h2&gt;Letöltöd a phar fájlt: &lt;a href="http://silex-project.org/get/silex.phar"&gt;http://silex-project.org/get/silex.phar&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Bemásolod egy könyvtárba, létrehozol egy index.php, kezdetnek mondjuk így:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; require_once __DIR__.'/silex.phar';  
 $app = new Silex\Application();  
 $app-&amp;gt;get('/hello/{name}', function ($name) use ($app) {  
   return 'Hello '.$app-&amp;gt;escape($name);  
 });  
 $app-&amp;gt;run();  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Majd csinálni kell egy .htaccess fájlt:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;IfModule mod_rewrite.c&amp;gt;  
   Options -MultiViews  
   RewriteEngine On  
   #RewriteBase /path/to/app  
   RewriteCond %{REQUEST_FILENAME} !-f  
   RewriteRule ^(.*)$ index.php [QSA,L]  
 &amp;lt;/IfModule&amp;gt;  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
És működik - ami pedig a lényeg: iszonyú gyors és nincs benne semmi felesleges sallang.&lt;br /&gt;
&lt;br /&gt;
Persze, nem túlságosan nehéz telepíteni alá bővítményeket (létrehozva ezzel a "sallangokat" :), én például felraktam a &lt;a href="http://www.twig-project.org/"&gt;Twig&lt;/a&gt; sablonkezelőt, mert kíváncsi voltam arra, hogy mennyire egyszerű beállítani. &lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Twig telepítése&lt;/h2&gt;1. csinálsz egy vendor nevű könyvtárat&lt;br /&gt;
2. ezen belül a twig könyvtárba belemásolod a twig-et, a twig-extensions könyvtárba pedig a twig bővítményeit (a legegyszerűbb ha a Symfony2 vendor könyvtárából átmásolod ide őket, pont úgy ahogyan ott vannak)&lt;br /&gt;
3. az index.php-ban bekonfigurálod:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; &amp;lt;?php  
 require_once __DIR__.'/silex.phar';  
 $app = new Silex\Application();  
 $app-&amp;gt;register(new Silex\Extension\TwigExtension(), array(  
   'twig.path'    =&amp;gt; __DIR__.'/views',  
   'twig.class_path' =&amp;gt; __DIR__.'/vendor/twig/lib',  
 ));  
 $app-&amp;gt;get('/hello/{name}', function ($name) use ($app) {  
   return $app['twig']-&amp;gt;render('hello.twig', array(  
     'name' =&amp;gt; $name,  
   ));  
 });  
 $app-&amp;gt;run();  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Ezek után már csak egy "views" nevű könyvtárat kell csinálni, amibe a jelen példához egy hello.twig fájlt kell létrehozni, melynek a tartalma a Twig sablonkezelő nyelvéhez alkalmazkodva a következő lesz:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; Hello {{ name }}!  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
És ennyi, így is nagyon gyors, de Twig nélkül alig lassabb a natúr PHP-nál.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-9052067654836635523?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/X1byYPYknOGHyE19CTcHbtKeuHc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X1byYPYknOGHyE19CTcHbtKeuHc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/X1byYPYknOGHyE19CTcHbtKeuHc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X1byYPYknOGHyE19CTcHbtKeuHc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/geyzuupqx3c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/9052067654836635523/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=9052067654836635523&amp;isPopup=true" title="3 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/9052067654836635523?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/9052067654836635523?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/geyzuupqx3c/silex-es-twig-telepitese.html" title="Silex és Twig telepítése" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/silex-es-twig-telepitese.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4GR3s4fCp7ImA9WhdRGE8.&quot;"><id>tag:blogger.com,1999:blog-2505371258013096755.post-7945465165888647200</id><published>2011-08-08T03:20:00.000-07:00</published><updated>2011-08-08T11:08:46.534-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-08T11:08:46.534-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="micro frameworks" /><category scheme="http://www.blogger.com/atom/ns#" term="php" /><title>PHP pehelysúlyú keretrendszerek - körkép</title><content type="html">Tegnap utánanéztem annak, hogy milyen pehelysúlyú PHP keretrendszerek vannak és ezek mennyire használhatóak.&lt;br /&gt;
&lt;br /&gt;
Mikor beírtam a keresőbe, hogy "micro php framework", nagyon sokfélét találtam, de később kiderült, hogy korai volt ez az öröm.&lt;br /&gt;
&lt;br /&gt;
Először az alábbi keretrendszereket teszteltem:&lt;br /&gt;
&lt;br /&gt;
limondade.php&lt;br /&gt;
&lt;br /&gt;
microMVC&lt;br /&gt;
&lt;br /&gt;
Slim&lt;br /&gt;
&lt;br /&gt;
GluePHP&lt;br /&gt;
&lt;br /&gt;
Phraw&lt;br /&gt;
&lt;br /&gt;
...és ezek közül &lt;b&gt;egyik sem&lt;/b&gt; működött. :-) Komolyan nem...annyira nem, hogy vagy el sem indultak, vagy a hozzájuk mellékelt demók ciki hibaüzeneteket dobtak; vagy - és ez volt a legnagyobb sokk számomra: belenéztem a forráskódjaikba - ezt nem kellett volna... (nem mindegyikre érvényes ez a megállapítás, de néhányra igen) mellékesen pedig se használható dokumentációt, se értelmes leírást, se semmit nem találtam hozzájuk (mindegyikhez egy-két oldalas leírás volt, amiben azt ecsetelték mennyire jó, gyors és egyszerű az adott keretrendszer), de sajnos ez nem bizonyult igaznak. &lt;br /&gt;
&lt;br /&gt;
A fentiek közül a limonade.php volt az egyetlen amelyik hajlandó volt elindulni, de bár ne tette volna...a mellékelt példaprogramok ugyanis hibákat dobáltak, különféle notice-k formájában, majd mikor ezeket javítottam, akkor ilyeneket:&lt;br /&gt;
&lt;br /&gt;
&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; ( ! ) Parse error: syntax error, unexpected $end in C:\wamp\www\limonade\examples\example01\index.php on line 125  
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
a dokumentációkban szinte semmi.&lt;br /&gt;
Hozzáteszem, hogy ha egyenként 1-2 órát rájuk szánok biztosan kicsiszolhattam volna belőlük valami élet-félét, de pont olyan keretrendszert kerestem, amelyet ha bemásolok egy könyvtárba, megnézek 2-3 példaprogramot, akkor azután tudom használni - tehát igazi pehelysúlyút kerestem.&lt;br /&gt;
&lt;br /&gt;
Nem tudom mi az oka ennek a sok hibának.&lt;br /&gt;
&lt;br /&gt;
Talán a mennyiség egyre inkább a minőség rovására megy, azért még keresgélek és majd megírom ha találtam említésre méltó PHP Micro Frameworkot.&lt;br /&gt;
&lt;br /&gt;
...délután folytattam a tesztelést/keresgélést és újabb keretrendszereket találtam. Az első amit megnéztem a &lt;a href="http://code.google.com/p/tekuna/"&gt;tekuna&lt;/a&gt;. Az eredmény meglepetést okozott, ugyanis a tekuna működött! Sőt írok is róla kicsit.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Tekuna&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Hivatalos oldal: &lt;a href="http://code.google.com/p/tekuna/"&gt;http://code.google.com/p/tekuna/&lt;/a&gt;&lt;br /&gt;
Dokumentációs sajnos nincs hozzá, de egy könyvtárba bemásolva azonnal működött. Minimum 5.3-as PHP kell neki(nem tudom miért, mert névtereket nem láttam benne). &lt;br /&gt;
A Tekunában az tetszett leginkább, hogy a többnyelvűség a rendszer szerves részét képezi, a könyvtárstruktúrája átlátható, a fragments könyvtárban kaptak például helyet a nyelvesített sablonfájolok - egyetlen hibája, hogy szerintem már nem fejlesztik... De legalább működött :).&lt;br /&gt;
&lt;br /&gt;
A következő keretrendszer amit ki szerettem volna próbálni a PHP Fat-Free Framework volt, de nem indult el, illetve "Error 101 (net::ERR_CONNECTION_RESET): The connection was reset." hibát okozott... Szóval, a sorsa a törlés lett.&lt;br /&gt;
&lt;br /&gt;
És itt abba is hagytam, bevallom, hogy elegem lett, őszintén szólva azt hittem, hogy ennél azért jobb a helyzet, tömören ennyi a véleményem, nem akarok belemenni mélyebben, legyen elegendő ennyi... Ha valaki tud valami jó, működő és kicsi keretrendszert, akkor írjon!&lt;br /&gt;
&lt;br /&gt;
Helyreigazítás:&lt;br /&gt;
&lt;br /&gt;
A Silex-et sikerült működésre bírnom, a gond az volt, hogy én a teljes forráskódját töltöttem le és nem a .phar-os változatot teszteltem, és azzal valóban gond nélkül működik és nem is akármilyen sebességet produkál...&lt;br /&gt;
&lt;br /&gt;
Szicsunak egy képrenyőfotó:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-4_Cok8XxlwA/TkAlUA8_npI/AAAAAAAABg4/a17_ehF4Mak/s1600/silex_screenshot.jpg" imageanchor="1" style=""&gt;&lt;img border="0" height="233" width="320" src="http://2.bp.blogspot.com/-4_Cok8XxlwA/TkAlUA8_npI/AAAAAAAABg4/a17_ehF4Mak/s320/silex_screenshot.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
És köszi, hogy szóltál!&lt;br /&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2505371258013096755-7945465165888647200?l=nyukapiszka.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/RVv55cCzAAtHMjqYgo4sDHK2IXU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RVv55cCzAAtHMjqYgo4sDHK2IXU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/RVv55cCzAAtHMjqYgo4sDHK2IXU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RVv55cCzAAtHMjqYgo4sDHK2IXU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NylklPiszlSztszed/~4/tJzJjVjev2U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nyukapiszka.blogspot.com/feeds/7945465165888647200/comments/default" title="Megjegyzések küldése" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2505371258013096755&amp;postID=7945465165888647200&amp;isPopup=true" title="19 megjegyzés" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7945465165888647200?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2505371258013096755/posts/default/7945465165888647200?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/NylklPiszlSztszed/~3/tJzJjVjev2U/php-pehelysulyu-keretrendszerek-korkep.html" title="PHP pehelysúlyú keretrendszerek - körkép" /><author><name>xjan</name><uri>http://www.blogger.com/profile/02181349420815978089</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-4_Cok8XxlwA/TkAlUA8_npI/AAAAAAAABg4/a17_ehF4Mak/s72-c/silex_screenshot.jpg" height="72" width="72" /><thr:total>19</thr:total><feedburner:origLink>http://nyukapiszka.blogspot.com/2011/08/php-pehelysulyu-keretrendszerek-korkep.html</feedburner:origLink></entry></feed>

