PHP ile İnternet Programlama

Benzer belgeler
PHP Programlama 1. Bölüm. Tolga GÜYER

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1

PHP ile İnternet Programlama

İNTERNET PROGRAMCILIĞI HAFTA. PHP ile FORM İŞLEMLERİ. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Form Elemanları Kullanımı

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

MODÜL 2 HTML İLE GELİŞMİŞ ÖZELLİKLER

İnternet Programcılığı Form İşlemleri ve Oturum Yönetimi Örnekleri

Web Tasarımının Temelleri

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ 1 1. FORMLAR

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu

İNTERNET PROGRAMCILIĞI DERSİ ÇALIŞMA SORULARI

İNTERNET PROGRAMCILIĞI I

JavaScript Örnekleri PDF

Web Teknolojileri ve Programla

Web Programlama Kursu

PHP ile İnternet Programlama

Kayan Çerçeveler. Web sayfası içerisine kaydırılabilir çerçeveler yerleştirmek için

9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.

PHP Kodlar. Sibel Somyürek Tolga Güyer

Web Tasarımı - Yrd. Doç. Devkan Kaleci 1

Temel Başlıklar. HTML Formlarının amacı Çalışma şekli Form Action ve Method

Metin Text Kutuları. Metin kutusu oluşturmak için <input> tagı kullanılır.

PHP ile İnternet Programlama

ASP.NET Web Kontrolleri

Öğr. Gör. Serkan AKSU 1

PHP kodları çoğu zaman HTML kodları arasına gömülü olarak yazıldığından öncesinde HTML kodlarınının bilinmesinde fayda vardır.

KBÜ. TBP107 Web Tasarımının Temelleri «H T M L E T İ K E T L E R İ - III» Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ

WEB PROGRAMLAMA. PHP Temelleri 2. Dr. Erman Yukselturk

Site Temizlik Projesi Kodları

WEB TASARIMININ TEMELLERİ

PHP Programlama 3. Bölüm. Tolga GÜYER

BTP208 İnternet Programcılığı II HTML5 ve Getirdiği Yenilikler (2. Kısım)

Web Site Tasarımı (Html-Css) (SD0139) Murat KARA 2017

1. FORMLAR AMAÇ ARA TIRMA. Programlamaiçindeformkullan m n ö renerekuygulamalaryapabileceksiniz.

Javascript Ders Örnekleri -2. Tarayıcı Görüntüsü

PHP ile İnternet Programlama Doç.Dr. Tolga GÜYER

JAVASCRIPT JAVASCRIPT DİLİ

<html> <head> <title>sayfa Başlığı</title> </head> <body> Bu benim ilk sayfam <b>bu metin koyu</b> </body> </html>

Örnek Uygulama: CheckedListBox da seçili olanları listbox nesnesine ekleyen program.

Site Tasarım Çalışması -3

T.C. MİLLİ EĞİTİM BAKANLIĞI MEGEP (MESLEKÎ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) BİLİŞİM TEKNOLOJİLERİ INTERNET PROGRAMCILIĞI - 4

1-100 tam puan üzerinden notları harf notuna çeviren Php kodunu yazınız. <?php

VERİ TABANI ve YÖNETİMİ

8- Sistem tarihinden gün değerini alarak çift veya tek sayı olup arasındaki sayılardan tek olanları yeşil çift olanları kırmızı

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.

Upgrading Internet Technology skills of Information and Communication Technologies (ICT) Professionals

ÖĞRENME-ÖĞRETME YÖNTEM VE TEKNİKLERİ. gösterip yaptırma, uygulamalı çalışma. Anlatım, soru-cevap, gösterip yaptırma, uygulamalı çalışma.

ASP.NET ile Bir Web Sitesi Oluşturma


İNTERNET PROGRAMCILIĞI - II

WEB KULLANICI KONTROLLERİ ve ANASAYFA KULLANMA(Master Page)

SESSİON KULLANIMI. .Aşağıdaki Kodları da SessionDevam.asp adıyla kaydedelim. Language=VBScript Codepage="1254"%>

İSMET AKTAR ANADOLU TEKNİK LİSESİ BİLİŞİM TEKNOLOJİLERİ ALANI WEB PROGRAMCILIĞI DALI

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 4

HTML & CSS. Öğr.Gör. M.Ersin AKAY

Bilgisayar Programlama

HSancak Nesne Tabanlı Programlama I Ders Notları

