<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Gidenler.Me | Her yol bir hikaye... - Tüm Forumlar]]></title>
		<link>https://gidenler.me/</link>
		<description><![CDATA[Gidenler.Me | Her yol bir hikaye... - https://gidenler.me]]></description>
		<pubDate>Sun, 20 Sep 2026 13:39:27 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Hata Yönetimi ve Kod Kalitesi (php 18.ders)]]></title>
			<link>https://gidenler.me/thread-811.html</link>
			<pubDate>Sat, 19 Sep 2026 17:18:31 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-811.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_5_15_11.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_5_15_11.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 18 — Hata Yönetimi ve Kod Kalitesi</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Program beklenmeyen bir durumla karşılaştığında nasıl kontrollü davranır?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
Hata ile istisna arasındaki farkı temel düzeyde anlayabilecek, <span style="background-color: red; color: white;">&nbsp;try/catch&nbsp;</span> kullanabilecek ve kullanıcıya teknik ayrıntıları göstermeden hata yönetebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>18.1. Hataları görünür yapmak</b></span></div>
Geliştirme ortamında hataları görmek yararlıdır. Canlı ortamda ise veritabanı parolası veya dosya yolu gibi ayrıntılar kullanıcıya gösterilmemelidir.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>18.2. <span style="background-color: red; color: white;">&nbsp;try/catch&nbsp;</span></b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">try&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;&#36;pdo&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;dsn</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;pass</span><span style="color: #007700">);<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setAttribute</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ATTR_ERRMODE</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ERRMODE_EXCEPTION</span><span style="color: #007700">);<br />}&nbsp;catch&nbsp;(</span><span style="color: #0000BB">PDOException&nbsp;&#36;e</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;error_log</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;e</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getMessage</span><span style="color: #007700">());<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Şu&nbsp;anda&nbsp;teknik&nbsp;bir&nbsp;sorun&nbsp;oluştu.&nbsp;Lütfen&nbsp;daha&nbsp;sonra&nbsp;tekrar&nbsp;deneyin."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Kullanıcı anlaşılır bir mesaj görür. Teknik ayrıntı sunucu günlüklerine yazılır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>18.3. Kod kalitesi alışkanlıkları</b></span></div><ul class="mycode_list"><li>Anlamlı değişken adları kullan.<br />
</li>
<li>Bir fonksiyona çok fazla sorumluluk yükleme.<br />
</li>
<li>Tekrarlanan kodu yardımcı fonksiyona ayır.<br />
</li>
<li>Kullanıcı girdisini doğrula.<br />
</li>
<li>Veritabanı sorgularında prepared statement kullan.<br />
</li>
<li>Şifre ve anahtarları kaynak koduna yazma.<br />
</li>
<li>Kodunu küçük adımlarla test et.<br />
</li>
</ul>
</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_5_15_11.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_5_15_11.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 18 — Hata Yönetimi ve Kod Kalitesi</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Program beklenmeyen bir durumla karşılaştığında nasıl kontrollü davranır?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
Hata ile istisna arasındaki farkı temel düzeyde anlayabilecek, <span style="background-color: red; color: white;">&nbsp;try/catch&nbsp;</span> kullanabilecek ve kullanıcıya teknik ayrıntıları göstermeden hata yönetebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>18.1. Hataları görünür yapmak</b></span></div>
Geliştirme ortamında hataları görmek yararlıdır. Canlı ortamda ise veritabanı parolası veya dosya yolu gibi ayrıntılar kullanıcıya gösterilmemelidir.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>18.2. <span style="background-color: red; color: white;">&nbsp;try/catch&nbsp;</span></b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">try&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;&#36;pdo&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;dsn</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;pass</span><span style="color: #007700">);<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setAttribute</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ATTR_ERRMODE</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ERRMODE_EXCEPTION</span><span style="color: #007700">);<br />}&nbsp;catch&nbsp;(</span><span style="color: #0000BB">PDOException&nbsp;&#36;e</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;error_log</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;e</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getMessage</span><span style="color: #007700">());<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Şu&nbsp;anda&nbsp;teknik&nbsp;bir&nbsp;sorun&nbsp;oluştu.&nbsp;Lütfen&nbsp;daha&nbsp;sonra&nbsp;tekrar&nbsp;deneyin."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Kullanıcı anlaşılır bir mesaj görür. Teknik ayrıntı sunucu günlüklerine yazılır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>18.3. Kod kalitesi alışkanlıkları</b></span></div><ul class="mycode_list"><li>Anlamlı değişken adları kullan.<br />
</li>
<li>Bir fonksiyona çok fazla sorumluluk yükleme.<br />
</li>
<li>Tekrarlanan kodu yardımcı fonksiyona ayır.<br />
</li>
<li>Kullanıcı girdisini doğrula.<br />
</li>
<li>Veritabanı sorgularında prepared statement kullan.<br />
</li>
<li>Şifre ve anahtarları kaynak koduna yazma.<br />
</li>
<li>Kodunu küçük adımlarla test et.<br />
</li>
</ul>
</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Nesne Yönelimli PHP’ye Giriş (php 17.ders)]]></title>
			<link>https://gidenler.me/thread-810.html</link>
			<pubDate>Sat, 19 Sep 2026 14:13:44 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-810.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_2_11_59.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_2_11_59.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 17 — Nesne Yönelimli PHP’ye Giriş</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Büyüyen projelerde kodu nasıl daha düzenli ve yönetilebilir hâle getiririz?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
Sınıf, nesne, özellik, metot, kurucu metot ve görünürlük kavramlarını temel düzeyde kullanabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>17.1. Sınıf ve nesne</b></span></div>
Sınıf, benzer nesnelerin özelliklerini ve davranışlarını tanımlar.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">class&nbsp;</span><span style="color: #0000BB">User<br /></span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;</span><span style="color: #0000BB">string&nbsp;&#36;name</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">__construct</span><span style="color: #007700">(</span><span style="color: #0000BB">string&nbsp;&#36;name</span><span style="color: #007700">)<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">name&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;name</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">}<br /><br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">greet</span><span style="color: #007700">():&nbsp;</span><span style="color: #0000BB">string<br /> &nbsp; &nbsp;</span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #007700">return&nbsp;</span><span style="color: #DD0000">"Merhaba,&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">name</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">}<br />}<br /><br /></span><span style="color: #0000BB">&#36;user&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">User</span><span style="color: #007700">(</span><span style="color: #DD0000">"Selin"</span><span style="color: #007700">);<br />echo&nbsp;</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">greet</span><span style="color: #007700">();&nbsp;<br /></span></code></div></div></div><br />
<span style="background-color: red; color: white;">&nbsp;&#36;this&nbsp;</span>, oluşturulan nesnenin kendisini ifade eder.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>17.2. Görünürlük</b></span></div>
<span style="background-color: red; color: white;">&nbsp;public&nbsp;</span> her yerden erişilebilir. <span style="background-color: red; color: white;">&nbsp;private&nbsp;</span> yalnızca sınıfın içinden erişilebilir. <span style="background-color: red; color: white;">&nbsp;protected&nbsp;</span> sınıf ve alt sınıflar içinde erişilebilir.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">class&nbsp;</span><span style="color: #0000BB">Product<br /></span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">private&nbsp;</span><span style="color: #0000BB">float&nbsp;&#36;price</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">setPrice</span><span style="color: #007700">(</span><span style="color: #0000BB">float&nbsp;&#36;price</span><span style="color: #007700">):&nbsp;</span><span style="color: #0000BB">void<br /> &nbsp; &nbsp;</span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">&#36;price&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">price&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;price</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #007700">}<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">}<br /><br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">getPrice</span><span style="color: #007700">():&nbsp;</span><span style="color: #0000BB">float<br /> &nbsp; &nbsp;</span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #007700">return&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">price</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">}<br />}&nbsp;<br /></span></code></div></div></div><br />
Bu yapı, verinin kuralsız biçimde değiştirilmesini önlemeye yardımcı olur.<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Tasarım fikri</span></span><br />
Nesne yönelimli programlama, her şeyi sınıfa dönüştürmek demek değildir. Ama bir varlığın verileri ve davranışları birlikte ele alındığında kodun sorumluluklarını düzenlemek kolaylaşabilir.</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_2_11_59.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_2_11_59.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 17 — Nesne Yönelimli PHP’ye Giriş</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Büyüyen projelerde kodu nasıl daha düzenli ve yönetilebilir hâle getiririz?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
Sınıf, nesne, özellik, metot, kurucu metot ve görünürlük kavramlarını temel düzeyde kullanabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>17.1. Sınıf ve nesne</b></span></div>
Sınıf, benzer nesnelerin özelliklerini ve davranışlarını tanımlar.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">class&nbsp;</span><span style="color: #0000BB">User<br /></span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;</span><span style="color: #0000BB">string&nbsp;&#36;name</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">__construct</span><span style="color: #007700">(</span><span style="color: #0000BB">string&nbsp;&#36;name</span><span style="color: #007700">)<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">name&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;name</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">}<br /><br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">greet</span><span style="color: #007700">():&nbsp;</span><span style="color: #0000BB">string<br /> &nbsp; &nbsp;</span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #007700">return&nbsp;</span><span style="color: #DD0000">"Merhaba,&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">name</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">}<br />}<br /><br /></span><span style="color: #0000BB">&#36;user&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">User</span><span style="color: #007700">(</span><span style="color: #DD0000">"Selin"</span><span style="color: #007700">);<br />echo&nbsp;</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">greet</span><span style="color: #007700">();&nbsp;<br /></span></code></div></div></div><br />
<span style="background-color: red; color: white;">&nbsp;&#36;this&nbsp;</span>, oluşturulan nesnenin kendisini ifade eder.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>17.2. Görünürlük</b></span></div>
<span style="background-color: red; color: white;">&nbsp;public&nbsp;</span> her yerden erişilebilir. <span style="background-color: red; color: white;">&nbsp;private&nbsp;</span> yalnızca sınıfın içinden erişilebilir. <span style="background-color: red; color: white;">&nbsp;protected&nbsp;</span> sınıf ve alt sınıflar içinde erişilebilir.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">class&nbsp;</span><span style="color: #0000BB">Product<br /></span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">private&nbsp;</span><span style="color: #0000BB">float&nbsp;&#36;price</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">setPrice</span><span style="color: #007700">(</span><span style="color: #0000BB">float&nbsp;&#36;price</span><span style="color: #007700">):&nbsp;</span><span style="color: #0000BB">void<br /> &nbsp; &nbsp;</span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">&#36;price&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">price&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;price</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #007700">}<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">}<br /><br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">getPrice</span><span style="color: #007700">():&nbsp;</span><span style="color: #0000BB">float<br /> &nbsp; &nbsp;</span><span style="color: #007700">{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #007700">return&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">price</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">}<br />}&nbsp;<br /></span></code></div></div></div><br />
Bu yapı, verinin kuralsız biçimde değiştirilmesini önlemeye yardımcı olur.<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Tasarım fikri</span></span><br />
Nesne yönelimli programlama, her şeyi sınıfa dönüştürmek demek değildir. Ama bir varlığın verileri ve davranışları birlikte ele alındığında kodun sorumluluklarını düzenlemek kolaylaşabilir.</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Parola Güvenliği ve Yetkilendirme (php 16.ders)]]></title>
			<link>https://gidenler.me/thread-809.html</link>
			<pubDate>Sat, 19 Sep 2026 13:43:23 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-809.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_1_41_02.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_1_41_02.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 16 — Parola Güvenliği ve Yetkilendirme</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Kullanıcı parolalarını ve yetkilerini nasıl koruruz?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
