Eski 11-03-04, 19:12 #21
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

mesulidus: O konuyu ayrı bir başlık açıp anlatabilirim.
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 13-03-04, 02:25 #22
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

PHP Programlama Dilinde Döngü Yapısı // Yeni başlayanlar
  • While Döngüsü && Do-While Döngüsü
  • For Döngüsü
While Döngüsü

While döngüsü PHP dilinde en çok kullanılan döngülerden birisidir. Türkçe karşılığı "iken"`dir. Yani döngümüze bir koşul tanımladığımızda, bu koşul yerine getirilene kadar döngümüz sürer. Dikkat etmemiz gereken husus döngümüze vereceğimiz koşulun sonsuza dek sürecek bir koşul olmamasıdır. Eğer sonsuz bir döngü tanımlarsak programımız hata verir veya kilitlenir. Hemen basit bir örnek ile bu döngünün yazılışını inceleyelim.

Kod:
$sayi=1;
while ($sayi <= 10) {
	echo("$sayi<br>");
$sayi++;
}
Bu döngümüzün yazılış biçimidir. Tanımladığımız değişkeni döngümüzde bir koşula bağladık ve bu koşula göre çıktısını aldık. Daha açık söylemek gerekirse $sayi değişkenine bir (1) değerini verdik ve döngümüzde "$sayi değişkeni küçük/eşit 10 sayısına ulaşana kadar..." şeklinde bir koşul bağladık. Daha sonra ise süslü parantezimizi açıp bu cümlenin devamını getirdik: "... ekrana $sayi değişkenini her seferinde bir (1) arttırarak bas." Buradaki her seferinde bir sayı arttırma olayını $sayi++ ile yaptık.

Bu döngünün bir başka yazılış şekli de şöyledir,

Kod:
while ($sayi <= 10): echo("$sayi<br>"); $sayi++; endwhile;
Bu döngüyü kullanacağımız alanlar oldukça geniştir. Elbette böyle sadece sayıları bir bir arttırarak bu döngünün kullanım alanını belirleyemeyiz. Örneğin bu döngü ile veritabanımızdan (ileri de bu konuyu işleyeceğiz.) veri çekip ekrana basabiliriz.

Bu döngü bu kadardır, temel olarak incelediğimizde bundan daha fazla birşey yazmanın yeri yoktur. Fakat dediğim gibi biz PHP dilinde ilerledikçe bu ve benzeri döngülerin nerelerde kullanılabileceğiniz daha iyi anlayacağız.

Bir de bu döngünün benzeri olarak do-while döngüsü vardır. Bu döngünün while döngüsüyle arasında küçücük fark vardır. Biz bazen bir döngü döndüreceğimiz zamanlar o döngünün mutlaka en az bir kere dönmesi gerektiği olur. Yani o döngüyü mutlaka bir kere döndürmemiz gerekir. İşte bu durumlarda do-while döngüsünü kullanıyoruz. Örneği inceleyin.

Kod:
$x=0;
do {
	echo("$x<br>");
	$x++;
} while ($x <= 10);
Örnek aslında dediğim şeyle biraz ilgisiz oldu fakat sizinde görebildiğiniz gibi ilk olarak ekrana $x değişkeni mutlaka bir kez basılıyor. Sonra do deyiminin sonundaki while koşuluna bakılıp, eğer devam etmesi uygun ise program koşula bağlı olarak devam ediyor. Koşul sağlanana kadar döngümüz dönüyor ve koşul sonlandığında son buluyor. Eğer siz $x değişkeninin değerini 11 gibi bir sayı yaparsanız göreceksiniz ki yine de ekrana bir kez 11 sayısı basılacak ve koşul sağlanmadığı için döngü sona erecektir.

For Döngüsü

For kelimesinin İngilizce karşılığının "için" olduğu düşünülürse bu döngünün de amacını anlamış oluruz Bu döngünün de işlev olarak while döngüsüne benzediğini belirtmekte fayda var. İlk bakışta karışık gibi görünse de yazılış şeklini öğrenmek için aşağıdaki örneği inceleyin.

Kod:
for ($x=1; $x <= 10; $x++) {
	echo("$x<br>");
}
Döngüye başlarken ilk olarak $x=1 sabitimizi verdik. Daha sonra koşulumuzu tanımladık ve bu koşul her sağlandığında yapılacak işlemi belirttik. Kitap diliyle anlatmak gerekirse;

Kod:
for (ifade1; koşul; ifade2) {
	ifade3
}
Gibi birşey yazılabilir. Bunları tek tek açıklayalım:
  • İfade1: Bu kısım daima bir veya birden çok sayaca atanan ilk değer olur.
  • İfade2: Döngüde her turdan sonra tekrar edilir.
  • İfade3: Koşul sağlandığı sürece her turda bir kez olmak üzere tekrar edilir. Bu kısım döngünün esas kısmı olup, bize çıktıyı verecek kısımdır.
  • Koşul: Tahmin edebileceğiniz gibi döngümüze verdiğimiz koşuldur.
For döngüsünde ifade1 olarak adlandırdığımız kısım sadece bir kez okunur, geri kalan kısımlar ise her turda tekrarlanır. Bu döngü genellikle web sayfalarında listeleme vs. türü işlemler yapılırken kullanılır. Aşağıdaki örneği inceleyin.

Kod:
echo("<h2>Liste</h2>");
echo("<table border=0 width=500>");
echo("<tr><td><b>Sıra</b></td><td><b>Açıklama</b></td></tr>");
for ($x=1; $x <= 10; $x++) {
	echo("<tr><td>$x</td><td>$x sıralı programın açıklaması</td></tr>");
}
echo("</table>");
Bu örneği çalıştırdığınızda tablonun bir yanında sıra numarası, öteki yanında ise o sıraya ait açıklamanın olduğunu göreceksiniz. Bu tabi ki basit bir örnek fakat for döngüsünün kullanım alanları hakkında size fikir verebilir düşüncesiyle yazmayı uygun gördüm.

Başka bir örneği, for döngüsünün başka bir yazım şekli ile daha kısa olarak yazalım:

Kod:
for($x=0; $x <= 10; print $x, $x++);
For döngüsü üzerine yazılabilecek pek başka birşey kalmadı. Eğer eksik kalmış bilgiler varsa sonra tekrar eklerim.

Hoşçakalın.

// gelecek konu: operatörler
// eğer derslere ilgi yoksa ben bunları kesebilirim, ilgi görmeyen birşeyi yazmak benim de işime gelmez. lütfen ses-soluk verin ki bende anlayayım ne olduğunu..

Mesajı son düzenleyen RestarT ( 12-05-04 - 22:04 ) Neden: Yanlışlık
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 13-03-04, 11:42 #23
NaRCoTiC NaRCoTiC çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

devam et Restart
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 13-03-04, 12:32 #24
mthT mthT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Restart: fazla ilgi bekleme derim ben, yazdığın dökümanları baştan sona 3 kişiden fazla okumuyordur.. (biri benim )
Millet php'yi phpbb ile, vbulletin ile anladıktan sonra öğrenmek isteyen çok kişi olacağını sanmıyorum..
ama devam et..
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 15-03-04, 00:15 #25
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Üzgünüm ama akıntıya kürek çekemem..

PHP`yi sadece vB, phpBB, phpnuke vs. gibi yazılımlardan ibaretmiş gibi gören, fakat biz bir script vs. hazırladığımızda deli gibi hatasını arayıp -bulduğu zamanda döver gibi- bize bildiren ve kafa yapan insanlara ne yapsan gereksiz, ne yapsan anlamsız..