Doç.Dr. Yaşar SARI, Web Tasarımı Ders Notları 1

Programlama Yazılımı ile Web Sitesi Oluşturma

Google Search API ile ajax arama

UYGULAMALAR. İkinci liste kutusu (List 2) Birinci liste Kutusu (List 1) Metin Kutusu

Uygulamalar 4 IsMissing Fonksiyonlar ve Alt Programlar Prosedür Parametreleri Public Function f(x,y,optional t, Optional k) End Function 1.

Bölüm 10: PHP ile Veritabanı Uygulamaları

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

Üst Düzey Programlama


2. HTML Temel Etiketleri

VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI

4. Bağlantı (Köprü) Oluşturma

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9

İNTERNET PROGRAMCILIĞI - II

WEB PROGRAMLAMA. DERS NOTLARI / JavaScript e Giriş YARD. DOÇ. DR. MEHTAP YALÇINKAYA

Yukarıdaki örnekte görüldüğü üzere her php komut satırı noktalı virgül (;) ile biter.

PHP (II) Formlar. Dosya İşlemleri. 2002, Sanem SARIEL PHP Ders Notları 2 1. Formlar

h a k a n b a b a c. n e t HTML Web Tasarımı ve Programlama

HSancak Nesne Tabanlı Programlama I Ders Notları

Basit bir web uygulaması

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011

Mysql Klası Kullanılarak Yapılan Öğrenci Kayıt Uygulaması

Üst Düzey Programlama

Response : Sunucunun istemciye veri yollamasını

4 Front Page Sayfası Özellikleri

Web Teknolojileri ve Programla

KONULAR VE UYGULAMA LİSTESİ

Üst Düzey Programlama

İNTERNET TABANLI PROGRAMLAMA- 11.ders FORM UYGULAMASI (DROPDOWN BİLGİ YÜKLEME, VALIDATION KONTROLLERI, PAREMETRELİ KAYIT YAPMA)

MOBILEPAX XML PRODUCT API KULLANIM ŞEKLİ

HESAP MAKİNASI YAPIMI

PHP, nesne-yönelimli (object-oriented) bir dil olduğu için, nesne oluşturma imkânına ve bunların kullanılmasını sağlayan metodlara da sahiptir.

HTML TABLO OLUŞTURMA HALİL İBRAHİM AKGÜN

Burak Kıymaz JAVA FX

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu

BABY WEB SERVER I KURMAK:

MASTER PAGE SAYFASI KULLANIMI

2-Hafta Temel İşlemler

Transkript:

PHP ile İnternet Programlama Doç.Dr. Gazi Üniversitesi Gazi Eğitim Fakültesi Bilgisayar ve Öğretim Teknolojileri Eğitimi Bölümü 3. BÖLÜM: Formlarla Çalışmak

HTML Formlarının Temelleri Dinamik etkileşim araçlarından oluşan HTML formlarından elde edilen değerlerin işlenmesi, PHP nin en işlevsel kullanım alanlarından birisini oluşturmaktadır. Bu kesimde HTML formları hakkında temel seviyede bilgi verilmesi amaçlanmıştır. Bu bilgiler, ilerleyen bölümlerde ele alacağımız MySQL uygulamaları konusuna da temel oluşturacaktır. İnternet üzerinde çalışan veritabanı uygulamalarında formlar, kullanıcının doğrudan etkileşim kurduğu en üst katmanda yer alırlar. Dolayısıyla kullanıcı-dostu olarak tasarlanmaları gerekir.

HTML Formlarının Temelleri HTML formları, üzerlerinde bulunan metin alanları, radyo düğmeleri, işaretleme kutuları ya da liste kutuları gibi çeşitli etkileşim nesneleri yoluyla kullanıcıdan bilgi alınmasını sağlayan araçlardır. Bu formlar, <form> </form> etiketleri arasında oluşturulur.

HTML Formlarının Temelleri Bu durumda metin tabanlı bir verinin girilmesini sağlayan form, aşağıdaki gibi olacaktır: <form> <p>adınız: <input type="text" name="ad" ></p> <p>soyadınız: <input type="text" name= "soyad" ></p> </form> Burada <input type="text" name="ad"> bildirimi, alanın bir girdi (input) alanı, türünün ise metin kutusu (text) olduğunu söylemektedir. name özelliği ise, nesnenin programatik adını göstermektedir.

