vBulletiner.com ödüllü seo yarışması sorunları
Merhaba Arkadaşlar.
vBulletiner.com ödüllü seo yarışması Devam Ederken Bazı Sorunlar Baş Göstermeye Başladı. Yarışmacılardan Bazıları vBulletiner.com ödüllü seo yarışması nı düzenleyen Burach 'ında yarışmaya katılmasına karşı çıktı. Bakalım iler ki günlerde ödüllü seo yarışmaasında ne gibi sorunlar çıkıcak.
Umarızki sorunlar yaşanmaz güzel bir seo yarışması olur.
Yazının Kopyalanması Yasaktır.
vBulletiner.com ödüllü seo yarışması devam ediyor
Merhaba Arkadaşlar.
vBulletiner.com ödüllü seo yarışması devam ediyor katılımcılar her geçen dahada artıyor. Google 'dada bugünlerde aşırı derecede dalgalanmalar oluyor bu durum hiç kimsenin hoşuna gitmiyor çünkü yerini bilemiyorum. Ama şu bir gerçekki kazanmayı isteyen çok kişi var :) Bakalım ben kaçıncı sırada bitireceğim.
Not : Yazının kopyalanması yasaktır.
PHP ile vBulletin Tarzı Sayfalama yapma
Selamün Aleyküm Arkadaşlar .
Şimdi Sizlere vBulletin tarzı uzantısı ..../sayfa=1 ,.... /sayfa=2... Gibi Biten listeme yapmanın mantıgını anlatmaya calıscam.
İlk Once Şu Şekilde Bir Mantıkla İşe Başlıyoruz .
GET modülünden sayfa numarasi al
PHP- Kodu:
$sayfa = @$_GET["sayfa"];
//bir sayfada listelenecek kayit sayisi
PHP- Kodu:
$sayfalik_kayit = 10;
//sayfa belirlenmemisse, sayfa=1 yap
PHP- Kodu:
if( empty($sayfa) ){ $sayfa=1; }
//limit baslangici
PHP- Kodu:
$baslangic = ($sayfa*$sayfalik_kayit)-$sayfalik_kayit;
//bütün kayitlari sorguluyoruz
PHP- Kodu:
$genel_sorgu = mysql_query("select * from sozluk");
//toplam kaydi hesapliyoruz.
PHP- Kodu:
$toplam_kayit = mysql_num_rows($genel_sorgu);
toplam sayfayi hesapliyoruz.
PHP- Kodu:
$toplam_sayfa = ceil($toplam_kayit/$sayfalik_kayit);
//ceil() İfadesi Çıkacak Olan Sonucu Yukarı Yuvarlama yapar
Örnek toplam_kayit/sayfalik_kayit Bize kac sayfa olcagını solicek ya bunun sonucu 2.6 ıse ceil ile biz onu 3 yaparız anladık umarım .Devam edıyoruz.
PHP- Kodu:
$sql = mysql_query("Select * from TABLO_ADIN limit $baslangic,".($sayfa * $sayfalik_kayit)";
<< İşte Burda Farkettiğimiz bi olay ne
PHP- Kodu:
limit $baslangic,".($sayfa * $sayfalik_kayit)
Bu ifade bu tablodan cektıgın verileri limitliyor sayfa basına kac dedıysek o kadar lıstelememızı saglıyor .
Şimdi De Sayfa 1 , Sayfa 2 , dıye lıstelememız lazım 1 e basınca sayfa 1 e gelmelı 2 ye basınca 2 ye onuda Select Secmelı bır menu ıle yapayım oda sole kucuk bı for dongusu ile tamamdır For dongusu ile o selectli ıfadenın hepsını aynı anda yazıyorum acıklanacak bı tarafı yok eger anlamıorsunu for dongusunu bılmıyorsunuz demektır ..
PHP- Kodu:
echo "<select onchange="location='SAYFALAMA YAPTIGIN SAYFANIN ADRESİ.php?sayfa='+this.value">n";
for($i=0;$i<$toplam_sayfa;$i++){
$sayfa_no = $i+1;
$sec = ($sayfa_no==$sayfa) ? " selected" : "";
echo "<option value="$sayfa_no" $sec>Sayfa $sayfa_no</option>n";
}
echo "</select>nn";
Anlatın Hasann 'a Aittir Kendisine Teşekkür Ediyoruz.
PHP Notasyonu
1.satır sonu;
2.metin etiketi “, ‘
3.fonksiyon değişken ayracı ( )
4.bloklama { }
5.açıklama //, /* */
6.harfler
7.php yerleşik fonsiyonları
8.değişkenler $
şeklinde 8 gurup altında toplanabilir.
Satır sonu
PHP de satır sonuna gelindiğini C veya pascal da olduğu gibi “;” işareti ile anlatırız.
Örnek: echo “merhaba”;
Eğer bu işaret olmaz ise satır sonuna gelindiğini yorumlayıcı/derleyici anlamaz ve hata verir.
Metin Etiketi
PHP de metinler “ veya ‘ işaretleri arasına yazılırlar bu arada bulanan her türlü sayı ve harf metin olarak alınır ve sayısal işlemlere tabi turulmazlar.
Örnek echo “merhaba”; veya echo ‘merhaba’;
Fonksiyon değişken ayracı
Fonsiyonlara aktarılan değişkenler ( ) işaretleri arasında belirtilir.
Örnek function merhaba($isim){
…..
}
Bloklama
Herhangi bir fonksiyona veya bloğa başlarken { bu blok tamamlandığında veya bitirldiğinde ise } işaretleri kullanılır.
Açıklama
PHPde açıklama bölümleri yazılabilmektedir. Bu bölümler eğer tek satır ise // şeklinde eğer 1 den fazla satırdan oluşuyorsa /* ile başlanır ve */ şeklinde açıklama bitirilir.
Harfler
PHP malumunuz İngiliz harf kodlaması ile geliştirildiği için İngiliz harfleri ve 0- 9 arasındaki sayılar kullanılmaktadır.
PHP yerleşik fonsiyonları
PHP de bulunan yerleşik fonksiyonların tamamı küçük harflerden oluşur. Ve birbiri ile ilgili fonsiyonlar _ şizgi ile tamamlanır. Örneğin session nesnesine ait fonsiyonlar
session_register(…);
session_unregister(…);
şeklindedir.
Değişkenler
Değişkenlerin kullanılmadan önce tanımlanma ihityacı bulunmamaktadır ama yinede bazı durumlarda tanımlanmalıdırlar. Bir değişken $ işareti ile başlar.
Not : Döküman !_D Tarafından Hazırlanmıştır. Kaynak Göstermeden Yayınlanamaz.
PHP de Değişkenler
Değişken tanımlanırken bazı kurallara uyulması daha sonradan kodu tekrar okuyabilmek için gereklidir. En sık kullanılan notasyon PHP nin kendisinin de kullandığı çıkış noktası notasyonudur. Bu notasyonda yazılan her değişkenin bir çıkış noktası vardır ve değişkenlere bu çıkış noktası başa yazılarak _ ayracı kullanıldıktan sonra değişken adı yazılır oldukça uzun bir notasyondur ancak okuması en kolay notasyondur.
Örnek verirsek
$sayac bir temel değişkendir. $sayac_öncekiSayi şeklinde bir tanımlama sayacın artımdan önceki değeri olduğunu anlatmak için uygundur. Görüldüğü gibi değişken kendini kolaylıkla programcıya tanıtmaktadır.
Bunun yerine $i ve $j gibi değişkenlerde yazılabilir ancak daha sonrası için anlaması zordur ve büyük ihtimalle tekrar kullanılamayacak bir kod oluşturur.
Değişken türleri
PHP de kullanılan Temel değişken türleri aşağıdakiler gibidir.
Tamsayı (Integer): 5,124, 9834 gibi
Çift (Double): 3,567 gibi
Alfanümerik (String): "Reşit" gibi
Mantıksal (Boolean): doğru (true)/yanlış (false) gibi
Nesne (Object)
Not : Döküman !_D Tarafından Hazırlanmıştır. Kaynak Göstermeden Yayınlanamaz.
Programlama ve Temel PHP kalıpları
Merhaba.
Eğer PHP yi bir IIS veya apache ile kullanıyorsanız, <?php , kod başlangıcını , ?> , kod bitimini gösterir.
PHP- Kodu:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
<title>.:: İlk PHP Kodlarım::. .:: Merhaba Dünya ::.</title>
</head>
<body>
<?php
echo "Merhaba Dünya";
?>
</body>
</html>
Çok alışık olduğumuz bir kod değil mi ?
Kare Alanı Hesaplayan Program
Kod:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
<title>.:: İlk PHP Kodlarım::. .:: Merhaba Dünya ::.</title>
</head>
<body>
<?php
$kare_kenar=5;
$kare_alan=$kare_kenar*$kare_kenar;
echo ”kenar uzunlugu “. $kare_kenar.” Olan bir karenin Alanı ”.$kare_alan.” olmaktadır. “;
?>
</body>
</html>
Dikdörtgen alanı Hesaplayan Program
Kod:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
<title>.:: İlk PHP Kodlarım::. .:: Merhaba Dünya ::.</title>
</head>
<body>
<?php
$dortgen_a_kenar=5;
$dortgen_b_kenar=10;
$dortgen_alan=$dortgen_a_kenar* $dortgen_b_kenar;
echo ”a kenarı uzunlugu “. $dortgen_a_kenar.”, b Kenar Uzunluğu ”.$dortgen_b_kenar.” Olan bir dörtgenin alanı “.$dortgen_alan. “olmaktadır. “;
?>
</body>
</html>
Yukarıda ekrana çıktı vermek için echo fonksiyonunu kullandık. Bu fonksiyon Standart Çıkışa veri gönderir. Eğer bir web sayfası üzerinde çalışıyorsak bu browserımızdır, Linux veya başka bir platformda program yazıyorsak bu standart çıkış aygıtı olan ekranımız olacaktır.
Echo fonksiyonu ile aynı çalışan printf ve sprintf fonksiyonlarıda aynı işi yapacaktır. Printf ve sprintf fonksiyonları yalnızca çıkşa değil bir başka değişkene de yazabilmektedir. Şimdi yukarıdaki dörtgen programını printf ve sprintf ile tekrar yazalım.
printf fonksiyonu ile
Kod:
<?php
$dortgen_a_kenar=5;
$dortgen_b_kenar=10;
$dortgen_alan=$dortgen_a_kenar* $dortgen_b_kenar;
printf ( ”a kenarı uzunlugu “. $dortgen_a_kenar.”, b Kenar Uzunluğu ”.$dortgen_b_kenar.” Olan bir dörtgenin alanı “.$dortgen_alan. “olmaktadır. “);
?>
sprintf fonksiyonu ile
Kod:
<?php
$dortgen_a_kenar=5;
$dortgen_b_kenar=10;
$dortgen_alan=$dortgen_a_kenar* $dortgen_b_kenar;
sprintf ( ”a kenarı uzunlugu %s, b Kenar Uzunluğu %s Olan bir dörtgenin alanı %s olmaktadır. “, $dortgen_a_kenar, $dortgen_b_kenar, $dortgen_alan);
?>
Sprintf fonksiyonu diğer echo ve printf fonksiyonlarından farklı olarak çalışmakta ve formatlı bir çıkışa izin vermektedir. Özellikle çok miktarda verinin işlendiği yerlerde programcının yükünü önemli ölçüde azaltmaktadır.
Sprintf fonksiyonu kullanılış olarak;
sprintf(‘ string dizi ’, kullanılan değişken,…)
şeklindedir.
Php sadece bir takım hesaplamaları yapmak için değil web sayfası ile gönderilen form verilerini kullanmak için tasarlanmıştır. Salt kendi içinde hesaplamalar yapıyor olsa idi herhalde bu kadar yaygın olmazdı.
Form verisi ile gönderilen veriler 2 metodla gönderilir. Birincisi get metodu diğeri ise post metodu eğer bir veri Get metodu ile gönderiliyorsa browserinizin adres çubuğunda gönderilen veriler görülebilir bu bazı durumlarda tercih edilirken özellikle gizli kalması gerek veriler için tercih edilmezler, bu gibi durumlarda veriler post metodu ile gönderilir ve veriler kısmende olsa saklanır. Bazen özellikle portal programları hazırlanırken bazı veriler post ile bazılarıda get ile aynı anda gönderilmektedir. Gönderilen bu veriler php içerisinde 2 fonksiyon ile çağrılır ve kullanılır.
$_GET bu aslında bir tür dizi değişkenidir gönderilen her türlü GET verisi bu dizi altında tutulmakta ve çağrılırken gönderimde kullanılan ismi ile çağrılmaktadır.
Aşağıdaki Örnek form.html sayfası içerisinde gönderilen verileri isle.php sayfasında işlemektedir.
form.html
Kod:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
<title>form örneği</title>
</head>
<body>
<form id="form" name="form" method="get" action="isle.php">
<table width="400" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>e-posta adresiniz </td>
<td><label for="textfield"></label>
<input type="text" name="eposta" id="eposta" /></td>
</tr>
<tr>
<td>Şifreniz</td>
<td><label for="textfield"></label>
<input type="password" name="sifre" id="sifre" /></td>
</tr>
</table>
<p> </p>
<p>
<label for="Submit"></label>
<input type="submit" name="Submit" value="isle.php ye git" id="Submit" />
</p>
</form>
</body>
</html>
isle.php dosyası
Kod:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
<title>Untitled Document</title>
</head>
<body>
<table width="400" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="131">Gönderilen veriler </td>
<td width="269"> </td>
</tr>
<tr>
<td>eposta Adresi </td>
<td><?php echo $_GET['eposta']; ?> </td>
</tr>
<tr>
<td>şifre</td>
<td><?php echo $_GET['sifre']; ?> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
</body>
</html>
Yukarıdaki örneği çalıştırdığınızda isle.php dosyasına geçildiğinde adres çubuğunda gönderilen veriyi görebirisiniz.
Bu örneği post medu ile yaparsak form.html dosyasında ;
<form id="form" name="form" method="get" action="isle.php">
Satırını
<form id="form" name="form" method="post" action="isle.php">
Şeklinde ve yine isle.php dosyasında
<?php echo $_GET['eposta']; ?>
….
<?php echo $_GET['sifre']; ?>
Satırlarını
<?php echo $_POST['eposta']; ?>
….
<?php echo $_POST['sifre']; ?>
Olarak değiştirmeniz gerekmektedir.
Not : Döküman !_D Tarafından Hazırlanmıştır. Kaynak Göstermeden Yayınlanamaz.
PHP ile SESSION Kontrolü
Session nerelerde kullanılabilir?
Session kullanıcının bilgisayarında saklanılmasını istemediğiniz her türlü veri için kullanılabilmektedir. Mesala kullanıcı girişi yapılan bir site yaptınız bu durumda kullanıcı girişi bilgilerini kullanıcının tarayıcısında saklamak pekde uygun olmayacaktır. Bunun yerine sunucu üzerinde saklamak güvenlik açısından daha uygundur.
session Nesnesine ait komutlar
session_start():
session başlatmaya yaramaktadır. Ve herhangi bir parametre almaz.
session_register(değişken adı)
Yeni bir session nesnesi yaratır.
Örnek session_register(‘eposta’);
session_unregister(değişken adı)
Var olan bir değişkenin silinmesi için kullanılır.
Örnek session_unregister(‘eposta’);
$_SESSION[değişken adı]
Var olan bir değişkenden bilgi okumak ve değişkene bilgi yazmak için kullanılır. PHP 5 ile birlikte değişken yaratırken de register komutuna gerek olmadan değişken yaratmak için kullanılmaya başlandı.
Not : Döküman !_D Tarafından Hazırlanmıştır. Kaynak Göstermeden Yayınlanamaz.
Php de COOKIE Kontrolü
Cookie de sessionda olduğu gibi bazı genel bilgileri tutmak için kullanılan bir değişkendir. Bu değişken(ler) sessiondan farklı olarak sunucu üzerinde değil kullanın tarayıcısı üzerinde tutulmaktadır. Bu gibi veriler genelde istatistik amaçlı ve session nesnesi ile birlikte yüksek güvenlik sağlamak amacı ile kullanılmaktadırlar.
Cookie nesnesi komutları
Setcookie(adı, değeri, yaşamsüresi,yolu, alanadı)
Bu komut yeni bir cookienin tarayıcıya gönderilmesi için kullanılır. Adı kismından sonrası tercihen kullanılmaktadır.
Örnek Kod:
<?php
$value = 'hiçbirşey ama herşey’;
setcookie("TestCookie", $value);
setcookie("TestCookie", $value, time()+3600); /* 1 saat yaşamsüreli */
setcookie("TestCookie", $value, time()+3600, "/dizin/", ".esmerforum.com");
?>
$_COOKIE[adı]
Bu dizi gönderilen tüm cookie bilgilerini içerisinde barındırır.
Örnek Kod:
<?php
echo $_COOKIE["TestCookie"];
?>
Cookilerdeki en önemli durum yaşam süresidir yaşam süresi doğru hesaplanmayan cookie erken öleceği için kullanılırlığını kaybedecek ve programın kırılmasına sebep olabilecektir. Kullanılırken bu gibi durumlar göz önünde bulundurulmalıdır.
Not : Döküman !_D Tarafından Hazırlanmıştır. Kaynak Göstermeden Yayınlanamaz.
PHP de Karşılaştırma işlemleri
Karşılaştırma işlemleri temel olarak tüm dillerde bazı küçük farklılıklarla if fonksiyonu ile yapılır. PHP, C temelli bir dil olduğu için karşılaştırma komutlarıda C dili üzerinden aynı yapıda alınmıştır. Şimdilik küçük bir açıklama ve örnekle birlikte genell kullanım şeklini veriyoruz.
Kullanım Şekli :
if (karşılaştırma ) {
komut bloğu
} else {
Komut bloğu
}
Şeklindedir.
Örnek verecek olursak;
Kod:
<?
$a = 8;
$b = 9;
if ( $a > $b )
{ echo “a sayısı b sayısından büyüktür.”; }
?>
Not : Döküman !_D Tarafından Hazırlanmıştır. Kaynak Göstermeden Yayınlanamaz.