Belki ileride devam ederiz. Yarıda kalmaz ve ilgi, merak uyandırır diye düşünmüştüm.
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 18-03-04, 18:59 #26
AkUmANeoNX AkUmANeoNX çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

sanırım biraz fazla uzak kaldım. php ile ilgi yazı niye devam etmiyor. restart boşver dostum biz burdayız sen devam et hepsini düzenleyip saklıyorum. çok başarılı çalışma tebrikler....
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 24-03-04, 02:44 #27
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

PHP Programlama Dilinde Operatörler // Yeni başlayanlar
  • Matematiksel Operatörler
  • Karşılaştırmalı Operatörler
  • Mantıksal Operatörler
  • Diğer Operatörler
Operatör diyince aklınıza gelen şeyleri yok edin, ve şimdi kendinizi makalenin akışına bırakın. Çünkü eminim ki, eğer PHP diline yeni başlamış biri iseniz aklınıza gelenler alakasız ve gereksiz şeylerdir. Yok edin onları..

İlk olarak operatör nedir onu izah edeyim. Operatörler PHP dilinde genelde değişkenler üzerinde işlemler yapmamıza yarayan kod parçalarıdır. Eğer ki biz $x ile $y değişkeninin eşit olup olmadığını sınamak, ya da $x + $y kaça eşittir, bunları bulmak istiyorsak operatörlerimize başvururuz. Sırayla gidelim ve "Matematiksel Operatörler" ile başlayalım.

