Arkasokak Logo





PHP ye giriş Bir PHP dosyası yazı, HTML tagları ve kodlarından oluşabilir. PHP deki kodlar server tarafından çalıştırılır. Önceden bilinmesi ...

Cevap
  #1  
Eski 12-06-2006, 07:54 AM
Funeral of Hearts
Arkasokaklı
 
Mesaj: 1.341
mehmetince kullanıcısına MSN aracılığı ile mesaj yolla
Php öğrenelim!

PHP ye giriş
Bir PHP dosyası yazı, HTML tagları ve kodlarından oluşabilir. PHP deki kodlar server tarafından çalıştırılır.

Önceden bilinmesi gerekenler
Bu basit PHP derlerine devam etmek için öncelikle aşağıdaki gibi temel şeyleri bileniz çok faydalı olucaktır:

++ WWW, HTML ve temel web sayfası oluşturma yöntemleri
++ biraz kodlama bilgisi

PHP nedir?
~ PHPnin açılımı PHP: Hypertext Preprocessor
~ PHP, ASP gibi server taraflı kodlama dilidir.
~ PHP server tarafından çalıştırılır.
~ PHP birçok veritabanını destekler, örneğin MySQL, Informix, Oracle, Solid, Sybase, Generic ODBC, PostgreSQL ...
~ PHP, acık kodlu bir programdır.
~ PHP nin yüklemesi ve kullanması ücretsizdir.

PHP dosyası nedir?
~ PHP dosyaları; yazı, HTML tagları ve kodlarından oluşabilir.
~ PHP dosyaları; server tarafıdan işlendikten sonra düz HTML sayfaları olarak görüntülenir.
~ PHP dosyaları; .php , .php3 yada .phtml uzantılarına sahip olabilir.

MySQL nedir?
~ MySQL, küçük bir veritabanı serverıdır.
~ MySQL, küçük ve orta dereceli uygulamalar için idealdir.
~ MySQL, standard SQL ifadelerini destekler.
~ MySQL, bir kaç farklı platformda derlenebilir.
~ MySQL, yuklenmesi ve kullanması ücretsizdir.

PHP ve MySQL
PHP, MySQL ile birleştirilmiştir, ve bu uygulamalar Windows platformu ustunde geliştirilip Unix platformunda işlenebilir.

neden PHP
~ PHP, birçok farklı platformda çalışabilir,örneğin Windows, Linux, Unix
~ PHP, bugün kullanılan birçok serverda çalıştırılabilir,örneğin IIS, Apache ...
~ PHP ücretsizdir ve resmi sitesi olan www.PHP.net adresinden indirilebilir.
~ PHPnin öğrenmesi kolaydır ve server tarafından iyi bir verimle çalışır.

Nerden başlamalıyız ?
~ İşletim sisteminize Apache server, PHP ve MySQL i yukleyiniz.
( yüklenmesi ve gerekli ayarları ayrı bir ders konusudur. )

PHPyi yüklemek için --> http://www.php.net/downloads.php
MySQLi yüklemek için --> http://www.mysql.com/downloads/index.html
Apache serverı yüklemek için --> http://httpd.apache.org/download.cgi

PHP sözdizimleri
PHP dosyalarının içindeki kodları web tarayıcınızın "kaynağı görüntüle" komutu ile görüntüleyemezsizin. Burada gördüğüz veriler PHP nin server tarafından derlendikten sonra elde edilen sonuçlardır ki bunlarda düz HTML dir.

temel PHP sözdizimleri
Bir PHP dosyası genel olarak HTML dosyaları gibi HTML tagları ve bazı PHP kodları içermektedir.

Aşağıda en temel PHP kodunun örneği verilmiştir, bu kod sayesinde "birazda PHP ögreniyorum" yazısını çıkarmaktadır.

<html>
<bOdy>

<?php echo "birazda PHP ögreniyorum"; ?>

</bOdy>
</html>

Bir PHP kodla dizisi <?php ile başlar ?> ile biter. PHP kod dizisi sayfanın herhangi bir yerine yazılabilir.