HTML Formlarının Temelleri Tasarladığımız bu formu, bilgileri gönderme işlemini sağlayacak bir komut düğmesi ile tamamlayalım: <form> <p>adınız: <input type="text" name="ad" ></p> <p>soyadınız: <input type="text" name= "soyad" ></p> <p><input type="submit" ></p> </form> Burada <input type="submit"> bildirimi, yine alanın bir girdi (input) alanı, ancak türünün gönderme butonu (submit) olduğunu söylemektedir.

HTML Formlarının Temelleri Bu koda ait ekran görüntüsü aşağıdaki gibi olacaktır:

HTML Formlarının Temelleri Sıkça kullanılan bazı nesnelerin yer aldığı örnek bir HTML formu aşağıdaki resimde görülmektedir.

HTML Formlarının Temelleri Bu forma ait HTML kodları ise aşağıda verilmiştir. <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>html Form Örneği</title> </head> <body> <form id="form1" name="form1" method="post" action=""> <p> <textarea name="textarea" id="textarea" cols="45" rows="5"></textarea> </p> <p> <input type="checkbox" name="checkbox1" id="checkbox">seçenek-1 </p> <p> <input type="checkbox" name="checkbox2" id="checkbox2">seçenek-2 </p>

HTML Formlarının Temelleri <p> <input type="checkbox" name="checkbox3" id="checkbox3">seçenek-3 </p> <p> <input name="radio" type="radio" id="radio" value="1" checked="checked" />Seçim-1 </p> <p> <input type="radio" name="radio" id="radio" value="2" />Seçim-2 </p> <p> <input type="radio" name="radio" id="radio" value="3" />Seçim-3 </p> <p> <select name="select" id="select"> <option value="seçim-1">seçim-1 <option value="seçim-2">seçim-2 <option value="seçim-3">seçim-3 </select> </p></form></body></html>

HTML Formlarının Temelleri İlk alan bir Textarea dır. Bunun metin kutusundan farkı, çok satırlı olarak daha uzun metinleri alabilen bir nesne olmasıdır. HTML formlarında işaretleme yapma amacı ile iki tip nesne kullanılır: Checkbox ve Radibutton. Checkbox nesnesi çoklu seçimlerin yapılmasına olanak tanır. Tek seçim yapılmasını istediğimiz durumlarda ise Radiobutton nesnesini kullanırız. Farklı Radiobutton nesnelerinin aynı grup içersinde değerlendirildiği bu durumu, her nesneye aynı id (kimlik) adının verilmesi sağlamaktadır. En son nesnemiz ise üç seçenek içeren Combobox türünde bir Select nesnesidir.

PHP Sayfasına Veri Gönderme Gönderme butonuna basıldığında gerçekleşecek eylemin belirlenmesi için form etiketinin action özelliği kullanılır. Buraya yazılacak veri, herhangi bir script kodunun çalıştırılması ile ilgili olabileceği gibi, doğrudan bir php sayfasının adresi de yazılabilir. <form action="verileri_al.php" method="post" > <p>adınız: <input type="text" name="ad" ></p> <p>soyadınız: <input type="text" name= soyad" ></p> <p><input type="submit" ></p> </form>

PHP Sayfasına Veri Gönderme Burada gönderme butonuna basıldığı takdirde, internet tarayıcı tarafından verileri_al.php dosyası yüklenecektir. Bu değer boş bırakıldığı takdirde, yani, <form action=" " method="post" > <p>adınız: <input type="text" name="ad" ></p> <p>soyadınız: <input type="text" name= soyad" ></p> <p><input type="submit" ></p> </form> durumunda, gönderme butonu mevcut sayfanın yeniden yüklenmesini sağlayacaktır. Bu durumda çalışmasını istediğimiz php kodlarının da aynı sayfa üzerinde olması gerekmektedir.

PHP Sayfasına Veri Gönderme Bilgilerin form üzerinden gönderilmesi için iki farklı yöntemden birisi seçilebilir. Bunlardan ilki post, diğeri ise get yöntemidir. Gönderme yöntemi, form etiketinin method özelliği kullanılarak belirlenir. Bilgilerin alınış yöntemi de, gönderme için seçilen yönteme göre değişecektir. Öncelikle post metodunu inceleyelim.