Matematiksel Operatörler
  • Toplama İşlemi ( + ) Operatörü
  • Çıkarma İşlemi ( - ) Operatörü
  • Çarpma İşlemi ( * ) Operatörü
  • Bölme İşlemi ( ) Operatörü
  • Bölme İşleminde Kalanı Bulmak İçin ( % ) Operatörü
Bunların hepsini tek tek örnekleyelim. Örneklerin içerisindeki açıklama satırlarını okursanız kolayca anlayabilirsiniz.

Kod:
<?php

# Bize gerekli olacak iki adet sayıyı değişkenlere yüklüyoruz.
$x = 10;
$y = 3;

# Örnek: Toplama ( + ) Sonuç: 13
$sonuc = $x+$y;
echo("Toplama Sonucu: <b>$sonuc</b><br>");

# Örnek: Çıkarma ( + ) Sonuç: 7
$sonuc = $x-$y;
echo("Çıkarma Sonucu: <b>$sonuc</b><br>");

# Örnek: Çarpma ( * ) Sonuç: 30
$sonuc = $x*$y;
echo("Çarpma Sonucu: <b>$sonuc</b><br>");

# Örnek: Bölme ( / ) Sonuç: 3.333333..
$sonuc = $x/$y;
echo("Bölme Sonucu: <b>$sonuc</b><br>");

# Örnek: Bölme işleminde kalan ( % ) Sonuç: 1
$sonuc = $x%$y;
echo("Kalan Sonucu: <b>$sonuc</b><br>");

?>
Bunların haricinde kullanımlarda vardır. Örneğin genelde for döngüsünde kullanılan $x++ gibi kullanımlara da rastlarız. Bu tür bir kullanım ile $x değişkenine 1 ekleyebilir, ya da 1 azaltabiliriz. Ben bir 1 arttırma işlemini anlatacağım, zaten eksiltme işlemi de aynı şekilde yapıldığı için pek zorlanmazsınız.

Arttırma işlemini $x++ şeklinde veya ++$x şeklinde yapabiliriz. Peki fark nedir? Aşağıdaki örneği inceleyin.

Kod:
<?php

# Değişkenleri tanımlayalım.
$x = 10;
$y = 3;

# Örnek[1]: $x++ | İlk çıktı: 10, ikincisi 11 olacaktır.
echo "\$x++ Şeklinde kullanım: <br>";
echo $x++ ."<br>";
echo $x ."<br><br>";

# Örnek[2]: ++$y | İlk çıktı: 4, ikincisi 4 olacaktır.
echo "++\$y Şeklinde kullanım: <br>";
echo ++$y ."<br>";
echo $y ."<br><br>";

# Eğer scripti çalıştırırsanız aradaki farkı anlamış olacaksınız ;)

?>
Anlattıklarımın haricinde += ve benzeri kullanım şekli de var. Fakat bunu anlatma gereği duymuyorum, bana gereksiz geliyor Matematiksel Operatörler konusunu burada sonlandıralım.

Karşılaştırmalı Operatörler

Eğer $x ile $y değişkenlerinin eşit olup olmadıklarını, birbirlerine karşı büyüklük veya küçüklük durumlarını öğrenmek istiyorsak bu operatörlere başvurmalıyız. Aşağıdaki örnekte hepsini tek tek açıklayacağım. Açıklama satırlarını okursanız neyin ne olduğunu anlamanız daha da kolaylaşır.