Parola hash’lemenin neden gerekli olduğunu açıklayabilecek, güvenli parola kaydı ve doğrulaması yapabilecek, kimlik doğrulama ile yetkilendirme arasındaki farkı ayırt edebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>16.1. Hash nedir?</b></span></div>
Hash, veriyi tek yönlü bir işlemle dönüştüren yapıdır. Parolanın kendisini saklamak yerine hash’ini saklarız.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;hash&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">password_hash</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;parola</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">PASSWORD_DEFAULT</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
Giriş sırasında:<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">password_verify</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;parola</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;kullanici</span><span style="color: #007700">[</span><span style="color: #DD0000">"password_hash"</span><span style="color: #007700">]))&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Giriş&nbsp;başarılı."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>16.2. Kimlik doğrulama ve yetkilendirme</b></span></div>
<span style="background-color: red; color: white;">&nbsp;Kimlik doğrulama&nbsp;</span>, kullanıcının kim olduğunu kontrol etmektir. <span style="background-color: red; color: white;">&nbsp;Yetkilendirme&nbsp;</span>, doğrulanmış kullanıcının hangi işlemleri yapabileceğini belirlemektir.<br />
<br />
Örneğin bir kullanıcı giriş yapmış olabilir, ancak yalnızca yönetici ürün silebilir.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">if&nbsp;((</span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"rol"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">"user"</span><span style="color: #007700">)&nbsp;!==&nbsp;</span><span style="color: #DD0000">"admin"</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;http_response_code</span><span style="color: #007700">(</span><span style="color: #0000BB">403</span><span style="color: #007700">);<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">exit(</span><span style="color: #DD0000">"Bu&nbsp;işlem&nbsp;için&nbsp;yetkiniz&nbsp;yok."</span><span style="color: #007700">);<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>16.3. Oturum kimliğini yenilemek</b></span></div>
Başarılı girişten sonra oturum kimliğini yenilemek iyi bir güvenlik uygulamasıdır:<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">session_regenerate_id</span><span style="color: #007700">(</span><span style="color: #0000BB">true</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_id"</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #0000BB">&#36;kullanici</span><span style="color: #007700">[</span><span style="color: #DD0000">"id"</span><span style="color: #007700">];&nbsp;<br /></span></code></div></div></div></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_1_41_02.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_1_41_02.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 16 — Parola Güvenliği ve Yetkilendirme</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Kullanıcı parolalarını ve yetkilerini nasıl koruruz?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
Parola hash’lemenin neden gerekli olduğunu açıklayabilecek, güvenli parola kaydı ve doğrulaması yapabilecek, kimlik doğrulama ile yetkilendirme arasındaki farkı ayırt edebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>16.1. Hash nedir?</b></span></div>
Hash, veriyi tek yönlü bir işlemle dönüştüren yapıdır. Parolanın kendisini saklamak yerine hash’ini saklarız.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;hash&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">password_hash</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;parola</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">PASSWORD_DEFAULT</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
Giriş sırasında:<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">password_verify</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;parola</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;kullanici</span><span style="color: #007700">[</span><span style="color: #DD0000">"password_hash"</span><span style="color: #007700">]))&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Giriş&nbsp;başarılı."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>16.2. Kimlik doğrulama ve yetkilendirme</b></span></div>
<span style="background-color: red; color: white;">&nbsp;Kimlik doğrulama&nbsp;</span>, kullanıcının kim olduğunu kontrol etmektir. <span style="background-color: red; color: white;">&nbsp;Yetkilendirme&nbsp;</span>, doğrulanmış kullanıcının hangi işlemleri yapabileceğini belirlemektir.<br />
<br />
Örneğin bir kullanıcı giriş yapmış olabilir, ancak yalnızca yönetici ürün silebilir.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">if&nbsp;((</span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"rol"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">"user"</span><span style="color: #007700">)&nbsp;!==&nbsp;</span><span style="color: #DD0000">"admin"</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;http_response_code</span><span style="color: #007700">(</span><span style="color: #0000BB">403</span><span style="color: #007700">);<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">exit(</span><span style="color: #DD0000">"Bu&nbsp;işlem&nbsp;için&nbsp;yetkiniz&nbsp;yok."</span><span style="color: #007700">);<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>16.3. Oturum kimliğini yenilemek</b></span></div>
Başarılı girişten sonra oturum kimliğini yenilemek iyi bir güvenlik uygulamasıdır:<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">session_regenerate_id</span><span style="color: #007700">(</span><span style="color: #0000BB">true</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_id"</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #0000BB">&#36;kullanici</span><span style="color: #007700">[</span><span style="color: #DD0000">"id"</span><span style="color: #007700">];&nbsp;<br /></span></code></div></div></div></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Oturumlar ve Kullanıcı Girişi (php 15.ders)]]></title>
			<link>https://gidenler.me/thread-808.html</link>
			<pubDate>Sat, 19 Sep 2026 12:25:04 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-808.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_12_24_25.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_12_24_25.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 15 — Oturumlar ve Kullanıcı Girişi</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Sunucu, aynı kişinin sayfalar arasında gezdiğini nasıl hatırlar?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
Oturum başlatabilecek, oturum değişkeni oluşturabilecek, giriş yapmış kullanıcı kontrolü yapabilecek ve çıkış işlemini gerçekleştirebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>15.1. Oturum nedir?</b></span></div>
HTTP istekleri temel olarak birbirinden bağımsızdır. Kullanıcı bir sayfadan diğerine geçtiğinde sunucunun aynı kişiyi tanıyabilmesi için oturum mekanizması kullanılır. Her oturum kullanan PHP dosyasının başında, çıktı üretilmeden önce <span style="background-color: red; color: white;">&nbsp;session_start()&nbsp;</span> çağrılır.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br />session_start</span><span style="color: #007700">();<br /><br /></span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_id"</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #0000BB">12</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_adi"</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #DD0000">"Deniz"</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
Başka bir sayfada:<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br />session_start</span><span style="color: #007700">();<br /><br />echo&nbsp;</span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_adi"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">"Misafir"</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>15.2. Giriş kontrolü</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">session_start</span><span style="color: #007700">();<br /><br />if&nbsp;(!isset(</span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_id"</span><span style="color: #007700">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">header</span><span style="color: #007700">(</span><span style="color: #DD0000">"Location:&nbsp;login.php"</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;exit;<br />}&nbsp;<br /></span></code></div></div></div><br />
<span style="background-color: red; color: white;">&nbsp;header&nbsp;</span> yönlendirme yapar. <span style="background-color: red; color: white;">&nbsp;exit&nbsp;</span>, yönlendirmeden sonra mevcut kodun çalışmasını önler.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>15.3. Çıkış</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br />session_start</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">session_unset</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">session_destroy</span><span style="color: #007700">();<br /><br /></span><span style="color: #0000BB">header</span><span style="color: #007700">(</span><span style="color: #DD0000">"Location:&nbsp;login.php"</span><span style="color: #007700">);<br />exit;<br /><br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Güvenlik notu</span></span><br />
Parolalar asla düz metin olarak saklanmamalıdır. Bir sonraki derste <span style="background-color: red; color: white;">&nbsp;password_hash&nbsp;</span> ve <span style="background-color: red; color: white;">&nbsp;password_verify&nbsp;</span> kullanılacaktır.</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_12_24_25.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_12_24_25.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 15 — Oturumlar ve Kullanıcı Girişi</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Sunucu, aynı kişinin sayfalar arasında gezdiğini nasıl hatırlar?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
Oturum başlatabilecek, oturum değişkeni oluşturabilecek, giriş yapmış kullanıcı kontrolü yapabilecek ve çıkış işlemini gerçekleştirebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>15.1. Oturum nedir?</b></span></div>
HTTP istekleri temel olarak birbirinden bağımsızdır. Kullanıcı bir sayfadan diğerine geçtiğinde sunucunun aynı kişiyi tanıyabilmesi için oturum mekanizması kullanılır. Her oturum kullanan PHP dosyasının başında, çıktı üretilmeden önce <span style="background-color: red; color: white;">&nbsp;session_start()&nbsp;</span> çağrılır.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br />session_start</span><span style="color: #007700">();<br /><br /></span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_id"</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #0000BB">12</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_adi"</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #DD0000">"Deniz"</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
Başka bir sayfada:<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br />session_start</span><span style="color: #007700">();<br /><br />echo&nbsp;</span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_adi"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">"Misafir"</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>15.2. Giriş kontrolü</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">session_start</span><span style="color: #007700">();<br /><br />if&nbsp;(!isset(</span><span style="color: #0000BB">&#36;_SESSION</span><span style="color: #007700">[</span><span style="color: #DD0000">"kullanici_id"</span><span style="color: #007700">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">header</span><span style="color: #007700">(</span><span style="color: #DD0000">"Location:&nbsp;login.php"</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;exit;<br />}&nbsp;<br /></span></code></div></div></div><br />
<span style="background-color: red; color: white;">&nbsp;header&nbsp;</span> yönlendirme yapar. <span style="background-color: red; color: white;">&nbsp;exit&nbsp;</span>, yönlendirmeden sonra mevcut kodun çalışmasını önler.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>15.3. Çıkış</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br />session_start</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">session_unset</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">session_destroy</span><span style="color: #007700">();<br /><br /></span><span style="color: #0000BB">header</span><span style="color: #007700">(</span><span style="color: #DD0000">"Location:&nbsp;login.php"</span><span style="color: #007700">);<br />exit;<br /><br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Güvenlik notu</span></span><br />
Parolalar asla düz metin olarak saklanmamalıdır. Bir sonraki derste <span style="background-color: red; color: white;">&nbsp;password_hash&nbsp;</span> ve <span style="background-color: red; color: white;">&nbsp;password_verify&nbsp;</span> kullanılacaktır.</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[CRUD Uygulaması: Kayıt Ekleme, Listeleme, Güncelleme, Silme (php 14.ders)]]></title>
			<link>https://gidenler.me/thread-807.html</link>
			<pubDate>Sat, 19 Sep 2026 10:48:25 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-807.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_47_27.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_47_27.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 14 — CRUD Uygulaması: Kayıt Ekleme, Listeleme, Güncelleme, Silme</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Bir uygulamanın temel veri işlemlerini baştan sona nasıl kurarız?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