PHP Sayfasına Veri Gönderme POST Metodu Aşağıdaki HTML formunu göz önüne alalım: <html> <body> <form action="verileri_al.php" method="post"> <p>adınız: <input type="text" name="ad"></p> <p>soyadınız: <input type="text" name="soyad" > </p> <p><input type="submit"></p> </form> </body> </html>

PHP Sayfasına Veri Gönderme POST Metodu Bu kodu taşıyan dosyayı, verileri_gonder.html adıyla kaydedelim. Şimdi, action özelliğinde belirtilen verileri_al.php dosyasının içereceği kodları yazalım: <?php $kullaniciadi = $_POST['ad']; $kullanicisoyadi = $_POST['soyad']; echo "Merhaba $kullaniciadi $kullanicisoyadi";?>

PHP Sayfasına Veri Gönderme POST Metodu İnternet tarayıcısı tarafından görüntülenecek dosya, verileri_gonder.html adıyla kaydettiğimiz form dosyası olacaktır. Bu form üzerinde yer alan veri gönderme butonuna basıldığında internet tarayıcısı tarafından verileri_al.php dosyası yüklenecek ve PHP çözümleyicisi tarafından çalıştırılacaktır. Sonuç olarak ekranda aşağıdaki gibi bir görüntü olacaktır: Merhaba Tolga Güyer

PHP Sayfasına Veri Gönderme POST Metodu Kullanıcı tarafından verileri_gonder.html dosyasında girilen bilgiler, post metodu kullanılarak verileri_al.php dosyasına gönderilmiştir ve kullanıcı gönderilen verileri ancak bu PHP kodları çalıştırıldığında görebilmiştir. Veriler, $_POST fonksiyonu kullanılarak alınmıştır. Parametre olarak da form üzerindeki alanın adı kullanılmıştır. Get metodunda ise durum biraz farklıdır.

PHP Sayfasına Veri Gönderme GET Metodu Aynı örneği bu defa get metodunu kullanarak yapalım: <html> <body> <form action="verileri_al.php" method="get"> <p>adınız: <input type="text" name="ad"></p> <p>soyadınız: <input type="text" name="soyad"></p> <p><input type="submit"></p> </form> </body> </html>

PHP Sayfasına Veri Gönderme GET Metodu Bu durumda HTML dosyasında değişen kısım form etiketinin method özelliğinin değeri olmuştur. PHP dosyasında ise verilerin alınmasında kullanılan $_POST fonksiyonu yerine $_GET fonksiyonu kullanılmıştır. <?php $kullaniciadi = $_GET['ad']; $kullanicisoyadi = $_GET['soyad']; echo "Merhaba $kullaniciadi $kullanicisoyadi";?>

PHP Sayfasına Veri Gönderme GET Metodu Aynı amaçla kullanılan bu iki yöntem arasındaki en önemli fark, get metodunda verilerin gönderiliş biçiminden kaynaklanmaktadır. Bu durumda veriler, doğrudan internet tarayıcısının adres çubuğu kullanılarak aktarılırlar. HTML formu doldurulup gönderme butonuna basıldığı anda, internet tarayıcısında resimdeki gibi bir durum oluşacaktır.

PHP Sayfasına Veri Gönderme GET Metodu

PHP Sayfasına Veri Gönderme GET Metodu Resimde de görüldüğü gibi internet tarayıcısının adres çubuğunda yer alan http://.../verileri_al.php?ad=tolga&soyad=guyer adres bilgisi, gönderilen parametreleri de içermektedir. Dolayısıyla gizlilik içeren bilgilerin get metodu kullanılarak gönderilmesi önerilmez. Bu şekilde gönderilecekse, verilerin şifrelenmesi ve kullanılmadan önce şifrelerinin çözülmesi bu güvenlik problemini ortadan kaldıracaktır.

PHP Sayfasına Veri Gönderme GET Metodu Ayrıca parametre sayısı çok fazla olduğunda adres bilgisi çok uzun olacağından ve bu bilgi için 1 Kb üst sınırı bulunduğundan, bu durumda post metodu tercih edilmelidir. Diğer yandan post metodu kullanıldığında bilgiler HTTP tarafından paketlenerek gönderildiğinden, get metoduna oranla daha yavaş bir transfer olacağı söylenebilir.

PHP Sayfasına Veri Gönderme Aynı Sayfa Üzerinden Yükleme Yapmak Aynı örneği tek dosya üzerinde çalışacak şekilde tasarlayalım. Bu durumda hem HTML formu, hem de PHP kodu aynı dosya üzerinde olacaktır ve gönderme butonuna basıldığında bu dosya tekrar yüklenecektir.