Kod:
<?php

# Değişkenleri tanımlayalım.
$x = 10;
$y = 3;

# --------------------------------------------------------------------------
# Örnek: Eşittir ( == ) Operatörü | Syntax: $x == $y
# Açıklama: Karşılaştırılan iki değerin birbirine eşit olup olmadığı sınanır.
# --------------------------------------------------------------------------

if ($x == $y) { echo("iki değişken birbirine eşittir.<br>"); }
else { echo("iki değişken birbirine eşit değildir.<br>"); }


# --------------------------------------------------------------------------
# Örnek: Denktir ( === ) Operatörü | Syntax: $x === $y
# Açıklama: Karşılaştırılan iki değerin birbirine denk olup olmadığı sınanır.
# --------------------------------------------------------------------------

if ($x === $y) { echo("iki değişken birbirine denktir.<br>"); }
else { echo("iki değişken birbirine denk değildir.<br>"); }

# --------------------------------------------------------------------------
# Örnek: Eşit Değildir ( != ) Operatörü | Syntax: $x != $y
# Açıklama: Karşılaştırılan iki değerin birbirine eşit olup olmadığı sınanır.
# --------------------------------------------------------------------------

if ($x != $y) { echo("iki değişken birbirine eşit değildir.<br>"); }
else { echo("iki değişken birbirine eşittir.<br>"); }

# --------------------------------------------------------------------------
# Örnek: Büyüktür ( > ) ve Küçüktür ( < ) Operatörleri | Syntax: $x > $y
# Açıklama: Karşılaştırılan değerlerin birbirine büyük veya küçük oldukları bulunur.
# --------------------------------------------------------------------------

if ($x > $y) { echo("x değişkeni y değişkeninden büyüktür.<br>"); }
else { echo("x değişkeni y değişkeninden büyük değildir.<br>"); }
if ($x < $y) { echo("x değişkeni y değişkeninden küçüktür.<br>"); }
else { echo("x değişkeni y değişkeninden küçük değildir.<br>"); }

# --------------------------------------------------------------------------
# Örnek: Büyük-Eşit ( >= ) ve Küçük-Eşit ( <= ) Operatörleri | Syntax: $x >= $y
# Açıklama: Karşılaştırılan değerlerin birbirine büyük-eşit veya küçük-eşit oldukları bulunur.
# --------------------------------------------------------------------------

if ($x >= $y) { echo("x değişkeni y değişkeninden büyüktür veya eşittir.<br>"); }
else { echo("x değişkeni y değişkeninden büyük veya eşit değildir.<br>"); }
if ($x <= $y) { echo("x değişkeni y değişkeninden küçüktür veya eşittir.<br>"); }
else { echo("x değişkeni y değişkeninden küçük veya eşit değildir.<br>"); }

?>
Mantıksal Operatörler