CRUD mantığını bir mini ürün uygulamasına uygulayabilecek ve işlemleri birbirinden ayırabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>14.1. Kayıt ekleme</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">&#36;_SERVER</span><span style="color: #007700">[</span><span style="color: #DD0000">"REQUEST_METHOD"</span><span style="color: #007700">]&nbsp;===&nbsp;</span><span style="color: #DD0000">"POST"</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;ad&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">trim</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;fiyat&nbsp;</span><span style="color: #007700">=&nbsp;(float)&nbsp;(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"fiyat"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(</span><span style="color: #0000BB">&#36;ad&nbsp;</span><span style="color: #007700">!==&nbsp;</span><span style="color: #DD0000">""&nbsp;</span><span style="color: #007700">&amp;&amp;&nbsp;</span><span style="color: #0000BB">&#36;fiyat&nbsp;</span><span style="color: #007700">&gt;&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">"INSERT&nbsp;INTO&nbsp;products&nbsp;(name,&nbsp;price)&nbsp;VALUES&nbsp;(:name,&nbsp;:price)"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">([</span><span style="color: #DD0000">"name"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">&#36;ad</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"price"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">&#36;fiyat</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>14.2. Listeleme</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #DD0000">"SELECT&nbsp;*&nbsp;FROM&nbsp;products&nbsp;ORDER&nbsp;BY&nbsp;id&nbsp;DESC"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;products&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetchAll</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_ASSOC</span><span style="color: #007700">);<br /><br />foreach&nbsp;(</span><span style="color: #0000BB">&#36;products&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;product</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&lt;p&gt;"</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;product</span><span style="color: #007700">[</span><span style="color: #DD0000">"name"</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&nbsp;-&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;product</span><span style="color: #007700">[</span><span style="color: #DD0000">"price"</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&lt;/p&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>14.3. Güncelleme ve silme</b></span></div>
Güncelleme ve silme işlemlerinde hangi kaydın hedeflendiği <span style="background-color: red; color: white;">&nbsp;id&nbsp;</span> ile belirlenir. Ancak URL’den gelen <span style="background-color: red; color: white;">&nbsp;id&nbsp;</span> doğrudan güvenilir kabul edilmemelidir. Sayısal olup olmadığı kontrol edilmeli ve sorgu hazırlanmış ifade ile çalıştırılmalıdır.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">filter_input</span><span style="color: #007700">(</span><span style="color: #0000BB">INPUT_GET</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"id"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">FILTER_VALIDATE_INT</span><span style="color: #007700">);<br /><br />if&nbsp;(</span><span style="color: #0000BB">&#36;id&nbsp;</span><span style="color: #007700">!==&nbsp;</span><span style="color: #0000BB">false&nbsp;</span><span style="color: #007700">&amp;&amp;&nbsp;</span><span style="color: #0000BB">&#36;id&nbsp;</span><span style="color: #007700">!==&nbsp;</span><span style="color: #0000BB">null</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(</span><span style="color: #DD0000">"DELETE&nbsp;FROM&nbsp;products&nbsp;WHERE&nbsp;id&nbsp;=&nbsp;:id"</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">([</span><span style="color: #DD0000">"id"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">&#36;id</span><span style="color: #007700">]);<br />}&nbsp;<br /></span></code></div></div></div><br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Tasarım ilkesi</span></span><br />
Her işlemi tek bir dosyada karmaşık biçimde toplamak yerine <span style="background-color: red; color: white;">&nbsp;create.php&nbsp;</span>, <span style="background-color: red; color: white;">&nbsp;index.php&nbsp;</span>, <span style="background-color: red; color: white;">&nbsp;edit.php&nbsp;</span> ve <span style="background-color: red; color: white;">&nbsp;delete.php&nbsp;</span> gibi ayrılmış sorumluluklar kullanmak başlangıçta daha anlaşılırdır.</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_47_27.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_47_27.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 14 — CRUD Uygulaması: Kayıt Ekleme, Listeleme, Güncelleme, Silme</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Bir uygulamanın temel veri işlemlerini baştan sona nasıl kurarız?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
CRUD mantığını bir mini ürün uygulamasına uygulayabilecek ve işlemleri birbirinden ayırabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>14.1. Kayıt ekleme</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">&#36;_SERVER</span><span style="color: #007700">[</span><span style="color: #DD0000">"REQUEST_METHOD"</span><span style="color: #007700">]&nbsp;===&nbsp;</span><span style="color: #DD0000">"POST"</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;ad&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">trim</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;fiyat&nbsp;</span><span style="color: #007700">=&nbsp;(float)&nbsp;(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"fiyat"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(</span><span style="color: #0000BB">&#36;ad&nbsp;</span><span style="color: #007700">!==&nbsp;</span><span style="color: #DD0000">""&nbsp;</span><span style="color: #007700">&amp;&amp;&nbsp;</span><span style="color: #0000BB">&#36;fiyat&nbsp;</span><span style="color: #007700">&gt;&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">"INSERT&nbsp;INTO&nbsp;products&nbsp;(name,&nbsp;price)&nbsp;VALUES&nbsp;(:name,&nbsp;:price)"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">([</span><span style="color: #DD0000">"name"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">&#36;ad</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"price"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">&#36;fiyat</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>14.2. Listeleme</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #DD0000">"SELECT&nbsp;*&nbsp;FROM&nbsp;products&nbsp;ORDER&nbsp;BY&nbsp;id&nbsp;DESC"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;products&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetchAll</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_ASSOC</span><span style="color: #007700">);<br /><br />foreach&nbsp;(</span><span style="color: #0000BB">&#36;products&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;product</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&lt;p&gt;"</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;product</span><span style="color: #007700">[</span><span style="color: #DD0000">"name"</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&nbsp;-&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;product</span><span style="color: #007700">[</span><span style="color: #DD0000">"price"</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&lt;/p&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>14.3. Güncelleme ve silme</b></span></div>
Güncelleme ve silme işlemlerinde hangi kaydın hedeflendiği <span style="background-color: red; color: white;">&nbsp;id&nbsp;</span> ile belirlenir. Ancak URL’den gelen <span style="background-color: red; color: white;">&nbsp;id&nbsp;</span> doğrudan güvenilir kabul edilmemelidir. Sayısal olup olmadığı kontrol edilmeli ve sorgu hazırlanmış ifade ile çalıştırılmalıdır.<br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">filter_input</span><span style="color: #007700">(</span><span style="color: #0000BB">INPUT_GET</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"id"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">FILTER_VALIDATE_INT</span><span style="color: #007700">);<br /><br />if&nbsp;(</span><span style="color: #0000BB">&#36;id&nbsp;</span><span style="color: #007700">!==&nbsp;</span><span style="color: #0000BB">false&nbsp;</span><span style="color: #007700">&amp;&amp;&nbsp;</span><span style="color: #0000BB">&#36;id&nbsp;</span><span style="color: #007700">!==&nbsp;</span><span style="color: #0000BB">null</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(</span><span style="color: #DD0000">"DELETE&nbsp;FROM&nbsp;products&nbsp;WHERE&nbsp;id&nbsp;=&nbsp;:id"</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">([</span><span style="color: #DD0000">"id"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">&#36;id</span><span style="color: #007700">]);<br />}&nbsp;<br /></span></code></div></div></div><br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Tasarım ilkesi</span></span><br />
Her işlemi tek bir dosyada karmaşık biçimde toplamak yerine <span style="background-color: red; color: white;">&nbsp;create.php&nbsp;</span>, <span style="background-color: red; color: white;">&nbsp;index.php&nbsp;</span>, <span style="background-color: red; color: white;">&nbsp;edit.php&nbsp;</span> ve <span style="background-color: red; color: white;">&nbsp;delete.php&nbsp;</span> gibi ayrılmış sorumluluklar kullanmak başlangıçta daha anlaşılırdır.</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[PDO ile Veritabanına Bağlanmak (php 13.ders)]]></title>
			<link>https://gidenler.me/thread-806.html</link>
			<pubDate>Sat, 19 Sep 2026 10:36:53 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-806.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_35_43.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_35_43.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 13 — PDO ile Veritabanına Bağlanmak</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
PHP ile MySQL arasında güvenli bir iletişim nasıl kurulur?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
PDO bağlantısı oluşturabilecek, hata yakalayabilecek ve hazırlanmış sorgu kullanabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>13.1. PDO bağlantısı</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br /><br />&#36;host&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"127.0.0.1"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;db&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"php_dersleri"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;user&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"root"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;pass&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">&#36;dsn&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"mysql:host=</span><span style="color: #0000BB">&#36;host</span><span style="color: #DD0000">;dbname=</span><span style="color: #0000BB">&#36;db</span><span style="color: #DD0000">;charset=utf8mb4"</span><span style="color: #007700">;<br /><br />try&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;pdo&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;dsn</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;pass</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setAttribute</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ATTR_ERRMODE</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ERRMODE_EXCEPTION</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Bağlantı&nbsp;başarılı."</span><span style="color: #007700">;<br />}&nbsp;catch&nbsp;(</span><span style="color: #0000BB">PDOException&nbsp;&#36;e</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Veritabanı&nbsp;bağlantısı&nbsp;kurulamadı."</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
Gerçek projelerde veritabanı parolasını kaynak koduna yazmak yerine ortam değişkenleri veya güvenli yapılandırma kullanılır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>13.2. Hazırlanmış sorgu</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;sql&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"INSERT&nbsp;INTO&nbsp;users&nbsp;(name,&nbsp;email)&nbsp;VALUES&nbsp;(:name,&nbsp;:email)"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;sql</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">([<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">"name"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Mehmet"</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">"email"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"mehmet@example.com"<br /></span><span style="color: #007700">]);&nbsp;<br /></span></code></div></div></div><br />
Bu yaklaşım, kullanıcı verisinin SQL komutunun parçası hâline gelmesini önlemeye yardımcı olur.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>13.3. Kayıtları okumak</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #DD0000">"SELECT&nbsp;id,&nbsp;name,&nbsp;email&nbsp;FROM&nbsp;users"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;users&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetchAll</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_ASSOC</span><span style="color: #007700">);<br /><br />foreach&nbsp;(</span><span style="color: #0000BB">&#36;users&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">[</span><span style="color: #DD0000">"name"</span><span style="color: #007700">])&nbsp;.&nbsp;</span><span style="color: #DD0000">"&lt;br&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_35_43.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_35_43.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 13 — PDO ile Veritabanına Bağlanmak</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
PHP ile MySQL arasında güvenli bir iletişim nasıl kurulur?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
PDO bağlantısı oluşturabilecek, hata yakalayabilecek ve hazırlanmış sorgu kullanabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>13.1. PDO bağlantısı</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br /><br />&#36;host&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"127.0.0.1"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;db&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"php_dersleri"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;user&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"root"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;pass&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">&#36;dsn&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"mysql:host=</span><span style="color: #0000BB">&#36;host</span><span style="color: #DD0000">;dbname=</span><span style="color: #0000BB">&#36;db</span><span style="color: #DD0000">;charset=utf8mb4"</span><span style="color: #007700">;<br /><br />try&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;pdo&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;dsn</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;pass</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setAttribute</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ATTR_ERRMODE</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">ERRMODE_EXCEPTION</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Bağlantı&nbsp;başarılı."</span><span style="color: #007700">;<br />}&nbsp;catch&nbsp;(</span><span style="color: #0000BB">PDOException&nbsp;&#36;e</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Veritabanı&nbsp;bağlantısı&nbsp;kurulamadı."</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
Gerçek projelerde veritabanı parolasını kaynak koduna yazmak yerine ortam değişkenleri veya güvenli yapılandırma kullanılır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>13.2. Hazırlanmış sorgu</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;sql&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"INSERT&nbsp;INTO&nbsp;users&nbsp;(name,&nbsp;email)&nbsp;VALUES&nbsp;(:name,&nbsp;:email)"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;sql</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">execute</span><span style="color: #007700">([<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">"name"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Mehmet"</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">"email"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"mehmet@example.com"<br /></span><span style="color: #007700">]);&nbsp;<br /></span></code></div></div></div><br />
Bu yaklaşım, kullanıcı verisinin SQL komutunun parçası hâline gelmesini önlemeye yardımcı olur.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>13.3. Kayıtları okumak</b></span></div>
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;stmt&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;pdo</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #DD0000">"SELECT&nbsp;id,&nbsp;name,&nbsp;email&nbsp;FROM&nbsp;users"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;users&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;stmt</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">fetchAll</span><span style="color: #007700">(</span><span style="color: #0000BB">PDO</span><span style="color: #007700">::</span><span style="color: #0000BB">FETCH_ASSOC</span><span style="color: #007700">);<br /><br />foreach&nbsp;(</span><span style="color: #0000BB">&#36;users&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;user</span><span style="color: #007700">[</span><span style="color: #DD0000">"name"</span><span style="color: #007700">])&nbsp;.&nbsp;</span><span style="color: #DD0000">"&lt;br&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Veritabanı Mantığı ve MySQL (php 12.ders)]]></title>
			<link>https://gidenler.me/thread-805.html</link>
			<pubDate>Sat, 19 Sep 2026 10:26:00 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-805.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_23_41.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_23_41.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 12 — Veritabanı Mantığı ve MySQL</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Çok sayıda kaydı düzenli, hızlı ve güvenilir biçimde nasıl saklarız?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
