<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PhpDili &#187; PHP</title>
	<atom:link href="http://www.phpdili.com/kategori/php/feed" rel="self" type="application/rss+xml" />
	<link>http://www.phpdili.com</link>
	<description>Özgün PHP Dersleri</description>
	<lastBuildDate>Wed, 28 Jul 2010 11:42:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>PHP Resim Crop</title>
		<link>http://www.phpdili.com/php/php-resim-crop.html</link>
		<comments>http://www.phpdili.com/php/php-resim-crop.html#comments</comments>
		<pubDate>Sat, 24 Jul 2010 14:04:09 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[resim croplama]]></category>
		<category><![CDATA[resim kesme]]></category>
		<category><![CDATA[resim kırpma]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=172</guid>
		<description><![CDATA[Yüklediğimiz resimler için thumbnail oluşturma, bazen ciddi derecede can sıkıcı olabiliyor. Dikdörtgen şekle sahip olan bir resmi kare şeklinde yeniden boyutlandırdığımız vakit resim görüntüsünde ciddi bir kayma meydana geliyor veya mantıklı olarak yeniden boyutlandırma yaptığımızda, küçülttüğümüz resimleri sıralarken kötü bir görünüme sahip olabiliyor. Böyle durumlarda resmi mantıklı bir şekilde kırparak istediğimiz boyutlara getirmek iyi bir [...]]]></description>
			<content:encoded><![CDATA[<p>Yüklediğimiz resimler için thumbnail oluşturma, bazen ciddi derecede can sıkıcı olabiliyor. Dikdörtgen şekle sahip olan bir resmi kare şeklinde yeniden boyutlandırdığımız vakit resim görüntüsünde ciddi bir kayma meydana geliyor veya mantıklı olarak yeniden boyutlandırma yaptığımızda, küçülttüğümüz resimleri sıralarken kötü bir görünüme sahip olabiliyor. Böyle durumlarda resmi mantıklı bir şekilde kırparak istediğimiz boyutlara getirmek iyi bir çözüm oluyor.</p>
<p>Nette dolaşırken geçmiş zaman içerisinde bulmuş olduğum ve kaynağını hatırlayamadığımdan dolayı kaynak gösteremeyeceğim, kendi kullandığım image crop fonksiyonunu paylaşmak istedim. Benim çok işime yaradı, umarım sizin de işinize yarar.<br />
<span id="more-172"></span></p>
<pre class="brush: php;">
&lt;?PHP
function crop($kaynak,$hedef)
{
	  define( 'DESIRED_IMAGE_WIDTH', 100 ); //yeniden boyutlandirmak istedigimiz genislik
	  define( 'DESIRED_IMAGE_HEIGHT', 100 ); //yeniden boyutlandirmak istedigimiz yukseklik

	  $source_path = $kaynak;

	  list( $source_width, $source_height, $source_type ) = getimagesize( $source_path );

	  switch ( $source_type )
	  {
		case IMAGETYPE_GIF:
		  $source_gdim = imagecreatefromgif( $source_path );
		  break;

		case IMAGETYPE_JPEG:
		  $source_gdim = imagecreatefromjpeg( $source_path );
		  break;

		case IMAGETYPE_PNG:
		  $source_gdim = imagecreatefrompng( $source_path );
		  break;
	  }

	  $source_aspect_ratio = $source_width / $source_height;
	  $desired_aspect_ratio = DESIRED_IMAGE_WIDTH / DESIRED_IMAGE_HEIGHT;

	  if ( $source_aspect_ratio &gt; $desired_aspect_ratio )
	  {
		$temp_height = DESIRED_IMAGE_HEIGHT;
		$temp_width = ( int ) ( DESIRED_IMAGE_HEIGHT * $source_aspect_ratio );
	  }
	  else
	  {
		$temp_width = DESIRED_IMAGE_WIDTH;
		$temp_height = ( int ) ( DESIRED_IMAGE_WIDTH / $source_aspect_ratio );
	  }

	  $temp_gdim = imagecreatetruecolor( $temp_width, $temp_height );
	  imagecopyresampled(
		$temp_gdim,
		$source_gdim,
		0, 0,
		0, 0,
		$temp_width, $temp_height,
		$source_width, $source_height
	  );

	  $x0 = ( $temp_width - DESIRED_IMAGE_WIDTH ) / 2;
	  $y0 = ( $temp_height - DESIRED_IMAGE_HEIGHT ) / 2;

	  $desired_gdim = imagecreatetruecolor( DESIRED_IMAGE_WIDTH, DESIRED_IMAGE_HEIGHT );
	  imagecopy(
		$desired_gdim,
		$temp_gdim,
		0, 0,
		$x0, $y0,
		DESIRED_IMAGE_WIDTH, DESIRED_IMAGE_HEIGHT
	  );

	  header( 'Content-type: image/jpeg' );
	  imagejpeg($desired_gdim,$hedef);

	  imagedestroy($desired_gdim);
}
?&gt;
</pre>
<p><strong>Resim Crop Fonksiyonu Kullanımı:</strong></p>
<pre class="brush: php;">
//formdan gelen bilgileri aliyoruz.
$resim = $_FILES['resim_field']['tmp_name'];
$resim_isim = $_FILES['resim_field']['name'];
$klasor = 'uploads/';

crop($resim,$klasor.$resim_isim);
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/php-resim-crop.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CKEditor &amp; CKFinder Kurulumu</title>
		<link>http://www.phpdili.com/php/ckeditor-ckfinder-kurulumu.html</link>
		<comments>http://www.phpdili.com/php/ckeditor-ckfinder-kurulumu.html#comments</comments>
		<pubDate>Wed, 12 May 2010 10:24:47 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Ücretsiz Scriptler]]></category>
		<category><![CDATA[ckeditor]]></category>
		<category><![CDATA[ckeditor kurulumu]]></category>
		<category><![CDATA[ckeditor resim yukleme]]></category>
		<category><![CDATA[ckfinder]]></category>
		<category><![CDATA[ckfinder kurulumu]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=162</guid>
		<description><![CDATA[WYSIWYG Text ve HTML Editörü olan CKEditör, sitelerimizde oldukça işimize yarayacak bir editör diyebiliriz. CKeditorden önce FCKEditor döneminde resim upload tek editörde mümkündü. Fakat CKeditor&#8217;de resim yükleyip, daha önceden yüklediklerimizi görebilmek için sunucuyu gez bölümünü CKFinder kurarak kullanabiliyoruz. CKEditor ve resim yüklemek için gerekli olan CKFinder kurulumu oldukça basittir. İlk olarak CKEditor ve CKFinder indiriyoruz. [...]]]></description>
			<content:encoded><![CDATA[<p>WYSIWYG Text ve HTML Editörü olan CKEditör, sitelerimizde oldukça işimize yarayacak bir editör diyebiliriz. CKeditorden önce FCKEditor döneminde resim upload tek editörde mümkündü. Fakat CKeditor&#8217;de resim yükleyip, daha önceden yüklediklerimizi görebilmek için sunucuyu gez bölümünü CKFinder kurarak kullanabiliyoruz.<br />
CKEditor ve resim yüklemek için gerekli olan CKFinder kurulumu oldukça basittir. İlk olarak <a href="http://ckeditor.com/download" target="_blank">CKEditor</a> ve <a href="http://ckfinder.com/download" target="_blank">CKFinder</a> indiriyoruz. İndirme işlemlerini tamamladıktan sonra zip dosyasından iki klasörüde ckeditor ve ckfinder olarak ayrı ayrı çıkartıyoruz.</p>
<p>Sonrasında editörü kullanacağımız yere şu php kod bloğunu yerleştiriyoruz ve kullanım için hazır hale getirmiş oluyoruz.<br />
<span id="more-162"></span><br />
[ad code=1]</p>
<pre class="brush: php;">
&lt;?php
include_once 'ckeditor/ckeditor.php' ;
require_once 'ckfinder/ckfinder.php' ;
$initialValue = &quot;default yazı&quot; ;
$ckeditor = new CKEditor( ) ;
$ckeditor-&gt;basePath	= 'ckeditor/' ;
CKFinder::SetupCKEditor( $ckeditor, 'ckfinder/' ) ;
$config['height'] = '300';
$config['toolbar'] = 'Basic';
$ckeditor-&gt;editor('metin', $initialValue, $config);
?&gt;
</pre>
<p>Gördüğünüz kod bloğuyla &#8220;metin&#8221; ismine sahip bir editor oluşturduk. $config bölümünde height toolbar theme gibi kofigürasyon ayarları yapabilirsiniz. CKfinder ile oluşan sunucuyu gez bölümü default olarak herkesin görebileceği şekilde gelmektedir. Sadece üye girişi yapmış kullanıcıların görüp kullanabilmesi için; ckfinder klasörü içinde config.php dosyasında CheckAuthentication() isimli fonksiyonda aşağırdaki düzenlemeyi yapmalıyız.<br />
[ad code=1]</p>
<pre class="brush: php;">
&lt;?PHP
function CheckAuthentication()
{
	//WARNING : DO NOT simply return &quot;true&quot;. By doing so, you are allowing
	//&quot;anyone&quot; to upload and list the files in your server. You must implement
	//some kind of session validation here. Even something very simple as...

	// return isset($_SESSION['IsAuthorized']) &amp;&amp; $_SESSION['IsAuthorized'];

	//... where $_SESSION['IsAuthorized'] is set to &quot;true&quot; as soon as the
	//user logs in your system.
	session_start();
	if($_SESSION[&quot;sistem&quot;] == true) { return true; }
	else { return false; }
}
?&gt;
</pre>
<p>Kod bloğunda gördüğünüz gibi üyelik session kontrolü yapmaktayız. Böylece sadece üye girişi yapmış olanlar sunucuya yüklenmiş dosyaları görebilecek, ziyaretçilere kapalı olacaktır.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/ckeditor-ckfinder-kurulumu.html/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Birleşik Atama Operatörleri</title>
		<link>http://www.phpdili.com/php/birlesik-atama-operatorleri.html</link>
		<comments>http://www.phpdili.com/php/birlesik-atama-operatorleri.html#comments</comments>
		<pubDate>Wed, 28 Apr 2010 09:51:06 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[php degiskenler]]></category>
		<category><![CDATA[php operatörler]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=132</guid>
		<description><![CDATA[Birleşik atama operatörlerinin amacı; bir değişken üzerine işlem yapıp sonucu tekrar bu değişkene atamaktır. Örneğin ; &#60;?PHP $a += 10; $a = $a + 10; ?&#62; Yukardaki 2 örnek kodda aynı sonucu vermektedir. Kullanılabilir diğer operatörler $a += $b $a -= $b $a *= $b $a /= $b $a %= $b $a .= $b]]></description>
			<content:encoded><![CDATA[<p>Birleşik atama operatörlerinin amacı; bir değişken üzerine işlem yapıp sonucu tekrar bu değişkene atamaktır.<br />
Örneğin ;</p>
<pre class="brush: php;">
&lt;?PHP
$a += 10;

$a = $a + 10;
?&gt;
</pre>
<p>Yukardaki 2 örnek kodda aynı sonucu vermektedir. Kullanılabilir diğer operatörler</p>
<ul>
<li>$a += $b</li>
<li>$a -= $b</li>
<li>$a *= $b</li>
<li>$a /= $b</li>
<li>$a %= $b</li>
<li>$a .= $b</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/birlesik-atama-operatorleri.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Sabitler (Constants) Kullanımı</title>
		<link>http://www.phpdili.com/php/sabitler-constants-kullanimi.html</link>
		<comments>http://www.phpdili.com/php/sabitler-constants-kullanimi.html#comments</comments>
		<pubDate>Wed, 07 Apr 2010 19:11:29 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[constant]]></category>
		<category><![CDATA[define]]></category>
		<category><![CDATA[sabit]]></category>
		<category><![CDATA[strong]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=127</guid>
		<description><![CDATA[PHP ile değişken tanımlayıp, değişkenlere atadığımız değerleri rahatlıkla kullanabiliyoruz. Fakat, değişkenler script içinde sonradan rahatlıkla değiştirebilen yapılardır. Scriptin yapımına başlayıp sonradan değiştirelemeyen bir değer kullanmak istersek sabitler (constants) işimize yarayacaktır. Bu sabitleri PHP&#8217;nin define() fonksiyonu ile tanımlayabilmekteyiz. Constant tanımlamak; &#60; ?PHP define('KULLANICIADI', 'admin'); define('SIFRE', 123456789); ?&#62; Sabitleri tanımladıktan sonra, kullanımına baktığımız zaman, değişken kullanımından tek [...]]]></description>
			<content:encoded><![CDATA[<p>PHP ile değişken tanımlayıp, değişkenlere atadığımız değerleri rahatlıkla kullanabiliyoruz. Fakat, değişkenler script içinde sonradan rahatlıkla değiştirebilen yapılardır. Scriptin yapımına başlayıp sonradan değiştirelemeyen bir değer kullanmak istersek sabitler (constants) işimize yarayacaktır. Bu sabitleri PHP&#8217;nin define() fonksiyonu ile tanımlayabilmekteyiz.</p>
<p>Constant tanımlamak;<br />
<span id="more-127"></span></p>
<pre class="brush: php;">
&lt; ?PHP
define('KULLANICIADI', 'admin');
define('SIFRE', 123456789);
?&gt;
</pre>
<p>Sabitleri tanımladıktan sonra, kullanımına baktığımız zaman, değişken kullanımından tek fark başına $ işareti koyulmamasıdır. $ işareti olmadan sadece sabit ismi yazılmaktadır.</p>
<pre class="brush: php;">
&lt; ?PHP
echo '&lt;strong&gt;Tanımlamış olduğumuz kullanıcı adı: '.KULLANICIADI;
echo '&lt;br /&gt;';
echo '&lt;strong&gt;Tanımlamış olduğumuz şifre:&lt;/strong&gt; '.SIFRE;
?&gt;
</pre>
<p>Sabitlerin tanımlanması ve kullanılmasının pratik halini görmek ve kaynak kodları indirmek için aşağıdaki linklerden yararlanabilirsiniz.<br />
[ad code=2]<br />
Demo : <a href="http://www.phpdili.com/demo/sabitler-constants-kullanimi/" target="_blank" title="PHP ile sabit kullanımı demo">PHP ile sabit kullanımı demo</a><br />
Download : <a href="http://www.phpdili.com/demo/sabitler-constants-kullanimi/kaynak.rar" target="_blank" title="PHP ile sabit kullanımı download">PHP ile sabit kullanımı download</a><br />
Sifre : phpdili.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/sabitler-constants-kullanimi.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP ile Form Değişkenlerine Erişim</title>
		<link>http://www.phpdili.com/php/php-ile-form-degiskenlerine-erisim.html</link>
		<comments>http://www.phpdili.com/php/php-ile-form-degiskenlerine-erisim.html#comments</comments>
		<pubDate>Tue, 06 Apr 2010 20:09:41 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[form islemleri]]></category>
		<category><![CDATA[get]]></category>
		<category><![CDATA[post]]></category>
		<category><![CDATA[request]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=116</guid>
		<description><![CDATA[PHP scriptlerimizin içinde oluşturduğumuz form alanlarımızın her birine form alan adıyla ulaşabiliriz. Kullandığımız PHP sürümüne ve ayarlarına bağlı olarak 3 şekilde form verilerine ulaşabiliriz. Örneğin &#8220;eposta&#8221; ismini taşıyan bir form alanımız olsun ve bu alanı post metoduyla gonder.php sayfasına gönderelim. Bu form verisini 3 şekilde elde edebiliriz. Bunlar; &#60; ?PHP echo $eposta; //model 1 echo [...]]]></description>
			<content:encoded><![CDATA[<p>PHP scriptlerimizin içinde oluşturduğumuz form alanlarımızın her birine form alan adıyla ulaşabiliriz. Kullandığımız PHP sürümüne ve ayarlarına bağlı olarak 3 şekilde form verilerine ulaşabiliriz. Örneğin &#8220;eposta&#8221; ismini taşıyan bir form alanımız olsun ve bu alanı post metoduyla gonder.php sayfasına gönderelim. Bu form verisini 3 şekilde elde edebiliriz. Bunlar;<br />
<span id="more-116"></span></p>
<pre class="brush: php;">
&lt; ?PHP
echo $eposta; //model 1
echo '&lt;br /&gt;';
echo $_POST['eposta']; //model 2
echo '&lt;br /&gt;';
echo $HTTP_POST_VARS['eposta']; //model 3
?&gt;
</pre>
<p>Model 1&#8242;i kullanabilmek için php.ini konfigürasyon dosyasında register_globals parametresinin açık (On) olması gerekir. PHP 4 sürümünden önceki sürümlerde bu parametre default olarak açık durumdaydı. Fakat sonraki sürümlerde güvenlik sebepleriyle default olarak kapalı durumda gelmektedir ve şuan itibari ile pek tavsiye edilmeyen yöntemdir.</p>
<p>Model 2, şu anda herkes tarafından tavsiye edilen yöntemdir. Ancak PHP 4 öncesi versiyonlarda çalışmamaktadır.</p>
<p>Model 3, en uzun şekilde yazılan modeldir, eskiden en çok kullanılan ve tavsiye edilen model olmasına karşın artık desteklenmemekte ve tavsiye edilmemektedir.</p>
<p>Uzun lafın kısası artık çoğunluk tarafından tercih edilen yöntem, model 2&#8242;de kullanılandır. Bu yöntemi kullanabilmek için oluşturduğumuz formu göndermek için kullandığımız metod da önemlidir. Bu metodlar; post ve get şeklindedir. post metoduyla gönderdiğimiz verileri $_POST ile get metoduyla gönderdiğimiz verileri $_GET ile elde edebiliriz. Ayrıca ister post isterse get motoduyla gönderilen veriler $_REQUEST ile de elde edilebilir. $_REQUEST hem post hem de get metoduyla uyumludur.</p>
<p>Bahsettiğimiz konunun pratik halini görmek için ve kaynak kodlarını indirmek için asagidaki linkleri kullanabilirsiniz.<br />
[ad code=2]<br />
Demo : <a href="http://www.phpdili.com/demo/form-degiskenleri/" target="_blank">Tiklayiniz</a><br />
Download : <a href="http://www.phpdili.com/demo/form-degiskenleri/kaynak.rar" target="_blank">Tiklayiniz.</a><br />
Şifre : phpdili.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/php-ile-form-degiskenlerine-erisim.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Değişken boş olup olmadığı kontrolü</title>
		<link>http://www.phpdili.com/php/degisken-bos-olup-olmadigi-kontrolu.html</link>
		<comments>http://www.phpdili.com/php/degisken-bos-olup-olmadigi-kontrolu.html#comments</comments>
		<pubDate>Tue, 03 Nov 2009 20:15:28 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[değişken kontrol]]></category>
		<category><![CDATA[empty]]></category>
		<category><![CDATA[isset]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=78</guid>
		<description><![CDATA[Belirtilen bir değişkenin boş olup olmadığını empty() fonksiyonu ile kontrol ederiz. Eğer değişken boş veya sıfır ise true sonucu döndürür. Örnek Kod : &#60; ?PHP $degisken = &#34;&#34;; $degisken2 = 0; if(empty($degisken)) { echo '$degisken isimli değişkene değer atanmamıştır.'; } ?&#62; Yukardaki kod bloğunu çalıştırdığınızda değişkene değer atanmadığını ekrana yazdırabilirsiniz. Aynı şekilde if koşulunda sorgulanan [...]]]></description>
			<content:encoded><![CDATA[<p>Belirtilen bir değişkenin boş olup olmadığını empty() fonksiyonu ile kontrol ederiz.  Eğer değişken boş veya sıfır ise true sonucu döndürür.</p>
<p>Örnek Kod :<span id="more-78"></span></p>
<pre class="brush: php;">
&lt; ?PHP
$degisken = &quot;&quot;;
$degisken2 = 0;

if(empty($degisken))
{
     echo '$degisken isimli değişkene değer atanmamıştır.';
}
?&gt;
</pre>
<p>Yukardaki kod bloğunu çalıştırdığınızda değişkene değer atanmadığını ekrana yazdırabilirsiniz. Aynı şekilde if koşulunda sorgulanan $degisken değişkeni yerine $degisken2 değişkenini de yazsanız yine aynı şekilde boş sonucu dönecektir.</p>
<p>Fonksiyonun ters hali !empty() olarak kullanılmaktadır. Eğer boş değilse anlamına gelir.</p>
<p>Örnek Kod :</p>
<pre class="brush: php;">
&lt; ?PHP
$degisken = &quot;veri&quot;;

if(!empty($degisken))
{
   echo &quot;belirtilen değişken bir veri taşımaktadır.&quot;;
}
else
{
    echo &quot;belirtilen değişken herhangi bir veri taşımamaktadır.&quot;;
}
?&gt;
</pre>
<p>Üstteki kod bloğunda belirttiğimiz gibi değişken bir veri taşığından dolayı koşulumuzun ilk adımındaki işlem gerçekleşecek ve echo komutu ekrana &#8220;belirtilen değişken bir değer taşımaktadır.&#8221; yazısını yazdıracaktır.</p>
<h3>empty() ve isset() karşılaştırılması</h3>
<p>empty() ve/veya !empty() fonksiyonuyla değişkenin veri taşıyıp taşımadığını kontrol ederiz. isset() fonksiyonu ile belirtilen değişkenin tanımlanıp tanımlanmadığı kontrol edilir. Eğer değişken tanımlanmış, fakat herhangi bir değer atanmamışsa bile true sonucu dönecektir ve program ona göre işlem yapacaktır.</p>
<p>Örnek Kod:</p>
<pre class="brush: php;">
&lt; ?PHP
$degisken = '';

if(isset($degisken))
{
    echo '$degisken isimli bir değişken tanımlanmıştır fakat içinde veri olup olmadığı bilinmemektedir.';
}
?&gt;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/degisken-bos-olup-olmadigi-kontrolu.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>if, elseif ve else kullanimi</title>
		<link>http://www.phpdili.com/php/if-elseif-ve-else-kullanimi.html</link>
		<comments>http://www.phpdili.com/php/if-elseif-ve-else-kullanimi.html#comments</comments>
		<pubDate>Sat, 24 Oct 2009 17:15:24 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[else]]></category>
		<category><![CDATA[elseif]]></category>
		<category><![CDATA[if]]></category>
		<category><![CDATA[koşul]]></category>
		<category><![CDATA[mantıksal denetleme]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=72</guid>
		<description><![CDATA[PHP ile daha önce değişken tanımlamayı öğrenmiştik. Şimdi, bir programda if elseif gibi koşulların kullanılarak nasıl mantıklı denetleme yapılacağını öğreneceğiz. Mantıksal denetleme nerelerde kullanılır? Örneğin bir kayıt formu, giriş formu, iletişim paneli vs gibi bir çok yerde oldukça sık kullanılır. En basit mantıkla, mantıksal denetlemeyi şöyle tarif edebiliriz. if( koşul veya koşullar ) { Bu [...]]]></description>
			<content:encoded><![CDATA[<p>PHP ile daha önce <a title="php değişken" href="http://www.phpdili.com/php/phpde-degiskenler.html">değişken tanımlama</a>yı öğrenmiştik. Şimdi, bir programda if elseif gibi koşulların kullanılarak nasıl mantıklı denetleme yapılacağını öğreneceğiz.</p>
<p>Mantıksal denetleme nerelerde kullanılır? Örneğin bir kayıt formu, giriş formu, iletişim paneli vs gibi bir çok yerde oldukça sık kullanılır.</p>
<p>En basit mantıkla, mantıksal denetlemeyi şöyle tarif edebiliriz.<br />
<span id="more-72"></span><br />
if( koşul veya koşullar )<br />
{<br />
Bu koşul veya koşullar doğru ise yapılacak olan işlemler.<br />
}<br />
else<br />
{<br />
Koşullar doğru değilse yapılacak olan işlemler.<br />
}</p>
<p>Örnek olarak şöyle bir dosya hazırlayalım.</p>
<pre class="brush: php;">
&lt; ?PHP
$sayi = 95;
if($sayi &gt; 42) //Eger sayi 42'den buyukse, hemen alt satirdaki islemleri gerceklestir.
{
echo &quot;$sayi, 42'den büyüktür.&quot;;
}
else //Eger kosul saglanamiyorsa, hemen alt satirdaki islemleri gerceklestir.
{
echo &quot;$sayi, belirtilen koşuldaki sayıdan büyük değildir.&quot;;
}
?&gt;
</pre>
<p>Yukaridaki dosyayı deneme.php olarak kaydedip, tarayıcımızda çalıştırdığımız zaman; <strong>95, 42&#8242;den büyüktür.</strong> çıktısını göreceğiz. Eğer, kod bloğundaki 42 rakamını 95ten daha büyük bir rakam yaparsanız bu sefer bir alt komut satırın çalıştığını farkedeceksiniz. Yukarıdaki mantıksal denetleme kodumuzda tek bir koşul belirttik, birden fazla koşul belirtmek <em><strong>and</strong></em> veya <em><strong>or</strong></em> bağlaçlarıyla olabilir.</p>
<p>Birden fazla koşul belirtme örneğimizi de hemen hazırlayalım.</p>
<pre class="brush: php;">
&lt; ?PHP
$sayi = 95;

if( ($sayi &gt; 90) and ($sayi &gt; 80) ) //Eger sayi 90'dan ve 80'den buyukse
{
echo &quot;$sayi yukardaki koşullarda belirtilen her iki sayidan da büyüktür.&quot;;
}
else
{
echo &quot;Koşullardan birisi veya ikisi de sağlanamamıştır.&quot;;
}
?&gt;
</pre>
<p>Yukardaki kod bloğumuzu çalıştırdığımızda, if koşullarının sağlandığı için ilk satır kodun çalıştığını göreceğiz. Gördüğünüz gibi iki şartı, &#8216;ve&#8217; anlamına gelen &#8216;and&#8217; ile birleştirdik, &#8216;and&#8217; yerine, &#8216;&amp;&amp;&#8217; şeklinde de kullanabilirdik, bu da aynı anlama gelirdi.</p>
<p>Yukarıda yazılmış örneği, veya kalıbına, yani &#8216;or&#8217; kullanarak bir koşul yazmayı siz deneyebilirsiniz. Bilginizi pekiştirmiş olursunuz. or yerine || şeklinde de kullanabilirsiniz, bu da aynı anlama gelmektedir.</p>
<p>Son olarak da elseif deyimine değinelim.  Onun da yazım mantığı alttaki gibidir.</p>
<p>if( koşul veya koşullar )<br />
{<br />
koşul veya koşullar doğru ise yapılacak işlemler.<br />
}<br />
elseif( diğer koşul veya koşullar )<br />
{<br />
bu koşulların doğru olması durumunda yapılacak işlemler.<br />
}<br />
else<br />
{<br />
yukardaki koşulların hiçbirinin doğru olmaması halinde yapılacak işlemler.<br />
}</p>
<p>PHP&#8217;de karşılaştırma denetlemesinde kullanılan işlemciler ve anlamlarından bazıları şöyledir.</p>
<p>== : eşitse<br />
===  : aynı ise<br />
!= : eşit değilse<br />
< : küçükse<br />
> : büyükse<br />
< = : küçük veya eşitse<br />
>= : büyük veya eşitse</p>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/if-elseif-ve-else-kullanimi.html/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>include() ve require()</title>
		<link>http://www.phpdili.com/php/include-ve-require.html</link>
		<comments>http://www.phpdili.com/php/include-ve-require.html#comments</comments>
		<pubDate>Thu, 22 Oct 2009 16:11:17 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[include]]></category>
		<category><![CDATA[include_once]]></category>
		<category><![CDATA[require]]></category>
		<category><![CDATA[require_once]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=68</guid>
		<description><![CDATA[Statik HTML kodlarla bir sayfa tasarladığımızda, birden fazla alt sayfa oluşturma gereği duyabiliriz. 100 tane alt sayfa oluşturuduğumuzu düşünelim. Bu 100 alt sayfanın tümünde menümüzün gözükmesini isteyeceğiz. Fakat sonradan, menüye bir link eklemek istediğimizde veya varolan bir linki değiştirmek istediğimizde 100 sayfayı tek tek editleyerek menüleri değiştirmemiz gerekecek (tabii iframe olarak çekmemişsek) İşte tam bu [...]]]></description>
			<content:encoded><![CDATA[<p>Statik HTML kodlarla bir sayfa tasarladığımızda, birden fazla alt sayfa oluşturma gereği duyabiliriz. 100 tane alt sayfa oluşturuduğumuzu düşünelim. Bu 100 alt sayfanın tümünde menümüzün gözükmesini isteyeceğiz. Fakat sonradan, menüye bir link eklemek istediğimizde veya varolan bir linki değiştirmek istediğimizde 100 sayfayı tek tek editleyerek menüleri değiştirmemiz gerekecek (tabii iframe olarak çekmemişsek) <img src='http://www.phpdili.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  İşte tam bu uzun düzenleme işlemlerinden kurtulmak için PHP&#8217;nin bize önerdiği iki adet fonksiyon bulunmaktadır. Bunlar; include(); ve require();&#8217;dır. Bu fonksiyonlar daha önce yazmış olduğumuz bir html veya php kodu, tekrar kullanmaya imkan sağlar. En basit örnekle bir menü oluşturduğumuz zaman, menüyü menu.php şeklinde kaydedip, o menüyü tüm alt sayfalarda include ederek kullanabilir ve ilerde bir düzenlemeye ihtiyaç duyduğumuzda rahatlıkla düzenleme yapabiliriz.</p>
<p>Şöyle bir örnekle konuyu daha iyi kavrayabiliriz.<br />
<span id="more-68"></span></p>
<pre class="brush: php;">
&lt; ?PHP
echo 'Sayfa üst bilgileri &lt;br /&gt;';
?&gt;
&lt;a href=&quot;http://www.site.com/&quot;&gt;Anasayfa&lt;/a&gt;&lt;br /&gt;
</pre>
<p>Üstteki kodu menu.php olarak kaydedelim. </p>
<pre class="brush: php;">
&lt; ?PHP
include('menu.php');
echo 'Sitemize hoşgeldiniz.';
?&gt;
</pre>
<p>Bu yazdığımız kodu da anasayfa.php olarak kaydedelim. Şimdi tarayıcıda anasayfa.php dosyasını çalıştırdığınızda, üst tarafta anasayfa linkini ve alt tarafta da anasayfa metnini görebilirsiniz. En basit mantıkla bu şekilde tek bir menü ile dilediğiniz kadar alt sayfa oluşturabilirsiniz. Bu mantığı daha da ilerleterek, sitenizin üst, sağ, sol ve alt kısımlarını tek bir dosya halinde include ile çağırırsanız, alt sayfalarda yapmanız gereken tek şey orta kısmı doldurmak olacaktır.</p>
<p>Örneklerimizde include() fonksiyonunu kullandık. Bunun yerine require() fonksiyonunu da kullanabilirdik. İki fonksiyon arasında hiçbir fark yoktur. Aralarındaki tek fark, bir hata oluşup çalışmadıkları zaman, include() fonksiyonu sadece uyarı (warning) verirken, require() fonksiyonu çalışmadığı vakit ciddi hata (Fatal Error) uyarısı verir.</p>
<p>include() ve require()&#8217;un, include_once() ve require_once() şeklinde iki adet türevi bulunmaktadır. Bunlar ise fonksiyon isminden de tahmin edebileceğiniz gibi, include edilen dosyanın sadece bir kez include edilmesini sağlar. Örneğin, fonksiyon kütüphaneleri oluşturduğunuzda, include_once() veya require_once() ile tek bir kere fonksiyonları tanımlamış, tekrar tekrar tanımlama işlemi yaparak hata verme olasılığını engellemiş olursunuz.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/include-ve-require.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>PHP ile matematiksel işlemler</title>
		<link>http://www.phpdili.com/php/php-ile-matematiksel-islemler.html</link>
		<comments>http://www.phpdili.com/php/php-ile-matematiksel-islemler.html#comments</comments>
		<pubDate>Tue, 20 Oct 2009 21:45:31 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[hesap fonksiyonları]]></category>
		<category><![CDATA[matematik fonksiyonları]]></category>
		<category><![CDATA[php ile matematik]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=60</guid>
		<description><![CDATA[PHP ile bir çok matematiksel işlem yapılabilmektedir. Bunlar arasında mutlak değer alma, üstel ifadeler, logaritma işlemlerini sayabiliriz. Şimdi en çok kullanılan işlemleri sırasıyla görelim. PHP ile 4 işlem Kullanacağımız işlemciler + : Toplama - : Çıkarma * : Çarpma / : Bölme % : Bölme işleminde kalan değer Matematiksel işlem yaparken dikkat etmemiz gereken nokta [...]]]></description>
			<content:encoded><![CDATA[<p>PHP ile bir çok matematiksel işlem yapılabilmektedir. Bunlar arasında mutlak değer alma, üstel ifadeler, logaritma işlemlerini sayabiliriz. Şimdi en çok kullanılan işlemleri sırasıyla görelim.</p>
<h2>PHP ile 4 işlem</h2>
<p><strong>Kullanacağımız işlemciler<br />
</strong></p>
<ul>
<li>+   : Toplama</li>
<li>-   : Çıkarma</li>
<li>*   : Çarpma</li>
<li>/    : Bölme</li>
<li>%   : Bölme işleminde kalan değer</li>
</ul>
<p>Matematiksel işlem yaparken dikkat etmemiz gereken nokta değerleri veya değişkenler tırnak içerisinde yazmamaktadır. Eğer tırnak içerisinde yazarak bir matematik işlem yapmaya kalkarsak, program bunu işlem olarak değil de düz metin olarak algılayacak ve ekrana ona göre bir çıktı yazdıracaktır. Dikkat etmemiz gerekn bir diğer nokta ise, normal hayatta kullandığımız matematikteki gibi işlem önceliğinin burda da olması. Yani çarpma/bölme işlemi daima önceliklidir.<br />
Bir kaç örnek yapalım.<br />
<span id="more-60"></span></p>
<pre class="brush: php;">
&lt; ?PHP
echo (10+54); //64
echo (21-9); //12
echo (15*3); //45
echo (45/3); //15
echo (21%4); //1
?&gt;
</pre>
<p>4 işlem ve değişken bilgimizi kullanarak basit bir sınav ortalamamızı yazdıracak bir kod yazalım.</p>
<pre class="brush: php;">
&lt; ?PHP
$sinav1 = 40;
$sinav2 = 50;
$sinav3 = 60;

$ortalama = ($sinav1+$sinav2+$sinav3)/3;

echo &quot;Üç sınavın ortalama notu: &lt;strong&gt;$ortalama puandır.&quot;;
?&gt;
</pre>
<h2>PHP ile üstel ifadeler</h2>
<p>Matematikte kullandığımız üslü ifadeleri, PHP&#8217;de pow() fonksiyonu ile yapmaktayız. Parantezin içine ilk olarak asıl sayıyı, sonra virgül ile ayırdıktan sonra üssünü yazarız.</p>
<p>Örnek;</p>
<pre class="brush: php;">
&lt; ?PHP
echo pow(2,3); //8
?&gt;
</pre>
<h2>PHP ile karekök</h2>
<p>Matematikle kullandığımız karekök işlemini ise PHP&#8217;de sqrt() fonksiyonu ile kullanmaktayız. Parantezin içine karekökünü bulmak istediğimiz sayıyı yazmamız yeterli olacaktır. Veya ilk önce üslü ifadesini alacağımız bir sayısının karekökünü bulmayı deneyebiliriz.</p>
<p>Her ikisi hakkında örnek yapalım.</p>
<pre class="brush: php;">
&lt; ?PHP
echo sqrt(100); //10
echo sqrt(pow(2,10)); //program ilk önce 2 üssü 10 işleminin sonucu olarak 1024 elde edecektir. Sonrasında 1024'ün karekökünü alarak 32 sonucunu ekrana yazdıracaktır.
?&gt;
</pre>
<h2>PHP ile mutlak değer</h2>
<p>Matematikte kullanılan mutlak değer işleminin karşılığı PHP&#8217;de abs() fonksiyonudur. Parantez içine yazdığımız sayının mutlak değeri ekrana yansıyacaktır. İsterseniz bu fonksiyon içerisinde dört işlem sonucunu da mutlak değer olarak çıktısını alabilirsiniz.<br />
Örnek</p>
<pre class="brush: php;">
&lt; ?PHP
echo abs(-70); //70
?&gt;
</pre>
<h2>PHP ile 10 tabanına göre logaritma</h2>
<p>10 tabanına göre logaritma alma işlemini, PHP&#8217;de log10() fonksiyonuyla gerçekleştiririz.</p>
<p>Örnek </p>
<pre class="brush: php;">
&lt; ?PHP
echo log10(100);
?&gt;
</pre>
<h2>PHP ile aşağıya doğru değer yuvarlama</h2>
<p>floor() fonksiyonu ile, örnek olarak bir bölme işleminde elde ettiğimiz sonucu aşağıya doğru yuvarlayıp tam sayı olarak ekrana yazdıracaktır.<br />
Örnek</p>
<pre class="brush: php;">
&lt; ?PHP
echo floor(9/5); //1
?&gt;
</pre>
<p>9 rakamını 5 ile böldüğümüzde sonuç 1.8 olarak çıkacaktır. Ama php bu fonksiyon sayesinde, sonucu aşağıya doğru yuvarlayıp ekrana 1 sonucunu yazdıracaktır.</p>
<h2>PHP ile yukarıya doğru değer yuvarlama</h2>
<p>ceil() fonksiyonu, üstte anlattığımız floor() fonksiyonun tam zıttı bir görev yapmaktadır.<br />
Örnek</p>
<pre class="brush: php;">
&lt; ?PHP
echo ceil(9/5); //2
?&gt;
</pre>
<p>Yukarıdaki işlemde sonuç yine 1.8&#8242;dir. Fakat ceil() fonksiyonu ile yukarıya doğru yuvarlama işlemi yaptığımızdan dolayı, sonuç ekrana 2 olarak yansıyacaktır.</p>
<h2>PHP ile tam yuvarlama</h2>
<p>PHP&#8217;de round() fonksiyonu ile, bir işlemden çıkan ondalıklı sonuç 0,5 ve üzeri ise bir üst sayıya, eğer 0,5 dahil değil ve küçükse bir alttaki sayıya yuvarlanır.<br />
Örnek</p>
<pre class="brush: php;">
&lt; ?PHP
echo round(49.7); //50
echo round(39.4); //39
?&gt;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/php-ile-matematiksel-islemler.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>PHP&#8217;de Değişkenler</title>
		<link>http://www.phpdili.com/php/phpde-degiskenler.html</link>
		<comments>http://www.phpdili.com/php/phpde-degiskenler.html#comments</comments>
		<pubDate>Tue, 20 Oct 2009 20:51:37 +0000</pubDate>
		<dc:creator>phpdili</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[değişken]]></category>
		<category><![CDATA[değişken tipleri]]></category>

		<guid isPermaLink="false">http://www.phpdili.com/?p=47</guid>
		<description><![CDATA[PHP&#8217;de değişkeni veri taşıyan bir birim olarak tanımlayabiliriz. Değişken yaratmak için dolar ($) işaretinden yararlanırız. Bilmemiz gereken en önemli noktalardan birincisi, değişken rakamla başlamaz. Rakam, değişkenin ikinci karakteri olabilir. Bilmemiz gereken ikinci nokta ise değişken isimlerinde Türkçe karakter kullanılamaz. Değişkenlere değer atamak için eşittir ve tırnak işaretlerinden yararlanırız. Eğer değişkene atamak istediğimiz değer rakamsa, tırnak [...]]]></description>
			<content:encoded><![CDATA[<p>PHP&#8217;de değişkeni veri taşıyan bir birim olarak tanımlayabiliriz. Değişken yaratmak için dolar ($) işaretinden yararlanırız. Bilmemiz gereken en önemli noktalardan birincisi, değişken rakamla başlamaz. Rakam, değişkenin ikinci karakteri olabilir. Bilmemiz gereken ikinci nokta ise değişken isimlerinde Türkçe karakter kullanılamaz.<br />
Değişkenlere değer atamak için eşittir ve tırnak işaretlerinden yararlanırız. Eğer değişkene atamak istediğimiz değer rakamsa, tırnak kullanma mecburiyetinde değiliz.</p>
<p>Değişkenler hakkında örnek yazalım.<br />
<span id="more-47"></span></p>
<pre class="brush: php;">
&lt; ?PHP
$site = &quot;www.phpdili.com&quot;;
$kaynak = &quot;php.net&quot;;

echo &quot;$site sitesinde yazılan makalelerde, kaynak olarak $kaynak adresinden yararlanılmaktadır.&quot;;
?&gt;
</pre>
<p>Yukarıdaki kodu çalıştırdığımız zaman ekrana şöyle bir yazı çıkacaktır. <strong>www.phpdili.com sitesinde yazılan makalelerde, kaynak olarak php.net adresinden yararlanılmaktadır.</strong></p>
<p>echo komutu ile değişkeni ekrana yazdırırken çift tırnak kullanmak zorunda değiliz. Sadece değişkeni ekrana yazdıracağımız vakit çift tırnak kullanmasak da kod çalışacaktır. Fakat tek tırnak içinde yazdırmaya kalkarsak o zaman sadece değişken ismi gözükecek, değişkene verdiğimiz değer ekrana yansımayacaktır. Bunun nedeni ise, php&#8217;de ekrana yazdırma komutu olan echo çift tırnak için değişken var mı diye kontrol eder, fakat tek tırnak içerisinde ise değişken kontrolü yapmaz. Bu yüzden de programda daha iyi bir çalışma performansı elde etmek istiyorsak, ekrana düz bir metin yazdıracağımız zaman tek tırnak içerisinde, değişkenli bir metin yazdıracağımız zaman çift tırnak içerisinde yazdırmakta fayda vardır.</p>
<p>Bahsedilen konunun örnek kodları.</p>
<pre class="brush: php;">
&lt; ?PHP
$kelime = &quot;Merhaba&quot;;
echo $kelime;
echo &quot;&lt;br&gt;&quot;;
echo &quot;$kelime Dünya !&quot;;
echo &quot;&lt;br /&gt;&quot;;
echo '$kelime';
?&gt;
</pre>
<p>Görüldüğü gibi en alt satırdaki echo komutunda; Merhaba kelimesi yerine sadece $kelime olarak bir çıktı ekrana yansıyacaktır.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.phpdili.com/php/phpde-degiskenler.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