Bu operatörler ile aynen Türkçe`de sık sık kullandığımız "veya" ve "ve" kelimelerini PHP içine entegre edeceğiz. Örneğin bir if deyimi içerisine bu tür cümlecikler yerleştirerek "Eğer x ve y şöyle ise, böyle yap" gibi bir cümleyi PHP içerisinde uygulayabileceğiz. Aşağıdaki bu operatörler hakkında bilgi bulabilirsiniz. [list][*]&& Operatörü: AND olarakta kullanılabilir. Anlamış olduğunuz gibi Türkçedeki anlamı "ve" bağlacıdır. $x && $y örneğinde, iki değişkende doğru ise sonuç true (1), diğer durumlarda false (0) olarak döner. && kullanımı AND kullanımına göre önceliklidir. Sıralamada ilk olarak && işler.[*]|| Operatörü: OR olarakta kullanılabilir. Türkçedeki anlamı "veya" bağlacıdır. $x || $y örneğinde, değişkenlerden birisinin yada ikisinin doğru olması durumunda sonuç true (1), diğer durumlarda false (0) olarak döner. || kullanımı OR kullanımına göre önceliklidir. Sıralamada ilk olarak || işler

Aşağıdaki örneği inceleyin.

Kod:
<?php

# İfadelerimizi tanımlayalım.
$x = 6;
$y = 4;

# Örneğimize geçiyoruz. Aşağıdaki örnekte verilen iki koşulunda doğru olması
# durumunda sonuç 1, diğer durumlarda 0 olarak dönecektir. Örneğimizde iki
# koşul da doğru olamayacağı için sonuç 0 olarak dönecek ve else komutu
# işleyecektir. Eğer aradaki && operatörünü || ile değiştirirsek sonuç değişir.

if ( ($x+$y)==10 && ($x+$y)==20 ) {
	echo("İkisi de doğru.");
}
else { 
echo("İkiside doğru değil.");
}

?>
Diğer Operatörler
  • ! Operatörü
  • ? Operatörü
  • @ Operatörü
! Operatörü: Bu operatör, bir değişkenin vereceği true veya false sonucuna göre işlem yapar. Daha açık söylemek gerekirse, örneğin bir formumuz olsun. Bu formun işlenip işlenmediğini

Kod:
<?php if ($form) { echo("Form işlendi."); } ?>
gibi bir kod ile bulabiliriz. Bunun tersini yapmak istediğinizde, değişkenimizin başına ! getirir ve kodumuzu şu şekle sokarız:

Kod:
<?php if (!$form) { echo("Form işlenmedi."); } ?>
Bu kodun açıklaması "Eğer form işlenmediyse ekrana 'form işlenmedi' yazısını bas" şeklindedir. Anlamış olduğunuz üzere ! Operatörü değişkenin vereceği true veya false değerinin tersini sınar ve ona göre işlem yapar.

? Operatörü: Bir nevi if yapısıdır. Aşağıdaki örneği inceleyin.

Kod:
<?php $x=0?print("x değişkeninin değeri sıfırdır"):print("x değişkeninin değeri sıfır değildir."); ?>
@ Operatörü: Script`imizin çalışması esnasında oluşabilecek hataları ziyaretçilerimize göstermek istemiyorsak, hata çıkarabileceğini düşündüğümüz ifadenin başına @ operatörünü ekleriz. Örneğin kendi local makinamızda mail(); fonksiyonu ile bir mail yollatmaya çalışalım, eğer local sunucumuzda smtp server kurulu değilse hata verecektir. Eğer biz bu hatayı görmek istemiyorsak @mail(); şeklinde bir kullanım ile hatamızı saklayabiliriz. Aşağıdaki örneği inceleyin.

Kod:
<?php @mail("$kime, $konu, $mesaj"); ?>
Operatörlerin kullanım alanları oldukça geniş olduğu için, tıpkı değişkenleri iyice bildiğimiz gibi bunlarında anlam ve kullanım şekillerini bilmemiz bize yarar sağlayacaktır. Veritabanı sorgularından tutunda envai çeşit döngülerde, deyimlerde ya da fonksiyonlarımızda kullanacağımız bu operatörleri iyi bilmek gerekir.

PHP dilinde operatör kavramını burada bırakabiliriz. Atladığım, belirtmediğim bir takım operatörlerde vardır. Bunlar pek işimize yaramayacağı için şimdilik yok saydım ve atladım, ilerde lazım olursa bunları da ekleyebilirim.

Hoşçakalın.

// gelecek konu: tarih işlemleri
// boş vakit bulduğumda yeni makaleler yazma kararı aldım. okuyan okur, okumayanları da zorla okutacak değiliz en azından güzel bir arşiv oluşmuş olur. sizde kendi yazılarınızla katkılarınızı esirgemeyiniz.
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 25-03-04, 12:39 #28
hcelik hcelik çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