Veritabanı, tablo, satır, sütun ve birincil anahtar kavramlarını açıklayabilecek; basit SQL komutlarını tanıyabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>12.1. Veritabanı nedir?</b></span></div>
Veritabanı, bilgilerin düzenli biçimde saklandığı sistemdir. Bir okul uygulamasında öğrenciler, dersler ve notlar ayrı tablolar hâlinde tutulabilir.<br />
<br />
<table width="100%" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Kavram</span></td><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Anlamı</span></td></tr>
<tr><td class="trow99" valign="top" align="">Veritabanı</td><td class="trow99" valign="top" align="">İlişkili tabloların bütünü</td></tr>
<tr><td class="trow99" valign="top" align="">Tablo</td><td class="trow99" valign="top" align="">Belirli türde kayıtların bulunduğu yapı</td></tr>
<tr><td class="trow99" valign="top" align="">Sütun</td><td class="trow99" valign="top" align="">Kaydın bir özelliği</td></tr>
<tr><td class="trow99" valign="top" align="">Satır</td><td class="trow99" valign="top" align="">Tek bir kayıt</td></tr>
<tr><td class="trow99" valign="top" align="">Birincil anahtar</td><td class="trow99" valign="top" align="">Kaydı benzersiz tanımlayan alan</td></tr></tbody></table>
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>12.2. SQL ile tablo oluşturmak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">CREATE&nbsp;TABLE&nbsp;users&nbsp;</span><span style="color: #007700">(<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">id&nbsp;INT&nbsp;AUTO_INCREMENT&nbsp;PRIMARY&nbsp;KEY</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">name&nbsp;VARCHAR</span><span style="color: #007700">(</span><span style="color: #0000BB">100</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">email&nbsp;VARCHAR</span><span style="color: #007700">(</span><span style="color: #0000BB">150</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;UNIQUE</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">created_at&nbsp;TIMESTAMP&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #0000BB">CURRENT_TIMESTAMP<br /></span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>12.3. Temel SQL işlemleri</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">INSERT&nbsp;INTO&nbsp;users&nbsp;</span><span style="color: #007700">(</span><span style="color: #0000BB">name</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">email</span><span style="color: #007700">)<br /></span><span style="color: #0000BB">VALUES&nbsp;</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ayşe'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'ayse@example.com'</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">SELECT&nbsp;</span><span style="color: #007700">*&nbsp;</span><span style="color: #0000BB">FROM&nbsp;users</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">UPDATE&nbsp;users&nbsp;SET&nbsp;name&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'Ayşe&nbsp;Yılmaz'&nbsp;</span><span style="color: #0000BB">WHERE&nbsp;id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">DELETE&nbsp;FROM&nbsp;users&nbsp;WHERE&nbsp;id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;&nbsp;<br /></span></code></div></div></div>Bu dört işlem genellikle CRUD olarak anılır: oluşturma, okuma, güncelleme ve silme.<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Önemli güvenlik uyarısı</span></span><br />
Kullanıcı girdisini SQL cümlesine doğrudan eklemek SQL Injection açığına yol açabilir. PHP’de sorgular için hazırlanmış ifadeler kullanılmalıdır. Bu konu bir sonraki derste uygulanacaktır.</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_23_41.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_23_41.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 12 — Veritabanı Mantığı ve MySQL</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Çok sayıda kaydı düzenli, hızlı ve güvenilir biçimde nasıl saklarız?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
Veritabanı, tablo, satır, sütun ve birincil anahtar kavramlarını açıklayabilecek; basit SQL komutlarını tanıyabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>12.1. Veritabanı nedir?</b></span></div>
Veritabanı, bilgilerin düzenli biçimde saklandığı sistemdir. Bir okul uygulamasında öğrenciler, dersler ve notlar ayrı tablolar hâlinde tutulabilir.<br />
<br />
<table width="100%" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Kavram</span></td><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Anlamı</span></td></tr>
<tr><td class="trow99" valign="top" align="">Veritabanı</td><td class="trow99" valign="top" align="">İlişkili tabloların bütünü</td></tr>
<tr><td class="trow99" valign="top" align="">Tablo</td><td class="trow99" valign="top" align="">Belirli türde kayıtların bulunduğu yapı</td></tr>
<tr><td class="trow99" valign="top" align="">Sütun</td><td class="trow99" valign="top" align="">Kaydın bir özelliği</td></tr>
<tr><td class="trow99" valign="top" align="">Satır</td><td class="trow99" valign="top" align="">Tek bir kayıt</td></tr>
<tr><td class="trow99" valign="top" align="">Birincil anahtar</td><td class="trow99" valign="top" align="">Kaydı benzersiz tanımlayan alan</td></tr></tbody></table>
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>12.2. SQL ile tablo oluşturmak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">CREATE&nbsp;TABLE&nbsp;users&nbsp;</span><span style="color: #007700">(<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">id&nbsp;INT&nbsp;AUTO_INCREMENT&nbsp;PRIMARY&nbsp;KEY</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">name&nbsp;VARCHAR</span><span style="color: #007700">(</span><span style="color: #0000BB">100</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">email&nbsp;VARCHAR</span><span style="color: #007700">(</span><span style="color: #0000BB">150</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;UNIQUE</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">created_at&nbsp;TIMESTAMP&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #0000BB">CURRENT_TIMESTAMP<br /></span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>12.3. Temel SQL işlemleri</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">INSERT&nbsp;INTO&nbsp;users&nbsp;</span><span style="color: #007700">(</span><span style="color: #0000BB">name</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">email</span><span style="color: #007700">)<br /></span><span style="color: #0000BB">VALUES&nbsp;</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ayşe'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'ayse@example.com'</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">SELECT&nbsp;</span><span style="color: #007700">*&nbsp;</span><span style="color: #0000BB">FROM&nbsp;users</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">UPDATE&nbsp;users&nbsp;SET&nbsp;name&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'Ayşe&nbsp;Yılmaz'&nbsp;</span><span style="color: #0000BB">WHERE&nbsp;id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">DELETE&nbsp;FROM&nbsp;users&nbsp;WHERE&nbsp;id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;&nbsp;<br /></span></code></div></div></div>Bu dört işlem genellikle CRUD olarak anılır: oluşturma, okuma, güncelleme ve silme.<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Önemli güvenlik uyarısı</span></span><br />
Kullanıcı girdisini SQL cümlesine doğrudan eklemek SQL Injection açığına yol açabilir. PHP’de sorgular için hazırlanmış ifadeler kullanılmalıdır. Bu konu bir sonraki derste uygulanacaktır.</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Dosyaya Veri Yazmak ve Okumak (php 11.ders)]]></title>
			<link>https://gidenler.me/thread-804.html</link>
			<pubDate>Sat, 19 Sep 2026 10:14:48 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-804.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_13_08.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_13_08.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 11 — Dosyaya Veri Yazmak ve Okumak</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Verileri henüz veritabanı kullanmadan kalıcı olarak nasıl saklayabiliriz?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
Dosya açma, yazma, okuma ve basit bir metin tabanlı kayıt mantığını anlayabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>11.1. Dosyaya yazmak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;mesaj&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"İlk&nbsp;kayıt&#092;n"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">file_put_contents</span><span style="color: #007700">(</span><span style="color: #DD0000">"notlar.txt"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;mesaj</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">FILE_APPEND</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><span style="background-color: red; color: white;">&nbsp;FILE_APPEND&nbsp;</span>, mevcut içeriğin sonuna ekleme yapar.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>11.2. Dosya okumak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;icerik&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">file_get_contents</span><span style="color: #007700">(</span><span style="color: #DD0000">"notlar.txt"</span><span style="color: #007700">);<br />echo&nbsp;</span><span style="color: #0000BB">nl2br</span><span style="color: #007700">(</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;icerik</span><span style="color: #007700">));&nbsp;<br /></span></code></div></div></div><span style="background-color: red; color: white;">&nbsp;nl2br&nbsp;</span>, satır sonlarını HTML’de satır sonuna dönüştürür. <span style="background-color: red; color: white;">&nbsp;htmlspecialchars&nbsp;</span> içeriğin güvenli gösterilmesine yardımcı olur.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>11.3. Sınırlılıklar</b></span></div>
Dosyaya yazma küçük denemeler için uygundur. Çok kullanıcılı uygulamalarda eş zamanlı yazma, arama, güncelleme ve veri bütünlüğü sorunları oluşabileceği için veritabanı daha uygun olur.</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_13_08.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_13_08.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 11 — Dosyaya Veri Yazmak ve Okumak</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Verileri henüz veritabanı kullanmadan kalıcı olarak nasıl saklayabiliriz?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
Dosya açma, yazma, okuma ve basit bir metin tabanlı kayıt mantığını anlayabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>11.1. Dosyaya yazmak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;mesaj&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">"İlk&nbsp;kayıt&#092;n"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">file_put_contents</span><span style="color: #007700">(</span><span style="color: #DD0000">"notlar.txt"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;mesaj</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">FILE_APPEND</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><span style="background-color: red; color: white;">&nbsp;FILE_APPEND&nbsp;</span>, mevcut içeriğin sonuna ekleme yapar.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>11.2. Dosya okumak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;icerik&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">file_get_contents</span><span style="color: #007700">(</span><span style="color: #DD0000">"notlar.txt"</span><span style="color: #007700">);<br />echo&nbsp;</span><span style="color: #0000BB">nl2br</span><span style="color: #007700">(</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;icerik</span><span style="color: #007700">));&nbsp;<br /></span></code></div></div></div><span style="background-color: red; color: white;">&nbsp;nl2br&nbsp;</span>, satır sonlarını HTML’de satır sonuna dönüştürür. <span style="background-color: red; color: white;">&nbsp;htmlspecialchars&nbsp;</span> içeriğin güvenli gösterilmesine yardımcı olur.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>11.3. Sınırlılıklar</b></span></div>
Dosyaya yazma küçük denemeler için uygundur. Çok kullanıcılı uygulamalarda eş zamanlı yazma, arama, güncelleme ve veri bütünlüğü sorunları oluşabileceği için veritabanı daha uygun olur.</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Dosyalar ve Kodun Düzenlenmesi (php 10.ders)]]></title>
			<link>https://gidenler.me/thread-803.html</link>
			<pubDate>Sat, 19 Sep 2026 10:04:34 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-803.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_01_51.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_01_51.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 10 — Dosyalar ve Kodun Düzenlenmesi</b></span></div>
