<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>dev2 - webfejlesztés</title>
	<atom:link href="http://www.dev2.hu/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dev2.hu</link>
	<description>Fejlesztői hatalomátvétel</description>
	<pubDate>Sun, 31 Jan 2010 17:47:08 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PHP fájlok védelme .htaccess-szel</title>
		<link>http://www.dev2.hu/2010/01/31/php-fajlok-vedelme-htaccess-szel/</link>
		<comments>http://www.dev2.hu/2010/01/31/php-fajlok-vedelme-htaccess-szel/#comments</comments>
		<pubDate>Sun, 31 Jan 2010 17:47:08 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[.htaccess]]></category>

		<category><![CDATA[apache]]></category>

		<category><![CDATA[hasznos]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[trükkök]]></category>

		<category><![CDATA[webszerver]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=139</guid>
		<description><![CDATA[Adott az alábbi felállás:

#apache rewriteunk a következő:

/minta =&#62; /modules/mod_minta.php
/minta/1 =&#62; /modules/mod_minta.php?q=1

## ki hogy vitelezi ki, teljesen lényegtelen, nézzen ki pl így:
RewriteRule ^minta(/.*)?$ /modules/mod_minta.php?q=$1 [QSA,L]

## $_GET['q'] feldolgozása phpban történik
Tehát a http://example.com/minta url hívásakor valójában a http://example.com/modules/mod_minta.php hívódik meg és hasonlóan a  http://example.com/minta/1 esetén a http://example.com/modules/mod_minta.php?q=1
Tiltsuk le a következő linket: http://example.com/modules/mod_minta.php?q=1. Tehát a címsorba közvetlenül írva [...]]]></description>
			<content:encoded><![CDATA[<p>Adott az alábbi felállás:</p>
<pre>
#apache rewriteunk a következő:

/minta =&gt; /modules/mod_minta.php
/minta/1 =&gt; /modules/mod_minta.php?q=1

## ki hogy vitelezi ki, teljesen lényegtelen, nézzen ki pl így:
RewriteRule ^minta(/.*)?$ /modules/mod_minta.php?q=$1 [QSA,L]

## $_GET['q'] feldolgozása phpban történik</pre>
<p>Tehát a http://example.com/minta url hívásakor valójában a http://example.com/modules/mod_minta.php hívódik meg és hasonlóan a  http://example.com/minta/1 esetén a http://example.com/modules/mod_minta.php?q=1</p>
<p>Tiltsuk le a következő linket: http://example.com/modules/mod_minta.php?q=1. Tehát a címsorba közvetlenül írva adjon valami hibát, de semmiképpen se futtassa le a mod_minta.php-t. </p>
<p>Több lehetőség van:</p>
<p>A modul(ok) elejére beírkáljuk:</p>
<pre> if(eregi('mod_minta.php', $_SERVER['REQUEST_URI'])) {
	header('HTTP/1.0 403 Forbidden');
	exit;
}</pre>
<p>Egyszerű, és ronda megoldás. Minden mod_minta.php meghíváskor lefut, az esetek 99.9999%-ában feleslegesen.</p>
<p>Sokkal szebb megoldás a következő kettő&#8230;</p>
<ul>
<li>Adjunk rá 404-es hibát:
<pre>
RewriteCond %{THE_REQUEST}      ^(GET|HEAD|POST)\ /modules/mod_minta\.php
## a mod_404.php kezeli a 404-et, ki hitte volna, ezt korábban már rewriteoltuk
RewriteCond %{REQUEST_URI}  !^/modules/mod_404\.php$
RewriteRule $ /404 [L]
</pre>
<p>Ebben az esetben csak a mod_404.php-t tudja elérni közvetlenül, más nem. Ezt az egyet engedni kell, mert különben végtelen rekurzióba fut az apache. Ilyenkor a címsor nem változik, nincs redirect.
</li>
<li>Dobjuk rá a 404-es oldalra
<pre>
        RewriteCond %{THE_REQUEST}      ^(GET|HEAD|POST)\ /modules/mod_minta\.php
        RewriteRule $ /404 [R=301,L]
</pre>
<p>Itt redirect lesz, ebben az esetben semmilyen file nem érhető el közvetlenül.
</li>
</ul>
<p>A kiprobált környezetben minden url rewriteolva van, tehát közvetlenül egy php file sincs meghívva. Ebben az esetben a két megoldás valamelyikét javasolt a rule-ok legvégére tenni, mert csak akkor jut el idáig a feldolgozás, ha korábban egy szabály sem illeszkedett. Ha ez sem illeszkedik akkor sima 404  a végeredmény.<br />
A 404 megfejtése nagyon egyszerű:</p>
<pre>
ErrorDocument 404 /404
######
######
######
RewriteRule ^404$  /modules/mod_404.php [QSA,L]
</pre>
<p>Kiegészítve a RewriteCond-ot:</p>
<pre>
RewriteCond %{THE_REQUEST}      ^(GET|HEAD|POST)\ /modules/mod_.+\.php
</pre>
<p>Tehát az összes mod_-dal kezdődő php file közvetlen elérésének a tiltása ilyen. <img src='http://www.dev2.hu/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2010/01/31/php-fajlok-vedelme-htaccess-szel/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Hány hétből áll egy év?</title>
		<link>http://www.dev2.hu/2009/10/27/hany-hetbol-all-egy-ev/</link>
		<comments>http://www.dev2.hu/2009/10/27/hany-hetbol-all-egy-ev/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 11:28:24 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[php]]></category>

		<category><![CDATA[tipp]]></category>

		<category><![CDATA[trükkök]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=135</guid>
		<description><![CDATA[Egy kérdéses évben lelendő hetek számát megkapjuk, ha az adott évet áthajtjuk a következő függvényen:

function getweeksnumber($year){
    return max(date('W', mktime(0,0,0,12,25,$year)), date('W', mktime(0,0,0,12,31,$year)));
}

Ötletes, nemde?
]]></description>
			<content:encoded><![CDATA[<p>Egy kérdéses évben lelendő hetek számát megkapjuk, ha az adott évet áthajtjuk a következő függvényen:</p>
<pre>
function getweeksnumber($year){
    return max(date('W', mktime(0,0,0,12,25,$year)), date('W', mktime(0,0,0,12,31,$year)));
}
</pre>
<p>Ötletes, nemde?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2009/10/27/hany-hetbol-all-egy-ev/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PHP: session_id() nem működik</title>
		<link>http://www.dev2.hu/2009/07/23/php-session_id-nem-mukodik/</link>
		<comments>http://www.dev2.hu/2009/07/23/php-session_id-nem-mukodik/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 09:26:52 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[php]]></category>

		<category><![CDATA[webszerver]]></category>

		<category><![CDATA[érdekes]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=132</guid>
		<description><![CDATA[Egy napja fennálló probléma, megoldást nem találtam még rá, segítsetek. A következő van:
A session_id(&#8217;1234566&#8242;); beállítja a sid-et a megadottra, ezután session_start-tal ergo &#8220;felkaphatunk&#8221; egy már meglévő sessiont. Lássunk rá egy tesztkódot:

      if (isset($_GET['destroy'])) { ## csak a játszásiból
            session_start();
 [...]]]></description>
			<content:encoded><![CDATA[<p>Egy napja fennálló probléma, megoldást nem találtam még rá, segítsetek. A következő van:<br />
A session_id(&#8217;1234566&#8242;); beállítja a sid-et a megadottra, ezután session_start-tal ergo &#8220;felkaphatunk&#8221; egy már meglévő sessiont. Lássunk rá egy tesztkódot:</p>
<pre>
      if (isset($_GET['destroy'])) { ## csak a játszásiból
            session_start();
            setcookie(session_name(), '', time()-42000, '/');
            session_destroy();
            exit;
      }
      if (isset($_GET['setsid'])) {
            session_id($_GET['setsid']);
            session_start();
            echo (session_id()==$_GET['setsid'] ? 'ugyanaz':'nem ugyanaz').'';
            if (!empty($_SESSION['test'])) {
                echo $_SESSION['test'];
            } else {
                echo 'nem mukodik.';
            }
            exit;
      }
      session_start();
      $_SESSION['test'] = 'test';
      echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?setsid='.session_id().'';
      echo '<a href="http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?destroy">http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?destroy</a>';
</pre>
<p>Tehát indítok egy sessiont, test változóba test érték, majd kiíratom a linket, amit egy másik böngészőbe betéve &#8220;test&#8221; feliratnak kéne megjelenni. Ehelyett az jelenik meg, hogy &#8216;nem mukodik.&#8217; A session id-t megkapja, az lesz, aminek kell lenni, de a $_SESSION mégis üres. A fenti script működik PHP 5.2.6 alatt (átkapja a sessiont a másik böngésző), de 5.2.10 alatt nem(üres a $_SESSION). A php.ini elvben egyezik a két verzióban. </p>
<p>Ötlet?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2009/07/23/php-session_id-nem-mukodik/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Különbségek a Windows XP és a Linux között</title>
		<link>http://www.dev2.hu/2009/03/30/kulonbsegek-a-windows-xp-es-a-linux-kozott/</link>
		<comments>http://www.dev2.hu/2009/03/30/kulonbsegek-a-windows-xp-es-a-linux-kozott/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 11:19:35 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[lol]]></category>

		<category><![CDATA[off]]></category>

		<category><![CDATA[tech]]></category>

		<category><![CDATA[teszt]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=125</guid>
		<description><![CDATA[edfa
]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><object width="400" height="340" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0"><param name="movie" value="http://static.keptelenseg.hu/k/2L2YVeqEhAglTxqjmEvyr4"><param name="bgcolor" value="#ffffff" /><param name="wmode" value="transparent" /><param name="quality" value="high"><embed src="http://static.keptelenseg.hu/k/2L2YVeqEhAglTxqjmEvyr4" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" bgcolor="#ffffff" wmode="transparent" width="400" height="340"></embed></object><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://vtsc.info/en/publication/">edfa</a></font></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2009/03/30/kulonbsegek-a-windows-xp-es-a-linux-kozott/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Internet Explorer - Lightbox - A művelet megszakadt</title>
		<link>http://www.dev2.hu/2009/02/27/internet-explorer-lightbox-a-muvelet-megszakadt/</link>
		<comments>http://www.dev2.hu/2009/02/27/internet-explorer-lightbox-a-muvelet-megszakadt/#comments</comments>
		<pubDate>Fri, 27 Feb 2009 09:20:11 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[ajax]]></category>

		<category><![CDATA[javascript]]></category>

		<category><![CDATA[lightbox]]></category>

		<category><![CDATA[prototype]]></category>

		<category><![CDATA[script.aculo.us]]></category>

		<category><![CDATA[trükkök]]></category>

		<category><![CDATA[érdekes]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=115</guid>
		<description><![CDATA[A Micro$oftot sem a böngészője miatt szeretjük (de Surface az van), hanem azért, mert kihívásokat állít elénk, hogy kell egy szakosan megírt javascript forrást lebutítani, hogy azt az IE is megértse. Történet a következő:
Az &#8220;új&#8221; Lightbox 2.04 ( a szinte teljesen újraírt forrásával) már nem a
function initLightbox() { myLightbox = new Lightbox(); }
Event.observe(window, 'load', initLightbox, [...]]]></description>
			<content:encoded><![CDATA[<p>A Micro$oftot sem a böngészője miatt szeretjük (de Surface az van), hanem azért, mert kihívásokat állít elénk, hogy kell egy szakosan megírt javascript forrást lebutítani, hogy azt az IE is megértse. Történet a következő:<br />
Az &#8220;új&#8221; Lightbox 2.04 ( a szinte teljesen újraírt forrásával) már nem a</p>
<pre>function initLightbox() { myLightbox = new Lightbox(); }
Event.observe(window, 'load', initLightbox, false);</pre>
<p>megoldást használja, hanem a szebb</p>
<pre>document.observe('dom:loaded', function () { new Lightbox(); });</pre>
<p>Tapasztalatunk szerint:<br />
Ez így magában működik, de ha például saját javascript kódokat is akarunk betöltéskor futtatni akkor két lehetőség van:</p>
<pre>document.observe('dom:loaded', function () {
//sajátkód
});
//vagy
Event.observe(window, 'load', function(){
//sajátkód
}, false);</pre>
<p>Ha változatlanul hagyjuk a lightboxot, és dom:loaded-et vegyítjük a Event.observe-vel, akkor kapjuk &#8220;A művelet megszakadt&#8221; üzenetet. Kipróbáltuk, azt tapasztaltuk, hogy két dom:loaded-et sem kedvel az IE. Köszönjük. Az maradt a megfejtés, hogy a lightbox inicializálást át kell írni a &#8220;régire&#8221;:</p>
<pre><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://online-casino-net.org/">online casino</a></font>Event.observe(window,'load',function(){ new Lightbox(); },false);
//document.observe('dom:loaded', function () { new Lightbox(); });
//vagy, kiremeljük a lightboxban az initet, és a saját kodunkban hívjuk meg.
Event.observe(window,'load',function(){
new Lightbox();
//saját kód
},false);</pre>
<p>Múkodj!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2009/02/27/internet-explorer-lightbox-a-muvelet-megszakadt/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Készíts backup-ot</title>
		<link>http://www.dev2.hu/2009/02/17/keszits-backup-ot/</link>
		<comments>http://www.dev2.hu/2009/02/17/keszits-backup-ot/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 13:28:18 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[tipp]]></category>

		<category><![CDATA[vélemény]]></category>

		<category><![CDATA[érdekes]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=114</guid>
		<description><![CDATA[Kilencven valahányban, mikor elkezdtünk iskolai szinten is ismerkedni a számítógéppel, akkor tanultunk meg egy nagyon fontos dolgot, ami paranoiává vált az idők folyamán. Kaptunk egy programot papíron, és azt kellett begépelni, majd bizonyos módosításokat elvégezni rajta. Óra végén pedig osztályozás. Másfél ujjas gépelésről volt szó, sok időt pazarolva a billentyűk keresésére&#8230; Dupla óra, legvége előtt [...]]]></description>
			<content:encoded><![CDATA[<p>Kilencven valahányban, mikor elkezdtünk iskolai szinten is ismerkedni a számítógéppel, akkor tanultunk meg egy nagyon fontos dolgot, ami paranoiává vált az idők folyamán. Kaptunk egy programot papíron, és azt kellett begépelni, majd bizonyos módosításokat elvégezni rajta. Óra végén pedig osztályozás. Másfél ujjas gépelésről volt szó, sok időt pazarolva a billentyűk keresésére&#8230; Dupla óra, legvége előtt 10 perccel a tanár odament a főkapcsolóhoz, és hanyag eleganciával lekapcsolta. Majd jött a naplóval, és szépen sorba véste be az egyeseket, mondván, semmit nem csináltunk az órán. Természetesen akkor mindenhova kívántuk, hogy lehet ekkora gyopár, hogy tönkreteszi a munkánkat. Következő órán pótlás, természetesen megint eljátszotta ezt, ismét egyes, bukásra állunk informatikából. Legközelebb, amikor a kapcsoló irányába ment, már mentettünk, ekkor tette szóvá először - ha jól emlékszem -, gyerekek, mentsetek. Többet nem volt órai adatvesztés. Megtanultunk menteni. Akkoriban egy 1.44-es floppyn elfért több havi &#8220;munkád&#8221;, amit hobbiból kódoltál otthon, vagy órák után a suliban. Aztán bejöttek a cd írók, mobil rackek, könnyebbé és biztosabbá vált az archiválás. De mentettük minden munkánkat!</p>
<p>Mindegy hogy mentesz, ments úgy, ahogy neked jó, egy a lényeg, mindig találd meg a szükséges adatot, amikor arra szükség van, és a lehető leggyorsabban tudd visszaállítani. Ne ezt kérdezd, hogy mennyibe kerül a biztonsági mentés kialakítása, azt kérdezd: Mennyibe kerül, ha nem alakítod ki!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2009/02/17/keszits-backup-ot/feed/</wfw:commentRss>
		</item>
		<item>
		<title>BÚÉK 2009</title>
		<link>http://www.dev2.hu/2008/12/31/buek-2009/</link>
		<comments>http://www.dev2.hu/2008/12/31/buek-2009/#comments</comments>
		<pubDate>Wed, 31 Dec 2008 15:49:33 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[off]]></category>

		<category><![CDATA[tipp]]></category>

		<category><![CDATA[vélemény]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=113</guid>
		<description><![CDATA[Kívánunk mindenkinek

szerverfagyás mentes
alacsony bounce rate-es
slow query mentes
sok látogatós
hackmentes
sikerekben gazdag

újévet!

A lottó ötöst meg magunknak!
Boldog Új Évet Kívánunk!
]]></description>
			<content:encoded><![CDATA[<p>Kívánunk mindenkinek</p>
<ul>
<li>szerverfagyás mentes</li>
<li>alacsony bounce rate-es</li>
<li>slow query mentes</li>
<li>sok látogatós</li>
<li>hackmentes</li>
<li>sikerekben gazdag</li>
</ul>
<p>újévet!</p>
<p style="text-align: center;"><img class="aligncenter" src="http://static.keptelenseg.hu/fun/images/d4438d922c26bd5e5a99fe7b9a593a5e.gif" alt="" width="440" height="300" /></p>
<p>A lottó ötöst meg magunknak!</p>
<p><strong>Boldog Új Évet Kívánunk!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2008/12/31/buek-2009/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mobil internet kell, de nincs</title>
		<link>http://www.dev2.hu/2008/12/11/mobil-internet-kell-de-nincs/</link>
		<comments>http://www.dev2.hu/2008/12/11/mobil-internet-kell-de-nincs/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 08:37:03 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[mobil]]></category>

		<category><![CDATA[off]]></category>

		<category><![CDATA[vélemény]]></category>

		<category><![CDATA[érdekes]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=112</guid>
		<description><![CDATA[Nem szeretek ilyenekről írni, megteszik ezt mások helyettem, jobban, de egyszerűen komikus, hogy 2008-ban ilyen van. Arra már rájöttem tudatos fogyasztóként, hogy általában az interneten és egyéb máshol forgalmazott termékek és szolgáltatások a nagyközönségnek vannak kitalálva, aki mást akar, az meg van fogva, turkálhat, rohangálhat, de az a tapasztalat, hogy benézte. Vagy ha van is [...]]]></description>
			<content:encoded><![CDATA[<p>Nem szeretek ilyenekről írni, megteszik ezt mások helyettem, jobban, de egyszerűen komikus, hogy 2008-ban ilyen van. Arra már rájöttem tudatos fogyasztóként, hogy általában az interneten és egyéb máshol forgalmazott termékek és szolgáltatások a nagyközönségnek vannak kitalálva, aki mást akar, az meg van fogva, turkálhat, rohangálhat, de az a tapasztalat, hogy benézte. Vagy ha van is kínálatban, épp elfogyott. Én nem akarok birkaszerűen vásárolni, fogyasztani! A történet a következő:<span id="more-112"></span></p>
<p>Van egy pgsm előfizetésem, Mobil Adat 3 netcsomaggal, 390 pénzért kapok 3 megabájtot. Mire elég? Sokra. Képek nélkül lehet böngészgetni, egykét dolgot megnézni, tökéletes. Nőnek az igények, az infrastruktúra változik a kézben: servereket kell figyelni, ssh-zni kell, több e-mail, és ha már offline vagyok, akkor is legyek online, ne kelljen már az unalmas pillanatokban valahol az országban azt az smst várni, hogy letelt a 3 megabájt, és innentől drágább. Fizessünk be mobil internetre. Ööm é bodottá. Több lehetőség van:</p>
<ul>
<li>meglévő előfizu mellé: Mobil Internet 100 MB: 1990 Ft - adatforgalom határeset, drága? drága</li>
<li>meglévő előfizu mellé: Mobil Internet 5 GB: 5990 Ft - adatforgalom sok, szükségtelen, tehát drága</li>
<li>új előfizetés: 3990 (4000), meg 5990 (6000, de gyűlölöm az ilyent) a korlátlan, de a korlátlan az szükségtelen, tehát drága</li>
<li>új előfizetés: 1980 Ft 500 mega. 2 évre.</li>
<li>mobil napijegy: 190 Ft /10 mega / nap, körülményes, drága - a poén, hogy törli a meglévő mobil adat 3-at, amit nem mondtak volna, és nem is állítható vissza, mert nem forgalmazzák&#8230;</li>
</ul>
<p>Ööm é bodottá. Sziszegve 1980 Ft 500 MB az türhető, arra is elég, hogy ha esetleg a drótos net bukik, akkor át lehet hidalni ezzel, lehet sshzni, stb, több nem is kell. Na jó jó, ez ilyen egyszerű? Nem. Felhívom a 1220at, hogy nekem kéne ilyen, hogy múködik? Új előfizu, két évre, kapok egy másik SIM-et, modemet, fogyaszthatom. Áh, ez jó - modom -, de nekem nem kell modem meg SIM, tolják rá a meglévő előfizetésemre, hogy a telefonon tudjam használni! Mobil vagyok! Áh, azt úgy nem lehet. Csak modemmel és másik SIM-mel. Tehát ha internetezni akarok, akkor egy laptoppal kell rohangálnom, nem lehet a meglévő telefonomon használni? NEM LEHET! Mitől mobil internet ez? Azért, mert mobiltechnológián jön a zinternet, vagy mert tudom a telefonomon is használni, vagy mert jól hangzik? Cipelhetek egy tök felesleges laptopot a kocsmába? Ha laptopon akarom használni a &#8220;mobil&#8221; netet, a telefont még mindig rá lehet kötni a laptopra, pcre, akármire. Telefonnal tudok sétálva internetezni, előkapom, mobil vagyok, egy laptopttal meg le kell üljek, böszme, nagy, nem praktikus. Nem tudom mit írjak még erről. Tragikus a helyzet. Kérdés: A szolgáltatások milyensége/minősége tükrözi-e a fogyasztókat? Szomorú vagyok.</p>
<p>Vélemény?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2008/12/11/mobil-internet-kell-de-nincs/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Programozzunk</title>
		<link>http://www.dev2.hu/2008/12/02/programozzunk/</link>
		<comments>http://www.dev2.hu/2008/12/02/programozzunk/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 12:52:43 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[kérdés csak úgy]]></category>

		<category><![CDATA[lol]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=111</guid>
		<description><![CDATA[Fejlesztés közben előfordulnak vicces kódsorok, megjegyzések, vagy mert sietünk, vagy mert direkt, vagy mert tök véletlenül egyszerű figyelmetlenségből. Írjatok pár eszement sort amit elkövettetek, és már-már szégyellitek bevallani a  nagyközönségnek, hogy Ti ilyent is tudtok. Kezdem Én:

ez a kedvencem, egy régebbi kódsort néztem át&#8230;

$result = $result; //ilyent ritkán csinálok

kedvenc változónevem, ami mindenhol jó

$z

szükséges a [...]]]></description>
			<content:encoded><![CDATA[<p>Fejlesztés közben előfordulnak vicces kódsorok, megjegyzések, vagy mert sietünk, vagy mert direkt, vagy mert tök véletlenül egyszerű figyelmetlenségből. Írjatok pár eszement sort amit elkövettetek, és már-már szégyellitek bevallani a  nagyközönségnek, hogy Ti ilyent is tudtok. Kezdem Én:<br />
<span id="more-111"></span></p>
<p><strong>ez a kedvencem, egy régebbi kódsort néztem át&#8230;</strong></p>
<pre>
$result = $result; //ilyent ritkán csinálok
</pre>
<p><strong>kedvenc változónevem, ami mindenhol jó</strong></p>
<pre>
$z
</pre>
<p><strong>szükséges a jó dokumentáltság is</strong></p>
<pre>
if ($result){ //ha igaz
......
} else { //ha nem igaz
.........
}
</pre>
<p><strong>ezt egyszer megírtam, de nem tudom hol akartam használni</strong></p>
<pre>
function true(){
  return true;
}
</pre>
<p>Halljuk!!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2008/12/02/programozzunk/feed/</wfw:commentRss>
		</item>
		<item>
		<title>E-mail ellenőrzés php-ben</title>
		<link>http://www.dev2.hu/2008/11/29/e-mail-ellenorzes-php-ben/</link>
		<comments>http://www.dev2.hu/2008/11/29/e-mail-ellenorzes-php-ben/#comments</comments>
		<pubDate>Sat, 29 Nov 2008 15:32:50 +0000</pubDate>
		<dc:creator>cadmagician</dc:creator>
		
		<category><![CDATA[ajax]]></category>

		<category><![CDATA[hasznos]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[prototype]]></category>

		<category><![CDATA[trükkök]]></category>

		<category><![CDATA[érdekes]]></category>

		<guid isPermaLink="false">http://www.dev2.hu/?p=110</guid>
		<description><![CDATA[Korábban beszéltünk az adatvalidálásról, de sosem lehet elég a jóból. Még mindig akad olyan felhasználó, aki képes kijátszani az emberi értelem határait, és elköveti azt a galádságot, hogy helytelen e-mail címet ír be. Különösképp arra az esetre gondolunk, mikor (kimondva) halvány fingja nincs az e-mail címéről, stbstb. fremail.com, hotmail.hu, citrommail.com és sorolhatnánk.
Két féle megfejtés lehet [...]]]></description>
			<content:encoded><![CDATA[<p>Korábban beszéltünk az <a href="/2008/06/03/adatvalidalas/">adatvalidálásról</a>, de sosem lehet elég a jóból. Még mindig akad olyan felhasználó, aki képes kijátszani az emberi értelem határait, és elköveti azt a galádságot, hogy helytelen e-mail címet ír be. Különösképp arra az esetre gondolunk, mikor (kimondva) halvány fingja nincs az e-mail címéről, stbstb. fremail.com, hotmail.hu, citrommail.com és sorolhatnánk.<span id="more-110"></span></p>
<p>Két féle megfejtés lehet erre a problémára (tehát az e-mail szintaktika jó, csak nem múkodik):</p>
<ol>
<li>bekérdezünk a felhasználó által adott e-mail címre például ezzel : <a href="http://www.howtocreate.co.uk/php/dnld.php?file=4&amp;action=1" target="_blank">Email address validation script</a>, és mondjuk hogy nem jó, erre a felhasználó lefagy, mert nem érti miért nem jó a freemail.com, továbbá ha épp nem elérhető a felhasználó postafiókja, false eredményt ad</li>
<li>bekérdezünk (vagy nem),  ajánlunk neki egy alternatívát, hogy mit rontott el.</li>
</ol>
<p>Nézzük meg működés közben, hogy mire is gondoltunk:</p>
<p style="text-align: center;"><a href="/attachments/email.swf"><img class="aligncenter" src="/attachments/email.jpg" alt="" width="507" height="118" /></a></p>
<p>Node hogy működik?</p>
<p>Nem árulunk el nagy titkot, hogy 100%-ban felkészülni egyáltalán nem lehet a felhasználók ellen, de azonban csökkenteni lehet a &#8220;téves&#8221; elírásokat, ha bővíthetővé tesszük az ezt kezelő függvényünket.</p>
<p>Tehát az e-mail mezőn onblurkor egy ajax (Ajax.Update, prototype.js) hívást csinálunk, ha az nem üres, ellenőrizzük az emailt, majd egy választ adunk vissza. Mi az ellenőrzés?</p>
<pre>function checkmail($email){
        $wrongmails = array(
                'gmail.com'     =&gt; array('gmaill.com','gmail.co','gmail.hu','gamil.com'),
                'citromail.hu'  =&gt; array('cotromail.hu', 'citrmail.hu','citrmail.com','citromail.com','citromai.hu','cirtommail.hu'),
                'freemail.hu'   =&gt; array('fremail.hu','feemail.hu','freemil.hu','freemai.hu','freeemail.hu','freemail.com'),
                'chello.hu'     =&gt; array('cello.hu'),
                'yahoo.com'     =&gt; array('zahoo.com','yahho.com','jahoo.com'),
                'hotmail.com'   =&gt; array('hotmail.hu'),
                'invitel.hu'    =&gt; array('invitl.hu'),
                'jodomain'    =&gt; array('rosszdomain1','rosszdomain2'),
        );
        $mailparts = explode("@",$email);
        foreach($wrongmails as $domain=&gt;$wrongs){
                  if (in_array($mailparts[1],$wrongs)){
                    return array($domain,$mailparts[0],$mailparts[1]);
                    break;
                  }
        }
        return true;
}</pre>
<p>Összességében a php:</p>
<pre>      $mailparts = explode("@",$email);
              $validator = new validator();
              $validator-&gt;item($email,array("email","required"),array("Az e-mail címed helytelen!","Nem adtál meg e-mail címet"));
              if (preg_match("/^www\./i",$mailparts[0]) || preg_match("/^www\./i",$mailparts[1])){
                  //ilyen is sok van. horror.
                  $validator-&gt;set_valid(false,"Az e-mail címed vélhetően helytelen! A "www" biztos benne van?");
              }
              $uemail = checkmail($email);
              if (is_array($uemail)){
                    $validator-&gt;set_valid(false,"A megadott e-mail cím ($email) vélhetően helytelen. Talán <span class="\" onclick="\">".$uemail[1]."@".$uemail[0]."</span> lett volna? Ha igen, <span class="\" onclick="\">kattints ide!</span>");
              }
              $mysql-&gt;query("vane ilyen emailcímű júzer");
               if ($mysql-&gt;num_rows()!=0){
                    $validator-&gt;set_valid(false,"Az általad megadott e-mail címmel ($email) már regisztráltak.");
               }
             //itt még esetleg egy Email address validation script
              if ($validator-&gt;valid()){
                   //jónak tűnik
                  echo "A megadott $email cím helyesnek tűnik!";
              } else {
                  echo $validator-&gt;message();
              }
              exit;</pre>
<p>Lényegében manuálisan kell felépítgetni a hibákat, ergo &#8220;tanítjuk&#8221; a függvényünket. Lehetne regexpben is gondolkodni, de vélhetően a bonyolultság miatt nem biztos, hogy jobb lenne. Ööm é bodottá, e ööm é bodottá</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dev2.hu/2008/11/29/e-mail-ellenorzes-php-ben/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