birde mysQL den veri çekme ve sıralama ile alakalı bir örnek kodlar gönderseniz...
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 25-03-04, 19:17 #29
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Şimdilik bu dilin syntax`ını, mantığını, genel fonksiyonlarını ve işlevlerini işliyorum. Daha sonra, bunları bitirdikten sonra veritabanı ilişkilerine geçeceğim. Karışık bir sıra ile anlatmak bence doğru değil, maksadım herkesin faydalanabilmesi.
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 27-03-04, 03:46 #30
Cruise Cruise çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Çok teşşekkürler restart eline sağlık. Lütfen devam et...
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 27-03-04, 04:07 #31
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Bu aralar sınavlarım gittikçe arttı ve belki ufak bir süre (1-2 hafta kadar) ara vermek durumunda kalabilirim. İdare edin artık, makine değiliz ki şak şak yazalım
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 27-03-04, 10:01 #32
Felix Felix çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Alıntı:
Gerçek Mesajı Gönderen hcelik
birde mysQL den veri çekme ve sıralama ile alakalı bir örnek kodlar gönderseniz...
restart şu an yazamayacağı için mysql olayını da ben açıklayim.
-> Mysqlden veri çekme
Mysqlde dbye sorgular mysql_query komutu ile yollanır. Bu komut ile veri çekebilirsin. Örnek :
mysql_query("SELECT * FROM tablo");

Yukarıdaki örnekte tablo adlı tablodaki tüm verileri çektik. Herhangi bir koşula bağlı olmadan tüm veriler elimizde şu an. İstersek bunu bir koşula bağlayabiliriz.

mysql_query("SELECT * FROM tablo WHERE nick='Felix');

Bu seferde nicki Felix olanlar elimizde. İstersek bir eşitsizlikte yaratabiliriz.

mysql_query("SELECT * FROM tablo WHERE no!='2'");
Bu seferde nosu 5 olmayanları dbden çektik.

-> Mysqlden Çekilen veriyi okuma
Yukarıda veriyi nasıl çekebileceğinizi en basit şekilde anlattım. Mesela biz phpye aşağıdaki komutu verdiğimiz zaman ekrana hiçbir şey yazmaz:
$a=mysql_query("SELECT * FROM tablo");
echo $a;
Yukardaki komut ekrana hiçbir şey basmaz. Nedeni ise çünkü biz mysqle sadece sorgu yolladık. Yani şunun gibi, ben tablo adlı tablodan veri çekecem Mysql hazırlansın.
şimdi de veriyi okuyacaz. Veriyi okumanan en basit yolu mysql_result komutudur.
$a=mysql_query("SELECT * FROM tablo WHERE nick='Felix'");
$c=mysql_result($a,0,"nick");
echo $c;
Bu komut ekrana Felix yazacaktır.(Hayali olarak tabi, siz kendi pcnizde denerseniz yazmaz. Çünkü bu komuta uygun bir db yok ortada)
mysql_result komutunun unutmamanız gereken özelliği, sadece 1 satır veri çekebilir. yani Dbde nicki Felix olan 2 veya daha çok kullanıcı olabilir ama mysql_result komutu bunlardan ilkini alır. Diyelim ki Dbde nicki Felix olan 10 tane kullanıcı var ve siz de bunların hepsini listelemek istiyorsunuz bu durumda mysql_fetch_array, mysql_fetch_assoc, mysql_fetch_object... gibi birkaç tane daha komutu kullanabilirsiniz. (bu döküman temel mysql kullanımını ele aldığı için sizlere mysql_fetch_array ı anlatacam)
$a=mysql_query("SELECT * FROM tablo WHERE nick='Felix'");
while($list=mysql_fetch_array($a)){
echo $list['nick']."<br>"; // veya echo "$list[nick]<br>";
}
bu komut bir while döngüsü ile kullanılır. Kullanımı basittir. Fakat mysql_result tan biraz daha karışıktır.

-> Mysqle veri yazma
Dbye veri ekleme çok basittir. Ama hata yapmamanız gerekir. , hatası ile bile komut çalışmayacaktır ve de sorunlar yaşatacaktır.
mysql_query("INSERT INTO tablo VALUES('felix', 'asd', '2342', 'we2'");
Buradaki ' ' tırnak içine yazılmış bölümlerin sayısı tablo adlı tablodaki field sayısı ile aynı olmak zorundadır.

-> Satır sayısı öğrenme
Diyelim ki bir üyelik sisteminiz var ve de siz kaç tane üyeniz olduğunu öğrenemek istiyorsunuz:
$q=mysql_query("SELECT * FROM uye");
$sayi=@mysql_num_rows($q);
echo $sayi;
İşte bu kadar basit bir komut mysql_num_rows

Sormak istediğiniz bir şey olursa yardımcı olabilirim...

Restart seni anladım ama db işlemlerine gördüğüm kadarı ile daha çok var ve de sen de 1-2 hafta ayrı olacağından hcelik in öğrenme şevki kırılmasın diye anlattım işlemleri...

Mesajı son düzenleyen Felix ( 27-03-04 - 10:03 )
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 28-03-04, 18:44 #33
the_alorak the_alorak çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

selam ortalarda bi soru sorulmuş.Meta taglar PHP-Nukede includes/meta.php içine atılıyor.
Felix veya Restart sizlerden yardım almam gerekiyor heralde.Bişeyler yapmaya çalışıyorum.MSN'niz varsa ordan da konuşabiliriz.Ayrıca burada da bişey soracağım.
Değişkene Veritabanından nasıl değer vereceğini anlatmışsınız.Mesela bir form kutusuna bir değer yazıp.Göndere basınca nasıl Veritabanına kaydeder.Bu tip bişeyler arıyorum.İlgilenir ve PHP anlatma işini bırakmazsanız çok seviniriz.(İnşallah İleri seviyeler de anlatılabilir.Yani değişkenlerle filan kalmaz iş)
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 28-03-04, 20:44 #34
Felix Felix çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

beyler ileri seviyelerde php çok karışık. Yani uzman düzeyinde anlatım yaparsam burada çok az kiş anlayacaktır onlarda orta seviyeden biraz daha fazla php bilen adamlar olur. Burada önemli olan phpyi sizlere sevdirmek ve de temeli vermek.

the_alorak senin soruna gelince aşağıda örnek kod yazdım.
<?
if(empty($kullanici)){
echo "<form action=\"$php_self\" method=\"post\">"
."Nick :<input type=\"input\" name=\"kullanici\" />"
."<br><input type=\"submit\" value=\"Kaydet\" />"
."</form>";
}
else{
$kullanici=trim($kullanici);
$q=@mysql_query("INSERT INTO tablo VALUES('$kullanici')");
if($q){
echo "Veritabanına eklendi.";
}
else{
echo "Sorun var.";
}
}
?>
Burada önce bir form oluşturduk html kodları kullanarak. Ardından bir tane de text alanı yaptık ve de bu alanın adı olarak kullanici dedik. Bu demek oluyor ki buraya yazılan her şey $kullanici değişkenine depolanır. Ardından bir if else sınaması ile adam bir şeyler yazmışsa scriptin çalışmasını eğer yazmamışsa sadece html kodlarının çalışmasını sağladık. Daha sonra da $kullanici değişkenindeki boşlukları sildik(Bunu yapmak zorunda değilsin) Ardından bu değişkeni veritabanına kaydettik. Ve sonra yine bi if else sınaması ile $kullanici değişkenin dbye eklenip eklenmediğini ekrana bastık...

Mesajı son düzenleyen Felix ( 28-03-04 - 20:48 )
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 29-03-04, 01:24 #35
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Bu arada yanlış hatırlamıyorsam php 4.3+ sürümlerde form alanından post veya get metodu ile alınan verileri işlerken direk form elemanının ismini değişken olarak atayamıyoruz.

Şöyle ki, yukarıdaki örnekte görüldüğü üzere formdan gelen "kullanici" bilgisi direk $kullanici şeklinde işlenmiş. Fakat belirttiğim sürümden sonraki sürümlerde form verisini $_POST[kullanici] gibi bir şekilde alıyoruz. Eğer bir sorun ile karşılaşırsan, değişken tipini değiştirip tekrar denersin..
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 31-03-04, 17:25 #36
Felix Felix çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

restart o olay php.ini ayarlarından kaynaklanıyor. php 4.3.4tede, 4.3.3te de sorun yok. Veriyi istersen $_post(veya _get)[degisken] istersen de $degisken biçiminde elde edebilirsin...
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 31-03-04, 22:04 #37
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Bende şimdiye kadar hiçbir çalışmamda böyle bir soruna rastlamadım ama sadece başka bir yerde böyle birşey okudum gibi geldi.. Demek ki onlar yanlış yazmış, aklımda da o yanlış yazılan şeyler kalmış..

Şimdi açtım php.ini dosyasını baktım, ve gördüm ki..

Alıntı:
; - register_globals = Off [Security, Performance]
; Global variables are no longer registered for input data (POST, GET, cookies,
; environment and other server variables). Instead of using $foo, you must use
; you can use $_REQUEST["foo"] (includes any variable that arrives through the
; request, namely, POST, GET and cookie variables), or use one of the specific
; $_GET["foo"], $_POST["foo"], $_COOKIE["foo"] or $_FILES["foo"], depending
; on where the input originates. Also, you can look at the
; import_request_variables() function.
; Note that register_globals is going to be depracated (i.e., turned off by
; default) in the next version of PHP, because it often leads to security bugs.
; Read http://php.net/manual/en/security.registerglobals.php for further
; information.
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 03-04-04, 10:45 #38
Felix Felix çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

register globals off olduğunda $php_self değişkeni çalışmıyor, onun yerine sanırım $_server["php_self"] kullanılması gerekiyordu. $php_self gibi daha bir çok değişken uçuyor...
nasıl bir güvenlik sorunu yarattığını anlayamadım daha...
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 04-04-04, 14:01 #39
the_alorak the_alorak çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Selam felix ve diğer arkadaşlar, Bu forumda ayrıca soru sorulacak özel bir mesaj açsanız iyi olur diye düşünüyorum, çünkü anlatılan konular ve sorular karışmaması için.Neyse ben PHP-Nuke'nin reviews modulundeki bir kodu aktarıyım;

echo "<br><b>"._LANGUAGE.": </b>"
."<select name=\"rlanguage\">";
$handle=opendir('language');
while ($file = readdir($handle)) {
if (preg_match("/^lang\-(.+)\.php/", $file, $matches)) {
$langFound = $matches[1];
$languageslist .= "$langFound ";
}
}
closedir($handle);
$languageslist = explode(" ", $languageslist);
for ($i=0; $i < sizeof($languageslist); $i++) {
if($languageslist[$i]!="") {
echo "<option value=\"$languageslist[$i]\" ";
if($languageslist[$i]==strtolower($currentlang)) echo "selected";
echo ">$languageslist[$i]</option>\n";
}
}
echo "</select><br><br>";
} else {
echo "<input type=\"hidden\" name=\"rlanguage\" value=\"$language\"><br><br>";
}

Anlaşıldığı üzere, dil seçim kutusu var.Ve seçilebiliyor.Ama bu gönder tuşuna basınca SQL olarak, MySQL'a kaydediyor.Üstteki kodda hiç mysql'a gönderme ifadesi yok sanırım.Üstteki kodda bi yere kaydedip.Aynı dosya içinde başka bir yerden bunu sql'a kaydetme olasılığı var mı?
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 04-04-04, 14:46 #40
RestarT RestarT çevrimdışı
Varsayılan Cvp: PHP - Notlar && Dersler

Üstteki kodda sql komutu yok, çünkü bu bir form, ve formdan gelecek bilgiye göre işlem yapılacak. Yani hangi dil seçilirse ona göre işlem yapacak. Sanırım yukarıdaki kod belirttiğin sayfanın sadece bir kısmı, tümünü yazabilir misin? Çünkü ne bir form tag i var, ne de anlama yetecek kadar kod. Ayrıca sorunu da biraz daha açarsan mutlu olurum.
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Cevapla

Bu konunun kısa yolunu aşağıdaki sitelere ekleyebilirsiniz

Konu Araçları

Gönderme Kuralları
Yeni konu açamazsınız
Cevap yazamazsınız
Dosya gönderemezsiniz
Mesajlarınızı düzenleyemezsiniz

BB code is Açık
Smiley Açık
[IMG] kodu Açık
HTML kodu Kapalı



Tüm saatler GMT +3. Şuan saat: 19:38
(Türkiye için artık GMT +3 seçilmelidir.)

 
5651 sayılı yasaya göre forumumuzdaki mesajlardan doğabilecek her türlü sorumluluk yazan kullanıcılara aittir. Şikayet Mailimiz. İçerik, Yer Sağlayıcı Bilgilerimiz.