Bu dersin temel sorusu<br />
Aynı menüyü ve başlığı her sayfada yeniden yazmadan nasıl kullanırız?<br />
<br />
Öğrenme hedefleri<br />
"<span style="background-color: red; color: white;">&nbsp;include&nbsp;</span>" ve "<span style="background-color: red; color: white;">&nbsp;require&nbsp;</span>" kullanımını, ortak dosya yapısını ve basit bir proje klasör düzenini kavrayabileceksin.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>10.1. Tekrar eden kod problemi</b></span></div>
Bir sitenin her sayfasında aynı menüyü yazarsak, menü değiştiğinde bütün dosyaları tek tek düzenlememiz gerekir. Bu, hata riskini artırır.<br />
<br />
<span style="background-color: #6aa84f;color: white;">&nbsp;header.php&nbsp;</span>:<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;!</span><span style="color: #0000BB">doctype&nbsp;html</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">html&nbsp;lang</span><span style="color: #007700">=</span><span style="color: #DD0000">"tr"</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">head</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">meta&nbsp;charset</span><span style="color: #007700">=</span><span style="color: #DD0000">"UTF-8"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">title</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">PHP&nbsp;Dersleri</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">title</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">head</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">body</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">nav</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"index.php"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Ana&nbsp;sayfa</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"hakkimizda.php"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Hakkımızda</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">nav</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
<span style="background-color: #6aa84f;color: white;">&nbsp;footer.php&nbsp;</span>:<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">footer</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">p</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">2026&nbsp;PHP&nbsp;Dersleri</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">p</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">footer</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">body</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">html</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
Bir sayfada:<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php&nbsp;</span><span style="color: #007700">require&nbsp;</span><span style="color: #DD0000">"header.php"</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">?&gt;<br /></span><br />&lt;h1&gt;Ana&nbsp;Sayfa&lt;/h1&gt;<br />&lt;p&gt;İçerik&nbsp;burada&nbsp;yer&nbsp;alır.&lt;/p&gt;<br /><br /><span style="color: #0000BB">&lt;?php&nbsp;</span><span style="color: #007700">require&nbsp;</span><span style="color: #DD0000">"footer.php"</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>10.2. "<span style="background-color: red; color: white;">&nbsp;include&nbsp;</span>" ve "<span style="background-color: red; color: white;">&nbsp;require&nbsp;</span>"</b></span></div>
"<span style="background-color: red; color: white;">&nbsp;include&nbsp;</span>", dosya bulunamadığında uyarı verir ve program devam edebilir. "<span style="background-color: red; color: white;">&nbsp;require&nbsp;</span>", gerekli dosya bulunamadığında ciddi hata oluşturur. Uygulamanın çalışması için zorunlu dosyalarda genellikle "<span style="background-color: red; color: white;">&nbsp;require&nbsp;</span>" tercih edilir.<br />
<br />
Örnek klasör yapısı<br />
<br />
php-dersleri/<ul class="mycode_list"><li>index.php<br />
</li>
<li>hakkimizda.php<br />
</li>
<li>includes/<ul class="mycode_list"><li>header.php<br />
</li>
<li>footer.php</li>
</ul>
</li>
<li>assets/<ul class="mycode_list"><li>style.css</li>
</ul>
</li>
</ul>
</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_10_01_51.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_10_01_51.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 10 — Dosyalar ve Kodun Düzenlenmesi</b></span></div>
Bu dersin temel sorusu<br />
Aynı menüyü ve başlığı her sayfada yeniden yazmadan nasıl kullanırız?<br />
<br />
Öğrenme hedefleri<br />
"<span style="background-color: red; color: white;">&nbsp;include&nbsp;</span>" ve "<span style="background-color: red; color: white;">&nbsp;require&nbsp;</span>" kullanımını, ortak dosya yapısını ve basit bir proje klasör düzenini kavrayabileceksin.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>10.1. Tekrar eden kod problemi</b></span></div>
Bir sitenin her sayfasında aynı menüyü yazarsak, menü değiştiğinde bütün dosyaları tek tek düzenlememiz gerekir. Bu, hata riskini artırır.<br />
<br />
<span style="background-color: #6aa84f;color: white;">&nbsp;header.php&nbsp;</span>:<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;!</span><span style="color: #0000BB">doctype&nbsp;html</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">html&nbsp;lang</span><span style="color: #007700">=</span><span style="color: #DD0000">"tr"</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">head</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">meta&nbsp;charset</span><span style="color: #007700">=</span><span style="color: #DD0000">"UTF-8"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">title</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">PHP&nbsp;Dersleri</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">title</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">head</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">body</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">nav</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"index.php"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Ana&nbsp;sayfa</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"hakkimizda.php"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Hakkımızda</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">nav</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
<span style="background-color: #6aa84f;color: white;">&nbsp;footer.php&nbsp;</span>:<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">footer</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">p</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">2026&nbsp;PHP&nbsp;Dersleri</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">p</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">footer</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">body</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">html</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
Bir sayfada:<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php&nbsp;</span><span style="color: #007700">require&nbsp;</span><span style="color: #DD0000">"header.php"</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">?&gt;<br /></span><br />&lt;h1&gt;Ana&nbsp;Sayfa&lt;/h1&gt;<br />&lt;p&gt;İçerik&nbsp;burada&nbsp;yer&nbsp;alır.&lt;/p&gt;<br /><br /><span style="color: #0000BB">&lt;?php&nbsp;</span><span style="color: #007700">require&nbsp;</span><span style="color: #DD0000">"footer.php"</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">?&gt;</span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>10.2. "<span style="background-color: red; color: white;">&nbsp;include&nbsp;</span>" ve "<span style="background-color: red; color: white;">&nbsp;require&nbsp;</span>"</b></span></div>
"<span style="background-color: red; color: white;">&nbsp;include&nbsp;</span>", dosya bulunamadığında uyarı verir ve program devam edebilir. "<span style="background-color: red; color: white;">&nbsp;require&nbsp;</span>", gerekli dosya bulunamadığında ciddi hata oluşturur. Uygulamanın çalışması için zorunlu dosyalarda genellikle "<span style="background-color: red; color: white;">&nbsp;require&nbsp;</span>" tercih edilir.<br />
<br />
Örnek klasör yapısı<br />
<br />
php-dersleri/<ul class="mycode_list"><li>index.php<br />
</li>
<li>hakkimizda.php<br />
</li>
<li>includes/<ul class="mycode_list"><li>header.php<br />
</li>
<li>footer.php</li>
</ul>
</li>
<li>assets/<ul class="mycode_list"><li>style.css</li>
</ul>
</li>
</ul>
</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Doğrulama ve Güvenli Kullanıcı Girdisi(php 9.ders)]]></title>
			<link>https://gidenler.me/thread-802.html</link>
			<pubDate>Sat, 19 Sep 2026 09:47:10 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-802.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_9_46_00.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_9_46_00.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 9 — Doğrulama ve Güvenli Kullanıcı Girdisi</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Kullanıcının gönderdiği verinin doğru ve güvenli olduğundan nasıl emin oluruz?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
Boş alan kontrolü yapabilecek, veri türü doğrulayabilecek ve kullanıcı girdisini çıktılamadan önce güvenli hâle getirebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>9.1. Doğrulama neden gereklidir?</b></span></div>
Kullanıcı her zaman beklediğimiz türde veri göndermez. Yaş alanına harf yazabilir, e-posta alanına geçersiz bir değer girebilir veya kötü amaçlı kod gönderebilir.<br />
<br />
Doğrulama iki ayrı amaca hizmet eder:<ul class="mycode_list"><li><span style="color: white;background-color: black;">&nbsp;İş kuralı doğrulaması:&nbsp;</span> Veri beklenen biçimde mi?<br />
</li>
<li><span style="color: white;background-color: black;">&nbsp;Güvenlik:&nbsp;</span> Veri uygulamaya zarar verebilir mi?</li>
</ul>
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>9.2. Basit doğrulama</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;hatalar&nbsp;</span><span style="color: #007700">=&nbsp;[];<br /></span><span style="color: #0000BB">&#36;isim&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">trim</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"isim"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;email&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">trim</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"email"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">);<br /><br />if&nbsp;(</span><span style="color: #0000BB">&#36;isim&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;hatalar</span><span style="color: #007700">[]&nbsp;=&nbsp;</span><span style="color: #DD0000">"İsim&nbsp;alanı&nbsp;boş&nbsp;bırakılamaz."</span><span style="color: #007700">;<br />}<br /><br />if&nbsp;(!</span><span style="color: #0000BB">filter_var</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;email</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">FILTER_VALIDATE_EMAIL</span><span style="color: #007700">))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;hatalar</span><span style="color: #007700">[]&nbsp;=&nbsp;</span><span style="color: #DD0000">"Geçerli&nbsp;bir&nbsp;e-posta&nbsp;adresi&nbsp;giriniz."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div><br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>9.3. Hataları göstermek</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">count</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;hatalar</span><span style="color: #007700">)&nbsp;&gt;&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;(</span><span style="color: #0000BB">&#36;hatalar&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;hata</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&lt;p&gt;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;hata</span><span style="color: #007700">)&nbsp;.&nbsp;</span><span style="color: #DD0000">"&lt;/p&gt;"</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}&nbsp;else&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Form&nbsp;başarıyla&nbsp;gönderildi."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_9_46_00.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_9_46_00.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 9 — Doğrulama ve Güvenli Kullanıcı Girdisi</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Kullanıcının gönderdiği verinin doğru ve güvenli olduğundan nasıl emin oluruz?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
Boş alan kontrolü yapabilecek, veri türü doğrulayabilecek ve kullanıcı girdisini çıktılamadan önce güvenli hâle getirebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>9.1. Doğrulama neden gereklidir?</b></span></div>
Kullanıcı her zaman beklediğimiz türde veri göndermez. Yaş alanına harf yazabilir, e-posta alanına geçersiz bir değer girebilir veya kötü amaçlı kod gönderebilir.<br />
<br />
Doğrulama iki ayrı amaca hizmet eder:<ul class="mycode_list"><li><span style="color: white;background-color: black;">&nbsp;İş kuralı doğrulaması:&nbsp;</span> Veri beklenen biçimde mi?<br />
</li>
<li><span style="color: white;background-color: black;">&nbsp;Güvenlik:&nbsp;</span> Veri uygulamaya zarar verebilir mi?</li>
</ul>
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>9.2. Basit doğrulama</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;hatalar&nbsp;</span><span style="color: #007700">=&nbsp;[];<br /></span><span style="color: #0000BB">&#36;isim&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">trim</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"isim"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;email&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">trim</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"email"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">);<br /><br />if&nbsp;(</span><span style="color: #0000BB">&#36;isim&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;hatalar</span><span style="color: #007700">[]&nbsp;=&nbsp;</span><span style="color: #DD0000">"İsim&nbsp;alanı&nbsp;boş&nbsp;bırakılamaz."</span><span style="color: #007700">;<br />}<br /><br />if&nbsp;(!</span><span style="color: #0000BB">filter_var</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;email</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">FILTER_VALIDATE_EMAIL</span><span style="color: #007700">))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;hatalar</span><span style="color: #007700">[]&nbsp;=&nbsp;</span><span style="color: #DD0000">"Geçerli&nbsp;bir&nbsp;e-posta&nbsp;adresi&nbsp;giriniz."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div><br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>9.3. Hataları göstermek</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">count</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;hatalar</span><span style="color: #007700">)&nbsp;&gt;&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;(</span><span style="color: #0000BB">&#36;hatalar&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;hata</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&lt;p&gt;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;hata</span><span style="color: #007700">)&nbsp;.&nbsp;</span><span style="color: #DD0000">"&lt;/p&gt;"</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}&nbsp;else&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Form&nbsp;başarıyla&nbsp;gönderildi."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Formlar: Kullanıcıdan Veri Almak (php 8.ders)]]></title>
			<link>https://gidenler.me/thread-801.html</link>
			<pubDate>Sat, 19 Sep 2026 09:38:53 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-801.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_9_37_25.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_9_37_25.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 8 — Formlar: Kullanıcıdan Veri Almak</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Kullanıcı bir web sayfasına bilgi girdiğinde PHP bu bilgiye nasıl ulaşır?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