PHP Sayfasına Veri Gönderme Aynı Sayfa Üzerinden Yükleme Yapmak <html> <body> <form action="" method="post"> <p>adınız: <input type="text" name="ad"></p> <p>soyadınız: <input type="text" name="soyad"></p> <p><input type="submit" name="dugme"></p> </form> <?php if(isset($_post["dugme"])){ $kullaniciadi = $_POST['ad']; $kullanicisoyadi = $_POST['soyad']; echo "Merhaba $kullaniciadi $kullanicisoyadi"; }?> </body> </html>

PHP Sayfasına Veri Gönderme Aynı Sayfa Üzerinden Yükleme Yapmak Örneğin bu biçiminde, aynı sayfa tekrar yüklendiğinden, ilk yüklenişinde çalışmasını istemediğimiz bölüm bir koşul ile kontrol altına alınmıştır. Şöyle ki, bu koşulda yer alan isset fonksiyonu, dugme adlı butona basıldığında sağlanmaktadır. Dolayısıyla sayfanın ilk yüklenişinde kırmızı renkli kod otomatik olarak çalışmayacaktır.

Örnek Uygulamalar Örnek-1: Fibonacci Dizisi Fibonacci dizisi, 1,1,2,3,5,8,13,21,. biçiminde, 1,1 sayıları ile başlayıp her sayının kendisinden önceki iki sayının toplamı olduğu sayı dizisidir. Leonardo Fibonacci (1170-1250) tarafından bir tavşan çiftliğinde her üreme döneminde elde edilecek toplam tavşan sayısını bulmak için geliştirilen dizi, bulunduğundan bu yana doğada daha pek çok yerde insanların karşısına çıkmıştır. Örneğin; dizideki her bir sayı, Fibonacci sayısı adını alır ve çiçeklerin helezoni biçimindeki tohum dağılımlarında, her bir helezonda yer alan tohum sayısı bir Fibonacci sayısına karşılık gelmektedir. Sonraki slaytta yer alan resim bu durumu göstermektedir.

Örnek Uygulamalar Örnek-1: Fibonacci Dizisi Fibonacci dizisinin bir diğer ilginç özelliği de, ardışık iki Fibonacci sayısının oranının, dizi ilerledikçe, sanat ve mimaride binlerce yıldır bilinen ve altın oran adı verilen sayıya yakınsamasıdır.

Örnek Uygulamalar Örnek-1: Fibonacci Dizisi Yazacağımız program kullanıcı tarafından girilecek bir adım sayısına göre Fibonacci dizisini ve altın orana yakınsama özelliğini listelemektedir. Öncelikle kullanıcıdan adım sayısını alacağımız HTML formunu tasarlayalım. <form action="fibonacci.php" method="post"> <p>adım sayısını giriniz: <input type="text" name="adim" ></p> <p><input type="submit" value="diziyi OLUŞTUR"></p> </form>

Örnek Uygulamalar Örnek-1: Fibonacci Dizisi fibonacci.php dosyasının içeriği ise aşağıdaki gibi olacaktır. <?php $adim=$_post['adim']; $a=1; $b=1; echo "$a<br>$b<br>"; for ($sayac=1;$sayac<$adim-1;$sayac++) { $c = $a + $b; echo "$c - ".$c/$b. "<br>"; $a=$b; $b=$c; }?>

Örnek Uygulamalar Örnek-2: Algoritmik Karekök Alma Girilecek bir sayının karekökünü, belirlenecek bir adım sayısına göre; yaklaşımını kullanarak algoritmik olarak hesaplayacak programı yazalım.

Örnek Uygulamalar Örnek-2: Algoritmik Karekök Alma <form action="" method="post"> <p><b>karekökü alınacak sayıyı giriniz : <input type="text" name="sayi" size="4"></b></p> <p><b>adım sayısını giriniz : <input type="text" name="adim" size="4"></b></p> <p><input name="dugme" type="submit" value="başlat!"></p> </form> <?php if(isset($_post["dugme"])) { $N=$_POST['sayi']; $a=$n; $adim_sayisi=$_post['adim']; while ($say<=$adim_sayisi) { $a = ($a + $N/$a)/2; $say++; } echo "Karekökü = $a"; }?>

