mirror of
https://github.com/php/doc-tr.git
synced 2026-03-23 23:02:09 +01:00
504 lines
21 KiB
XML
504 lines
21 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!-- EN-Revision: 1fd637525fd3bbaec04f6fff80eeb33fce880b10 Maintainer: tpug Status: ready -->
|
||
<chapter xml:id="tutorial" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||
<title>Basit bir eğitmen</title>
|
||
|
||
<para>
|
||
Bu bölümde PHP ile ilgili en temel bilgilerdan bahsedilecek,
|
||
kısa ve basit bir eğitmenden yararlanılacaktır. Bu eğitmen yalnızca PHP ile
|
||
etkileşimli site sayfaları geliştirmeyi ele alır, ancak PHP'nin yeteneği
|
||
yalnızca site sayfaları oluşturmakla sınırlı değildir. Daha fazla bilgi için
|
||
<link linkend="intro-whatcando">PHP'nin yapabildikleri</link> bölümü
|
||
incelenebilir.
|
||
</para>
|
||
<para>
|
||
PHP tarafından etkinleştirilen site sayfaları normal HTML sayfaları
|
||
gibidir ve bu sayfaları normal HTML sayfaları için kullanılan
|
||
yöntemlerle oluşturulabilir ve düzenlenebilir.
|
||
</para>
|
||
|
||
<section xml:id="tutorial.requirements">
|
||
<title>Neye ihtiyaç var?</title>
|
||
<para>
|
||
Bu eğitmen süresince HTTP sunucusunda PHP desteğinin etkinleştirilmiş
|
||
olduğu ve tüm <filename class="extension">.php</filename> uzantılı dosyaların PHP
|
||
tarafından yorumlandığı varsayılacaktır. Çoğu sunucuda, bu uzantı PHP
|
||
dosyaları için öntanımlı dosya uzantısıdır, ancak emin olmak için
|
||
sunucunun yöneticisinden doğru bilgi edinilebilir. Kullanılan sunucu
|
||
PHP'yi destekliyorsa, başka hiçbir şeye ihtiyaç yok demektir.
|
||
Yalnızca <filename class="extension">.php</filename> uzantılı dosyaları oluşturup
|
||
sunucunun belge dizinlerine koymak, sunucunun bu dosyayı otomatik
|
||
olarak işleme koyması için yeterli olacaktır. Herhangi
|
||
bir şeyi derlemek ya da fazladan bir araç kurulumu yapmak
|
||
gerekmemektedir. PHP tarafından etkinleştirilen dosyalar yeni bir tür
|
||
HTML dosyası olarak düşünülebilir. Öyle ki, artık
|
||
HTML dosyasının içine sihirli birtakım etiketler konabilir ve bu
|
||
etiketler sayesinde istenen her tür işlem gerçekleştirilebilir.
|
||
</para>
|
||
<para>
|
||
Çok değerli olan band genişliği boşa harcanmadan yerel olarak geliştirme
|
||
yapılmak isteniyor olsun. Bu durumda,
|
||
<link xlink:href="&url.apache;">Apache</link> gibi bir HTTP sunucusunun
|
||
ve elbette <link xlink:href="&url.php.downloads;">PHP</link>'nin
|
||
indirilmesi ve kurulması gerekecektir. Bu ikilinin yanında,
|
||
<link xlink:href="&url.mysql.docs;">MySQL</link> gibi bir veritabanının
|
||
da indirilip kurulması iyi olacaktır.
|
||
</para>
|
||
<para>
|
||
Bu üçlüyü tek tek kurmak yerine daha basit bir yol izlenebilir.
|
||
Bu kılavuz <link linkend="install">PHP için kurulum bilgileri</link>
|
||
(HTTP sunucunuzun halihazırda kurulu olduğunu varsayılır) bölümüne sahiptir.
|
||
PHP'yi kurmakta sorun yaşanırsa, sorunların çözümü için
|
||
<link xlink:href="&url.php.mailing-lists;">kurulum posta listesi</link>'ne
|
||
başvurulabilir. Daha basit bir yoldan gitmek istenirse, işletim
|
||
sistemine uygun olan <link xlink:href="&url.installkits;">ön
|
||
yapılandırmalı paket</link>ler seçilebilir ve tüm bu araçlar bir kaç fare
|
||
tıklamasıyla otomatik olarak yüklenebilir. MacOSX, Linux ve Windows
|
||
dahil olmak üzere birçok işletim sistemine PHP destekli bir HTTP sunucusu
|
||
kurmak oldukça kolaydır. Linux üzerinde,
|
||
<link xlink:href="&url.rpmfind;">rpmfind</link> ve
|
||
<link xlink:href="&url.rpmfind.pbone;">PBone</link> gibi araçlar RPM
|
||
dosyalarını bulmakta yardımcı olacaktır. Debian için ise
|
||
<link xlink:href="&url.apt-get;">apt-get</link> sayfası ziyaret
|
||
edilebilir.
|
||
</para>
|
||
</section>
|
||
|
||
<section xml:id="tutorial.firstpage">
|
||
<title>İlk PHP-etkin sayfa</title>
|
||
<para>
|
||
<filename>merhaba.php</filename> isimli bir dosya oluşturulup HTTP
|
||
sunucusunun belge kök dizinine (<varname>DOCUMENT_ROOT</varname>)
|
||
aşağıdaki içerikle kaydedilebilir:
|
||
</para>
|
||
<para>
|
||
<example>
|
||
<title>- İlk PHP betiği: <filename>merhaba.php</filename></title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
|
||
echo "Merhaba Dünya";
|
||
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
<simpara>
|
||
Tarayıcı kullanılarak HTTP sunucusunun adresine erişilebilir, bunun için
|
||
sunucu alan adının sonuna <literal>/merhaba.php</literal> eklemek
|
||
yeterli olacaktır. Yerel olarak geliştirme yaparken bu URL
|
||
<literal>http://localhost/merhaba.php</literal> veya
|
||
<literal>http://127.0.0.1/merhaba.php</literal> ya da
|
||
<literal>http://[::1]/merhaba.php</literal> gibi bir şey olacaktır,
|
||
ancak bu HTTP sunucusunun yapılandırma ayarlarına bağlıdır.
|
||
</simpara>
|
||
<simpara>
|
||
PHP normal bir HTML sayfasına gömülebilir. Bu, HTML belgesinin içine
|
||
aşağıdaki örnekte gösterildiği gibi PHP ifadelerinin yazılabileceği
|
||
anlamına gelir:
|
||
</simpara>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<!DOCTYPE html>
|
||
<html>
|
||
<head>
|
||
<title>PHP Denemesi</title>
|
||
</head>
|
||
<body>
|
||
<?php echo '<p>Merhaba Dünya</p>'; ?>
|
||
</body>
|
||
</html>
|
||
]]>
|
||
</programlisting>
|
||
<simpara>
|
||
Eğer her şey düzgün yapılandırılmışsa, bu dosya PHP tarafından işlenecek
|
||
ve tarayıcıya aşağıdaki çıktı gönderilecektir:
|
||
</simpara>
|
||
<screen role="html">
|
||
<![CDATA[
|
||
<html>
|
||
<head>
|
||
<title>PHP Denemesi</title>
|
||
</head>
|
||
<body>
|
||
<p>Merhaba Dünya</p>
|
||
</body>
|
||
</html>
|
||
]]>
|
||
</screen>
|
||
</example>
|
||
</para>
|
||
<para>
|
||
Bu kod gördüğünüz gibi son derece basittir ve esasında böyle bir sayfa
|
||
oluşturmak için PHP'ye gereksinim yoktur. Görüntülenen:
|
||
PHP'nin <function>echo</function> deyimi kullanılarak elde edilen
|
||
<literal>Merhaba Dünya</literal> cümlesidir. Bu dosyanın hiçbir şekilde
|
||
<emphasis>çalıştırılabilir olmasına ya da özel bir türde olmasına ihtiyaç
|
||
duyulmaz</emphasis>. Sunucu, bu dosyanın PHP tarafından
|
||
işlenmesi gerektiğini bilir, çünkü dosyaya ".php" uzantısı tanımlanmıştır.
|
||
Sunucu bu uzantıya sahip dosyaları PHP'ye aktaracak biçimde
|
||
yapılandırılmıştır. Bu dosya birtakım özel etiketlerle birçok ilginç
|
||
işlem yapılmasını sağlayan bir tür HTML dosyası olarak düşünülebilir.
|
||
</para>
|
||
<para>
|
||
Bu örnek denendiği halde hiçbir çıktı alınamazsa, dosyanın
|
||
indirilmesi istendiyse ya da dosyanın tüm içeriği metin olarak ekranda
|
||
görünüyorsa, büyük ihtimalle sunucunun PHP desteği etkinleştirilmemiştir
|
||
ya da sunucu doğru yapılandırılmamıştır. Sistem yöneticisinden kılavuzdaki
|
||
<link linkend="install">Kurulum</link> bölümünü kullanarak PHP'yi
|
||
etkinleştirmesi istenebilir. Yerel olarak geliştirme yapılıyorsa, kurulum
|
||
bölümü okunarak herşeyin doğru yapılandırılması sağlanabilir. Çıktıyı
|
||
sağlayan sunucudaki dosyaya <code>http://</code> üzerinden erişilmelidir.
|
||
Dosya <code>file://</code> üzerinden isteniyorsa, PHP tarafından
|
||
işlenmeyecektir. Sorun her şeye rağmen devam ediyorsa,
|
||
<link xlink:href="&url.php.support;">PHP desteği alma</link> yöntemleri
|
||
kullanılabilir.
|
||
</para>
|
||
<para>
|
||
Bu örneğin amacı özel PHP etiketi biçemini göstermektir. Örnekte
|
||
<literal><?php</literal> ile PHP başlangıç etiketi belirtilmektedir.
|
||
Sonra PHP komutu yazılmış ve kapanış etiketi <literal>?></literal>
|
||
kullanarak PHP kipinden çıkılmıştır. Bir HTML dosyasında bu yöntem
|
||
kullanılarak gereken yerde PHP kipine girip çıkılabilir. Daha fazla bilgi
|
||
için, kılavuzun <link linkend="language.basic-syntax">temel PHP sözdimi</link>
|
||
bölümünü okunabilir.
|
||
</para>
|
||
|
||
<note>
|
||
<info><title>Satır-sonları hakkında</title></info>
|
||
<para>
|
||
Satır-sonu karakterlerinin HTML içinde bir önemi yoktur, bununla birlikte
|
||
HTML kodunun göze hoş görünmesi için satır-sonu karakterlerini kullanmak
|
||
gerekir. <literal>?></literal> kapama etiketinin hemen ardından gelen
|
||
satır-sonu karakterini PHP silecektir. Dosyanın içine çok sayıda PHP
|
||
kodu konulması veya hiçbir şey çıktılamayan betiklerin dosyaya dahil
|
||
edilmesi durumunda bu çok işe yarar. Ancak bu biraz kafa karıştırıcı
|
||
olabilir. <literal>?></literal> kapama etiketinden sonra bir
|
||
satır-sonu karakterinin çıktılanması istenirse, ya kapama
|
||
etiketinden sonra bir boşluk bırakıp onun ardına satır-sonu karakteri
|
||
konulmalı ya da PHP kodunun son echo/print deyiminin sonuna bir satır-sonu
|
||
karakteri eklenmelidir.
|
||
</para>
|
||
</note>
|
||
|
||
<note>
|
||
<title>Metin Düzenleyiciler Hakkında</title>
|
||
<para>
|
||
PHP dosyalarını oluşturmak, düzenlemek ve yönetmek için birçok metin
|
||
düzenleyici ve Bütünleşik Geliştirme Ortamı (BGO) bulunmaktadır.
|
||
Bu araçların bir kısmı
|
||
<link xlink:href="&url.phpeditorlist;">PHP Düzenleyicileri Listesi</link>
|
||
bölümünde listelenmiştir. Önerilmesi istenen bir düzenleyici
|
||
varsa, yukarıdaki sayfayı ziyaret edilip sayfa idarecisinden
|
||
önerilmek istenen düzenleyicinin bu listeye eklemesi rica edilmelidir. Söz
|
||
dizimi vurgulaması olan bir düzenleyicinin büyük yardımı olur.
|
||
</para>
|
||
</note>
|
||
|
||
<note>
|
||
<title>Kelime İşlemciler Hakkında</title>
|
||
<para>
|
||
StarOffice Writer, Microsoft Word ve Abiword gibi kelime işlemciler PHP
|
||
dosyalarını düzenlemek için uygun değildir. Eğer bu deneme betiği
|
||
için bunlardan biri kullanılmak istenirse, dosyanın <emphasis>salt
|
||
metin</emphasis> olarak kaydedildiğinden emin olunmalıdır, aksi takdirde
|
||
PHP'nin betiği okuması ve çalıştırması mümkün olmayacaktır.
|
||
</para>
|
||
</note>
|
||
|
||
<para>
|
||
Artık çalışır bir PHP betiği başarıyla oluşturulduğuna göre, PHP
|
||
betiklerinin en ünlüsünü oluşturma zamanı geldi demektir!
|
||
<function>phpinfo</function> işlevi çalıştırılıp sistem ve
|
||
yapılandırma ilgili
|
||
<link linkend="language.variables.predefined">öntanımlı değişkenler</link>,
|
||
yüklü PHP modülleri ve <link linkend="configuration">yapılandırma</link>
|
||
ayarları gibi konularda faydalı birçok bilgiye ulaşılabilir. Bu önemli
|
||
bilgiler için biraz vakit ayrılması ve bunların incelenmesi önerilir.
|
||
</para>
|
||
<para>
|
||
<example>
|
||
<title>- PHP ile sistem bilgisine ulaşmak</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php phpinfo(); ?>
|
||
]]>
|
||
</programlisting>
|
||
</example>
|
||
</para>
|
||
</section>
|
||
|
||
<section xml:id="tutorial.useful">
|
||
<title>İşe yarar bir şey</title>
|
||
<para>
|
||
Bu kez kod daha işe yarar bir şey yapsın. Ziyaretçinin hangi tarayıcıyı
|
||
kullandığı tespit edilebilir. Bunun için, ziyaretçinin tarayıcısı
|
||
tarafından HTTP isteği ile birlikte gönderilen kullanıcı aracısı
|
||
dizgesine bakılır. Bu bilgi bir
|
||
<link linkend="language.variables">değişkende</link> saklanır. Değişkenler
|
||
PHP'de her zaman dolar imi ile başlar. Şu an için ilgilenilen değişken
|
||
<varname>$_SERVER['HTTP_USER_AGENT']</varname>'tir.
|
||
</para>
|
||
<note>
|
||
<para>
|
||
<varname>$_SERVER</varname> PHP kullanımına ayrılmış özel bir değişken
|
||
olup HTTP sunucusunun tüm bilgilerini içerir. Bu tür değişkenlere süper
|
||
küreseller denir. Bu konuda daha ayrıntılı bilgi <link
|
||
linkend="language.variables.superglobals">Süper Küreseller</link>
|
||
bölümünde bulunabilir.
|
||
</para>
|
||
</note>
|
||
<para>
|
||
Bu değişkenin değerinin görüntülenmesi için yapılacaklar:
|
||
</para>
|
||
<para>
|
||
<example>
|
||
<title>- Bir değişkeni (dizi öğesini) yazdırmak</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php echo $_SERVER['HTTP_USER_AGENT']; ?>
|
||
]]>
|
||
</programlisting>
|
||
<para>
|
||
Bu betiğin çıktısı şöyle bir dizge olabilirdi:
|
||
</para>
|
||
<screen role="html">
|
||
<![CDATA[
|
||
Mozilla/5.0 (Linux) Firefox/112.0
|
||
]]>
|
||
</screen>
|
||
</example>
|
||
</para>
|
||
<para>
|
||
PHP'de birçok farklı değişken <link linkend="language.types">türü</link>
|
||
mevcuttur. Yukardaki örnekte bir
|
||
<link linkend="language.types.array">dizi</link>ye ait bir öğe yazdırıldı.
|
||
Diziler çok daha kullanışlı olabilir.
|
||
</para>
|
||
<para>
|
||
<varname>$_SERVER</varname> PHP tarafından kullanıma otomatik
|
||
olarak sunulan bir değişkendir. Kullanım kılavuzunun
|
||
<link linkend="reserved.variables">Öntanımlı Değişkenler</link>
|
||
bölümünden tümünün listesine ulaşılabilir ya da önceki örnekte
|
||
kullanılan <function>phpinfo</function> işlevi ile üretilen çıktıya
|
||
bakarak bütün listeye ulaşılabilir.
|
||
</para>
|
||
<para>
|
||
PHP etiketinin içine birden çok PHP komutu konabilir ve tek bir echo
|
||
komutundan daha fazlasını yapan küçük kodlar oluşturulabilir.
|
||
Örneğin, ziyaretçin Firefox kullanıp kullanmadığı şöyle saptanabilir:
|
||
</para>
|
||
<para>
|
||
<example>
|
||
<title>- <link linkend="language.control-structures">Denetim yapılarının
|
||
</link> ve <link linkend="language.functions">işlevlerin</link> kullanım
|
||
örneği</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
if (str_contains($_SERVER['HTTP_USER_AGENT'], 'Firefox')) {
|
||
echo 'Firefox kullanıldığı saptandı';
|
||
}
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
<para>
|
||
Bu betiğin çıktısı şöyle olabilirdi:
|
||
</para>
|
||
<screen role="html">
|
||
<![CDATA[
|
||
Firefox kullanıldığı saptandı.
|
||
]]>
|
||
</screen>
|
||
</example>
|
||
</para>
|
||
<para>
|
||
Burada birkaç yeni kavram devreye sokuldu. Örneğin, <link
|
||
linkend="control-structures.if">if</link> deyimi; C dilinde
|
||
kullanılan temel sözdizimine aşinalık varsa, bu kullanım tanıdık
|
||
gelecektir. Aksi takdirde, giriş düzeyinde bir PHP kitabı edinilmesi ve ilk
|
||
birkaç bölümünün okunması ya da kılavuzun <link linkend="langref">Dil
|
||
Başvuru Kılavuzu</link> bölümünün okunması faydalı olacaktır.
|
||
</para>
|
||
<para>
|
||
Devreye sokulan ikinci kavram, <function>str_contains</function> işlevi ile
|
||
yapılan çağrı oldu. <function>str_contains</function>, bir dizgeyi başka bir
|
||
dizgenin içinde arayan yerleşik bir PHP işlevidir. Burada
|
||
<varname>$_SERVER['HTTP_USER_AGENT']</varname> içinde (samanlık)
|
||
<literal>'Firefox'</literal> dizgesi (iğne) aranıyor. İğne samanlıkta
|
||
bulunursa &true;, aksi takdirde &false; döner.
|
||
<link linkend="control-structures.if">if</link> ifadesinin sonucu
|
||
&true; olduğu takdirde kaşlı ayraçlar arasındaki kod
|
||
çalıştırılır. Aksi takdirde kod çalıştırılmaz. <link
|
||
linkend="control-structures.if">If</link>, <link
|
||
linkend="control-structures.else">else</link> gibi denetim yapıları ile
|
||
<function>strtoupper</function> ve <function>strlen</function> gibi
|
||
işlevler kullanılarak benzer örnekler yazılabilir. İlgili her
|
||
kılavuz sayfası aynı zamanda örnekler de içermektedir. Bu işlevlerin nasıl
|
||
kullanması gerektiğinden emin olunamıyorsa, kılavuzdaki <link
|
||
linkend="about.prototypes">bir işlev tanımı nasıl okunur</link> ve <link
|
||
linkend="language.functions">PHP işlevleri</link> bölümleri
|
||
okunabilir.
|
||
</para>
|
||
<para>
|
||
Bu bir adım öteye taşınabilir ve bir PHP kodunun tam ortasındayken
|
||
bile HTML kipine nasıl girilip çıkılabileceği gösterilebilir:
|
||
</para>
|
||
<para>
|
||
<example>
|
||
<title>- HTML ve PHP kiplerini karıştırmak</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
if (str_contains($_SERVER['HTTP_USER_AGENT'], 'Firefox')) {
|
||
?>
|
||
<h3>str_contains() false döndürmemiş olmalı</h3>
|
||
<p>Firefox kullanıldığı saptandı.</p>
|
||
<?php
|
||
} else {
|
||
?>
|
||
<h3>str_contains() false döndürmüş olmalı</h3>
|
||
<p>Firefox kullanılmadığı saptandı.</p>
|
||
<?php
|
||
}
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
<para>
|
||
Bu betikten elde edilebilecek sonuçlardan biri:
|
||
</para>
|
||
<screen role="html">
|
||
<![CDATA[
|
||
<h3>str_contains() false döndürmemiş olmalı</h3>
|
||
<p>Firefox kullanıldığı saptandı.</p>
|
||
]]>
|
||
</screen>
|
||
</example>
|
||
</para>
|
||
<para>
|
||
Bir çıktı üretmek için PHP echo komutunu kullanmak yerine, PHP kipinden
|
||
çıkıldı ve düz HTML gönderildi. Burada dikkat edilmesi gereken önemli
|
||
nokta, betiğin mantıksal akışının değişmiyor olmasıdır.
|
||
<function>str_contains</function> işlevinden edinilen sonuca göre HTML kod
|
||
çiftlerinden yalnızca biri görüntüleyiciye gönderilmektedir. Başka bir
|
||
deyişle, bu işleyiş <literal>Firefox</literal> dizgesinin bulunup
|
||
bulunmamasına bağlıdır.
|
||
</para>
|
||
</section>
|
||
|
||
<section xml:id="tutorial.forms">
|
||
<title>Form Kullanımı</title>
|
||
<para>
|
||
PHP'nin en güçlü özelliklerinden biri HTML formlarına yaklaşım
|
||
biçimidir. Bilinmesi gereken ilk önemli durum, form içindeki tüm
|
||
elemanların PHP tarafından otomatik olarak kullanılabilir olacağıdır.
|
||
PHP ile formların kullanımı ve daha ayrıntılı bilgi için <link
|
||
linkend="language.variables.external">Dış kaynaklı değişkenler</link>
|
||
bölümü okunabilir. Örnek HTML formu:
|
||
</para>
|
||
<para>
|
||
<example>
|
||
<title>- Örnek HTML formu</title>
|
||
<programlisting role="html">
|
||
<![CDATA[
|
||
<form action="action.php" method="post">
|
||
<label for="name">İsminiz:</label>
|
||
<input name="name" id="name" type="text">
|
||
|
||
<label for="age">Yaşınız:</label>
|
||
<input name="age" id="age" type="number">
|
||
|
||
<button type="submit">Gönder</button>
|
||
</form>
|
||
]]>
|
||
</programlisting>
|
||
</example>
|
||
</para>
|
||
<para>
|
||
Bu formda özel hiçbir şey yoktur. Hiçbir özel etiket içermeyen düz bir
|
||
HTML formudur. Kullanıcı formu doldurup 'Gönder' tuşuna bastığında,
|
||
<filename>action.php</filename> sayfası çağrılır. Bu dosyaya aşağıdakiler
|
||
yazılabilir:
|
||
</para>
|
||
<para>
|
||
<example>
|
||
<title>- Formdan veri yazdırmak</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
Merhaba <?php echo htmlspecialchars($_POST['name']); ?>.
|
||
Siz <?php echo (int) $_POST['age']; ?> yaşındasınız.
|
||
]]>
|
||
</programlisting>
|
||
<para>
|
||
Bu betikten elde edilecek örnek çıktı:
|
||
</para>
|
||
<screen role="html">
|
||
<![CDATA[
|
||
Merhaba Ahmet. Siz 22 yaşındasınız.
|
||
]]>
|
||
</screen>
|
||
</example>
|
||
</para>
|
||
<para>
|
||
<function>htmlspecialchars</function> ve <literal>(int)</literal>
|
||
kısımları haricinde yapılan iş oldukça açıktır.
|
||
<function>htmlspecialchars</function> işlevi HTML'ye özel karakterlerin
|
||
doğru şekilde kodlandığından emin olunmasını sağlar, dolayısıyla
|
||
başkaları sayfanıza dışardan HTML etiketleri veya Javascript
|
||
yerleştiremez. Yaş alanınında ise değerin bir tamsayı olması gerektiği
|
||
bilindiğinden değerin <type>int</type> türüne <link
|
||
linkend="language.types.typecasting">dönüştürülmesiyle</link> otomatik
|
||
olarak bu alana girilmesi olası başı boş karakterlerden de kurtulmuş
|
||
olunmaktadır. Ayrıca, bunun PHP'de otomatik olarak yapılmasını
|
||
sağlamak için <link linkend="ref.filter">süzgeç</link> eklentisi de
|
||
kullanılabilirdi. <varname>$_POST['isim']</varname> değişkeni
|
||
ve <varname>$_POST['yaş']</varname> değişkenleri
|
||
PHP tarafından otomatik olarak oluşturulur. Daha önce
|
||
<varname>$_SERVER</varname> süper küresel değişkeni kullanılmıştı,
|
||
yukarıda ise tüm POST verisini içeren <varname>$_POST</varname> süper küresel
|
||
değişkeni tanıtıldı. Formda tanımlı <emphasis>yöntem</emphasis>in POST
|
||
oluşuna dikkat edilmelidir. <emphasis>GET</emphasis> yöntemi kullanılmış
|
||
olsaydı, form bilgileri <varname>$_GET</varname> süper küresel değişkenine
|
||
atanmış olacaktı. Bunların haricinde, istemciden gelen verinin hangi
|
||
kaynaktan geldiği önemli değilse <varname>$_REQUEST</varname>
|
||
süper küreseli de kullanılabilirdi. Bu değişken GET, POST ve COOKIE
|
||
verilerinin birleşiminden oluşur.
|
||
</para>
|
||
</section>
|
||
|
||
<section xml:id="tutorial.whatsnext">
|
||
<title>Sonraki adım nedir?</title>
|
||
<para>
|
||
Edinilen yeni bilgilerle kılavuzun birçok bölümünün daha kolay
|
||
anlaşılabilmesi ve okuyucunun örnek arşivinde bulunan birçok betiği
|
||
kolayca okuyabilir duruma gelmesi amaçlanmıştır.
|
||
</para>
|
||
<para>
|
||
PHP ile neler yapabileceği ile ilgili sunumlara ulaşmak için,
|
||
<link xlink:href="&url.php.talks;">&url.php.talks;</link> adresindeki PHP
|
||
Konferans Malzemeleri Sitesi ziyaret edilebilir.
|
||
</para>
|
||
</section>
|
||
</chapter>
|
||
|
||
<!-- Keep this comment at the end of the file
|
||
Local variables:
|
||
mode: sgml
|
||
sgml-omittag:t
|
||
sgml-shorttag:t
|
||
sgml-minimize-attributes:nil
|
||
sgml-always-quote-attributes:t
|
||
sgml-indent-step:1
|
||
sgml-indent-data:t
|
||
indent-tabs-mode:nil
|
||
sgml-parent-document:nil
|
||
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
||
sgml-exposed-tags:nil
|
||
sgml-local-catalogs:nil
|
||
sgml-local-ecat-files:nil
|
||
End:
|
||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||
vim: et tw=78 syn=sgml
|
||
vi: ts=1 sw=1
|
||
-->
|