HTML formu oluşturabilecek, "<span style="background-color: red; color: white;">&nbsp;GET&nbsp;</span>" ve "<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>" arasındaki temel farkı açıklayabilecek ve gelen veriyi güvenli biçimde okumaya başlayabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>8.1. Basit form</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">form&nbsp;method</span><span style="color: #007700">=</span><span style="color: #DD0000">"post"&nbsp;</span><span style="color: #0000BB">action</span><span style="color: #007700">=</span><span style="color: #DD0000">"sonuc.php"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">label</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Adınız</span><span style="color: #007700">:&lt;/</span><span style="color: #0000BB">label</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">input&nbsp;type</span><span style="color: #007700">=</span><span style="color: #DD0000">"text"&nbsp;</span><span style="color: #0000BB">name</span><span style="color: #007700">=</span><span style="color: #DD0000">"isim"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">button&nbsp;type</span><span style="color: #007700">=</span><span style="color: #DD0000">"submit"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Gönder</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">button</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">form</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div>"<span style="background-color: red; color: white;">&nbsp;name&nbsp;</span>" niteliği, sunucuya gönderilen anahtardır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>8.2. "<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>" verisini okumak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br /><br />&#36;isim&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"isim"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">;<br /><br />echo&nbsp;</span><span style="color: #DD0000">"Merhaba,&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;isim</span><span style="color: #007700">)&nbsp;.&nbsp;</span><span style="color: #DD0000">"!"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div>"<span style="background-color: red; color: white;">&nbsp;??&nbsp;</span>" operatörü, değer yoksa varsayılan bir değer kullanır. "<span style="background-color: red; color: white;">&nbsp;htmlspecialchars&nbsp;</span>", kullanıcı verisinin HTML olarak yorumlanmasını engellemeye yardımcı olur.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>8.3. "<span style="background-color: red; color: white;">&nbsp;GET&nbsp;</span>" ve "<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>"</b></span></div>
<table width="100%" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Yöntem</span></td><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Kullanım</span></td><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Veri görünürlüğü</span></td></tr>
<tr><td class="trow99" valign="top" align="">GET</td><td class="trow99" valign="top" align="">Arama, filtreleme, sayfalama</td><td class="trow99" valign="top" align="">URL’de görünür</td></tr>
<tr><td class="trow99" valign="top" align="">POST</td><td class="trow99" valign="top" align="">Form gönderme, kayıt oluşturma</td><td class="trow99" valign="top" align="">URL’de görünmez</td></tr></tbody></table><ul class="mycode_list"><li>"<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>" veriyi gizli hale getirmez. Hassas veriler için ayrıca HTTPS, doğrulama ve güvenli saklama gerekir.</li>
</ul>
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Yaygın hatalar</span></span><ul class="mycode_list"><li>Formdaki "<span style="background-color: red; color: white;">&nbsp;name&nbsp;</span>" ile PHP’deki anahtarı farklı yazmak.<br />
</li>
<li>Alan boşken doğrudan kullanmak.<br />
</li>
<li>Kullanıcı girdisini kontrol etmeden HTML içine basmak.<br />
</li>
<li>"<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>" verisini "<span style="background-color: red; color: white;">&nbsp;GET&nbsp;</span>" ile okumaya çalışmak.</li>
</ul>
</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_19_09_26_9_37_25.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_19_09_26_9_37_25.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 8 — Formlar: Kullanıcıdan Veri Almak</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Kullanıcı bir web sayfasına bilgi girdiğinde PHP bu bilgiye nasıl ulaşır?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
HTML formu oluşturabilecek, "<span style="background-color: red; color: white;">&nbsp;GET&nbsp;</span>" ve "<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>" arasındaki temel farkı açıklayabilecek ve gelen veriyi güvenli biçimde okumaya başlayabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>8.1. Basit form</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">form&nbsp;method</span><span style="color: #007700">=</span><span style="color: #DD0000">"post"&nbsp;</span><span style="color: #0000BB">action</span><span style="color: #007700">=</span><span style="color: #DD0000">"sonuc.php"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">label</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Adınız</span><span style="color: #007700">:&lt;/</span><span style="color: #0000BB">label</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">input&nbsp;type</span><span style="color: #007700">=</span><span style="color: #DD0000">"text"&nbsp;</span><span style="color: #0000BB">name</span><span style="color: #007700">=</span><span style="color: #DD0000">"isim"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">button&nbsp;type</span><span style="color: #007700">=</span><span style="color: #DD0000">"submit"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Gönder</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">button</span><span style="color: #007700">&gt;<br />&lt;/</span><span style="color: #0000BB">form</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div>"<span style="background-color: red; color: white;">&nbsp;name&nbsp;</span>" niteliği, sunucuya gönderilen anahtardır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>8.2. "<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>" verisini okumak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&lt;?php<br /><br />&#36;isim&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">"isim"</span><span style="color: #007700">]&nbsp;??&nbsp;</span><span style="color: #DD0000">""</span><span style="color: #007700">;<br /><br />echo&nbsp;</span><span style="color: #DD0000">"Merhaba,&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">htmlspecialchars</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;isim</span><span style="color: #007700">)&nbsp;.&nbsp;</span><span style="color: #DD0000">"!"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></code></div></div></div>"<span style="background-color: red; color: white;">&nbsp;??&nbsp;</span>" operatörü, değer yoksa varsayılan bir değer kullanır. "<span style="background-color: red; color: white;">&nbsp;htmlspecialchars&nbsp;</span>", kullanıcı verisinin HTML olarak yorumlanmasını engellemeye yardımcı olur.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>8.3. "<span style="background-color: red; color: white;">&nbsp;GET&nbsp;</span>" ve "<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>"</b></span></div>
<table width="100%" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Yöntem</span></td><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Kullanım</span></td><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Veri görünürlüğü</span></td></tr>
<tr><td class="trow99" valign="top" align="">GET</td><td class="trow99" valign="top" align="">Arama, filtreleme, sayfalama</td><td class="trow99" valign="top" align="">URL’de görünür</td></tr>
<tr><td class="trow99" valign="top" align="">POST</td><td class="trow99" valign="top" align="">Form gönderme, kayıt oluşturma</td><td class="trow99" valign="top" align="">URL’de görünmez</td></tr></tbody></table><ul class="mycode_list"><li>"<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>" veriyi gizli hale getirmez. Hassas veriler için ayrıca HTTPS, doğrulama ve güvenli saklama gerekir.</li>
</ul>
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Yaygın hatalar</span></span><ul class="mycode_list"><li>Formdaki "<span style="background-color: red; color: white;">&nbsp;name&nbsp;</span>" ile PHP’deki anahtarı farklı yazmak.<br />
</li>
<li>Alan boşken doğrudan kullanmak.<br />
</li>
<li>Kullanıcı girdisini kontrol etmeden HTML içine basmak.<br />
</li>
<li>"<span style="background-color: red; color: white;">&nbsp;POST&nbsp;</span>" verisini "<span style="background-color: red; color: white;">&nbsp;GET&nbsp;</span>" ile okumaya çalışmak.</li>
</ul>
</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Fonksiyonlar: Tekrarlanabilir Çözüm Üretmek (php 7.ders)]]></title>
			<link>https://gidenler.me/thread-800.html</link>
			<pubDate>Fri, 18 Sep 2026 20:43:23 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-800.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_18_09_26_8_41_23.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_18_09_26_8_41_23.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 7 — Fonksiyonlar: Tekrarlanabilir Çözüm Üretmek</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Aynı işlemi farklı verilerle tekrar tekrar kullanmak için ne yapabiliriz?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
