Forumları Okundu Yap |
![]() |
#1 |
Bu başlık altında PHP konusunda bir takım makalelerimi ve notlarımı yayınlayacağım. Bunu yaparken, başlangıç seviyesindeki bir kullanıcınında faydalanabilmesi en basitinden başlayayım istiyorum. Bu sebeple basit konulardan başlamayı tercih ettim.
Makaleler ile ilgili sorularınızı buradan sorabilirsiniz, diğer phpBB vs. gibi abik gubik scriptler hakkındaki sorularınızı bu başlığa sokmazsanız sevineceğim. Ayrıca makalelerde yer alan şeyler haricinde de yeni başlık açıp sorunuzu ayrı bir başık altında tutarsanız sevirinim. Ara sıra makalelere ara verebilirim, nihayetinde okulum sınavlarım ve sorumluluklarım var ![]() ![]() Şu ana kadar yazılan ders ve notların listesi:
Başarılar ![]() Mesajı son düzenleyen Risus ( 30-04-12 - 17:58 ) Neden: link yenileme |
|
![]() |
![]() |
#2 |
PHP Programlama Dilinde Değişkenler ve Kullanımları // Yeni başlayanlar
Her programlama dilinin yapıtaşları olan değişkenler PHP dilinde de temel olarak kabul edilebilir. Değişkenler her an, her yerde kullanılabileceğinden, değişkenleri bilmeyen bir insan PHP dilinde daima zorlanacaktır. Şimdi kısaca bahsedelim. PHP dilinde değişkenler "$" (dolar işareti) ile başlar. Hiçbir şekilde rakam ile başlayamaz. Genel olarak değişkenlerin yazım şekilleri şunlardır: Kod:
$isim = "Birhan"; $isim=Birhan; $isim = <<<RESTART <a href="hebelehubele.htm">hebele</a> <a href='hebele.htm'>hebele</b> RESTART; İlk şekilde gördüğünüz tanımlama, genel olarak kullanılan şekildir. En yaygın şekil budur. İkinci şekilde gördüğünüz tanımlama genelde rakamlar için kullanılır, bakmayın ben sırayı bozmasın diye isim değişkeni olarak tanımladım fakat genelde rakam ve tek kelimelik içerik içerir. Üçüncü şekle yeni bir paragrafta değinmek istedim, çünkü bu pek yaygın olmayan fakat her zaman her için aranılan bir yazım türüdür. Bunun sebebini şöyle açıklayayım, Örneğin bir değişken tanımladınız fakat içerisinde tırnak işaret vs. gibi programın çalışmasına engel olacak, hata verdirecek birtakım karakterler var. Bu hatayı engellemek için demin bahsini ettiğim tırnak işareti gibi hata verdirici karakterlerin önüne "\" konulur. Yani; Kod:
$degiskenadi = "<a href="hebele.htm">hebele</a>"; Kod:
$degiskenadi = "<a href=\"hebele.htm\">hebele</a>"; Kod:
$degiskenadi = <<<RESTART <a href="hebele.htm">hebele</a> RESTART; Bu arada unutmadan, her şeyde olduğu gibi değişkenleri de noktalı virgül yardımı ile sonlandırmayı unutmuyoruz. Yani değişkenin sonundaki, değişkenin bittiğini belirten noktalı virgül olmazsa hata almanız muhtemeldir. Şimdi değişken tanımlamayı artık öğrendiğimize göre, artık değişkenleri kullanmaya sıra geldi. Hemen küçücük bir örnekle de bunu pekiştirelim; Kod:
<?php $nick = "RestarT"; $isim = "Birhan"; echo("$nick`ın gerçek ismi $isim`dir."); ?> Yukarda okuduğunuz metin, size nasıl değişken oluşturacağınızı ve bunları nerede kullanacağını anlattı. Şimdi zaten hazırda var olan ve sabit olan birkaç Apache ve PHP değişkenini tanıyacağız. Bu değişkenleri birçok alanda kullanabileceğinizden emin olabilirsiniz. Apache değişkenlerinden başlayalım; Kod:
$REMOTE_ADDR; // Bu değişken web sayfasını gezmekte olan kullanıcının IP numarasını verir. 123.123.123.123 gibi bir çıktı verecektir. $SERVER_ADMIN; // Bu değişken sunucuda admin için verilen değeri içerir. admin@localhost gibi bir çıktı verecektir. $SERVER_PORT; // Bu değişken sunucunun kullandığı port`u verir. Genelde 80`dir. $SERVER_SIGNATURE; // Bu değişken sunucu sürümü, ismi gibi bilgiler verir. Apache/1.3.23 Server at localhost Port 80 gibi bir çıktı verecektir. $SCRIPT_NAME; // Bu değişken kullanılan scriptin dizinini verir. c:\\apache\\htdocs\\deneme.php gibi bir çıktı verecektir. $REQUEST_URI; // Bu değişken kullanılan scriptin ismini verecektir. /deneme.php gibi bir çıktı verir. $SERVER_NAME; // Bu değişken scriptin üzerinde çalıştığı sunucunun ismini verir. localhost gibi bir çıktı verecektir. $SERVER_SOFTWARE; // Bu değişken sunucu yazılımının ismini içerir. Apache/1.3.23 (Win32) gibi bir çıktı verecektir. $SERVER_PROTOCOL; // Bu değişken sayfanın kullandığı bilgi protokolü hakkında bilgi verir. HTTP/1.0 gibi bir çıktı verecektir. $REQUEST_METHOD; // Bu değişken sayfaya erişirken kullanılan metot bilgisini içerir. GET, POST vs. gibi çıktılar verecektir. $HTTP_ACCEPT_LANGUAGE; // Bu değişken sunucunun dilini verir. tr, eng vs. gibi çıktılar verecektir. $HTTP_ACCEPT_ENCODING; // Bu değişken talebe ait kodlama bilgisini verir. gzip, zip gibi çıktılar verecektir. PHP değişkenleri ise şöyledir, Kod:
$HTTP_POST_VARS; // Bu değişken formdan post metodu ile gelen değerleri içerir. $HTTP_GET_VAR; // Bu değişken formdan get metodu ile gelen değerleri içerir. $HTTP_COOKIE_VARS; // Bu değişken cookie`lerden (çerezler) alınan değerleri içerir. $PHP_SELF; // Bu değişken o esnada çalışmakta olan scriptin dosya adını içerir. Kod:
<?php phpinfo(); ?> Başarılar dilerim, kolay gelsin. Hoşçakalın. // gelecek konu: array (diziler) |
|
![]() |
![]() |
#3 |
PHP Programlama Dilinde Diziler (Array) // Yeni başlayanlar - Orta düzey
Diziler derken TV dizileri diye anlayanlarınız varsa hemen terk edin ![]() Kod:
$isimler[1] = "Ali"; $isimler[2] = "Veli"; $isimler[3] = "Deli"; echo $isimler[2]; Kod:
$isimler["kiz"][1] = "Selen"; $isimler["kiz"][2] = "Melis"; $isimler["kiz"][3] = "Elmas"; $isimler["erkek"][1] = "Birhan"; $isimler["erkek"][2] = "Kerem"; $isimler["erkek"][3] = "Yunus"; $isimler["erkek"][4] = "Emre"; echo $isimler["kiz"][3]; ![]() Kod:
$isimler = array( 1 => "Birhan", 2 => "Kerem", 3 => "Yunus", 4 => "Emre", ); echo $isimler[3]; ![]() Kod:
$isimler = array( "kiz" => array( 1 => "Selen", 2 => "Melis", 3 => "Elmas" ), "erkek" => array( 1 => "Birhan", 2 => "Kerem", 3 => "Yunus" ) ); echo $isimler["kiz"][3]; ![]() Dizi yapısını kısmen öğrendik fakat ne işimize yarayacak? Kafanıza takılmıştır elbette. Hemen bir örnekle de ne işe yarayacağını görelim; Kod:
$gunler = array("Pazar", "Pazartesi", "Salı", "Çarşamba", "Perşembe", "Cuma", "Cumartesi"); echo $gunler[date("w")]; ![]() Yukarıdaki örnekte görüldüğü gibi PHP ile ancak ingilizcesini alabileceğimiz gün isimlerini Türkçe`ye çevirdik. Artık sitemizde Türkçe olarak "Pazartesi" yazabileceğiz mesela ![]() Kullanım alanı elbette bununla sınırlı değil, aklınıza bile gelmeyecek yerlerde bu dizi yapısını kullanacaksınız. Ama ben sadece yüzeysel olarak bu kadar açıklayabiliyorum. Array ile kullanacağımız bir takım sıralama fonksiyonları da vardır. Sıralamalarda Türkçe karakterle başlayan kelimeler tanınmadığı için son kısımda yer alır. bu fonksiyonlar şunlardır; sort(); - Dizi içeriğini alfabetik sıralama. rsort(); - Dizi içeriğini ters alfabetik sıralama. asort(); - Dizi elemanlarını değerine göre sıralar. arsort(); - Dizi elemanlarını değerine göre tersten sıralar. ksort(); - Dizi elemanlarını içeriğe göre sıralar. krsort(); - Dizi elemanlarını içeriğe göre tersten sıralar. Hemen örneklerle bu fonksiyonları açıklayalım. Örnek - sort(); Kod:
$seviyeler = array( "Admin" => "100", "Yönetici" => "10", "Üye" => "1" ); sort($seviyeler); foreach($seviyeler as $x => $y) { echo("$x - $y<br>"); } Örnek - asort(); Kod:
$seviyeler = array( "Admin" => "100", "Yönetici" => "10", "Üye" => "1" ); asort($seviyeler); foreach($seviyeler as $x => $y) { echo("$x - $y<br>"); } Örnek - ksort(); Bu örnek için kod yazma ihtiyacı duymuyorum. Tek yapmanız gereken yukarıdaki örnekteki fonksiyonu ksort($seviyeler); veya tersi için krsort($seviyeler); olarak değiştirmek. Sonuçta göreceksiniz ki bu seferde sıralama, dizi elemanlarının alfabetik sıralaması şeklindedir. ksort(); kullanılırsa "Admin" başta, krsort(); kullanılırsa sonda yer alacaktır. Oldu ki biz dizimizin içinden rastgele bir değer alıp bunu ekrana basmak istiyoruz. Bu durumda yardımımıza hemen suffle(); koşuyor ![]() Kod:
$seviyeler = array( "Admin" => "100", "Yönetici" => "10", "Üye" => "1" ); shuffle($seviyeler); for ($x=0; $x<1; $x++) { echo("$seviyeler[$x]<br>"); } Örnek - array_sum(); Kod:
$sayilar = array(1,2,3,4,5,6,7,8); echo array_sum($sayilar); Bizim iki adet dizimiz olsun ve bunları birleştirmek istiyor olalım. Ne yapmamız gerek? array_merge(); fonksiyonu bu iş için uygundur. Sadece iki diziyi değil, n sayıdaki diziyi bununla birleştirebilirsiniz. Hemen örneğimizi de verelim; Örnek - array_merge(); Kod:
$x = array(1,2,3,4,5,6,7,8); $y = array(4,7,8,3); $birlestir = array_merge($x, $y); print_r($birlestir); ![]() Dizilerimizde bazen bir değeri birden çok kullanabiliriz. Eğer ki hangi değerin kaç kez kullanıldığını öğrenmek istersek hemen yardımımıza array_count_values(); koşuyor. Aşağıda ki örneği inceleyin. Örnek - array_count_values(); Kod:
$x = array(a,b,t,a,y,k,d,w,y,a,g,v,b,e,t); print_r(array_count_values($x)); ![]() Array fonksiyonu için yazılabilecek birkaç fonksiyon daha var ama şimdilik bu kadar yeterli diye düşünüyorum. İleride lazım olursa onları da yazarım. Hoşçakalın. // gelecek konu: if yapısı Mesajı son düzenleyen RestarT ( 07-03-04 - 02:03 ) Neden: Eksiklik. |
|
![]() |
![]() |
#4 |
Yaş harbiden 15 se ve bunlarda copy&paste deilse harbi eli öpülecek adammıssın hocam
![]() |
|
![]() |
![]() |
#5 |
restart çalışma için teşekkürler:
if mantıksal döngüsünü sen anlattıktan sonra bende while, for döngülerini anlatırım arada bir de switch e de girelim... |
|
![]() |
![]() |
#6 |
restart, eline sağlık..
değişkenlerden konu açılmışken, ben de kendi bildiklerimden bişiler yazayım.. __________________________________________________ _______________________ Değişkenlere browserdan değer atama Şimdi yukarıdaki adres satırına bakın. Şu şekilde bir link var: http://www.********.com/forumyeni/showthread.php?t=547 Ee şimdi bu ne demek ![]() Burada forumun yaptığı şey t değişkenine 547 değerini atarmak. T topic'in kısaltması. Yani bu linke girdiğimizde karşımıza 547 id numaralı topic çıkacak. Bir örnek daha vereyim. Aşağıdaki dosyayı deger_ata.php şeklinde kaydedin. <?php echo "Hoşgeldin $ismim"; ?> Şimdi de adres satırınıza http://localhost/deger_ata.php?ismim=Mithat yazın. O da ne Hoşgeldin Mithat yazısı karşınızda ![]() Değişkenlere değer dosya adından sonra ?degisken_adi=degisken_degeri şeklinde atanır. Ee peki birden fazla değişken eklemek istersek? Alın bu da deger_ata2.php <?php echo "$isim1 $isim2 yi seviyoooo"; ?> Adres satırınıza http://localhost/deger_ata2.php?isim...ef&isim2=ayshe yazın. Eshref aysheyi seviyoooooo ![]() Birden fazla değişken atamak için °isken_adı=degisken_degeri şeklinde bir kullanım yapıyoruz. sonraki yazım: sabitler (bunları bi zip yapıp arşivlesek ii olur) Mesajı son düzenleyen mthT ( 07-03-04 - 12:50 ) |
|
![]() |
![]() |
#7 |
Bende PhpNuke Kurulumunu anlatayim
![]() PHPNuke kurmak kolay bir işlem. Yapmanız gerekenleri aşağıda bulabilirsiniz. Öncelikle PHPNuke'yi resmi sitesinden download edin. <http://phpnuke.org/modules.php?name=Downloads>. Download ettiğiniz bu sıkıştırılmış paketi WinRAR veya WinZip ile açın. İki klasör göreceksiniz. Birincisi sql, ikincisi html. html klasöründe PHPNuke sisteminin dosyaları yer almakta.sql klasöründe ise veritabanı dosyası yer almakta. sql klasöründe yer alan nuke.sql dosyasını MySQL veritabanına PHPmyAdmin yazılımı ile yükleyip çalıştırın. Veritabanı tabloları oluşturulacaktır. Daha sonra html klasöründe yer alan config.php dosyasını herhangi bir editörle açın. Bizim bu konuda tavsiyemiz bir PHP editörü olan PHPed yazılımıdır. Bu yazılımı <http://www.inndir.com> adresinden download edebilirsiniz. config.php php dosyasınmda yer alan şu satırları değiştirin. $dbhost = "localhost"; Bu satıra veritabanı sunucusunun adresini girmelisiniz. Bu adresi hosting hizmeti aldığınız hosting firmasından edinebilirsiniz. $dbuname = "root"; Bu satıra veribanı kullanıcı adını girmelisiniz. $dbpass = ""; Bu satıra ise veritabanı kullanıcısına ait olan parolayı girmelisiniz. $dbname = "nuke"; Bu satıra sql sorgusunu çalıştırıp tabloları oluşturduğunuz veritabanı adını girmelisiniz. $prefix = "nuke"; Bu satır sabit kalabilir. $user_prefix = "nuke"; Bu satır yine sabit kalabilir. $dbtype = "MySQL"; Bu satıra veritabanı sistemini girmelisiniz. PHPNuke MySQL, mSQL, PostgreSQL, PostgreSQL_local, ODBC, ODBC_Adabas, Interbase, Sybase veritabanları ile çalışabilir. Bu ayarları yaptıktan sonra sitenize bağlanıp http://www.siteismi.com/admin.php yazın. Burada kendinize bir Admin ID ve parola belirleyin ve admin alanına giriş yapın. Burada "Seçenekler" veya "Preference" şeklinde bir bağlantı bulacaksınız. Buradan sistenize uygun ayarları yapabilirsiniz. Ayarlarda site adresi, site ismi, site sloganı, haber sayısı, alt alanda yer alacak bilgiler, bannerların aktif olup olmayacağı gibi birçok özelliği ayarlayabilirsiniz. Dosyaları servera yönlendirdikten sonra bütün klasörlerin CHMOD yani erişim haklarını 777, ve bütün dosyaları erişim haklarını 666 olarak değiştirin. Bu riskli bir uygulama ama dikkat etmeniz gereken her klasörün içine boş bir index.html dosyası koymanız gerekli. Kurulum işlemi bu kadar. Bundan sonra yapmanız gereken site içeriğinizi hazırlamak. ARaGoRN |
|
![]() |
![]() |
#8 |
PHP Programlama Dilinde If Yapısı (Koşullandırma && Sınama) // Yeni başlayanlar
Her türlü programlama dilinde olduğu gibi PHP içinde koşullandırma ve denetleme organizması olan if yapısı olmazsa olmaz bir deyimdir. If kelimesinin Türkçe karşılığının "eğer" olduğunu söylersem herşeyi daha kolay anlayabileceksiniz. Örneğin; Kod:
if ($isim == "") { echo("\$isim değişkeninin içi boş!"); } Kod:
if (empty($isim)) { echo("\$isim değişkeninin içi boş!"); } else { echo("\$isim değişkeninin içi dolu!"); } If deyiminin olmazsa olmazlarından biri de "elseif" yapısıdır. Bu yapı mutlaka if yapısından sonra bulunmalıdır. Şöyle bir örnekle açıklanabilir; Kod:
if ( $x == 3 ) { echo("Değişkenin değeri: 3"); } elseif ( $x == 5 ) { echo("Değişkenin değeri: 5"); } else { echo("Değişken 3 veya 5 değerlerinden birisine sahip değil."); } If ve else kalıbını uzun uzun yazıncaya kadar "?" operatörü ile de bir koşul sınama yapısı oluşturulabilir. Hemen aşağıdaki örneği inceleyin; Kod:
$x = 3; empty($x)?print("x değeri boş"):print("x değeri boş değil"); ![]() Süslü parantez kullanmadan kısa if deyimleri yazmak istiyorsanız aşağıdaki örneği inceleyin: Kod:
if ( $HTTP_REFERER != "http://www.abc.com" ): echo("Bu sayfaya diğer sayfalardan erişim yasaklanmıştır!"); exit(); endif; exit(); fonksiyonu hakkında biraz daha açıklayıcı olayım. Bu fonksiyon kullanıldığı zaman scriptinizin PHP tarafından işlenişi durur. Yani bu fonksiyonu nereye koyarsanız PHP yorumlayıcısı scriptinizi oraya kadar okur ve bu fonksiyonu çalıştırdıktan sonra gerisini okumaz. Bu yapı üyelik sistemlerinde ve benzeri yapılarda çokça kullanılır. Bunun benzeri olarak die(); fonksiyonu da kullanılabilir. PHP dilinde if yapısı bu kadar. Görüldüğü gibi aslında herşey gayet kolay ![]() Hoşçakalın. // gelecek konu: switch yapısı |
|
![]() |
![]() |
#9 |
çok iyi hoş da böyle kopuk kopuk olmuyor
sizin yaptığınız veya piyasada bulunan bir ebook varmı?? |
|
![]() |
![]() |
#10 |
Evet Restrat bunları word dökümanı veya pdf dökümanı yap her sayafayada kendine ait olduğunu gösteren bir işaret ekle. Çok güzel olur sanırım..
|
|
![]() |
![]() |
#11 |
Bende war. en kısa zamanda yollarım...
|
|
![]() |
![]() |
#12 |
ama server lasm. bana soleyn...
|
|
![]() |
![]() |
#13 |
arkadaşların dediği gibi döküman olarak hazırlayıp koysan daha iyi olur sanırım ama genede sen bilirsin aynende devam edebilirsin
|
|
![]() |
![]() |
#14 |
Dökümanlar tamamlandığı zaman bir e-book oluşturabilirim, eğer şimdi ben bunları yayınlamayıp, hepsini bitirdikten sonra e-book şeklinde yayınlarsam baya bir süre beklemeniz gerekecek. Şimdilik böyle devam edelim, işi tamamına erdirince e-book işini düşünürüz.
|
|
![]() |
![]() |
#15 |
Switch Yapısı // Yeni başlayanlar
Bu yapı aslında if yapısı ile hemen hemen aynıdır. Ancak bazı durumlarda if kullanmak daha kompleks bir hal alırken switch kullanmak bize daha kolay ve kısa bir yöntem olarak görülebilir. Switch deyimi if deyimine ne kadar benzese de if deyiminin yaptığı herşeyi yapamaz. Yine de bize bazı durumlarda fazlasıyla yardımcı olabilir. Peki ne işimize yarayacak bu deyim? Bu yapıyı if yapısı ile eşdeğer tutarak ne işe yarayabileceğini düşünebilirsiniz. Nihayetinde bu da bir if benzeri yapıdır ve vereceğiniz koşula göre sınama yapıp size sonucu verir. Yazının devamında örnekler ile ne işe yarayacağını biraz da olsa anlayabileceksiniz. Switch deyiminin yazılışını ve dizilişini öğrenmek için aşağıdaki örneği inceleyin: Kod:
switch ($tarih) { case "dmy"; echo date("d.m.Y"); break; case "dmygis"; echo date("d.m.Y G:i:s"); break; default: echo("Tarih türünü seçmediniz. Bu sebeple default tarih gösterimini görüyorsunuz:"); echo date("<b> d-m-Y G:i - l</b>"); } Şimdi örneğimizi inceleyelim. Örnekte $tarih değişkeninin alacağı değerleri sınıyoruz ve bu değerlere göre koşullar yaratıp işlem yaptırıyoruz. Bu kodu ornek.php ismi ile kaydedip http://127.0.0.2/ornek.php?tarih=dmy olarak çalıştırırsanız ilk koşulumuz gerçekleşecek ve "09.03.2004" gibi bir çıktı alacaksınız. Aynı şekilde eğer ornek.php?tarih=dmygis olarak çalıştırırsanız "09.03.2004 20:12:17" gibi bir çıktı alırsınız. Eğer sadece http://127.0.0.2/ornek.php olarak çalıştırırsanız hiçbir koşul yerine gelmediğinden "Tarih türünü seçmediniz. Bu sebeple default tarih gösterimini görüyorsunuz: 09-03-2004 20:13 - Tuesday" çıktısını alırsınız. Yine eğer ornek.php?tarih=ffsafdasfdas gibi bir şekilde girmeye çalışırsanızda default kısmı devreye girer ve aynı çıktıyı alırsınız. Dikkat etmeniz gereken şeyleri şu şekilde sıralayabiliriz:
Mesela bir site yapıyorsunuz ve bu sitenizin aynı diğer sitelerdeki gibi http://127.0.0.2index.php?bolum=programlama gibi linkleri olsun istiyorsunuz. Bu durumda switch yapısı oldukça işlevseldir. Bunu if yapısı ile de yapabilirsiniz fakat switch if deyiminden bu durumlarda daha hızlı çalışacağı için ve daha işlevsel olacağı için önerilir. Yukarıdaki örneğe bakarak istediğiniz türden linkler yaratabilirsiniz. Switch içerisine istenildiği kadar koşul tanımlanabilir, fakat ne kadar çok koşul olursa çalışma performansı o kadar düşecektir. Bu yüzden olabildiğince kısa tutmaya çalışmalıyız. Ayrıca switch deyiminin if deyiminden daha hızlı çalıştığı bilindiğinden, switch ile yapabileceğimiz işlemleri if ile yapmamalıyız. Yapsak bile sonuçta performans düşeceği için zararlı çıkan biz oluruz. Hoşçakalın. // gelecek konu: döngüler (for && while) |
|
![]() |
![]() |
#16 |
phpnuke de meta taglarını hangi dosyayı editleyip ayarlıyoruz ? ya da admin panelinde var mı böyle bir seçenek ?
|
|
![]() |
![]() |
#17 |
admin panelinde yoq!!
|
|
![]() |
![]() |
#18 | |
Alıntı:
|
||
![]() |
![]() |
#19 |
Arkadaşlar Saolun yeni başlayanlar için en başından başlamıssınız çok iyi de en en baştan başlayıp windowsa apachi'yi php 'yi bilmem neyi nerden bulur nasıl kurarız ordan alsanız. Yani zahmet olmazsa
![]() |
|
![]() |
![]() |
#20 |
mesulidus:
dağa taşa yazılmış bişi bu, www.download.com da phptriad diye ara, indir ve kur.. (ayrıntı istiosan biraz araştır) |
|
![]() |
Cevapla |
Konu Araçları | |
|
|