Her PHP kod satırı ( işareti ile biter, bu server a bir kod satırının bitip digerinin basladıgını belirtir.

PHPde ekrana yazı göndermenin iki kolay yolu vardır biri yukardaki örnek gibi echo diğeri ise print

PHP de değişken tanımlama
PHP de her değişken ($) işareti ile başlar. Değişkenler harf dizimi, sayı yada diziden oluşabilir.

İlk PHP kod örneğimizi değişken kullanarak yazıcak olursak;

<html>
<bOdy>

<?php
$yazi="birazda PHP ögreniyorum"
echo $yazi;
?>

</bOdy>
</html>

birden vazla değişkeni isteğe bağlı bir sırada ekrana yazmak içinde (.) işareti kullanılır.

<html>
<bOdy>

<?php
$yazi="birazda PHP ögreniyorum"
$yazan="MMx"
echo $yazi . " " . $yazan ;
?>

</bOdy>
</html>

PHP de yorum ekleme
PHP de serverın derlemesini istemediğiniz ama orjinal kodu görüntüleyen için bir uyarı, hatırlatma yani bir yorum bırakmak için kullanılır.

Tekbir satırı yoruma ayırmak için (//) ifadesi, birden cok satırı yoruma ayırmak içinse (/* */) ifadesi kullanılır.

<html>
<bOdy>

<?php

//bu benim tek satirlik yorumum

/*
bu
ise
yorum
bloğum
*/

?>

</bOdy>
</html>

PHP operatörleri
Operatörler degerler üstünde değişiklik yapmaya yarar. Aşağıda PHP de kullanılan birçok operatorun listesini görüceksiniz.

Aritmetik operatörler

toplama : +
x=6 x+3 Sonuc: 9

çıkarma : -
x=6 x-3 Sonuc: 3

çarpma : *
x=6 x*3 Sonuc: 18

bölme : /
x=6 x/3 Sonuc: 2

mod (kalan hesaplama) : %
x=6 x%3 Sonuc: 0

artma : ++ (+ 1 ile aynı anlamdadır)
x=6 x++ Sonuc: 7

eksilme : -- (- 1 ile aynı anlamdadır)
x=6 x-- Sonuc: 5

Atama operatörleri
sağdakini sola ata : =
kendisi ve başka bir değişkeni toplayıp tekrar kendine atamak : x+=y ( x= x+y ile aynı anlamdadır)
kendisinden başka bir değişkeni çıkartıp tekrar kendine atamak : x-=y ( x= x-y ile aynı anlamdadır)
kendisi ve başka bir değişkenle çarpıp tekrar kendine atamak : x*=y ( x= x*y ile aynı anlamdadır)
kendisini başka bir değişkene bölüp tekrar kendine atamak : x/=y ( x= x/y ile aynı anlamdadır)
kendisi başka bir değişkene göre modunu alıp tekrar kendine atamak : x%=y ( x= x%y ile aynı anlamdadır)

Karşılaştırma operatörleri
eşittir : ==
6==9 Sonuc: false (yanlıs)

eşit değildir : !=
6==9 Sonuc: true (doğru)

soldaki büyüktür sağdakinden : >
6>9 Sonuc: false (yanlıs)

soldaki küçüktür sağdakinden : <
6==9 Sonuc: true (doğru)

soldaki büyük yada eşittir sağdakinden : >=
6>=9 Sonuc: false (yanlıs)

soldaki küçük yada eşittir sağdakinden : <=
6<=9 Sonuc: true (doğru)

Mantık operatörleri
ve : &&
x=7 y=1 (x<9 && y>=1) Sonuc: true (doğru)

veya : ||
x=7 y=1 (x==9 || y==3) Sonuc: false (yanlıs)

değil(se) : !
x=7 y=1 !(x==y) Sonuc: true (doğru)

PHP Durum ifadeleri
PHPdeki durum ifadeleri sayesinde farklı durumlar için farklı işlemler yaptırılabilir.

PHP de iki adet durum ifadesi vardır:
~~ if (..else) ifadesi; bu ifade bir durumun dogru yada yanlıs oldugunda bir dizi kodun calıstırılması için kullanılır.

~~ switch ifadesi; bir dizi satırdan sadece bir tanesinin seçilip çalışmasını sağlamak istiyorsak bu ifadeyi kullanırız.

IF ifadesi

ifadenin kuruluşu;

if(durum)
durum sağlandığında çalıştırılacak kod dizini

else
durumsağlanMAdığında çalıştırılacak kod dizini

bunu basit bir kod ile örnekleyelim...


<html>
<bOdy>

<?php
$g=date("D");
if ($g=="Fri")
echo "iyi haftasonlari ";
else
echo "hayirli isler ";
?>

</bOdy>
</html>


yukardaki bu basit kodda date("D") ile günün değerini alıyoruz ve eğer bu gunun değeri Friday (cuma) ise iyi haftasonlari denmesini değilse hayirli isler demesini istiyoruz.

SWITCH ifadesi

ifadenin kuruluşu;

switch(değişken)
{
case birinciOlasılık:
birinciOlasılık sağlandıgında çalıştırılacak kod
break

case ikinciOlasılık:
ikinciOlasılık sağlandıgında çalıştırılacak kod
break

default:
Hiçbir olasıgıla uymadıgında çalıştırılacak kod
}


bunu basit bir kod ile örnekleyelim...


<html>
<bOdy>

<?php
$durum=2; // 1, 3 yada 4 yapın değişikliği gorun

switch ($durum)
{
case 1:
echo "birinci duruma hosgeldiniz";
break;

case 2:
echo "merhaba ben ikinci durum";
break;

case 3:
echo "ben geldim! adim ucuncu durum";
break;

default:
echo "Hic bir durumu saglamayadin ama yinede yanliz kalmadin";
}
?>

</bOdy>
</html>


PHP Döngüleri
Döngüler aynı kod satırını belli bir kosul saglanana kadar calıstırmayı saglar.

PHP de döngüler için kullanılan ifadeler:
~~ while; belli bir kosul saglanana kadar kod dizinini calıstırır.

~~ do ... while; while ile işlev olarak aynı

~~ for; while ile aynı işlevli olmasına ragmen daha hızlı dır.

~~ foreach; bir dizideki elemanlar için belirlenmiş kosulu tek tek calıstırır.

WHILE ifadesi

ifadenin kuruluşu;

while(durum)
durum sağlandıgı surece calıstırılacak kod

bunu basit bir kod ile örnekleyelim...

<html>
<bOdy>

<?php
$a=1;
while($a<=5)
{
echo "Islem yapilan sayi : " . $a . "<br />";
$a++;
}
?>

</bOdy>
</html>

DO ... WHILE ifadesi

ifadenin kuruluşu;

do
{
durum doğru oldugunda calısacak kod;
}
while(durum);

bunu basit bir kod ile örnekleyelim...

<html>
<bOdy>

<?php
$a=0;
do
{
$a++;
echo "Islem yapilan sayi : " . $a . "<br />";
}
while ($a<5);
?>

</bOdy>
</html>

FOR ifadesi

ifadenin kuruluşu;
for (başlangıç; durum; artım)
{
durum sağlandıgında calısacak kod;
}

bunu basit bir kod ile örnekleyelim...

<html>
<bOdy>

<?php
for ($a=1; $a<=5; $a++)
{
echo "DIR DIR DIIRR :P<br>";
}
?>

</bOdy>
</html>

FOREACH ifadesi

ifadenin kuruluşu;

foreach (diziAdi as deger)
{
degerin atanacagı kod;
}

bunu basit bir kod ile örnekleyelim...

<html>
<bOdy>

<?php
$dizim=array("guvenlik", "programlama", "eglence");
foreach ($dizim as $degerim)
{
echo "su anki dizi degeri: " . $degerim . "<br />";
}
?>

</bOdy>
</html>

PHP Fonksiyonları
PHP nin asıl gücü onun fonksiyonlarından gelir, PHP de 700 den fazla fonksiyon vardır. PHP nin orjinal sitesinde tüm bu fonksiyonların listesini bulabilirsiniz; http://www.php.net/quickref.php

Bu dokumanda biz sadece birkaç tanesini örnekliyeceğiz..

PHP hakkında bilgi edinme
phpinfo() fonksiyonu, o serverda kullanılan PHP sürümünün detaylı çıktısını verir. Bu PHP kodlarını yazarken ve kullanırken olucan hataları tespit etmek ve o bilgilere gore davranmayı sağlar.

phpinfo() fonksiyonunun özellikleri;
INFO_GENERAL >>> Ayar satırını, php.ini nin bulundugu yeri, yapıldıgı tarihi, web serverı, sistemi ve daha fazlası hakkında bilgi verir.
INFO_CREDITS >>> PHP 4 ün yaratıcılarının listesi
INFO_CONFIGURATION >>> PHP nin Yerel ve ana degerleri hakkında bilgi verir
INFO_MODULES >>> Yuklenmiş olan modulleri gösterir
INFO_ENVIRONMENT >>> Çevresel değişkenler hakkında bilgi verir
INFO_VARIABLE >>> EGPC { Environment, GET, POST, Cookie, Server } den öntanımlı tum degişkenleri gösteririr
INFO_LICENSE >>> PHP lisans bilgisini gösterir
INFO_ALL >>> Yukardak sayılan tum bilgileri listeler, varsayılan özellik burdur

bunu basit bir kod ile örnekleyelim...

<html>
<bOdy>

<?php
// Tum PHP bilgilerini gosterir
phpinfo();
?>

<?php
// Sadece genel bilgileri gosterir
phpinfo(INFO_GENERAL);
?>

</bOdy>
</html>

PHP Server değişkenleri
Tum serverlar, kullanıcı hangi URL den gelmiş, hangi web tarayıcısını kullanıyor gibi bilgilerin kaydını tutar, ve tum bunlar belli değişkenlerde tutulur.

PHP de bu gibi bilgileri $_SERVER degişkeni tutar.

bunu basit bir kod ile örnekleyelim...

<html>
<bOdy>

<?php
echo "Buraya " . $_SERVER["HTTP_REFERER"] . " adresinde geldiniz.<br>";
echo "" . $_SERVER["HTTP_USER_AGENT"] . " web tarayıcısı kullanıyorsun.<br>";
echo "IP adresiniz " . $_SERVER["REMOTE_ADDR"];
?>

</bOdy>
</html>

PHP ile dosya açmak
fopen() fonksiyonunu, dosyaları açmak için kullanılır.

Bu fonksiyonun ilk parametresi acılacak dosyanın adını, ikinci parametresi ise hangi modda acılacagını belirtir.

bunu basit bir kod ile örnekleyelim...

<html>
<bOdy>

<?php
$f=fopen("deneme.txt","r+");
?>

</bOdy>
</html>

Bu fonksiyon için kullanılabilecek moddları acıklayalım;

r >>> sadece okuma, dosya işaretcisi dosya basında
r+ >>> okuma ve yazma, dosya işaretcisi dosya basında
w >>> sadece yazma, deneme.txt dosyası varsa ustune yazar yoksa oluşturup içine yazar
w+ >>> okuma ve yazma, deneme.txt dosyası varsa ustune yazar yoksa oluşturup içine yazar
a >>> ilave et, dosya işaretcisi dosya sonunda, eger dosya yoksa oluşturur
a+ >>> ilave et ve oku, dosya işaretcisi dosya sonunda, eger dosya yoksa oluşturur
x >>> sadece yazma izni olan bir dosya olusturur, dosya işaretcisi dosya basındadır, eger yaratılması istenen dosya varsa hata verir, yoksa kendisi bir tane olusturur
x+ >>> okuma ve yazma izni olan bir dosya olusturur, dosya işaretcisi dosya basındadır, eger yaratılması istenen dosya varsa hata verir, yoksa kendisi bir tane olusturur

Eger bu fonksiyon bir dosyayı acamaz ise, false (yanlış) değeri verir.

<html>
<bOdy>

<?php
if (!($f=fopen("deneme.txt","r")))
exit("Dosya acilamadi ");
?>

</bOdy>
</html>

fclose() fonksiyonunu, dosyaları kapamak için kullanılır.

feof() fonksiyonunu ile dosyanın sonuna gelip gelmediği anlasılır, eger dosya sonu ise true (dogru) degerini verir. Yanlız fopen() fonksiyonu w,a ve x modu kullanılmıssa bu fonksiyon calısmaz.

ifadenin örneği;
if (feof($f))
echo "Dosya sonu !";

fgetc() fonksiyonu ile dosyadan belli bir karakteri almakiçin kullanılır. Aşağıdaki kod örneği ile dosyanın her karakteri tek tek okunur, taki sonuna gelene kadar.

<html>
<bOdy>

<?php
if (!($d=fopen("deneme.txt","r")))
exit("Dosya acilamadi ");
while (!feof($d))
{
$q=fgetc($d);
echo $q;
}
fclose($f);
?>

</bOdy>
</html>

PHP formları
PHP nin bir guclu ozelliğide HTML formlarını idare ediş tarzıdır.

Form elemanlarını kullanmaya basit ama cok kullanılan bir ornek verelim...

formElemani.html imiz şoyle olsun...

<html>
<bOdy>

<form action="sonuc.php" method="POST">
kimsin? <input type="text" name="ad" />
nerden? <input type="text" name="yer" />
<input type="submit" />
</form>

</bOdy>
</html>

sonuc.php deki kod ise...

<html>
<bOdy>

Selam <?php echo $_POST["ad"]; ?>.<br />
<?php echo $_POST["yer"]; ?> şehrinde havalar nasıl?

</bOdy>
</html>

Bu kodlar POST methodunu kullanıyor, eger GET methodunu kullanmak isteseydik tek yapmamız gereken $_POST yerine $_GET yazmak olucaktır.

PHP de çerez işlemleri
Çerezler genellikle kullanıcıyı tanımlamak için kullanılır.

Çerezin tanımı; Çerez server tarafından kullanıcının bilgisayarına yuklenen e onu tanımlamak için kullanılan bir sistemdir. Her sorguda bu cerezler tekrardan guncellenir.

Nasıl çerez yaratırız ?
PHP de çerez oluşturmak için setcookie() fonksiyonu kullanılır. Önemli bir noktada bu fonksiyonun <html> tagından once kullanılmasıdır.

ifadenin kuruluşu;
setcookie(adi, degeri, suresi, yolu, domaini);

bunu basit bir kod ile örnekleyelim...

<?php
setcookie("phpciCerez", $ad, time()+36000);
?>

<html>
<bOdy>

Çerezi oluşturdum bile, sen uyu

</bOdy>
</html>

Çerezden değer alma
Çerezi bir üstte oluşturturduk şimdi bunları kullanalım... Bunun için kullanılan PHP fonksiyonun adı isset() dir.


<html>
<bOdy>

<?php
if (isset($_COOKIE["phpciCerez"]))
echo "Welcome " . $_COOKIE["phpciCerez"] . "!<br />";
else
echo "Hey! senin daha çerezin yok ..<br />";
?>

</bOdy>
</html>

PHPde include
ASP, JSP de oldugu gibi PHP dede bir PHP dosyası içinebaska bir PHP dosyası ekleyebiliyoruz. Bunu yapmak için require() fonksiyonunu kullanıyoruz.

bunu basit bir kod ile örnekleyelim...


<html>
<bOdy>
<?php require("usttaraf.php"); ?>

kodun devamı..

daha da devamı ...

</bOdy>
</html>

PHP veritabanı ODBC
ODBC, veritabanlarına baglanmak için kullanılan uygulamalı programlanabilir arayuzdur.

ODBC bağlantısı kurmak
ODBC baglantısı kullanarak ağda bulunan herhangi bir veritabanına ODBC baglantısı bulundugu surece baglanmak mumkundur.

ODBC kullanarak MS Access veritabanına basıl baglanılacagını anlatalım;

+1+ Denetim masası(Control Panel)ndan Yönetimsel araçlara (Administrative Tools) gidin
+2+ Veri kaynakları(Data Sources) (ODBC)
+3+ Sistem DNS(System DSN) sekmesini seçin
+4+ Ekle(Add) butonuna basın
+5+ Microsoft Access Driver ı secip Son(Finish)a basın
+6+ Karsınıza gelen pencereden ad(Name) ve acıklamasını(Description) girdikten sonra Oluştur(Create) butonuna basıp istediğiniz bir yere veri tabanını olusturun ve OK diyip cıkın.

ODBC ile bağlanmak
ODBC ile bağlanmak için odbc_connect() fonksiyonu kullanılır. Bu fonksiyon 4 parametre kullanabilir; veritabanı adı, kullanıcı adıi şifre ve isteğe baglı olarak işaretci biçimi.

odbc_exect() fonksiyonu ile de SQL ifadeleri kullanılabilir.

örnek vericek olursak;

$conn=odbc_connect(’baglantim’,’’,’’);
$sql="SELECT * FROM bilgi";
$rs=odbc_exec($conn,$sql);

Buörnekte baglantim adlı bir DSN ye kullanıcı adı ve şifre kullanmadan baglanıp, bilgi tablosundaki verileri alıyoruz.

odbc_fetch_row($rs) gibi bir fonksiyon kullanarak işlemin sonuc kumesindeki sonucları eger varlarsa geri dondurur..

odbc_result() fonksiyonu ilede alanlardaki kayıtları okuyabiliriz. İki adet parametre alabilir; sonuc tanımlayıcı ve alan numarası..

örnek vericek olursak;

$sonuc=odbc_result($rs,1);

$sonuc2=odbc_result($rs,"Soyad"); dersekte soyad alanındaki kayıtları sonuc2 ye atar...

ODBC baglantısını kapatmak içinde odbc_close() fonksiyonu kullanılır.

tüm bu ODBC fonksiyonları tek bir örnekte özetleyecek olursak;

<html>
<bOdy>

<?php
$bag=odbc_connect(’baglantim’,’’,’’);
if (!$bag)
{
exit($bag . "e baglanti basarisiz ! ");
}
$sql="SELECT * FROM bilgi";
$rs=odbc_exec($bag$sql);
if (!$rs)
{
exit("SQL ifadesinde hata var !");
}
echo "<table><tr>";
echo "<th>Soyad</th>";
echo "<th>Adres</th></tr>";
while (odbc_fetch_row($rs))
{
$compname=odbc_result($rs,"Soyad");
$conname=odbc_result($rs,"Adres");
echo "<tr><td>$Soyad</td>";
echo "<td>$Adres</td></tr>";
}
odbc_close($bag);
echo "</table>";
?>

</bOdy>
</html>

evet sayın CW liler PHP dersleride bitmiş, umarım azda olsa bişiler kapmıssınızdır.
kolay gelsin.

PHP Kaynakları

http://www.phpkaynak.com
http://www.google.com/Top/Computers/...Languages/PHP/
http://www.turk-php.com
http://www.php.org.tr
http://www.phpkolik.com
http://www.phpbul.com
http://www.mutasyon.net/makaleler.asp?id=27
http://www.netopsiyon.com/
http://www.dinamit.gen.tr/
http://www.phpkaynak.com
http://science.ankara.edu.tr/~demir/progress
http://www.ulakbim.gov.tr/belgeler/programlama/2000php
http://www.phpdosyasi.com/
http://www.hotscripts.com/PHP/index.html
http://www.scriptler.com/?bolum=kategori&tur=php
http://www.scripts.com/php-scripts/

guzel bir ebook: (ingilizce) http://sr2.mytempdir.com/30091 (Şifre: Cyber-Warrior)

Ebook un tam adı: PHP & MySQL for Dummies 2nd edition (459 sayfa)

alıntıdır!
Alıntı Yaparak Cevapla
  #2  
Eski 14-07-2006, 03:58 PM
sedran
Misafir
 
Mesaj: n/a
çok güzel paylaşım emeğine sağlık çok işe yaradı
Alıntı Yaparak Cevapla
Cevap

Konu Araçları
Görünüm Modları



Saat 12:01 PM.


Copyright ©2005 - 2008 Arkasokak.Net
Tasarım: NoDRaC
Bize Ulaşın - Gizlilik İlkesi - En Üst
Powered by vBulletin
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0