Fonksiyon tanımlayabilecek, parametre kullanabilecek, değer döndürebilecek ve kodu küçük sorumluluklara ayırabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>7.1. Fonksiyon nedir?</b></span></div>
Fonksiyon, belirli bir işi yapan ve gerektiğinde çağrılabilen kod bloğudur.<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">function&nbsp;</span><span style="color: #0000BB">selamla</span><span style="color: #007700">()<br />{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Merhaba!"</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">selamla</span><span style="color: #007700">();&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>7.2. Parametre kullanmak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">function&nbsp;</span><span style="color: #0000BB">selamla</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;isim</span><span style="color: #007700">)<br />{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Merhaba,&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">&#36;isim&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"!"</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">selamla</span><span style="color: #007700">(</span><span style="color: #DD0000">"Ayşe"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">selamla</span><span style="color: #007700">(</span><span style="color: #DD0000">"Mehmet"</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div>Parametre, fonksiyona dışarıdan gönderilen bilgidir.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>7.3. Değer döndürmek</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">function&nbsp;</span><span style="color: #0000BB">topla</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;a</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;b</span><span style="color: #007700">)<br />{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">return&nbsp;</span><span style="color: #0000BB">&#36;a&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">&#36;b</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">&#36;sonuc&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">topla</span><span style="color: #007700">(</span><span style="color: #0000BB">5</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">7</span><span style="color: #007700">);<br />echo&nbsp;</span><span style="color: #0000BB">&#36;sonuc</span><span style="color: #007700">;&nbsp;<br /></span></code></div></div></div><span style="background-color: red; color: white;">&nbsp;return&nbsp;</span>, sonucu fonksiyonun dışına taşır. <span style="background-color: red; color: white;">&nbsp;echo&nbsp;</span> ise sonucu doğrudan gösterir. Bu iki amaç birbirinden farklıdır.<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>7.4. İyi fonksiyonun özellikleri</b></span></div>
İyi bir fonksiyon genellikle tek bir temel iş yapar, anlamlı bir ada sahiptir ve dışarıdan aldığı bilgiler açıkça belirtilmiştir.</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_18_09_26_8_41_23.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_18_09_26_8_41_23.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 7 — Fonksiyonlar: Tekrarlanabilir Çözüm Üretmek</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Aynı işlemi farklı verilerle tekrar tekrar kullanmak için ne yapabiliriz?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
Fonksiyon tanımlayabilecek, parametre kullanabilecek, değer döndürebilecek ve kodu küçük sorumluluklara ayırabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>7.1. Fonksiyon nedir?</b></span></div>
Fonksiyon, belirli bir işi yapan ve gerektiğinde çağrılabilen kod bloğudur.<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">function&nbsp;</span><span style="color: #0000BB">selamla</span><span style="color: #007700">()<br />{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Merhaba!"</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">selamla</span><span style="color: #007700">();&nbsp;<br /></span></code></div></div></div><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>7.2. Parametre kullanmak</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">function&nbsp;</span><span style="color: #0000BB">selamla</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;isim</span><span style="color: #007700">)<br />{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Merhaba,&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">&#36;isim&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"!"</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">selamla</span><span style="color: #007700">(</span><span style="color: #DD0000">"Ayşe"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">selamla</span><span style="color: #007700">(</span><span style="color: #DD0000">"Mehmet"</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div>Parametre, fonksiyona dışarıdan gönderilen bilgidir.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>7.3. Değer döndürmek</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">function&nbsp;</span><span style="color: #0000BB">topla</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;a</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;b</span><span style="color: #007700">)<br />{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">return&nbsp;</span><span style="color: #0000BB">&#36;a&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">&#36;b</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">&#36;sonuc&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">topla</span><span style="color: #007700">(</span><span style="color: #0000BB">5</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">7</span><span style="color: #007700">);<br />echo&nbsp;</span><span style="color: #0000BB">&#36;sonuc</span><span style="color: #007700">;&nbsp;<br /></span></code></div></div></div><span style="background-color: red; color: white;">&nbsp;return&nbsp;</span>, sonucu fonksiyonun dışına taşır. <span style="background-color: red; color: white;">&nbsp;echo&nbsp;</span> ise sonucu doğrudan gösterir. Bu iki amaç birbirinden farklıdır.<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>7.4. İyi fonksiyonun özellikleri</b></span></div>
İyi bir fonksiyon genellikle tek bir temel iş yapar, anlamlı bir ada sahiptir ve dışarıdan aldığı bilgiler açıkça belirtilmiştir.</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Diziler: Birden Fazla Veriyi Düzenlemek (php 6.ders)]]></title>
			<link>https://gidenler.me/thread-799.html</link>
			<pubDate>Fri, 18 Sep 2026 20:29:41 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-799.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"> <a href="https://gidenler.me/gallery/2_18_09_26_8_27_53.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_18_09_26_8_27_53.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 6 — Diziler: Birden Fazla Veriyi Düzenlemek</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Birden fazla ürünü, öğrenciyi veya mesajı nasıl tek bir yapı içinde saklarız?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
İndeksli diziler, ilişkisel diziler ve iç içe diziler oluşturabilecek; dizi elemanlarına erişebilecek ve diziler üzerinde döngü kurabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>6.1. İndeksli diziler</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;meyveler&nbsp;</span><span style="color: #007700">=&nbsp;[</span><span style="color: #DD0000">"elma"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"armut"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"muz"</span><span style="color: #007700">];<br /><br />echo&nbsp;</span><span style="color: #0000BB">&#36;meyveler</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">];&nbsp;<br /></span></code></div></div></div>İlk elemanın indisi 0’dır. Bu ayrıntı başlangıçta sık karıştırılır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>6.2. İlişkisel diziler</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;ogrenci&nbsp;</span><span style="color: #007700">=&nbsp;[<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #DD0000">"ad"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Deniz"</span><span style="color: #007700">,<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #DD0000">"yas"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">21</span><span style="color: #007700">,<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #DD0000">"bolum"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Bilgisayar"<br /></span><span style="color: #007700">];<br /><br />echo&nbsp;</span><span style="color: #0000BB">&#36;ogrenci</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"</span><span style="color: #007700">];&nbsp;<br /></span></code></div></div></div>İlişkisel dizilerde elemanlara anlamlı anahtarlarla ulaşırız.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>6.3. İç içe diziler</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;urunler&nbsp;</span><span style="color: #007700">=&nbsp;[<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Klavye"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"fiyat"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">850</span><span style="color: #007700">],<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Fare"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"fiyat"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">450</span><span style="color: #007700">]<br />];<br /><br />foreach&nbsp;(</span><span style="color: #0000BB">&#36;urunler&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;urun</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">&#36;urun</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"</span><span style="color: #007700">]&nbsp;.&nbsp;</span><span style="color: #DD0000">":&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">&#36;urun</span><span style="color: #007700">[</span><span style="color: #DD0000">"fiyat"</span><span style="color: #007700">]&nbsp;.&nbsp;</span><span style="color: #DD0000">"&nbsp;TL&lt;br&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Bu yapı, veritabanından gelen kayıtları temsil etmeye benzer.<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Yararlı dizi fonksiyonları</span></span><br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">count</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;meyveler</span><span style="color: #007700">);</span><span style="color: #0000BB"> &nbsp; &nbsp;  &nbsp;</span><span style="color: #FF8000">//&nbsp;Eleman&nbsp;sayısı<br /></span><span style="color: #0000BB">in_array</span><span style="color: #007700">(</span><span style="color: #DD0000">"muz"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;meyveler</span><span style="color: #007700">);&nbsp;</span><span style="color: #FF8000">//&nbsp;Eleman&nbsp;var&nbsp;mı?<br /></span><span style="color: #0000BB">sort</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;meyveler</span><span style="color: #007700">);</span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #FF8000">//&nbsp;Sıralama&nbsp;<br /></span></code></div></div></div></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"> <a href="https://gidenler.me/gallery/2_18_09_26_8_27_53.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_18_09_26_8_27_53.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 6 — Diziler: Birden Fazla Veriyi Düzenlemek</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Birden fazla ürünü, öğrenciyi veya mesajı nasıl tek bir yapı içinde saklarız?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
İndeksli diziler, ilişkisel diziler ve iç içe diziler oluşturabilecek; dizi elemanlarına erişebilecek ve diziler üzerinde döngü kurabileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>6.1. İndeksli diziler</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;meyveler&nbsp;</span><span style="color: #007700">=&nbsp;[</span><span style="color: #DD0000">"elma"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"armut"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"muz"</span><span style="color: #007700">];<br /><br />echo&nbsp;</span><span style="color: #0000BB">&#36;meyveler</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">];&nbsp;<br /></span></code></div></div></div>İlk elemanın indisi 0’dır. Bu ayrıntı başlangıçta sık karıştırılır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>6.2. İlişkisel diziler</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;ogrenci&nbsp;</span><span style="color: #007700">=&nbsp;[<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #DD0000">"ad"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Deniz"</span><span style="color: #007700">,<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #DD0000">"yas"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">21</span><span style="color: #007700">,<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #DD0000">"bolum"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Bilgisayar"<br /></span><span style="color: #007700">];<br /><br />echo&nbsp;</span><span style="color: #0000BB">&#36;ogrenci</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"</span><span style="color: #007700">];&nbsp;<br /></span></code></div></div></div>İlişkisel dizilerde elemanlara anlamlı anahtarlarla ulaşırız.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>6.3. İç içe diziler</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;urunler&nbsp;</span><span style="color: #007700">=&nbsp;[<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Klavye"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"fiyat"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">850</span><span style="color: #007700">],<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Fare"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"fiyat"&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">450</span><span style="color: #007700">]<br />];<br /><br />foreach&nbsp;(</span><span style="color: #0000BB">&#36;urunler&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;urun</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">&#36;urun</span><span style="color: #007700">[</span><span style="color: #DD0000">"ad"</span><span style="color: #007700">]&nbsp;.&nbsp;</span><span style="color: #DD0000">":&nbsp;"&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #0000BB">&#36;urun</span><span style="color: #007700">[</span><span style="color: #DD0000">"fiyat"</span><span style="color: #007700">]&nbsp;.&nbsp;</span><span style="color: #DD0000">"&nbsp;TL&lt;br&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Bu yapı, veritabanından gelen kayıtları temsil etmeye benzer.<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Yararlı dizi fonksiyonları</span></span><br />
<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">count</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;meyveler</span><span style="color: #007700">);</span><span style="color: #0000BB"> &nbsp; &nbsp;  &nbsp;</span><span style="color: #FF8000">//&nbsp;Eleman&nbsp;sayısı<br /></span><span style="color: #0000BB">in_array</span><span style="color: #007700">(</span><span style="color: #DD0000">"muz"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;meyveler</span><span style="color: #007700">);&nbsp;</span><span style="color: #FF8000">//&nbsp;Eleman&nbsp;var&nbsp;mı?<br /></span><span style="color: #0000BB">sort</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;meyveler</span><span style="color: #007700">);</span><span style="color: #0000BB"> &nbsp; &nbsp; &nbsp; &nbsp;</span><span style="color: #FF8000">//&nbsp;Sıralama&nbsp;<br /></span></code></div></div></div></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Döngüler: Tekrarlanan İşleri Otomatikleştirmek (php 5.ders)]]></title>
			<link>https://gidenler.me/thread-798.html</link>
			<pubDate>Fri, 18 Sep 2026 20:07:12 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-798.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_18_09_26_8_04_03.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_18_09_26_8_04_03.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 5 — Döngüler: Tekrarlanan İşleri Otomatikleştirmek</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Aynı işlemi yüzlerce kez yazmadan nasıl tekrarlarız?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