Örnek Uygulamalar Örnek-3: Dört İşlem Bu örneğimizde, form üzerinden iki sayı ve işlem kodu alınarak sonuç bir kullanıcı-tanımlı fonksiyon kullanılarak hesaplanıp ana programa geri gönderilmektedir. <form action="" method="post"> <p>birinci Sayı : <input type="text" name="sayi_1" size="4"></p> <p>ikinci Sayı : <input type="text" name="sayi_2" size="4"></p> <p>işlem Kodu : <select size="1" name="kod"> <option value="-1" selected="selected">== S E Ç İ N İ Z ==</option> <option value="1">toplama</option> <option value="2">çıkarma</option> <option value="3">bölme</option> <option value="4">çarpma</option> </select> </p> <p><input name="dugme" type="submit" value="hesapla"></p> </form>

Örnek Uygulamalar Örnek-3: Dört İşlem <?php if(isset($_post["dugme"])){ function islemyap($sayi1,$sayi2,$islemkodu) { switch ($islemkodu) { case 1: $sonuc=$sayi1+$sayi2; case 2: $sonuc=$sayi1-$sayi2; case 3: $sonuc=$sayi1/$sayi2; case 4: $sonuc=$sayi1*$sayi2; } return $sonuc; } $s1=(int)$_post['sayi_1']; $s2=(int)$_post['sayi_2']; $kod=$_post['kod']; echo islemyap($s1,$s2,$kod); }?>

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı Geliştireceğimiz bu uygulama, İnternet üzerinde bilgisayar parçaları siparişi vermek için tasarlanmıştır. Uygulama iki dosyadan oluşmaktadır. İlki, sipariş formunun yer aldığı HTML uygulaması, ikincisi ise sipariş bilgilerini alarak hesaplamaları ve raporlamayı gerçekleştiren PHP uygulamasıdır. Öncelikle HTML uygulamasını verelim.

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı <html> <head> <title>bilgisayar Parçaları Satışı</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-9"></head> <body> <h1>bilgisayar Parçaları Satışı</h1> <h2>sipariş Formu</h2> <form action="siparisi_al.php" method=post> <table border=1> <tr bgcolor=#bee9e9> <td width=150>parça Adı</td> <td align=center width=110>birim Fiyat</td> <td width=15>adet</td> </tr> <tr bgcolor=#ffffaa> <td>kasa</td> <td align=right>85.50 TL</td> <td align=center><input type="text" name="kasa" size=3 maxlength=3></td> </tr> <td>anakart</td> <td align=right>150.00 YTL</td> <td align=center><input type="text" name="anakart" size=3 maxlength=3></td> </tr>

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı <tr bgcolor=#ffffaa> <td>işlemci</td> <td align=right>275.30 YTL</td> <td align=center><input type="text" name="islemci" size=3 maxlength=3></td> </tr> <tr bgcolor=#ffffaa> <td>sabit Disk</td> <td align=right>120.80 YTL</td> <td align=center><input type="text" name="sabitdisk" size=3 maxlength=3></td> </tr> <tr bgcolor=#ffffaa> <td>cd/dvd Sürücüsü</td> <td align=right>90.00 YTL</td> <td align=center><input type="text" name="cddvd" size=3 maxlength=3></td> </tr> <tr bgcolor=#ffffaa> <td>bellek</td> <td align=right>134.20 YTL</td> <td align=center><input type="text" name="bellek" size=3 maxlength=3></td> </tr> <tr bgcolor=#bee9e9> <td colspan=3 align=left><input type=submit value="siparişi Al"></td> </tr> </table> </form> </body> </html>

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı Form çalıştırıldığında devreye siparisi_al.php dosyası girecektir. Bu dosya birim fiyat sabitlerini ve formdan gelen parça adetleri verisini kullanarak toplam tutarı hesaplayacak, string fonksiyonlarının kullanıldığı bir yöntemle bu tutarı yazı ile de yazacaktır.

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı <html> <head> <title> Bilgisayar Parçaları Satışı</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-9"></head> <body> <h1>bilgisayar Parçaları Satışı</h1> <h2>sipariş Bilgileri</h2> <?php function birler_oku ($Gelen_Sayi){ switch ($Gelen_Sayi) { case 0: $bir=""; case 1: $bir="bir"; case 2: $bir="iki"; case 3: $bir="üç"; case 4: $bir="dört";

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı case 5: $bir="beş"; case 6: $bir="alti"; case 7: $bir="yedi"; case 8: $bir="sekiz"; case 9: $bir="dokuz"; } return $bir; }

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı function onlar_oku ($Gelen_Sayi) { switch ($Gelen_Sayi) { case 0: $on=""; case 1: $on="on"; case 2: $on="yirmi"; case 3: $on="otuz"; case 4: $on="kirk"; case 5: $on="elli"; case 6: $on="altmiş";

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı case 7: $on="yetmiş"; case 8: $on="seksen"; case 9: $on="doksan"; } return $on;} function oku ($sayi){ $basamak_sayisi=strlen($sayi); switch ($basamak_sayisi) { case 1: $sonuc=birler_oku((int)$sayi); case 2: $sonuc=onlar_oku((int)$sayi[0]).birler_oku((int)$sayi[1]); case 3: if ($sayi[0]=="1") { $sonuc="yüz".onlar_oku((int)$sayi[1]).birler_oku((int)$sayi[2]); }

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı else { $sonuc=birler_oku((int)$sayi[0])."yüz".onlar_oku((int)$sayi[1]).birler_oku((in t)$sayi[2]); } case 4: if ($sayi[0]=="1") { if ($sayi[1]=="0" and $sayi[2]=="0") { $sonuc="bin".birler_oku((int)$sayi[3]); } elseif ($sayi[1]=="0") { $sonuc="bin".onlar_oku((int)$sayi[2]).birler_oku((int)$sayi[3]); } else { if ($sayi[1]=="1") {

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı $sonuc="binyüz".onlar_oku((int)$sayi[2]).birler_oku((int)$sayi[3]); } else { $sonuc="bin".birler_oku((int)$sayi[1])."yüz".onlar_oku((int)$sayi[2]).birler_oku( (int)$sayi[3]); } } } else { if ($sayi[1]=="0" and $sayi[2]=="0") { $sonuc=birler_oku((int)$sayi[0])."bin".birler_oku((int)$sayi[3]); } elseif ($sayi[1]=="0") { $sonuc=birler_oku((int)$sayi[0])."bin".onlar_oku((int)$sayi[2]).birler_oku((in t)$sayi[3]); } else { if ($sayi[1]=="1") {

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı $sonuc=birler_oku((int)$sayi[0])."binyüz".onlar_oku((int)$sayi[2]).birler_oku( (int)$sayi[3]); } else { $sonuc=birler_oku((int)$sayi[0])."bin".birler_oku((int)$sayi[1])."yüz".onlar_oku( (int)$sayi[2]).birler_oku((int)$sayi[3]); } } } } return $sonuc; } function TL_Oku ($para) { $noktayeri=strpos($para,"."); if ($noktayeri<>0) { $tl=substr($para,0,$noktayeri); $kr=substr($para,$noktayeri+1,strlen($para)-$noktayeri); return oku($tl)." TL ".oku($kr)." Kr"; }

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı else { return oku($para)." TL"; } } echo "<p>siparişiniz "; // Siparişle ilgili bütün detaylar bu php kodu // tarafından hesaplanmaktadır. echo date("j/m/y"); echo " tarihinde, saat "; echo date("h:i"); echo " itibarı ile işleme konmuştur."; echo "<p>siparişinizle ilgili detaylar aşağıda verilmiştir:"; echo "<p>"; $kasa = (int)$_post['kasa']; $anakart = (int)$_post['anakart']; $islemci = (int)$_post['islemci']; $sabitdisk = (int)$_post['sabitdisk']; $cddvd = (int)$_post['cddvd']; $bellek = (int)$_post['bellek']; $kasa_ucreti = (double)$_post['kasabirim']; $anakart_ucreti = (double)$_post['anakartbirim']; $islemci_ucreti = (double)$_post['islemcibirim']; $sabitdisk_ucreti = (double)$_post['sabitdiskbirim'];

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı $cddvd_ucreti = (double)$_post['cddvdbirim']; $bellek_ucreti = (double)$_post['bellekbirim']; define("kasa_ucreti", 85.50); define("anakart_ucreti", 150.0); define("islemci_ucreti", 275.30); define("sabitdisk_ucreti", 120.80); define("cddvd_ucreti", 90.0); define("bellek_ucreti", 134.20); define("kdv_orani", 15); $toplam_parca = 0; $toplam_tutar = 0.00; $toplam_parca = $kasa + $anakart + $islemci + $sabitdisk + $cddvd + $bellek; $toplam_birim_fiyat = kasa_ucreti + anakart_ucreti + islemci_ucreti + sabitdisk_ucreti + cddvd_ucreti + bellek_ucreti; $toplam_tutar = $kasa * kasa_ucreti + $anakart * anakart_ucreti + $islemci * islemci_ucreti + $sabitdisk * sabitdisk_ucreti + $cddvd * cddvd_ucreti + $bellek * bellek_ucreti;?>

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı <table border=1> <tr bgcolor=#c399c3> <td width=150>parça Adý</td> <td width=25>adet</td> <td width=110 align=center>birim Fiyat</td> <td width=110 align=center>tutar</td> <td width=110 align=center>kdv (%<?php echo kdv_orani?>)</td> <td width=110 align=center>kdv Dahil Tutar</td> </tr> <tr bgcolor=#d4ffd4> <td>kasa</td> <td align=right><?php echo $kasa?></td> <td align=right> <?php echo number_format(kasa_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($kasa * kasa_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($kasa * kasa_ucreti * $kdv_orani,2)." TL"?></td> <td align=right> <?php echo number_format($kasa * kasa_ucreti * (1 + $kdv_orani),2)." TL"?></td></tr> <tr bgcolor=#d4ffd4> <td>anakart</td> <td align=right><?php echo $anakart?></td> <td align=right>

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı <?php echo number_format(anakart_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($anakart * anakart_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($anakart * anakart_ucreti * kdv_orani,2)." TL"?></td> <td align=right> <?php echo number_format($anakart * anakart_ucreti * (1 + kdv_orani),2)." TL"?></td></tr> <tr bgcolor=#d4ffd4> <td>ýþlemci</td> <td align=right><?php echo $islemci?></td> <td align=right> <?php echo number_format(islemci_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($islemci * islemci_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($islemci * islemci_ucreti * kdv_orani,2)." TL"?></td> <td align=right> <?php echo number_format($islemci * islemci_ucreti * (1 + kdv_orani),2)." TL"?></td></tr> <tr bgcolor=#d4ffd4> <td>sabit Disk</td> <td align=right><?php echo $sabitdisk?></td> <td align=right> <?php echo number_format(sabitdisk_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($sabitdisk * sabitdisk_ucreti,2)." TL"?></td>

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı <td align=right> <?php echo number_format($sabitdisk * sabitdisk_ucreti * kdv_orani,2)." TL"?></td> <td align=right> <?php echo number_format($sabitdisk * sabitdisk_ucreti * (1 + kdv_orani),2)." TL"?></td> </tr> <tr bgcolor=#d4ffd4> <td>cd/dvd Sürücüsü</td> <td align=right><?php echo $cddvd?></td> <td align=right> <?php echo number_format(cddvd_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($cddvd * cddvd_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($cddvd * cddvd_ucreti * kdv_orani,2)." TL"?></td> <td align=right> <?php echo number_format($cddvd * cddvd_ucreti * (1 + kdv_orani),2)." TL"?></td> </tr> <tr bgcolor=#d4ffd4> <td>bellek</td> <td align=right><?php echo $bellek?></td> <td align=right> <?php echo number_format(bellek_ucreti,2)." TL"?></td> <td align=right> <?php echo number_format($bellek * bellek_ucreti,2)." TL"?></td>

Örnek Uygulamalar Örnek-4: Bilgisayar Parçaları Satışı <td align=right> <?php echo number_format($bellek * bellek_ucreti * kdv_orani,2)." TL"?></td> <td align=right> <?php echo number_format($bellek * bellek_ucreti * (1 + kdv_orani),2)." TL"?></td></tr> <tr bgcolor=#ffffaa> <td>toplam</td> <td align=right><?php echo $toplam_parca?></td> <td align=right> <?php echo number_format($toplam_birim_fiyat,2)." TL"?></td> <td align=right> <?php echo number_format($toplam_tutar,2)." TL"?></td> <td align=right> <?php echo number_format($toplam_tutar * kdv_orani,2)." TL"?></td> <td align=right> <?php echo number_format($toplam_tutar * (1 + kdv_orani),2)." TL"?></td></tr></table> <?php echo "<p>yazi İLE : "; echo TL_Oku((string)(number_format($toplam_tutar * (1 + kdv_orani),2))); echo "<p>teşekkürler...";?> </body> </html>