“for”, “while” ve “foreach” döngülerinin temel kullanım alanlarını ayırt edebileceksiniz.<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>5.1. “for” döngüsü</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">for&nbsp;(</span><span style="color: #0000BB">&#36;i&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">&#36;i&nbsp;</span><span style="color: #007700">&lt;=&nbsp;</span><span style="color: #0000BB">5</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">&#36;i</span><span style="color: #007700">++)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">&#36;i&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"&lt;br&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Başlangıç, devam koşulu ve her turdaki değişim olmak üzere üç bölüm vardır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>5.2. “while” döngüsü</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;sayi&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;<br /><br />while&nbsp;(</span><span style="color: #0000BB">&#36;sayi&nbsp;</span><span style="color: #007700">&lt;=&nbsp;</span><span style="color: #0000BB">5</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">&#36;sayi&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"&lt;br&gt;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;&#36;sayi</span><span style="color: #007700">++;<br />}&nbsp;<br /></span></code></div></div></div>Koşul doğru kaldığı sürece çalışır. Döngü içinde koşulu değiştiren bir işlem bulunmazsa sonsuz döngü oluşabilir.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>5.3. “foreach” döngüsü</b></span></div>
Dizilerle çalışırken “foreach” oldukça kullanışlıdır.<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;renkler&nbsp;</span><span style="color: #007700">=&nbsp;[</span><span style="color: #DD0000">"kırmızı"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"mavi"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"yeşil"</span><span style="color: #007700">];<br /><br />foreach&nbsp;(</span><span style="color: #0000BB">&#36;renkler&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;renk</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">&#36;renk&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"&lt;br&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div><br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Uygulama: Çarpım tablosu</span></span><br />
<div class="codeblock"><div class="title">Kod:</div><div class="body" dir="ltr"><code>&#36;sayi = 7;<br />
<br />
for (&#36;i = 1; &#36;i &lt;= 10; &#36;i++) {<br />
    echo &#36;sayi . " x " . &#36;i . " = " . (&#36;sayi * &#36;i) . "&lt;br&gt;";<br />
}</code></div></div></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_18_09_26_8_04_03.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_18_09_26_8_04_03.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 5 — Döngüler: Tekrarlanan İşleri Otomatikleştirmek</b></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Bu dersin temel sorusu</span></span><br />
Aynı işlemi yüzlerce kez yazmadan nasıl tekrarlarız?<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Öğrenme hedefleri</span></span><br />
“for”, “while” ve “foreach” döngülerinin temel kullanım alanlarını ayırt edebileceksiniz.<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>5.1. “for” döngüsü</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">for&nbsp;(</span><span style="color: #0000BB">&#36;i&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">&#36;i&nbsp;</span><span style="color: #007700">&lt;=&nbsp;</span><span style="color: #0000BB">5</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">&#36;i</span><span style="color: #007700">++)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">&#36;i&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"&lt;br&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Başlangıç, devam koşulu ve her turdaki değişim olmak üzere üç bölüm vardır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>5.2. “while” döngüsü</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;sayi&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;<br /><br />while&nbsp;(</span><span style="color: #0000BB">&#36;sayi&nbsp;</span><span style="color: #007700">&lt;=&nbsp;</span><span style="color: #0000BB">5</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">&#36;sayi&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"&lt;br&gt;"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;&#36;sayi</span><span style="color: #007700">++;<br />}&nbsp;<br /></span></code></div></div></div>Koşul doğru kaldığı sürece çalışır. Döngü içinde koşulu değiştiren bir işlem bulunmazsa sonsuz döngü oluşabilir.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>5.3. “foreach” döngüsü</b></span></div>
Dizilerle çalışırken “foreach” oldukça kullanışlıdır.<br />
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;renkler&nbsp;</span><span style="color: #007700">=&nbsp;[</span><span style="color: #DD0000">"kırmızı"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"mavi"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"yeşil"</span><span style="color: #007700">];<br /><br />foreach&nbsp;(</span><span style="color: #0000BB">&#36;renkler&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;renk</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">&#36;renk&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"&lt;br&gt;"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div><br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Uygulama: Çarpım tablosu</span></span><br />
<div class="codeblock"><div class="title">Kod:</div><div class="body" dir="ltr"><code>&#36;sayi = 7;<br />
<br />
for (&#36;i = 1; &#36;i &lt;= 10; &#36;i++) {<br />
    echo &#36;sayi . " x " . &#36;i . " = " . (&#36;sayi * &#36;i) . "&lt;br&gt;";<br />
}</code></div></div></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Programın Karar Vermesi (php 4.ders)]]></title>
			<link>https://gidenler.me/thread-797.html</link>
			<pubDate>Fri, 18 Sep 2026 12:59:26 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gidenler.me/member.php?action=profile&uid=2">Hasan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gidenler.me/thread-797.html</guid>
			<description><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_18_09_26_12_55_43.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_18_09_26_12_55_43.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 4 — Koşullar: Programın Karar Vermesi</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Program, farklı durumlarda farklı davranmayı nasıl öğrenir?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
“if”, “else”, “elseif” yapılarını kullanabilecek ve koşulları gerçek yaşam problemlerine dönüştürebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>4.1. “if” yapısı</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;yas&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">20</span><span style="color: #007700">;<br /><br />if&nbsp;(</span><span style="color: #0000BB">&#36;yas&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">18</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Oy&nbsp;kullanma&nbsp;yaşına&nbsp;ulaştınız."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Koşul doğruysa süslü parantez içindeki kod çalışır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>4.2. Birden fazla durum</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;not&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">75</span><span style="color: #007700">;<br /><br />if&nbsp;(</span><span style="color: #0000BB">&#36;not&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">85</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Pekiyi"</span><span style="color: #007700">;<br />}&nbsp;elseif&nbsp;(</span><span style="color: #0000BB">&#36;not&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">70</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"İyi"</span><span style="color: #007700">;<br />}&nbsp;elseif&nbsp;(</span><span style="color: #0000BB">&#36;not&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">50</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Geçti"</span><span style="color: #007700">;<br />}&nbsp;else&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Kaldı"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Koşullar yukarıdan aşağıya değerlendirilir. İlk doğru koşulun bloğu çalışır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>4.3. Karar tablosu kullanmak</b></span></div>
Kod yazmadan önce durumları tabloya dökmek, mantık hatalarını azaltır.<br />
<table width="100%" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Not aralığı</span></td><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Sonuç</span></td></tr>
<tr><td class="trow99" valign="top" align="">85 ve üzeri</td><td class="trow99" valign="top" align="">Pekiyi</td></tr>
<tr><td class="trow99" valign="top" align="">70–84</td><td class="trow99" valign="top" align="">İyi</td></tr>
<tr><td class="trow99" valign="top" align="">50–69</td><td class="trow99" valign="top" align="">Geçti</td></tr>
<tr><td class="trow99" valign="top" align="">0–49</td><td class="trow99" valign="top" align="">Kaldı</td></tr></tbody></table>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Uygulama</span></span><br />
Bir sıcaklık değeri al. Değer 0’dan küçükse “Donma riski”, 0 ile 30 arasındaysa “Normal”, 30’dan büyükse “Sıcak” yazdır.<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Yaygın hatalar</span></span><ul class="mycode_list"><li>Koşulun sonuna “;” koymak.<br />
</li>
<li>Süslü parantezleri yanlış kapatmak.<br />
</li>
<li>Daha geniş koşulu daha dar koşuldan önce yazmak.<br />
</li>
<li>Kullanıcıdan gelen sayının gerçekten sayı olup olmadığını kontrol etmemek.<br />
</li>
</ul>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Ders özeti</span></span><br />
Koşullar programın karar vermesini sağlar. Programı yazmadan önce mümkün olan durumları ve her durumda beklenen sonucu düşünmek, yalnızca kod yazmaktan daha önemlidir.</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: justify;" class="mycode_align"><a href="https://gidenler.me/gallery/2_18_09_26_12_55_43.png" alt="Resim Linki"><img src="https://gidenler.me/gallery/2_18_09_26_12_55_43.png" style="max-width: 495px;" title="Resmi tam boyut görmek için tıklayınız." alt="Resim" /></a><br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>Ders 4 — Koşullar: Programın Karar Vermesi</b></span></div>
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Bu dersin temel sorusu</span></span><br />
Program, farklı durumlarda farklı davranmayı nasıl öğrenir?<br />
<br />
<span style="color: #C10300;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Öğrenme hedefleri</span></span><br />
“if”, “else”, “elseif” yapılarını kullanabilecek ve koşulları gerçek yaşam problemlerine dönüştürebileceksiniz.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>4.1. “if” yapısı</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;yas&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">20</span><span style="color: #007700">;<br /><br />if&nbsp;(</span><span style="color: #0000BB">&#36;yas&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">18</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Oy&nbsp;kullanma&nbsp;yaşına&nbsp;ulaştınız."</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Koşul doğruysa süslü parantez içindeki kod çalışır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>4.2. Birden fazla durum</b></span></div>
<div class="codeblock phpcodeblock"><div class="title">PHP Kod:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;not&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">75</span><span style="color: #007700">;<br /><br />if&nbsp;(</span><span style="color: #0000BB">&#36;not&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">85</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Pekiyi"</span><span style="color: #007700">;<br />}&nbsp;elseif&nbsp;(</span><span style="color: #0000BB">&#36;not&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">70</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"İyi"</span><span style="color: #007700">;<br />}&nbsp;elseif&nbsp;(</span><span style="color: #0000BB">&#36;not&nbsp;</span><span style="color: #007700">&gt;=&nbsp;</span><span style="color: #0000BB">50</span><span style="color: #007700">)&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Geçti"</span><span style="color: #007700">;<br />}&nbsp;else&nbsp;{<br /></span><span style="color: #0000BB"> &nbsp; &nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">"Kaldı"</span><span style="color: #007700">;<br />}&nbsp;<br /></span></code></div></div></div>Koşullar yukarıdan aşağıya değerlendirilir. İlk doğru koşulun bloğu çalışır.<br />
<br />
<br />
<div class="baslik_bbcode"><span style="font-size: 15px"><b>4.3. Karar tablosu kullanmak</b></span></div>
Kod yazmadan önce durumları tabloya dökmek, mantık hatalarını azaltır.<br />
<table width="100%" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Not aralığı</span></td><td class="trow99" valign="top" align=""><span style="font-weight: bold;" class="mycode_b">Sonuç</span></td></tr>
<tr><td class="trow99" valign="top" align="">85 ve üzeri</td><td class="trow99" valign="top" align="">Pekiyi</td></tr>
<tr><td class="trow99" valign="top" align="">70–84</td><td class="trow99" valign="top" align="">İyi</td></tr>
<tr><td class="trow99" valign="top" align="">50–69</td><td class="trow99" valign="top" align="">Geçti</td></tr>
<tr><td class="trow99" valign="top" align="">0–49</td><td class="trow99" valign="top" align="">Kaldı</td></tr></tbody></table>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Uygulama</span></span><br />
Bir sıcaklık değeri al. Değer 0’dan küçükse “Donma riski”, 0 ile 30 arasındaysa “Normal”, 30’dan büyükse “Sıcak” yazdır.<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Yaygın hatalar</span></span><ul class="mycode_list"><li>Koşulun sonuna “;” koymak.<br />
</li>
<li>Süslü parantezleri yanlış kapatmak.<br />
</li>
<li>Daha geniş koşulu daha dar koşuldan önce yazmak.<br />
</li>
<li>Kullanıcıdan gelen sayının gerçekten sayı olup olmadığını kontrol etmemek.<br />
</li>
</ul>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: #C10300;" class="mycode_color">Ders özeti</span></span><br />
Koşullar programın karar vermesini sağlar. Programı yazmadan önce mümkün olan durumları ve her durumda beklenen sonucu düşünmek, yalnızca kod yazmaktan daha önemlidir.</div>]]></content:encoded>
		</item>
	</channel>
</rss>