Emrah ÜSTÜN ÖNSÖZ VE GĐRĐŞ

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Emrah ÜSTÜN ÖNSÖZ VE GĐRĐŞ. 030207036 http://www.emrahustun.com"

Transkript

1 Emrah ÜSTÜN ÖNSÖZ VE GĐRĐŞ Mühendislik eğitiminin en önemli pratik eğitimlerinden olan yaz stajımı Kocaeli Üniversitesi Elektronik ve Haberleşme Mühendisliği Mikroişlemci Laboratuarında yaptım. Stajımda çok amaçlı robot kontrol kartı Tekir in dinamik web sitesinin programlamasını ve tasarımını yaptım. Bu stajda iş bulmamı sağlayacak ve iş hayatımda çok faydalı olacak bilgiler öğrendim. Okulda hiçbir derste elde edemediğim bir duygu olan, bir proje oluşturup onun çalıştığını görmek de ayrı bir keyifti. Yaptığım projenin de özgeçmişim için iyi bir referans olacağını düşünüyorum. Stajım boyunca bana desteğini esirgemeyen değerli hocam Yrd. Doç. Dr. Mehmet YAKUT a teşekkürü bir borç bilirim. Bu raporda hazırladığım bütün kodları birebir vermedim. Değişken isimlerinin, veritabanı tablo isimlerinin, şifrelerin vb açığa çıkması hazır ve kullanımda olan sitenin güvenliği açısından tehlikedir. Ayrıca tamamen kullanıma hazır bir şekilde olduğu için kodların çalınıp direk kullanılması mümkündür. Bu sebeple kodları parça parça verdim veya kodu vermeyip algoritmasını anlattım.

2 ĐÇĐNDEKĐLER Giriş ve teşekkür 1 Đçindekiler 2 Başlangıç 3 Html 3 Php 5 mysql 8 Javascript 9 Web sitesi başlangıç bilgileri 10 Dinamik web sitelerinde güvenlik 11 Site özellikleri ve içeriği 12 Site içeriği 12 Kullanıcı kısmı 12 Yönetici kısmı 13 Görsel kısımı 13 mysql hazırlık 13 Kodlamalar 14 Yönetici sayfaları 14 Kullanıcı sayfaları 31 Kaynaklar 45 2

3 BAŞLANGIÇ Đnternet üzerinden sıkıştırılmış paketlerle veri akışı sağlanarak html kodlarıyla oluşturulan ara yüze web sitesi diyebiliriz. Bir web sitesi yapmak için siteyi yayınlayan bir sunucuya ihtiyacımız vardır. Yayını yapan sunucu siteyi çağıran kullanıcıya sıkıştırılmış paketlerle html kodları gönderir. Bu kodlar tarayıcıda yorumlanarak kullanıcının gördüğü ara yüz oluşur. Bu veri istemleri, gönderimleri için adres olarak bilgisayarlara atanan ve asla 1den fazla olmayan IP adresleri kullanılır. Bir sitenin adresinin değişmeyeceği için sunucu IP si sabit IP olmalıdır. Đnternetin çalışma sistemi şöyledir: Kullanıcı tarayıcıya alan adını (site adresi) yazınca kullanıcı bu alan adının yönlendirildiği IP ye sahip sunucuya yönlenir ve siteyi sunucudan talep eder. Alan adlarının yönleneceği IP leri barındıran sunuculara DNS (domain name server alan adı sunucusu) denir. Yani kullanıcı aslında site sunucusuna ulaşana kadar birçok sunucuya yönlendirilir. Web sitelerini çalışma sistemi olarak ikiye ayırabiliriz. Statik web siteler genelde HTML kodlarının bir dosyaya direk konulmasıyla oluşur ve dosya içeriği site yöneticisi tarafından değiştirilmeden site hep aynıdır. Dinamik web siteleri ise belirlenen kıstaslara göre html kodlarını anlık olarak üreten sitelerdir. Bu sitelerde dinamik web yazılım dilleri olan PHP, ASP, JSP, PERL, kullanılabilir. Dinamik web siteleri genelde verileri bir veritabanında saklar ve bu verilere göre davranır. SQL, Oracle, Freebird veritabanlarına örnek gösterilebilir. Bugün, dünyadaki internet sitelerinin %60 ı SQL (Structed Query Language) kullanmaktadır. Ben de bu projede HTML kodlarını üretmek için dil olarak PHP kullandım. Veritabanı olarak mysql ve site içinde gezintiyi kolaylaştıracak bazı javascriptler kullandım. Statik bir site HTML kodlarından oluşur ancak bu kodları düzenleyen oluşturan programlar olduğu için site yöneticisinin HTML bilme zorunluluğu yoktur. Ancak dinamik sitede html kodlarını tek tek üreteceğimiz için site programcısının HTML i çok iyi bilmesi gerekmektedir. Giriş olarak kısaca kullandığım dilleri biraz anlatacağım. HTML(HyperText Markup Language) Html i bir program dili olarak tanımlayamayız. Çünkü kendi başına çalışamaz. Html i yorumlayan başka programlar olmalıdır. Her hangi bir web sitesinin html kodlarını görmek için tarayıcımızdan kaynağı göster dememiz yeterlidir. Html kod etiketleri <etiket> ile başlar ve mutlaka </etiket> şeklinde kapanır. Basit html örnekleri: Bu kod paragraf açar ve kapatır. <p> YAZI </p> 3

4 Bu kod paragrafı ortalar. <p align= center > YAZI </p> Bu kod division (bölüm) açar ve kapatır. <div> YAZI </div> Şimdi bir tablo açalım ve tabloya 2 satır 2 sütun ekleyelim: <table align="center" border="1" width="200" height="300"> 1 piksel kenarlığa sahip 200 piksel genişliğinde 300 piksel yüksekliğinde ortalanan bir tablo açıyoruz <tr>ilk satırı açıyoruz <td>a ilk sütun </td> <td>b </td> </tr> <tr> <td>c </td> <td>d </td> </tr> Bu kod şöyle bir tablo verecektir bize: Form oluşturmak: Dinamik sitelerde formlar çok fazla kullanılır. Formlar genelde kullanıcıdan veri almak için kullanılır. Üyelik kaydını, dosya yüklemeyi veya kullanıcıdan alacağımız herhangi bir veriyi elde etmek için form kullanırız. Örnek olarak bir üye giriş formu elde edelim. <form id="giris" method="post" action="giris.php"> giriş: <input name="isim" type="text" maxlength="50" autocomplete="off"/> 4

5 </label> <label>şifre: <input name="sifre" type="password" maxlength="50" autocomplete="off"/> </label> <label> <input type="submit" name="submit" value="tamam" /> </label> </form> Bu kodların çıkaracağı ara yüz şöyle olacaktır: Bu formda kullanılan değişkenler; Form içindeki action bir adres belirtir ve bu formdan alınan verilerin hangi sayfaya gönderileceğini belirler. input içindeki name o değişkenin adını type tipini belirler. Ve submit formu gönderen düğmedir. Yani bu form index.php dosyasına 1.kutuya girilen verileri isim, 2.kutuya girilen verileri sifre adıyla gönderir. PHP (Hypertext Preprocessor - eski haliyle: Personal Home Pages) PHP, ilk olarak 1993 yılı ortalarında Rasmus Lerdorf tarafından geliştirilmeye başlamıştır. PHP dili, 1995 yılında Lerdorf un kurmuş olduğu bir grup tarafından daha da geliştirilerek, ilk kez Perl dilindeki fonksiyonlardan tamamen arındırılmış ve Nesne Yönelimli (Object Oriented) bir dil haline getirilmiştir yılı itibariyle PHP 5 sürümü geliştirilmiş durumdadır. PHP dili Linux gibi Açık Kaynak Kodlu bir dil olup ücretsiz olarak dağıtılmakta ve geliştirilmektedir. Linux, Unix, Windows tabanlı işletim sistemlerinde çalışabilen sürümleri mevcuttur. Php dili bir web sitesinin html kodlarını anlık olarak yorumlayarak üretir. Verdiğimiz koşullara göre geniş php kütüphanesinden faydalanarak belirlediğimiz kodları ürettirebiliriz. Üretilen html kodları kullanıcıya gönderilir. Kullanıcı asla php kodlarını görmez. Php kodları php uzantılı bir dosya içine atılmalıdır. Aslında php dosyası da bir html dosyasıdır. Biz php kodlarını yazacağımız yerleri şu şekilde belirtiriz: <?php kodlar?> Php de değişken isimleri başlarına $ konarak ayırt edilir. Basit PHP örnekleri: Bir değişkene değer atayıp ekrana yazdıralım: <?php $yazi="merhaba"; echo $yazi;?> 5

6 Ekrana değişkenle birlikte bir sabit yazdıralım: <?php $isim="emrah"; echo "Günaydın ".$isim;?> Ekrana çıkacak yazı: Günaydın Emrah Php fonksiyonu oluşturalım: <?php function isimyazdir() { echo "EMRAH ÜSTÜN"; isimyazdir();?> Formlar: Html kısmında anlattığım formlardan gelen verileri şu şekilde elde edebiliyoruz: <?php $isim =$_POST["isim"];?> Bu kod html değişkeni olarak gelen isim i bir php değişkeni olan isime atar ve bundan sonra bu değişken üzerinde php ile işlemler yapabiliriz. Php sayfadan sayfaya veri taşımanın bir diğer yolu ise adres satırlarını kullanmaktır. Bazı sitelerde adres satırında o sayfanın adresi çok uzun ve karışık görünür. Aslında o adres veri içeriyordur. Şöyle ki; index.php sayfasına adres ile isim değişkenini emrah olarak gönderelim. Kullanıcıya verilen bir bağlantı adresi şu olacaktır: burada giris.php den sonra adresin geri kalanının veri olduğunu belirten? kullanılmıştır. Ve ondan sonra isim=emrah konmuştur. Bu değişken şu şekilde elde edilebilir:?php $isim=$_get["isim"];?> Adresten aldığımız isim değişkenini artık bir php değişkenine attık ve üzerinde işlemler yapabiliriz. Sayfa içerme: Küçük sitelerde kodlar bir sayfaya yazılabilir. Ancak site büyüdükçe kodların kontrolü zorlaşacaktır. Bunun için işlemleri bölmek ve ayrı dosyaları çağırmak gerekir. Html kısımlar için de örnek olarak sitelerin menüleri, alt bilgileri her sayfada aynı olacaktır. Eğer bu aynı olacak yerlerin kodlarını her sayfaya koyarsak birinde bir şey değiştirmek için her sayfayı değiştirmek gerekecek. Bunun yerine menüyü bir dosyaya atıp, gerekli yerlerde çağırırsak işimiz çok kolaylaşır. Bu işlemi require veya include fonksiyonlarıyla yapabiliriz. Aralarındaki tek içerilen sayfa bulunamadığında include hata, require uyarı verir. Kullanım: include("menu.php"); veya require("menu.php"); 6

7 Sorgular ve Döngüler Php dilinde sorgular ve döngüler c dili ile aynıdır. For, if, switch, while fonksiyonlarını c deki kullanımları gibi kullanabiliriz. Tek fark fonksiyon değişkenleri php değişkeni olacak şekilde başında $ bulunacaktır. for($i=0;$i<10;$i++) gibi. Çerezler (cookies) Çerezler kullanıcının bilgisayarına kaydedilen şifrelenmiş verilerdir. Bir kullanıcı üye girişi yaptığında bir sonraki sayfanın anlayabilmesi için kullanıcı bilgisayarına çerez kurulur. Bu cookie site programcısının isteğine göre isim, değer, süre, yol, alan adı bilgileri içerebilir. Kullanıcı bilgisayarına cookie kuralım: set cookie("kullanici", "Emrah üstün", time()+3600); Bu kod emrah üstün kullanıcısına o bilgisayar için 3600/60=60 dakikalık oturum izni vermiştir. Çerez değerlerini şu şekilde yazdırabiliriz: echo $_COOKIE["kullanici"]; Bu kod giriş yapılan kullanıcıyı ekrana yazdırır. Kullanıcı çıkışı yapmak için de çerezin geçerlilik süresini değiştirerek üstüne kurabiliriz. setcookie("kullanici", "", time()-3600); Bu kod o sitenin bütün kullanıcıları için çıkış yapmıştır. mail Php de site üzerinden e-posta gönderebilmek mümkündür. Kullanımı: mail( kime, konu, mail içeriği, ön bilgiler, değişkenler ); mysql fonksiyonları veritabanına bağlan $baglantiadresi=mysql_connect ("localhost", "kullanıcı adı", " kullanıcı şifresi"); sorgu gönder $donus=mysql_query( mysql sorguları ); dönen sorguyu diziye at mysql_fetch_array($donus); bağlantıyı kapat mysql_close($baglantiadresi); Bu fonksiyonlar gerçekleşemediği zaman ekrana neden gerçekleşemediğini bir uyarı olarak çıkarmak için fonksiyon sonrasına 7

8 or die(mysql_error()); yazabiliriz. mysql (Structed Query language) MySQL, çok-kanallı, çok kullanıcılı bir veritabanı yönetim sistemidir. Veritabanı kullanmak için yapmamız gerekenler; bir veritabanı oluşturmak, bir kullanıcı ve şifre oluşturmak, bu kullanıcıya veritabanını yönetmesi için verilecek izinleri belirlemek. Daha sonra bu kullanıcı veritabanında tablo açabilir, bu tabloların içine satırlar (colums) ekleyebilir. Site yönetilirken da bu satırlar için sütunlar eklene eklene veritabanı büyüyecektir. Şimdi sql yönetim kodlarından bahsedelim. select: Veritabanından belirlediğimiz verileri almaya yarar. SELECT isim FROM uyeler Uyeler tablosundan üye isimlerini çeker. where: Bir nevi arama yapmaktır. SELECT isim FROM uyeler WHERE yas= 20 Yaşı 20 olan üyelerin isimleri gönderir. insert: Veritabanına veri kaydetmek için kullanılır. INSERT INTO uyeler(isim,soyisim,yas) VALUES ( emrah, üstün, 22 ) update: Veritabanında bir veriyi değiştirmede kullanılır. UPDATE uyeler SET yas= 23 WHERE isim= emrah Đsmi emrah olan üyelerin yaşlarını 23 olarak değiştirir. delete: Veritabanından veri silmek için kullanılır. DELETE FROM uyeler WHERE yas= yaşındaki bütün üyeleri siler (sütunları siler) order by: Veritabanından çektiğimiz verileri belirlediğimiz sıralamaya göre göndermesi için kullanılır SELECT isim FROM uyeler ORDER BY yas ASC Üyelerin isimlerini yaşa göre küçükten büyüğe sıralı gönderir. Büyükten küçüğe için ASC yerine DESC kullanılır. create: Veritabanında yeni bir tablo açmak için kullanılır. CREATE TABLE uyeler ( isim varchar, soyisim varchar, yas int 8

9 ) alter: Bir tablonun yapısını değiştirmek için kullanılır. ALTER TABLE uyeler ADD adres varchar(50) Üyeler tablosu için adres satırı ekler. count: Veritabanında belli bir satırdaki sütun sayısını sayar. SELECT COUNT(adres) FROM uyeler Adresi kayıtlı olan üye sayısını gönderir. max: Veritabanında belirli bir sütunda en büyük değeri barındıran satırı gönderir. SELECT MAX(yas) FROM uyeler En yaşlı üyenin bilgilerini gönderir Bu fonksiyonlarda alanı belirlemek istemiyorsak, hepsi için geçerli olsun istiyorsak alan yerine * koyabiliriz. SELECT * FROM uyeler Üyelerin bütün bilgilerini gönderir. javascript Javascript bir web sayfasını sayfa değişmeden dinamik hale getirebilir. Diğer web yazılımları yeni sayfaları yorumlayarak gönderir ancak javascript sabit bir sayfanın içeriğini de anlık olarak değiştirebilir. Javascript aslında tarayıcıyla birlikte çalışan, tarayıcıya hükmedebilen bir programlama tekniğidir. Javascript yeni pencereler, uyarı pencereleri açabilir, sayfa içine html in desteklemediği tür görsellikler katabilir. Hatta bir web sayfası sadece javascriptten oluşan jsp uzantılı bir dosyadan da oluşabilir. Burada bir uyarı yapmakta fayda var javascript ile java tamamen farklı şeylerdir. Bu projede duyuru listeleme kısmında javascript kullanılmıştır. Kullanıcı kaç adet duyuru listelemek istediğini seçer, seçenek değiştiği zaman javascript tarayıcıyı direk belirlenen adrese sanki bir adres tıklanmış gibi gönderir. Burada kullanıcı pencerede bir seçeneğe tıklayınca direk adrese gidecektir. Örneğin 50 seçildiğinde adres bilgisine goster=50 bilgisi eklenecektir. Bunun için önce javascript fonksiyonunu fonksiyonu kullanmadan önce tanıtmamız gerekmektedir. <script type="text/javascript"> 9

10 <!-- tarayıcı java desteklemiyorsa html açıklaması hale gelip bu javascript kodu kullanılmaz hale gelecektir. function MM_jumpMenu(targ,selObj,restore){ //v3.0 eval(targ+".location='"+selobj.options[selobj.selectedindex].value+"'"); if (restore) selobj.selectedindex=0; //--> </script> Form içinde kullanılacak olan javascript kodu <select name="menu1" onchange="mm_jumpmenu('parent',this,0)"> şeklinde olacaktır. Javascript kullanılan bir başka yer ise form verileri kaybedilmeden sayfa değişimini sağladığımız sayfa yönlendirmesi. Bu hatalı giriş yapıldığında kullanıcıyı bir sayfa geri gönderebildiğimiz (adeta tarayıcıda geri tuşuna basılmış gibi) bir tuştur. Bunu yaparken html formu açıp içine bir düğme koyuyoruz ve yanına da javascriptin yapacağı şeyi koyuyoruz. <div align="center"> <p>hatali GĐRĐŞ </p> <p><input TYPE="button"VALUE="geri"onClick="javascript:history.back(1)"> </p></div> Bu kodun tarayıcıda göstereceği şey şudur: Bu tuşla geri dönüldüğünde girilen form verileri korunur (şifreler hariç) ve kullanıcı tekrar tekrar uğraşmaz. Web sitesi başlangıç bilgileri: Web sitelerinin başına meta etiketleriyle site hakkında bilgiler girilmelidir. Bu bilgiler kullanıcı tarafından görülmez. Örnek: <title>emrah ÜSTÜN</title> <META http-equiv="content-type" content="text/html; charset=windows-1254"> <META name="description" content="emrah ÜSTÜN, Elektronik ve Haberleşme Mühendisliği Bölümü 4. sınıf öğrencisi, Kocaeli Üniversitesi, TÜRKĐYE "> <META name="keywords" content="emrah üstün,emrahustun,emrahüstün,elektronik,haberleşme,mühendisliği,öğrencisi,elektronik ve haberleşme mühendisliği öğrencisi"> Title sayfanın başlığıdır. Ondan sonraki sayfanın hangi dilin karakterlerini içerdiğidir. Description ise sayfanın açıklamasıdır. Keywords de sitenin içeriğiyle ilgili anahtar kelimelerdir. Bunun gibi bir çok meta etiketi mevcuttur. Bu meta etiketlerine sahip site arama motorlarında şöyle çıkar: 10

11 Bir web sitesi kodları 2 bölümden oluşur. Birincisi meta etiketlerinin, javascript tanımlamalarının ve bunlar gibi kullanıcının görmemesi gereken bilgileri barındıran sayfanın head kısmıdır. <head> </head> Etiketleri arasında olmalıdır. Đkinci bölüm de body (vücut) kısmıdır. <body></body ile belirtilir. Dinamik web sitelerinde güvenlik Dinamik web sitelerinin kötü yönü de kullanıcıya verilen hakların kötü yönde de kullanılabilecek olmasıdır. Dinamik site hack metotlarının başında çerez taklit etmek ve SQL injection metotları gelmektedir. Siteye yönetici girişini sağlayan çerezler belli kriptolarla gizlenmiş kodlar içermektedir. Bu kodların bir şekilde taklit edilmesi sayesinde art niyetli biri kendini siteye yönetici olarak gösterebilir. SQL injection: Kullanıcıdan alınan bazı veriler SQL sorgusuna sokulur. Örneğin hiçbir güvenlik önlemi alınmayan bir şifre değiştirme sorgusunda: $isim=$_cookie["kullanici"]; $sifre=$_post[sifre]; UPDATE uyeler SET sifre= $sifre WHERE isim= $isim Kodları kullanılıyor olsun. Burada çerezden alınan kullanıcı isminin olduğu sütundaki şifre bir önceki sayfadaki formdan gelen şifreyle değiştirilecektir. Şifre alanına abcde WHERE isim= yonetici ; UPDATE uyeler SET sifre= kodu girilirse sorguya gönderilen kod içine başka bir SQL kodu enjekte edilmiş ve sorunsuz bir şekilde çalıştırılmış oluyor. UPDATE uyeler SET sifre= abcde WHERE isim= yonetici ; UPDATE uyeler SET sifre= WHERE isim= $isim ; Bu şekilde kişi kendi şifresini , yönetici şifresini de abcde yapmış oluyor bu şekilde de yönetici kontrolünü ele almış oluyor. Tabi burada yönetici kullanıcı adı ve sorgu adı yapılan tablo, satır isimlerinin biliniyor olması gerekiyor. 11

12 md5 MD5 (Message-Digest algorithm 5), veri bütünlüğünü test etmek için kullanılan, Ron Rivest tarafından 1991 yılında geliştirilmiş bir kriptografik özet (tek yönlü şifreleme) algoritmasıdır. Girdi verinin boyutundan bağımsız olarak 128 bitlik özetler üretir. Tek yönlü şifreleme olduğu için yönetici şifresini md5 şeklinde saklıyoruz. Böylece yönetici şifresi asla ele geçirilemeyecek. SĐTENĐN ÖZELLĐKLERĐ ve ĐÇERĐĞĐ Kodlanan site TEKĐR isimli çok amaçlı robot kontrol kartının sitesidir. Dinamik olmasının amacı yönetici girişi yapılarak içeriğinin değiştirilmesi, böylece hiç web bilgisi olmayan birinin dahi site içeriğini güncelleyebilmesidir. Yönetici panelinden site adeta e-posta okumak kadar kolay bir şekilde yönetilebilecektir. Site içeriği Tekir hakkında: Tekir nedir ayrıntılı bilgi. Dönüşüm: Tekirin üzerinde yapılacak değişimlerle elde edilecek farklı görevler. Yazılım: Tekir yazılım dosyaları. Donanım: Tekir donanım dosyaları. Dokümanlar: Tekir ile ilgili bilgiler, resimler, görüntüler ve diğer dosyalar. Duyurular: Tekir hakkında yenilikler, eklenenler, haberler S.S.S.: Sıkça Sorulan Sorular ve cevapları Đlgili bağlantılar: Bazı adresler E-posta grubu: Tekir e-posta grubuna üye olma. Đletişim formu: Site yöneticisine site üzerinden mesaj gönderme. Kullanıcı kısmı Adres satırında görünen tek adres uzantısı index.php olacak. Farklı sayfaları çağırmak için yapacağımız şey adres içeriğinden bilgi çekmek ve ona göre kullanıcıya sayfa göndermektir. Tekir hakkında ve dönüşüm sayfaları direk yazıdan oluşmaktadır. Yazılım, donanım ve dokümanlar sayfaları dosya adreslerini (tıklanarak indirilecek şekilde) ve dosya ile ilgili bilgileri içeren sayfalardır. Duyurular kısmında en yeni duyuru en üstte olacak şekilde sıralanır ve kullanıcı kaç duyuru göstermek istediğine düşen menü ile karar verebilecektir. S.S.S. kısmında soru ve karşısında cevap bulunacak, karışmasın diye tablo satırlarında farklı 2 renk kullanılacaktır. Đlgili bağlantılarda bağlantı adresi ve açıklaması bulunacaktır. E-posta grubu için bir form bulunacak, boşluğa adresini girip göndere tıklayan kişi gruba katılacaktır. Đletişim formunda ise çeşitli alanla mevcuttur. Belirlediğimiz bazı alanları doldurmak zorunlu olacak şekilde göndere tıklayınca doldurulan form yönetici e-postasına gönderilecektir. Ana sayfada 8 adet resim bulunmaktadır. 12

13 Yönetici kısmı Site yönetici paneline /yonetim adresinden ulaşılacaktır. Kullanıcı kısmında olduğu gibi yönetici kısmı da sadece index.php adresinden oluşmaktadır. Özellikleri: Ana sayfa ayarları: Karşılama mesajı ve ana sayfada bulunan 8 resmin ayarlanması (bilgisayardan direk yükleme ile) Hakkında: Düz yazı kaydı. Dönüşüm: Düz yazı kaydı. Yazılım: Dosya yükleme(isim ve açıklama bilgileriyle) ve mevcutları silme veya düzenleme Donanım: Dosya yükleme(isim ve açıklama bilgileriyle) ve mevcutları silme veya düzenleme Mesajlar: Duyuru ekleme, mevcutları silme veya değiştirme. Dosyalar: Dosya yükleme(isim ve açıklama bilgileriyle) ve mevcutları silme veya düzenleme S.S.S.: Sıkça sorulan soru ve cevabını ekleme, mevcutları silme veya düzenleme Đlgili bağlantılar: Đlgili bağlantı adresi ekleme, mevcutları silme veya düzenleme Ayarlar: Site adı (title), site açıklaması (description), anahtar sözcükler (keywords), dış tablo kenarlığı, dış tablo içi, gösterilecek duyuru sayısı, duyuru resim genişliği, duyuru alan 1,2,3 ve 4 renk belirlemesi, site yönetici e-posta adresi Şifre değiştir: Yönetici şifresi değiştirme Çıkış: Yönetici sistemden çıkar. (çerez sil) Görsel kısım Her sayfanın aynı olması ve bir şeyin değiştirileceği zaman her sayfaya ayrı ayrı uygulanmaması için görsel kısımlar birer dosyada tutulmakta ve yeri gelince çağırılmaktadır. Her sayfada çağırılan sayfalar: stil.php: stil.css dosyasını çağırır ve sayfaya ait tüm stilleri barındırır. ust.php: Sayfanın üst kısmı. Menü. $sayfa.php: Sayfa içeriği. Değişken adı alınıp ona ait php dosyası çağırılır. alt.php: Sayfa alt bilgileri. mysql HAZIRLIK Hostumuzun bize sağladığı site yönetim panelinden bir veritabanı oluşturuyoruz ve bu veritabanına erişecek kullanıcıyla şifresini oluşturuyoruz. Daha sonra phpmyadmin den kullanacağımız tabloları ve bunların satırlarını oluşturuyoruz. Şuan yayında olan sitenin güvenliği açısından burada daha fazla ayrıntı veremiyorum. 13

14 KODLAMALAR Kodların düzenini sağlamak, yazılımını ve kullanımını kolaylaştırmak amacıyla en küçük işler bile farklı dosyalara kaydedilerek çağırılmaktadır. Böylece o işi başka bir sayfaya da daha rahat bir şekilde yaptırabiliriz. YÖNETĐCĐ SAYFALARI Tarayıcı adres satırına adresini yazınca direk index.php sayfasına yönlendiriliriz. Kullanıcı birimiyle ortak kullanılan sayfalar kullanıcı sayfalarında anlatılacaktır. index.php Bu sayfa içerisinde yapmamız gereken öncelikle bu sayfaya giren kişinin yönetici olup olmadığını test etmektir. Kişi yönetici ise karşısına yönetim paneli, değilse giriş yapması için yönetici giriş paneli çıkacaktır. Yönetici testi için çerez testi yapmalıyız. Çerez testi cookietest.php dosyasına atılmıştır. include("cookietest.php"); Satırı bize cookietest.php dosyasındaki bütün kodları adete index.php içindeymişçesine kullanmamıza olanak sağlar. Yöneticinin oturum uzunluğunu 10 dakika olarak belirlemiştik. Ancak yöneticinin yönetim panelindeki işini 10 dakikada bitirememe durumu vardır. Yönetici işlerini yaparken tekrar giriş istenecek ve yöneticinin işleri yarım kalacak. Buna çözüm olarak her sayfa yenilemede çerez geçerlilik süresini yenileyebiliriz. Bunun için cookietest.php dosyasına yazacağımız cookieyenile fonksiyonunu kullanmalıyız; cookieyenile(); Daha sonra mutlaka lazım olacak olan veritabanı bağlantısını yapmalıyız. Veritabanı bağlantı kodlarını içeren baglanti.php dosyasını çağırmalıyız. Ancak baglanti.php dosyası yonetim klasöründe değil ana klasörde olduğu için bir klasör üste çıkarak çağırabiliriz. Yani include("../baglanti.php"); Bağlantı ayarlarını tek dosyadan kontrol etmek için bu dosya bir tanedir. Yönetici panelinin görünümü için include("../header.php"); include("../stil.php"); satırlarını, arkasından alt dosyasında kapatılmalar yapılmak üzere bazı etiketler açıyoruz. <body> <table border="5" bordercolor="<?php echo $ayarlar{distablokenari?>" width="100%" bgcolor="<?php echo $ayarlar{distabloici?>"> <tr> <td> 14

15 Burada site vücudunu, her şeyi içinde barındıracak olan tablomuzu ve satır,sütunu açıyoruz. Tablo kenar rengi için de daha sonra yöneticiye ayarlarda değişiklik hakkı vereceğimiz dış tablo kenarlık rengini veritabanından çağırıyor, html kodları içinde gerekli yere yazdırıyoruz. Şimdi yönetim paneli içeriğini hazırlayalım; Dediğimiz gibi, yönetici girişi yapılmışsa yönetim menüsü, hatta yöneticinin çağırdığı sayfa tespit edilip çağırılacak. Yönetici girişi yapılmamışsa da giriş paneli çağırılacak. Bunun için C dilinden bildiğimiz if, else kontrollerini kullanabiliriz. if(cookietest()==0) { include("dosyalar/yoneticigiris.php"); else if($cookietest==1) { include("menu.php"); $sayfa=$_get[sayfa]; if($sayfa!=null) { include($sayfa.".php"); Cookietest fonksiyonu yönetici girişi algılarsa 1 algılamazsa 0 değişkenini geri gönderecektir. Yani 0 dönmesi durumunda yonetim/dosyalar klasörü içine attığımız yoneticigiris.php dosyası çağırılacaktır. Eğer 1 dönerse önce menü dosyası, altında da yöneticinin talep ettiği sayfa çağırılacaktır. Bunu adres içinden bilgi çekerek yapıyoruz. Örneğin index.php?sayfa=deneme adresine girilmişse deneme.php dosyası menünün altında açılacaktır. Bunlardan sonra da alt.php ve baglantikapat.php dosyalarıyla sayfamızı tamamlıyoruz. Şimdi bu sayfa içinde çağıracağımız dosyaları tek tek inceleyelim; cookietest.php Bu dosya içerinde 2 tane fonksiyon tanımlıyoruz. cookietest ve cookieyenile. cookietest yönetici çerezi algılarsa 1 değerini algılamazsa 0 değerini geri döndürecek. cookiyenile fonksiyonu da çerez algılarsa onun geçerlilik süresini 10 dakika sonrasına alacak. Yani bu demek oluyor ki yönetici sitede dolaştığı sürece oturumu açık kalacak. Eğer yönetici 10 dakika sitede bir işlem yapmazsa oturumu kapatılacak. function cookietest() { if (isset($_cookie["çerezismi"])) { return 1; else {return 0; 15

16 function cookieyenile() { if (isset($_cookie["çerezismi"])) { setcookie("tekir",$_cookie["tekir"],time()+600); menu.php Hiçbir php koduna gerek yoktur. Olduğu gibi html kodlarından oluşan bir sayfadır. <p align="center"><a href="../"><em><font face="verdana"><strong><font size="2">- ANA SAYFA -</font></strong></font></em> </a></p> <div align="center"> <table border="1" bordercolor="#000000" bgcolor="#d1e9f3"> <tr> <td><strong><font size="4"><a href="index.php?sayfa=ana">ana sayfa ayarları</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=hakkinda">hakkında</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=donusum">dönüşüm</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=yazilim">yazılım</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=donanim">donanım</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=mesajlar">mesajlar</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=dosyalar">dosyalar</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=sss">s.s.s.</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=linkler">ilgili bağlantılar</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=ayarlar">ayarlar</a></font></strong></td> <td><strong><font size="4"><a href="index.php?sayfa=sifredegistir">şifre değiştir</a></font></strong></td> <td><font size="4"><strong><a href="cikis.php">çıkış</a></strong></font></td> </tr> </table> <hr /> horizonal rule menünün altındaki çizgiyi oluşturuyor </div> Görünümü ise: 16

17 Şimdi sırayla menüden çağırılabilecek sayfaları ve bunların alt dosyalarını tanıtalım. Ana.php Ana sayfa ayarlarını barındırır. Ana sayfada menünün altında kullanıcının karşısına çıkacak olan mesajın ve altındaki 8 adet resmin ayarı. Mevcut mesaj textfield (yazıkutusunda) açılır ve yöneticiye değiştirme hakkı verilir. Resimler için ise gözat tuşu ve yanında resim seçeneği olacak, yönetici bilgisayarından resmi seçtikten sonra o resmi hangi resim olarak kaydettiğini seçip yükleyecek. Sunucuda yer tasarrufu için de eski resim silinecek. Ayrıca bu resimlerin ana sayfada kaç piksel genişlikle gösterileceğinin ayarı da mevcuttur. Sayfanın o an yaptığı iş adres satırına islem değişkeniyle atılır ve sayfa başında $islem=$_get[islem]; koduyla $islem değişkenine atılır. Sayfa menüden ilk kez çağırıldığında islem değişkeni boş olacağından bu testi $islem= =NULL şeklinde yapabiliriz. Eğer işlem boşsa mevcut ana sayfa ayarları çağırılacak ve formlar içinde gösterilecek. $donus=mysql_query("select * from ana") or die(mysql_error()); $ana=mysql_fetch_array($donus); require("dosyalar/anaform.php"); ana tablosu içinden bütün ayar değişkenleri çekilerek $ana değişkenine atılıyor ve bu bilgileri içeren sayfa içine dosyalar/anaform.php çağırılıyor. Anaform.php içinde bu bilgiler yerlerine konacak ve yöneticinin görmesi sağlanacak. dosyalar/anaform.php Bu sayfa içinde 2 adet form bulunmaktadır. 1.form Karşılama mesajı ve resim genişlik piksel değeri ayarını içerir. <form action="index.php?sayfa=ana&islem=mesaj" method="post" name="form1"> <p><strong><font size="3">ana SAYFA AYARLARI</font> </strong></p> <p>karşılama mesajı: <textarea name="mesaj" cols="100" rows="4"><?php echo $ana{mesaj;?></textarea> </p> <p>resim genişliği: <input name="resimgenislik" type="text" size="3" maxlength="3" value="<?php echo $ana{resimgenislik;?>"> piksel</p> <p> <input type="submit" name="submit2" value="kaydet"> </p> </form> 17

18 Bu formun hedefi index.php?sayfa=ana&islem=mesaj adresidir. Değişkenler ise mesaj ve resimgenislik tir. Burada mevcut veriler veritabanından çekilip form kutucukları içine yerleştirilir. 2.form Bu bir dosya yükleme formudur. Diğer formlardan farkı form tanımı içinde enctype="multipart/form-data" bilgisi bulunmalıdır. Formun hedef adresi index.php?sayfa=ana&islem=resim dir. Resim temp (geçici) klasöre yüklenir ve adresi formda belirttiğimiz dosya değişkenine atılır. Hangi resim olarak yüklediğimiz seçeneği de select formu ile resim değişkenine atılır. <form id="form2" name="form2" method="post" enctype="multipart/form-data" action="index.php?sayfa=ana&islem=resim"> <hr> <p> </p> <table width="405" height="112" border="1"> <tr> <td><div align="center">resim 1 </div></td> <td><div align="center">resim 2 </div></td> <td><div align="center">resim 3 </div></td> <td><div align="center">resim 4 </div></td> </tr> <tr> <td><div align="center">resim 5 </div></td> <td><div align="center">resim 6 </div></td> <td><div align="center">resim 7 </div></td> <td><div align="center">resim 8 </div></td> </tr> </table> <p>resim: <input type="file" name="resim"> <select name="resimno"> <option value="" selected>seçiniz</option> <option value="resim1">resim 1</option> <option value="resim2">resim 2</option> <option value="resim3">resim 3</option> <option value="resim4">resim 4</option> <option value="resim5">resim 5</option> <option value="resim6">resim 6</option> <option value="resim7">resim 7</option> <option value="resim8">resim 8</option> </select> olarak </p> <p> 18

19 <input type="submit" name="submit" value="yükle"> </p> </form> Görümü ise; Bu formlardan gelen değişkenlere göre ana.php sayfası işlemler yapacaktır. Şimdi yarım bıraktığımız ana.php sayfasına devam edelim. Ana.php (devamı) Bu sayfada $islem değişkeninin 3 ihtimali vardır. Ya boştur (yani NULL) ya da formdan gelen mesaj veya resim değişkenlerinden biridir. Đşlemin boş olma durumunu ele almıştık. Boş olduğunda formu açıp içine mevcut değişkenleri koymuştuk. Şimdi diğer ihtimalleri değerlendirelim; Eğer işlem değişkeni mesaj ise POST ile gelen değişkenler veritabanında eskileri ile değiştirilecek. Bunu if içinde $islem=="mesaj" koşuluyla test ediyoruz. Bu sağlanıyorsa yapılacak işler şunlardır; $mesaj=$_post[mesaj]; $resimgenislik=$_post[resimgenislik]; mysql_query("update ana set mesaj='$mesaj',resimgenislik='$resimgenislik'") or die(mysql_error()); ve ardından yöneticiye işlerin yolunda gittiğine dair bir mesaj olarak ayarlar kaydedildi yazdırabiliriz. Đşlem değişkeninin resim olduğu durum; Burada önce $resimno=$_post[resimno]; 19

20 Kodlarıyla yüklenen resmin hangi resim yerine yükleneceğini öğrenelim. Daha sonra yöneticinin dalgınlıkla yüklenecek resmi veya hangi resim yerine yükleneceğini seçmeyi unutması ihtimalini göz önünde bulundurarak bir test yapalım. if($resimno==null $resim==null) {?> <div align="center">formda eksik var.<br><input TYPE="button"VALUE="geri"onClick="javascript:history.back(1)"></div> <?php Yani eğer resimno veya resim değişkenler boşsa ekrana şu çıkarılacak; Burada geri tuşunda bir javascript kodu vardır; yönetici tarayıcının bir önceki sayfasına geri yönlendirilir. Bu şekilde formlarda girdiği veriler de kaybolmamış olur. Eğer formda eksik yoksa eksik olma testi için kullandığımız if in else i içine yapılacak işlemleri yerleştirebiliriz. $yukleadi="../".$resim_name; copy($resim,$yukleadi) or die ( "Dosya Kopyalanamiyor." ); $donus=mysql_query("select * from ana") or die(mysql_error()); $dosya=mysql_fetch_array($donus); $adres="../".$dosya{$resimno; unlink($adres); $adres=$dosya_name; mysql_query("update ana set $resimno='$resim_name';") or die(mysql_error()); Yüklenecek olan resimler site ana klasörüne kendi ismi ile yüklenecektir. Bunun için veritabanına kaydedilecek olan isim../$resim_name olmuştur. $resim_name $resim dosyasının ismini bize gönderen kullanımdır. Burada $resim yüklenen dosyanın temp içindeki adresini tutmaktadır. Copy fonksiyonuyla dosyanın konumunu $yukleadi ismiyle değiştiriyoruz. Böylece dosya direk ana klasöre geçmiş oluyor. Daha sonra eski dosyayı silmek için o dosyanın adını veritabanından çağırıp adresini $adres değişkenine atıyoruz. Burada $dosya{$resimno dosya dizisindeki resimno isimli değişkenin değerini gönderir. Yani o numaralı resmin adresi gelecektir. Daha sonra unlink fonksiyonuyla da eski dosyayı siliyoruz. Son olarak yeni dosyanın kaydını yapıyoruz. Ana tablosunda o resimno için adresi yeni adres değeriyle değiştiriyoruz ve yöneticiye resim kaydedildi mesajını gösteriyoruz. ayarlar.php Sitede ayarı yöneticiye sunulacak değişkenler: Site adı (title) site açıklaması (description) anahtar sözcükler (keywords) dış tablo kenarlığı dış tablo içi 20

21 gösterilecek duyuru sayısı duyuru resim genişliği duyuru alan 1,2,3 ve 4 renk belirlemesi site yönetici e-posta adresi Bu sayfada işlem değişkeni ayardurum dur. Ayardurum ya kayit olabilir ya da boş (NULL) olabilir. Kayit ise alınan değişkenler veritabanında eskileriyle değiştirilecek, NULL ise dosyalar/ayarlarform.php çağırılıp form kutucuklarına mevcutları yerleştirilecek. Boş olduğu durum: $ayarsorgudonus=mysql_query(" select * from ayarlar ")or die(mysql_error()); $ayarlar=mysql_fetch_array($ayarsorgudonus); $siteadi=$ayarlar{ad; $aciklama=$ayarlar{aciklama; $anahtarlar=$ayarlar{anahtarlar; $distablokenari=$ayarlar{distablokenari; $distabloici=$ayarlar{distabloici; $mesajgostersayi=$ayarlar{mesajgostersayi; $mesajresimgenislik=$ayarlar{mesajresimgenislik; $mesajalan1renk=$ayarlar{mesajalan1renk; $mesajalan2renk=$ayarlar{mesajalan2renk; $mesajalan3renk=$ayarlar{mesajalan3renk; $mesajalan4renk=$ayarlar{mesajalan4renk; $maill=$ayarlar{mail; require("dosyalar/ayarlarform.php"); Burada veritabanında mevcut bütün ayarlar çekilip değişkenlere atılıyor ve ayarlarform dosyası çağırılıp içinde uygun kutulara yerleştiriliyor. dosyalar/ayarlarform.php Burada kutucukların değer verileri olarak ayarlar.php dosyasında veritabanından çağırılıp değişkenlere atılan ayarlar yazdırılıyor. <div align="center"> <form name="form1" method="post" action="index.php?sayfa=ayarlar&ayardurum=kayit"> <label> Site adı: <input name="siteadi" type="text" size="50" maxlength="200" value="<?php echo $siteadi?>"> </label> <p> <label>site açıklama: <input name="aciklama" type="text" size="50" maxlength="500" value="<?php echo $aciklama?>"> </label> </p> <p> <label> 21

22 Anahtar sözcükler: <input name="anahtarlar" type="text" size="50" maxlength="5000" value="<?php echo $anahtarlar?>"> </label> (virgülle ayırın) </p> <p> <label>dış tablo kenarlığı: # <input name="distablokenari" type="text" size="6" maxlength="6" value="<?php echo $distablokenari?>" /> </label> </p> <p> <label>dış tablo içi : # <input name="distabloici" type="text" size="6" maxlength="6" value="<?php echo $distabloici?>" /> </label> </p> <p> <label>gösterilecek mesaj sayısı : <input name="mesajgostersayi" type="text" size="3" maxlength="2" value="<?php echo $mesajgostersayi?>" /> </label> </p> <p> <label>mesaj resim genişlik : <input name="mesajresimgenislik" type="text" size="3" maxlength="3" value="<?php echo $mesajresimgenislik;?>" /> </label> piksel</p> <p> <label>mesaj alan 1 renk: # <input name="mesajalan1renk" type="text" size="6" maxlength="6" value="<?php echo $mesajalan1renk;?>" /> </label> </p> <p> <label>mesaj alan 2 renk: # <input name="mesajalan2renk" type="text" size="6" maxlength="6" value="<?php echo $mesajalan2renk;?>" /> </label> </p> <p> <label>mesaj alan 3 renk: # <input name="mesajalan3renk" type="text" size="6" maxlength="6" value="<?php echo $mesajalan3renk;?>" /> </label> </p> <p> <label>mesaj alan 4 renk: # 22

23 <input name="mesajalan4renk" type="text" size="6" maxlength="6" value="<?php echo $mesajalan4renk;?>" /> </label> </p> <p> <label>đletişim e-posta: <input name="maill" type="text" size="30" maxlength="50" value="<?php echo $maill;?>" /> </label> </p> <p> <label> <input type="submit" name="submit" value="kaydet"> </label> </p> </form> </div> Görünümü; Formun hedef adresi index.php?sayfa=ayarlar&ayardurum=kayit dir. Kaydet e basılınca tarayıcı o adrese değişkenler ve yeni değerlerle yönlenecek. 23

24 ayarlar.php(devam) Form geri dönüşünde ayardurum değişkeni kayit olmuş olacak. if($ayardurum=="kayit") { $siteadi=$_post[siteadi]; $aciklama=$_post[aciklama]; $anahtarlar=$_post[anahtarlar]; $distablokenari=$_post[distablokenari]; $distabloici=$_post[distabloici]; $mesajgostersayi=$_post[mesajgostersayi]; $mesajresimgenislik=$_post[mesajresimgenislik]; $mesajalan1renk=$_post[mesajalan1renk]; $mesajalan2renk=$_post[mesajalan2renk]; $mesajalan3renk=$_post[mesajalan3renk]; $mesajalan4renk=$_post[mesajalan4renk]; $maill=$_post[maill]; mysql_query("update ayarlar SET ad='$siteadi',aciklama='$aciklama',anahtarlar='$anahtarlar',distablokenari='$distablokenari',dista bloici='$distabloici',mesajgostersayi='$mesajgostersayi',mesajresimgenislik='$mesajresimgenisl ik',mesajalan1renk='$mesajalan1renk',mesajalan2renk='$mesajalan2renk',mesajalan3renk='$mes ajalan3renk',mesajalan4renk='$mesajalan4renk',mail='$maill'") or die(mysql_error()); echo "<div align=\"center\">ayarlar kaydedildi. </div> <meta http-equiv=\"refresh\" content=\"1;url=index.php\" />"; Bu durumda html değişkenleri $_POST ile php değişkenlerine atılıp veritabanında eskileriyle değiştiriliyor. Bu kayıt işleminin yapıldığı sayfada Ayarlar kaydedildi mesajı görünecek ve refresh meta html etiketiyle 1 saniye sonra index.php ye yönlendirilecek. dosyalar/yoneticigiris.php index.php dosyası tarafından eğer geçerli bir yönetici çerezi algılanmazsa çağırılır. Formdan ibarettir. <form id="form1" name="form1" method="post" action="giris.php"> <label><strong><?php echo $siteadi;?> site yönetici girişi </strong><br /> <br /> giriş: <input name="isim" type="text" maxlength="50" autocomplete="off"/> </label> <p> <label>şifre: <input name="sifre" type="password" maxlength="50" autocomplete="off"/> </label> </p> <p> <label> <input type="submit" name="submit" value="tamam" /> </label> 24

25 </p> </form> Görünümü: Burada input içlerine autocomplete="off" ibaresi konmuştur. Bu şekilde tarayıcının bu forma daha önce yapılan girişleri hatırlaması engellenmiştir. Ve type="password" ile de girilen şifrenin yıldızlı olarak görünmesi sağlanmıştır. Formun hedefi giris.php dosyasıdır. Girilen veriler oraya html form değişkeni olarak gönderilir. Giris.php Giris.php dosyasında öncelikle yönetici giriş bilgilerini doğrulamak için veritabanıyla bağlantı kurmak zorundayız; include("../baglanti.php"); Daha sonra form verilerini php değişkenlerine atarız. $isimt=$_post[isim]; Bu alınan ilk veriler sql injection içerebileceğinden ilk başta tehlikeli olarak bakıyoruz. Bu tehlikeli isim değişkenine mysql_real_escape_string fonksiyonunu uygularayak sql injectiondan korunuyoruz. Aynı şeyi şifreye yapmaya gerek yoktur. Çünkü şifre veritabanında md5 hash olarak saklandığından girilen şifrenin md5i sorguya gönderilecektir. Md5 hashinin de herhangi bir sql işlemi yapması mümkün değildir. $sifre=md5($sifret); Veritabanından yönetici ismini ve şifresinin md5ini çağırdıktan sonra bağlantıyı kapatıyoruz. Arkasından da şu kodlarla sayfayı bitiriyoruz: if($donenisim==$isim && $donensifre==$sifre) { setcookie("çerez ismi",$isim,time()+600); include("dosyalar/giris.html"); else { include("dosyalar/hataligiris.html"); Doğru girişte 10 dakikalık oturum açılacak, hatalı girişte ise hatagiris.html sayfası açılacaktır. 25

26 dosyalar/giris.html <div align="center"> <p>gđrđş BAŞARILI</p> <p><a href="index.php">yönetđcđ ANA SAYFASI</a>'NA YÖNLENĐYORSUN </p> </div> <meta http-equiv="refresh" content="0;url=index.php"> Doğru giriş yapıldığında giris.php dosyası tarafından çağırılır. Meta etiketiyle sayfa açıldıktan 0 saniye sonra index.php dosyasına yönlendirilir. dosyalar/hataligiris.html <div align="center"> <p>hatali GĐRĐŞ </p> <p><input TYPE="button"VALUE="geri"onClick="javascript:history.back(1)"> </p></div> Görünümü: Cikis.php Yönetici çıkışı yapılması daha önce de anlattığım gibi çerez geçerlilik süresinin geçirilmesiyle olabilir. Gerekli kod; setcookie ("çerez adı", "", time() ); Bunun dışında çıkış sayfasında görsellikle ilgili sayfalar çağırılabilir ve ana sayfaya yönlendirme yapılabilir. donusum.php Tekir dönüşüm sayfasının içeriğidir. Düz yazıdan oluşur. Yapacağımız şey bu yazıyı bir form içinde açıp tekrar kaydetmektir. Đlk başta işlem boştur. if($islem==null) içinde yazıyı textarea içinde açarız. $donus=mysql_query("select * from donusum") or die(mysql_error()); $donusum=mysql_fetch_array($donus);?> <div align="center"><form name="form1" method="post" action="index.php?sayfa=donusum&islem=kaydet"> 26

27 <p><strong><font size="4">tekđr DÖNÜŞÜM</font> </strong></p> <p> <textarea name="yazi" cols="120" rows="20"><?php echo $donusum{yazi;?></textarea> </p> <p> <input type="submit" name="submit" value="kaydet"> </p></form></div><?php Formun hedefi index.php?sayfa=donusum&islem=kaydet adresidir. Yani kaydet düğmesine basılınca sayfaya bir yazi değişkeni gelecek ve adres satırında da islem=kaydet değişkeni taşınacaktır. if($islem=="kaydet") { $yazi=$_post[yazi]; $donus=mysql_query("update donusum set yazi='$yazi'") or die(mysql_error());?> <div align="center"><strong><font size="3">kaydedildi</font></strong> </div> <?php?> Đşlem kaydet olduğunda da yapılan şey yazı değişkenini veritabanında eskinin yerine koymak ve yöneticiye kaydedildi diye bilgi mesajı vermek. Hakkinda.php Algoritma ve yapılan işler donusum.php sayfasıyla tamamen aynıdır. Farklar sql değişken isimleri ve form hedef adresidir. O sayfada donusum gördüğümüz yerlere hakkinda koyarak elde edebiliriz. sifredegistir.php Menüden ilk çağırıldığında dosyalar/sifredegisform.html dosyasını çağırır. dosyalar/sifredegisform.html Yöneticiden mevcut şifresi ve 2 kez yeni şifresi istenir. sifredegistir.php dosyasına gönderilir. 27

28 sifredegistir.php (devam) Şifre değiştirme formundan gelen veriler çeşitli testlere sokulur. $mevcutt=$_post[mevcut]; $sifre1t=$_post[sifre1]; $sifre2t=$_post[sifre2]; $mevcut=md5(mysql_real_escape_string($mevcut)); $sifre1=mysql_real_escape_string($sifre1); $sifre2=mysql_real_escape_string($sifre2); Satırlarıyla veriler alınıp güvenlikleri sağlanır, mysql sorgusuna hazır hale getirilir. Daha sonra if($sifre1!=$sifre2) testi yapılır, eğer 2 yeni şifre uyuşmuyorsa Mesajı çıkartılır. Eğer orada sorun yoksa mevcut şifre kontrol edilir. O da doğruysa $yenisifre=md5($sifre1); mysql_query("update yonetici SET sifre = '$yenisifre' where isim='yönetici'") or die(mysql_error()); echo "<div align=\"center\">yönetici şifresi değiştirildi kodları çalıştırılır ve şifre değiştirme işlemi gerçekleşir. Son bir durum ise 2 yeni şifrenin uyuşup mevcut şifrenin uyuşmaması durumudur. Bu da else ile kontrol edilip Mesajı çıkarılır. Donanim.php Yöneticinin kart donanımıyla ilgili dosyaları siteye yüklemesini, silmesini, düzenlemesini sağlayan dosyadır. Đlk girildiğinde yapacağı iş dosya ekleme formunu çıkarmak ve altında mevcut dosyaları listelemek. Adres satırıyla taşıyacağımız islem değişkenini test ediyoruz. Boş ise <p align="center"><strong><font size="4">dosya EKLE</font></strong></p><?PHP require("dosyalar/donanimform.php"); satırlarını çalıştırıyoruz. 28

29 dosyalar/donanimform.php Bu dosyayla hem dosya yükleme,hem düzenleme işlemini yapacağız. Form açılışı şu şekilde olacak, <form name="form1" enctype="multipart/form-data" <?php if($islem==duzelt) {?> action="index.php?sayfa=donanim&islem=duzeltildi&no=<?php echo $no;?>"<?php else{?> action="index.php?sayfa=donanim&islem=yukle"<?php?> method="post"> Yani islem değişkeni duzelt ise form hedefi index.php?sayfa=donanim&islem=duzeltildi&no=numara olacak, ve işlem eğer boşsa (ki dosyayı yüklerken donanim.php dosyasının ilk açılışı oluyor böylece islem değişkeni boş oluyor) form hedefi index.php?sayfa=donanim&islem=yukle adresi oluyor. Yani bu dosya verileri her halükarda donanim.php dosyasına gönderiyor fakat islem değişkeni farklı oluyor. Form dosyasının geri kalanı; <div align="center"> <p> Donanım dosyası ismi:</p> <p> <input name="isim" type="text" value="<?php echo $dosya{isim;?>" size="50" maxlength="50"> </p> <p>açıklama:</p> <p> <textarea name="aciklama" cols="100" rows="4"><?php echo $dosya{aciklama;?></textarea> </p> <INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="500000"> <?php if($islem!=duzelt) {?> <p> <input name="dosya" type="file" size="50" maxlength="100"> </p> <p> <?php?> </p> <p><strong><font color="#ff0000">yüklenecek dosyanın isminin türkçe karakter içermediğinden emin olun.</font></strong></p> <p><br> <input type="submit" name="gonder" value="kaydet"> </p> </div></form> Şeklindedir. Görünümü; Yüklenen dosya adreslenirken kendi adını alacağından, adının Türkçe karakter içermesi sorun oluşturacaktır. Đnternette türkçe karakter içeren adresler henüz kullanılamamaktadır. 29

30 donanim.php(devam) Yükleme işlemi: islem değişkeni yukle ise if($islem=="yukle") { $isim=$_post[isim]; $aciklama=$_post[aciklama]; $yukleadi="../donanim/".$dosya_name; echo $dosya_name; echo "<br>"; echo $dosya_size. " Kb"; echo "<br>"; echo $dosya_type; echo "<br>"; echo "<a href=\"$yukleadi\">dosyaya ulaşmak için tıklayın.</a>"; copy($dosya,$yukleadi) or die ( "Dosya Kopyalanamiyor." ); $donusmax=mysql_query("select max(no) from donanim") or die(mysql_error()); $maxdosya=mysql_fetch_array($donusmax); $dosyakaydetno=$maxdosya{0+1; $adres=" mysql_query("insert into donanim(no,isim,aciklama,adres,boyut,dosyaad) values('$dosyakaydetno',' $isim','$aciklama','$adres','$dosya_size','$dosya_name')") or die(mysql_error());?> <div align="center">donanım dosyası yayına kondu</div> Dosya ana klasöre değil, donanim ismiyle açılacak olan klasöre konacak. Bunun için dosya adı alınıp önüne../donanim konuyor.../ bir klasör üste çıkmak demektir ki şu an yonetim klasörü içindeyiz. Yükleme tamamlandıktan sonra dosya adı, boyutu, türü ve dosyanın yüklendiği adres yöneticiye bilgi amaçlı sunuluyor. Geçici klasöre yüklenen dosya copy fonksiyonuyla belirttiğimiz klasöre taşınıyor. Şimdi sıra dosyayı veritabanına kaydetmekte. Kaç dosya olduğunu bulup kaydedilecek dosyanın dosya numarasına karar verelim. Veritabanında ilgili tablodan en büyük dosya numarası istenip 1 fazlası dosyakaydetno değişkenine atılıyor. Dosya adresini sitenin her yerinde sorunsuz bir şekilde çağırabilmek için başına sitenin tam adresini yerleştiriyoruz.(eğer site adresi değişirse bu kısım da değişmelidir) Ve de dosyayla ilgili bildiğimiz her şeyi veritabanına kaydediyoruz. Listeleme işlemi: <p align="center"><strong><font size="4">mevcut DONANIM DOSYALARI</font></strong></p> <p> <?php $donusmax=mysql_query("select max(no) from donanim") or die(mysql_error()); $maxdosya=mysql_fetch_array($donusmax); $dosyasayisi=$maxdosya{0+1;?> <table align="center" bgcolor="#ffffff" border="1" bordercolor="#000066"> 30

31 <?php //for başlangıç for($i=1;$i<$dosyasayisi;$i++) { $donus=mysql_query("select * from donanim where no='$i'") or die(mysql_error()); $dosya=mysql_fetch_array($donus); if($dosya!=null) {?> <tr> <td bgcolor="#d3d3d3"><div align="center"><a href="index.php?sayfa=donanim&islem=sil&no=<?php echo $i;?>">sil</a></div></td> <td bgcolor="#d3d3d3"><div align="center"><a href="index.php?sayfa=donanim&islem=duzelt&no=<?php echo $i;?>">düzenle</a></div></td> <td><div align="center"><a href="<?php echo $dosya{adres;?>"><?php echo $dosya{isim;?></a></div></td> <td><div align="center"><?php echo nl2br(htmlspecialchars($dosya{aciklama));?></div></td> </tr> <?php //for bitiş?> </table> Dosya sayısı kadar for döndürüyoruz, her dönüşte yeni sorguyla verileri alıp yeni satır içine yazıları koyuyoruz. Silme işlemi: Bu işlem yöneticinin bir dosyayı hatayla silmesini engeller. Sadece uyarıdır. $silno=$_get[no];?> <p align="center">dosya silinecek</p> <p align="center"><a href="index.php?sayfa=donanim&islem=silindi&no=<?php echo $silno;?>">[sil]</a></p> KULLANICI SAYFALARI Hazırladığım site parçalardan oluşmaktadır. Bir sayfa için yaklaşık 7 dosyadan veri değerlendirilerek uygun yerlere konmaktadır. Bu sayede sitenin bir şeyini değiştirmek için her sayfayı değiştirmek zorunda kalmayacağız ve sitenin her sayfası tamamen aynı olabilecek. adresine girildiğinde server otomatik olarak index.php dosyasını gönderecektir. 31

32 Yönetici paneli gibi kullanıcı kısmı da sadece index.php dosyasında açılacaktır. Đçerik ise adres satırında taşınarak değerlendirilecektir. Örneğin index.php?sayfa=hakkinda adresine index içinde hakkinda.php dosyasını açtıracağız. index.php <?php include("baglanti.php"); include("header.php"); include("stil.php"); include("ust.php"); $sayfa=$_get[sayfa]; if($sayfa==null) {$sayfa="anasayfa"; include($sayfa.".php"); include ("alt.php"); include ("baglantikapat.php");?> Dinamik içerikli site olduğundan site içeriğini veritabanından çekeceğiz, bunun için ilk başta veritabanı bağlantısını yapıyoruz. Daha sonra sitemizin ön bilgilerini içeren <head> </head> içeriğini koyuyoruz. Sitemizin yazı stillerini,renklerini vb. içeren stil.css dosyasını çağırması için stil.php dosyasını çağırıyoruz. Şimdi geldi sitemizin görsel kısmını oluşturmaya. Ust.php dosyası her zaman sitenin üst kısmında bulunan menüyü açar. Daha sonra sayfa içeriği tespit edilecek. Sayfa değişkenini test ediyor ve ona uygun içerik dosyasını çağırıyoruz. Sonra olarak sayfanın altını çağırıp güvenlik açısından bağlantıyı kapatıyoruz. baglanti.php Mysql veritabanına bağlanmamızı sağlayacak olan dosya. <?php $veritabani_ad="veritabanı adı"; $kullanici_ad="veritabanı kullanıcı adı"; $kullanici_sifre="şifre"; $dbh=mysql_connect ("localhost", "$kullanici_ad", "$kullanici_sifre") or die ('Veritabanı bağlantısı kurulamadı: '. mysql_error()); mysql_select_db ("$veritabani_ad");?> Bu sayfa veritabanı bağlantısını kurup bağlantı linkini dbh değişkenine atar. 32

33 header.php <?php $ayarsorgudonus=mysql_query(" select * from ayarlar ")or die(mysql_error()); $ayarlar=mysql_fetch_array($ayarsorgudonus); $siteadi=$ayarlar{ad; $aciklama=$ayarlar{aciklama; $anahtarlar=$ayarlar{anahtarlar;?><!doctype HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <html> <head> <title><?php echo $siteadi?></title> <META http-equiv="content-type" content="text/html; charset=windows-1254"> <META name="description" content="<?php echo $aciklama?>"> <META name="keywords" content="<?php echo $anahtarlar?>"> Veritabanından ayarlar tablosu içeriği çekilir. Bazı gerekli etiketler açılır ve sitenin karakter kodlaması Windows-1254 belirlenir. Daha sonra açıklama metası içeriğine ayarlardan çektiğimiz açıklama, anahtar kelime metasına da anahtar kelime yazdırılır. stil.php <link href="stil.css" rel="stylesheet" type="text/css" /> Kodlarından ibarettir. Head etiketi içinde stil.css dosyasını çağırır. stil.css Bu dosyada tanımladığımız stiller bütün sayfa için geçerli olacaktır. Bu sayede görünümünü değiştirmek istediğimiz öğelerin hepsini tek tek değil, öğelerin sadece stil dosyasındaki sınıfı içinde değişiklik yapabiliriz. Sadece bir öğe için aksi font, renk, boyut vb belirtilirse geçerli olmaz. body { td, th { a { background-color: #999999; font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 24px; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 24px; color: #000000; 33

34 form { color: #330000; background-color: #CCCCCC;.title { font-family: Georgia, "Times New Roman", Times, serif; font-size: 18px; line-height: 30px; background-color: #990000; color: #FFFF66;.subtitle { font-family: Georgia, "Times New Roman", Times, serif; font-size: 16px; line-height: 20px; font-weight: bold; color: #660000; font-style: oblique;.header { font-family: Georgia, "Times New Roman", Times, serif; font-size: 24px; background-color: #990000; color: #FFFF66;.nav { font-family: Georgia, "Times New Roman", Times, serif; font-size: 12px; font-weight: bold; background-color: #CCCC66;.navLink { font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: bold; background-color: #DEDECA; a:hover { color: #DEDECA; background-color: #000000;.sidebar { font-family: Georgia, "Times New Roman", Times, serif; font-size: 12px; line-height: 18px; padding: 3px; background-color: #FFFF99;.sidebarHeader { font-family: Georgia, "Times New Roman", Times, serif; font-size: 14px; 34

35 line-height: 18px; color: #FFFF99; background-color: #999933; font-weight: bold;.sidebarfooter { font-family: Georgia, "Times New Roman", Times, serif; font-size: 12px; line-height: 18px; background-color: #FFFF99; color: #990000;.footer { font-family: Georgia, "Times New Roman", Times, serif; font-size: 12px; font-weight: bold; line-height: 22px; color: #333333; background-color: #FFFF99;.legal { font-family: Georgia, "Times New Roman", Times, serif; font-size: 12pt; color: #333333;.box1 { border-width: 2px; border-color: #CCCCCC # # #CCCCCC; border-style: dotted;.promo { font-family: "Times New Roman", Times, serif; color: #000033;.titlebar { font-family: "Times New Roman", Times, serif; font-size: 9px; color: #FFFFFF; background-color: #336699;.dingbat { font-family: Georgia, "Times New Roman", Times, serif; background-color: #CCCC99; color: #660000; font-weight: bolder; font-size: medium; input.big { width: 100px; input.small { width: 50px; 35

36 ust.php Sitenin vücut etiketini (<body>), ana tablo, bu tabloya ait satır, sütunu açar ve bu tablo içine ortalanmış div içine ustresim.php dosyasını koyar ki bu dosya kullanıcının gördüğü üst menüdür. <body> <table align="center" width="700" border="5" bordercolor="#<?php echo $ayarlar{distablokenari?>" bgcolor="#<?php echo $ayarlar{distabloici?>"> <tr> <td> <div align="center"><?php include("ustresim.html");?></div> ustresim.html Bu dosya içeriği tablolardan, tablolar içinde linklendirilmiş resimlerden oluşmaktadır. Bu resim öbeğinde sol tarafta site logosu bulunmaktadır. Site logosunu photoshop programı ile, diğer kısımları (tuşlar,linkler) imageready programı ile slice(dilimleme) metoduyla yaptım. imageready kullanımı: Hazırladığımız herhangi bir resmi bu programda dilim aracını (slice tool) kullanarak istediğimiz gibi bölebiliyoruz. Bu şekilde linkleri oluşturabiliriz. Dilimlerin sol üst köşelerinde de dilim numarası görünmektedir. Dilim seçme aracını (Slice select tool) kullanarak bir dilim seçip o dilimle ilgili web ayarlarını yapabiliriz. Bunun için slice penceresini kullanıyoruz. Slice seçilmesi: Web linklendirilmesi: 36

37 Bu linklendirmeler bitince de file dan save optimized as veya ctrl+shift+alt+s tuş kombinasyonuyla bu dosyanın html kodlarını ve resimlerini (images klasörü oluşturup içine atar) elde ediyoruz. Đşte ustresim.html bu şekilde oluşturuldu. ustresim.html dosyası içeriği:v <table id="table_01" width="700" height="117" border="0" cellpadding="0" cellspacing="0"> <tr> <td rowspan="2"> <a href="index.php"> <img src="images/ustresim_01.gif" width="142" height="117" border="0" alt=""></a></td> <td> <a href="index.php?sayfa=hakkinda"> <img src="images/ustresim_02.gif" width="112" height="59" border="0" alt=""></a></td> <td> <a href="index.php?sayfa=donusum"> <img src="images/ustresim_03.gif" width="111" height="59" border="0" alt=""></a></td> <td> <a href="index.php?sayfa=yazilim"> <img src="images/ustresim_04.gif" width="112" height="59" border="0" alt=""></a></td> <td> <a href="index.php?sayfa=donanim"> 37

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

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1 Web Formlar ve Sayfalar Arasında Bilgi Gönderme BATML İnternet Programcılığı 1 Bazı web sitelerinde sayfalar arasında bilgi veya değişken göndermek gerekebilir. Gönderilen bu bilgi kullanıcı adı ve şifre

Detaylı

İnternet Programcılığı

İnternet Programcılığı 1 PHP le Ver tabanı İşlemler Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1.1 Veritabanı Nedir? Veritabanı

Detaylı

ÇANKAYA ÜNİVERSİTESİ WEBMAIL KULLANIM KLAVUZU

ÇANKAYA ÜNİVERSİTESİ WEBMAIL KULLANIM KLAVUZU ÇANKAYA ÜNİVERSİTESİ WEBMAIL KULLANIM KLAVUZU Üniversitemiz Webmail servisi yenilenmiş olup Roundcube webmail üzerinden servis vermeye başlamıştır. Daha önce kullanılan SquirrelMail servisi https://oldwebmail.cankaya.edu.tr/

Detaylı

4 Front Page Sayfası Özellikleri

4 Front Page Sayfası Özellikleri 4 Front Page Sayfası Özellikleri İsterseniz Frontpage penceresinin sağ tarafından, isterseniz araç çubuklarından faydalanarak yeni bir sayfa açın. Frontpage te çeşitli sayfa şablonları bulunmaktadır. Ancak

Detaylı

İÇERİK YÖNETİM SİSTEMİ (CMS) Bir web sitesi yayınlamak için yapılması gerekenler:

İÇERİK YÖNETİM SİSTEMİ (CMS) Bir web sitesi yayınlamak için yapılması gerekenler: İÇERİK YÖNETİM SİSTEMİ (CMS) Bir web sitesi yayınlamak için yapılması gerekenler: Yer satın alınır. İsim tescil ettirilir. Ftp ile wordpress klasörü upload edilir. Kendi bilgisayarımızda web sitesi yayınlamak

Detaylı

http://www.microsoft.com/visualstudio/eng/downloads

http://www.microsoft.com/visualstudio/eng/downloads Visual Studio 2012'nin kurulumunu, Visual Studio'nun kullanımını ve Windows Store'da basit bir proje hazırlanmasını anlatacağım. Hepsinden önce Visual Studio ortamından biraz bahsedelim. Visual Studio

Detaylı

1.PROGRAMLAMAYA GİRİŞ

1.PROGRAMLAMAYA GİRİŞ 1.PROGRAMLAMAYA GİRİŞ Bilindiği gibi internet üzerindeki statik web sayfaları ziyaretçinin interaktif olarak web sayfasını kullanmasına olanak vermemektedir. Bu yüzden etkileşimli web sayfaları oluşturmak

Detaylı

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

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 11-14 May. 2014 Form Form İşlemleri Tarayıcıdan bilgi alarak işlem gerçekleştirme FORM elemanları

Detaylı

SQL Uyarı Programı Kurulum ve Kullanımı

SQL Uyarı Programı Kurulum ve Kullanımı SQL Uyarı Programı Kurulum ve Kullanımı Kurulum 1. SQL Uyarı.zip dosyası açılır. 2. SQL Uyarı.exe programı çalıştırılır. 3. Üstteki ekran açılır ok. Butonuna basılır. 4. Ayarlar ekranı seçilir. 4.1 Server

Detaylı

PHP ile İnternet Programlama

PHP ile İnternet Programlama PHP ile İnternet Programlama Doç.Dr. Gazi Üniversitesi Gazi Eğitim Fakültesi Bilgisayar ve Öğretim Teknolojileri Eğitimi Bölümü 5. BÖLÜM: Oturum Yönetimi ve Güvenlik Sayfaya Yönlendirme PHP sayfamızdan

Detaylı

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

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ 1 1. FORMLAR ÖĞRENME FAALİYETİ 1 AMAÇ ÖĞRENME FAALİYETİ 1 Uygun ortam sağlandığında web sayfaları için formlar oluşturabileceksiniz. ARAŞTIRMA Web sayfalarında formların kullanım amaçlarını ve nasıl kullanıldığını

Detaylı

AEGEE-Eskişehir Online Web Yönetim Paneli ( WEBBY ) Yardım Dökümanı

AEGEE-Eskişehir Online Web Yönetim Paneli ( WEBBY ) Yardım Dökümanı AEGEE-Eskişehir Online Web Yönetim Paneli ( WEBBY ) Yardım Dökümanı Emre GÜLCAN IT Responsible & Web Admin AEGEE-Eskişehir emregulcan@gmail.com e_gulcan@hotmail.com 0535 729 55 20 1 1. YÖNETİM PANELİNE

Detaylı

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

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2015 2016 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 23 May. 2016 Form Form İşlemleri Tarayıcıdan bilgi alarak işlem gerçekleştirme FORM elemanları yardımıyla

Detaylı

2-Hafta Temel İşlemler

2-Hafta Temel İşlemler 2-Hafta Temel İşlemler * Html Komutlarının Yapısı * Açıklamalar * Htm Sayfasının Oluşturulması * Temel Html Komutları * Html Sayfalarının Düzenlenmesi * Html Sayfalarının İncelenmesi Html Komutlarının

Detaylı

Atatürk Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü BM 206 - Web Programlama ÖDEV 1

Atatürk Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü BM 206 - Web Programlama ÖDEV 1 Atatürk Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü BM 206 - Web Programlama ÖDEV 1 Son Teslim Tarihi: 5 Mayıs 2014-09:00 (ÖRGÜN) - 19:00 (İKİNCİ) Ödevi Teslim Alacak Olan Asistan:

Detaylı

Arayüz Geliştirme Dokümantasyonu

Arayüz Geliştirme Dokümantasyonu Arayüz Geliştirme Dokümantasyonu Proje: İş: Müşteri: Nosab Web Sitesi Arayüz Geliştirme Aeronorm Index 1. Sayfalar 2. Renk Paleti 3. Tipografi 4. Kutu Modeli 5. Bileşenler 6. Kod ve Sayfa Yapısı 7. Responsive

Detaylı

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015 BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015 Ders- 13 World Wide Web (WWW) Yrd. Doç. Dr. Burcu Can Buğlalılar Bilgisayar Mühendisliği Bölümü Bilgisayar Katmanları İçerik World Wide Web (WWW) Anlık Mesajlaşma

Detaylı

7. Çerçeveler. Bu bölümü bitirdiğinizde,

7. Çerçeveler. Bu bölümü bitirdiğinizde, 7. Çerçeveler Bu bölümü bitirdiğinizde, Çerçevelerden oluşan bir WEB sayfası tasarlamayı, İç içe çerçeveler oluşturmayı ve Çerçeveleri isimlendirmeyi, Bağ kurulan dosyaları belirtilen çerçeve içerisinde

Detaylı

2- Kontrol Sil... 17. 3-En Öne Getir... 13 4-En Arkaya Gönder... 13 4.5.8.2 Resim... 14. 1-Özellikler:... 18 Genel Özellikler...

2- Kontrol Sil... 17. 3-En Öne Getir... 13 4-En Arkaya Gönder... 13 4.5.8.2 Resim... 14. 1-Özellikler:... 18 Genel Özellikler... i İçindekiler Kullanıcı Giriş Ekranı... 1 Ana Sayfa... 2 1-Projeler... 3 1.1 Yeni Proje... 3 1.2 Proje Düzenle... 3 1.3 Proje Sil... 3 1.4 Listeyi Güncelle.... 3 2-Gruplar... 4 2.1.1 Grup Adı.... 5 2.1.2

Detaylı

LOGİN EKRANI. Şekil -1

LOGİN EKRANI. Şekil -1 LOGİN EKRANI Yönetim paneline ilk giriş ekranıdır, size verilen kullanıcı adı ve parola girilerek yönetim paneline giriş yapılır. Şifresiz girilemez, şifrenizi unuttunuz yada kaybettiniz ise lütfen PRO.GEN

Detaylı

http://alikoker.name.tr

http://alikoker.name.tr MySQL PHP web geliştiricileri genel olarak database tercihlerini çok rahat sql komutları yardımıyla kontrol edilebilen MySQL den yana kullanılar. Özellikle PHP+MySQL+Apache üçlüsü performans olarak web

Detaylı

Web Programlama Kursu

Web Programlama Kursu Web Programlama Kursu Bu kurs ne değildir? Neyi amaç edinmiştir? Bilgisayar Programcısı? Web Tasarımcısı? Web Programcısı? Neler öğreneceğiz? Kurs sonunda neler yapılabileceğiz? Örnek siteler Örnek Projeler

Detaylı

DIV KAVRAMI <style> position: absolute

DIV KAVRAMI <style> position: absolute DIV KAVRAMI Div tag i katman oluşturmak için kullanılır. Div ler sayfanın komple bir satırını kaplarlar, bu yüzden tag i içerisinde şekillendirilip, boyutlandırılmaları gerekir. Aşağıdaki şekilde

Detaylı

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

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu. Javascript Html sayfalarının içine yazılarak, sayfayı daha etkileşimli hale getirir. click olayları, uyarı mesajları gibi hareketlerle sayfayı daha dinamik hale getirir. Javascript olmadan yazılan html

Detaylı

8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr

8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr 8. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II Öğr.Gör. Hakan YILMAZ hakanyilmaz@karabuk.edu.tr Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 2 İçindekiler QUERYSTRING KOLEKSIYONU... 3 FORM

Detaylı

Kullanım Kılavuzu Milli Eğitim Bakanlığı 2010

Kullanım Kılavuzu Milli Eğitim Bakanlığı 2010 Kullanım Kılavuzu Milli Eğitim Bakanlığı 2010 Bu belge BT Sınıfı Etkinliklerinde Kullanılmak Üzere Hazırlanmıştır İÇİNDEKİLER GİRİŞ... 3 ÜYE (KAYIT) OLMA... 3 YÖNETİM PANELİ İŞLEMLERİ... 5 ŞABLON AYARLARI...

Detaylı

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları.

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları. Script Statik Sayfa Dinamik Sayfa Dinamik Web Sitelerinin Avantajları İçerik Yönetim Sistemi PHP Nedir? Avantajları Dezavantajları Script HTML kodları arasına yerleştirilen küçük kodlardır. Web sayfalarında

Detaylı

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

Web Site Tasarımı (Html-Css) (SD0139) Murat KARA 2017 Web Site Tasarımı (Html-Css) (SD0139) Murat KARA 2017 1. Hafta TANIŞMA, İNTERNET, HTML İçerik (Hafta/Konu) 1. Tanışma, İnternet Nedir, Html Nedir, Temel Terim ve Kavramlar 2. İnternete erişim ve İnternet

Detaylı

WEB TASARIM. CSS, IFRAME, TEMPLATE, SLICE, INCLUDE(php komutu) Tarık ÖZEL

WEB TASARIM. CSS, IFRAME, TEMPLATE, SLICE, INCLUDE(php komutu) Tarık ÖZEL WEB TASARIM CSS, IFRAME, TEMPLATE, SLICE, INCLUDE(php komutu) Tarık ÖZEL İçindekiler Konular Sayfa Slice 2 Iframe 12 CSS 16 Include (php komutu) 20 1 Slice Fireworks te yapacağımız sitenin boyutuna göre

Detaylı

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

SESSİON KULLANIMI. .Aşağıdaki Kodları da SessionDevam.asp adıyla kaydedelim. Language=VBScript Codepage=1254%> SESSİON KULLANIMI Bir ASP sayfasında herhangi bir değişkeni fonksiyon dışında tanımlamakla ve değer atamakla onu bütün fonksiyonlar için geçerli hale getirebiliriz. Fakat kimi zaman isteriz ki, bir fonksiyonun

Detaylı

U y g u l a m a A i l e s i (Abakus 360, T-Panel, T-CRM) Tarayıcı Ayarları. IPera İletişim Teknolojileri

U y g u l a m a A i l e s i (Abakus 360, T-Panel, T-CRM) Tarayıcı Ayarları. IPera İletişim Teknolojileri U y g u l a m a A i l e s i (Abakus 360, T-Panel, T-CRM) Tarayıcı Ayarları Başlarken İletişim yönetimi için gerekli tüm araçları sunan OfisTelefonu 07 programları Abakus 360, T-Panel ve T-CRM, bir kuruluştaki

Detaylı

İNTERNET PROGRAMCILIĞI - II

İNTERNET PROGRAMCILIĞI - II 0 İÇİNDEKİLER Bölüm 1 PHP İle Web Programlamaya Giriş 1 Bölüm 2 PHP Kodlama Standartları 5 Bölüm 3 PHP Değişken Kullanımı 17 Bölüm 4 IF Yapısı 32 Bölüm 5 Döngüler ve Diziler 64 1 BÖLÜM 1 PHP İLE WEB PROGRAMLAMAYA

Detaylı

www.elektrikogretmenleri.com

www.elektrikogretmenleri.com DREAMWEAVERDA NESNELERE DAVRANIŞ EKLEME Dreamweaver da fare hareket olaylı, animasyonlu görüntüler oluşturmak istenildiğinde hazır scriptler anlamına gelen Davranışlar(behaviors) kullanılmaktadır. Yukarıdaki

Detaylı

2. HTML Temel Etiketleri

2. HTML Temel Etiketleri 2. HTML Temel Etiketleri Bu bölümü bitirdiğinizde, HTML ve etiket kavramlarının ne olduğunu, HTML komut yapısını, Örnek bir HTML dosyasının nasıl oluşturulduğunu, Temel HTML etiketlerinin neler olduğunu,

Detaylı

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz.

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1 PHP ile Veritabanı İşlemleri Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1.1 Veritabanı Nedir? Veritabanı

Detaylı

1) İlk olarak oluşturduğumuz filtre adı yazılır. (örneğin tatil mesajı, taşı vb gibi.) 2) Sonra filtre için kural belirlenir.

1) İlk olarak oluşturduğumuz filtre adı yazılır. (örneğin tatil mesajı, taşı vb gibi.) 2) Sonra filtre için kural belirlenir. ROUNDCUBE FİLTRELER Roundcube e-posta sisteminde tatil mesajı, otomatik cevaplama ayarlamalarını yapabileceğiniz, gönderici / alıcı / konu ve postalara dayalı seçenekler ile filtre oluşturabileceğiniz

Detaylı

HTML Sayfaları. Bütün html sayfaları

HTML Sayfaları. Bütün html sayfaları HTML VİZE NOTLARI HTML Sayfaları Bütün html sayfaları tagıyla başlar ve tagıyla biter. tagları arasında ve tagları vardır. Örnek bir html boş sayfası kodları şu şekilde

Detaylı

İNTERNET PROGRAMCILIĞI I

İNTERNET PROGRAMCILIĞI I BÖLÜM 12 12- FORMLAR HTML'in bir metin şekillendirme aracı olduğunu söylemiştik. Form'lar bu tanımın istisnasıdır, HTML kullanarak sayfanızı ziyaret edenlerle temas kurmanızı sağlarlar. Formlar yoluyla

Detaylı

BİLGİSAYAR 4. MOLEKÜLER BİYOLOJİ VE GENETİK BÖLÜMÜ HTML DERS NOTLARI 9. DERS Tablolar (HTML Giriş) YARD. DOÇ. DR.

BİLGİSAYAR 4. MOLEKÜLER BİYOLOJİ VE GENETİK BÖLÜMÜ HTML DERS NOTLARI 9. DERS Tablolar (HTML Giriş) YARD. DOÇ. DR. BİLGİSAYAR 4 MOLEKÜLER BİYOLOJİ VE GENETİK BÖLÜMÜ HTML DERS NOTLARI 9. DERS Tablolar (HTML Giriş) YARD. DOÇ. DR. MEHTAP YALÇINKAYA HTML - TABLO Genel Bilgi Tablolar, sayfaları satırlara/sütunlara bölmek

Detaylı

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

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu WEB TASARIM I Öğr. Gör. M. Mutlu YAPICI Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Ders İzlencesi Hafta Modüller/İçerik/Konular 1. Hafta PHP Tanımı ve Sunucu Kurulumları 2. Hafta PHP Yazım Notasyonu

Detaylı

2014-2015 EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

2014-2015 EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI 2014-2015 EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI İşletim Sisteminde Yapılan Uygulamalar Bir Bilgisayarda Hangi İşletim Sistemi Yüklü Olduğunu

Detaylı

İNTERNET PROGRAMCILIĞI 2 10. HAFTA MYSQL - PHPMYADMIN. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Mysql Nedir.

İNTERNET PROGRAMCILIĞI 2 10. HAFTA MYSQL - PHPMYADMIN. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Mysql Nedir. İNTERNET PROGRAMCILIĞI 2 10. HAFTA İçindekiler MYSQL - PHPMYADMIN Mysql Nedir PhpMyAdmin Nedir PhpMyAdmin Arayüzü Hedefler Mysql' in görevini söyleyebilir PhpMyAdmin' in kullanım amacını söyler Hazırlayan

Detaylı

UZAKTAN EĞİTİM YÖNETİM SİSTEMİ (MMYO)EĞİTMEN YARDIM KILAVUZU

UZAKTAN EĞİTİM YÖNETİM SİSTEMİ (MMYO)EĞİTMEN YARDIM KILAVUZU UZAKTAN EĞİTİM YÖNETİM SİSTEMİ (MMYO)EĞİTMEN YARDIM KILAVUZU MERSİN, 2018 MERSİN MESLEK YÜKSEKOKULU ANA SAYFASI TANITIMI Mersin Meslek Yüksekokulu resmi web sitesine http://uzak4.mersin.edu.tr/index.php

Detaylı

ASSAM YÖNERGESİNE EK-T ASSAM WEB SİTESİ YÖNERGESİNE LAHİKA-2 WEB SİTESİ MAKALE EKLEME KILAVUZU 8.4.2014. www.assam.org.tr ASSAM

ASSAM YÖNERGESİNE EK-T ASSAM WEB SİTESİ YÖNERGESİNE LAHİKA-2 WEB SİTESİ MAKALE EKLEME KILAVUZU 8.4.2014. www.assam.org.tr ASSAM YÖNERGESİNE EK-T ASSAM WEB SİTESİ YÖNERGESİNE LAHİKA-2 WEB SİTESİ MAKALE EKLEME KILAVUZU 8.4.2014 ASSAM İçindekiler Önsöz... 3 ASSAM Web Sitesinde Makale Yayınlamak... 4 ASSAM Web Sitesine Nasıl Girerim?...

Detaylı

Okul Web Sitesi Yönetim Paneli Kullanımı

Okul Web Sitesi Yönetim Paneli Kullanımı Millî Eğitim Bakanlığı Bilgi İşlem Grup Başkanlığı tarafından ortak web sitesi tasarım çalışması yapılmıştır. Çalışmanın amacı tüm kurumlarımızın standart bir web sayfasına sahip olmalarını sağlamaktır.

Detaylı

Samsun Çocuk Hizmetleri İ l Koordinasyon Sekretarya Birimi

Samsun Çocuk Hizmetleri İ l Koordinasyon Sekretarya Birimi Samsun Çocuk Hizmetleri İ l Koordinasyon Sekretarya Birimi Veri Giriş Sistemi Klavuzu Amaç Veri Giriş Sistemi, koruyucu ve destekleyici tedbir kararlarının takibinde ve uygulamasında ilgili kurumları daha

Detaylı

KARADENİZ TEKNİK ÜNİVERSİTESİ YENİ WEB SİTESİ BİRİM YETKİLİSİ WYS (WEB YÖNETİM SİSTEMİ) KULLANIM KLAVUZU

KARADENİZ TEKNİK ÜNİVERSİTESİ YENİ WEB SİTESİ BİRİM YETKİLİSİ WYS (WEB YÖNETİM SİSTEMİ) KULLANIM KLAVUZU YENİ TASARIM KARADENİZ TEKNİK ÜNİVERSİTESİ YENİ WEB SİTESİ BİRİM YETKİLİSİ WYS (WEB YÖNETİM SİSTEMİ) KULLANIM KLAVUZU WYS : WEB YÖNETİM SİSTEMİ Wys yetkili olduğumuz birimin web sayfası ile ilgili her

Detaylı

PHP ile İnternet Programlama

PHP ile İnternet Programlama 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

Detaylı

Turgut Özal Üniversitesi WEB Sitesi Kullanım Kılavuzu

Turgut Özal Üniversitesi WEB Sitesi Kullanım Kılavuzu Turgut Özal Üniversitesi WEB Sitesi Kullanım Kılavuzu Temmuz 2012 Turgut Özal Üniversitesi web sitesi yönetim paneline aşağıdaki link yardımıyla ulaşabiliriz. http://www.turgutozal.edu.tr/webmin/ Karşımıza

Detaylı

JavaScript Örnekleri PDF

JavaScript Örnekleri PDF 5 JavaScript örneği ve bu örneklerin çalışan uygulamaları JavaScript Örnekleri PDF www.yazilimbilisim.net.. İçindekiler Tablosu Javascript Text Kutusuna Sadece Sayı Girdirme... 2 PROGRAM KODU... 3 Javascript

Detaylı

JasperReports Server ve Ireport raporlama Sistemi Kurulumu / Kullanımı 1. Bölüm 2. Bölüm 1- JasperReports Server ve Ireport Nedir?

JasperReports Server ve Ireport raporlama Sistemi Kurulumu / Kullanımı 1. Bölüm 2. Bölüm 1- JasperReports Server ve Ireport Nedir? JasperReports Server ve Ireport raporlama Sistemi Kurulumu / Kullanımı 1. Bölüm 1.1- JasperReports Server ve Ireport Nedir? 1.2- JasperReports Server ve Ireport Kurulumu 1.3- JasperReports Server Genel

Detaylı

1.1 Web Kavramlar. 1.1.1.3 URL terimini tanımlayınız ve anlayınız.

1.1 Web Kavramlar. 1.1.1.3 URL terimini tanımlayınız ve anlayınız. 1.1 Web Kavramlar 117 Anahtar 7erim/er 1.1.1.1 Web ve Internet terimlerini tanımlayınız. Her birinin anahtar özelliklerini tanımlayınız. Web bir Internet hizmetidir. Web Internet üzerinde bağlantılı html

Detaylı

Bu makalede 2003 sunucu, Windows 2003 Server anlamına gelmektedir. Aşağıda yapılan işlemler 2003 R2 sunucu üzerinde denenmiş ve çalıştırılmıştır.

Bu makalede 2003 sunucu, Windows 2003 Server anlamına gelmektedir. Aşağıda yapılan işlemler 2003 R2 sunucu üzerinde denenmiş ve çalıştırılmıştır. WINDOWS 2003 SUNUCULARI ÜZERĐNE PHP YÜKLENMESĐ ERDAL YAZICIOĞLU erdal(at)gmail.com http://barbarossa41.wordpress.com Merhabalar, Çözümpark.com adresinde bir kullanıcı ASP ve PHP yi aynı sunucu üzerinde

Detaylı

2) Hesabınıza Giriş yaptıktan sonra aşağıdaki ekran karşınıza gelir.

2) Hesabınıza Giriş yaptıktan sonra aşağıdaki ekran karşınıza gelir. MEB.K12.TR Uzantılı E-Posta Hesabının Kullanımı 1) http://mail.meb.k12.tr internet adresinden e-posta hesabına giriş yapılır. Kullanıcı Adı : KURUM KODUNUZ (meb.k12.tr kısmını yazmayınız.) Şifre : Hesabınıza

Detaylı

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır.

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır. 18 SQL SORGU DİLİ SQL (Structured Query Language) yapısal sorgu dili, veritabanı yönetim sistemlerinin standart programlama dili olarak bilinmektedir. SQL dilinin Access içinde sorgu pencerelerinde veya

Detaylı

Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz

Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz 9 Şubat 2012 / Perşembe Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz 1) emlakkategorisi adlı tabloyu oluşturuyoruz 1 2) ilanlar adlı tabloyu

Detaylı

Metin İşlemleri, Semboller

Metin İşlemleri, Semboller Ankara Üniversitesi Nallıhan Meslek Yüksekokulu Metin İşlemleri, Semboller NBP108 - GRAFİK ANİMASYON il Öğr.Gör. Salih ERDURUCAN 1 / 13 3. METİN İŞLEMLERİ 3.1. Metin Aracı Animasyon yazılımı yazı yazmak

Detaylı

PHP 1. Hafta 1. Sunum

PHP 1. Hafta 1. Sunum PHP 1. Hafta 1. Sunum PHP101: PHP nedir? Bu dersten sonra bilecekleriniz PHP nedir? PHP ye neden ihtiyaç vardır? PHP nin gelişimi HTML, HTTP ve JS nedir? PHP yle alakası nedir? PHP nin uygulama alanları

Detaylı

Web Teknolojileri ve Programla

Web Teknolojileri ve Programla 12.05.2010 Dersi Özeti Kursun içeriğini özeti Alt başlıkları Proje Kurs esnasında kullanmayı planladığımı editörler HTMLe giriş Temel etiketler Notepad+ da örnekler Web Teknolojileri ve Programla Bölüm

Detaylı

MEB (K12) e-posta Sistemi Kullanımı

MEB (K12) e-posta Sistemi Kullanımı 1. Giriş Bilindiği üzere Bakanlığımız tarafından tüm kurumlarımıza POP3 destekli e-posta hesabı tahsis edilmiştir. Bu hesabı web tabanlı olarak kullanabileceğiniz gibi Outlook vb. gibi e-posta istemci

Detaylı

Flow Kullanım Klavuzu Mart 2014

Flow Kullanım Klavuzu Mart 2014 Flow Kullanım Klavuzu Mart 2014 İçindekiler Flow nedir? Bir Flow hesabı oluşturmak Oturum açmak Flow Hesabınız Genel Görünüm Flow Hesabınız Kullanım + Add (ekle butonu) Bibliography (Künye/Atıf butonu)

Detaylı

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.

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. PHP Nedir? PHP, dünyada en çok kullanılan web programlama dillerinden biridir. Biraz daha teknik bir açıklama yapmak gerekirse şöyle söylenebilir. PHP, sunucu taraflı çalışan bir betik ve programlama dilidir.

Detaylı

ÜSKÜDAR ÜNVERSİTESİ EBYS KULLANIM KILAVUZU

ÜSKÜDAR ÜNVERSİTESİ EBYS KULLANIM KILAVUZU ÜSKÜDAR ÜNVERSİTESİ EBYS KULLANIM KILAVUZU 1. Sisteme Giriş Üsküdar EBYS sistemine giriş için, kullanıcı ismi ve şifre gereklidir. Kullanıcı İsmi: Bu alana, EBYS kullanıcı isminizi giriniz. Bu alan, eğer

Detaylı

5. Tablo İşlemleri. Bu bölümü bitirdiğinizde,

5. Tablo İşlemleri. Bu bölümü bitirdiğinizde, 5. Tablo İşlemleri Bu bölümü bitirdiğinizde, Tablonun nasıl oluşturulduğunu, Satır ve hücrelerin ne olduğunu ve nasıl oluşturulduğunu, Tablonun ve hücrelerin nasıl hizalandığını, Satır veya sütunların

Detaylı

TURKCELL HİZMETLERİ. Kullanım Bilgileri. LOGO Kasım 2014

TURKCELL HİZMETLERİ. Kullanım Bilgileri. LOGO Kasım 2014 TURKCELL HİZMETLERİ Kullanım Bilgileri LOGO Kasım 2014 İçindekiler TURKCELL HİZMETLERİ... 3 Online Turkcell Fatura Aktarımı... 4 Fatura Eşleştirme Tabloları... 5 Online Fatura Aktarımları... 6 Toplu Mesaj

Detaylı

Windows 7 - IIS 7.5 üzerine PHP ve MySQL kurulumu

Windows 7 - IIS 7.5 üzerine PHP ve MySQL kurulumu Windows 7 - IIS 7.5 üzerine PHP ve MySQL kurulumu Not: "Aşağıdaki anlatım Windows 7 64 bite göredir. 32 bit kullanıyorsanız MySQL 32 bit versiyonunu yükleyiniz." Windows 7 (64 bit işletim sistemi) ve IIS

Detaylı

HESAP MAKİNASI YAPIMI

HESAP MAKİNASI YAPIMI HESAP MAKİNASI YAPIMI 1..Aşağıdakine benzer görünüm ve butonları hazırlayın. 2. 24. Butonun içerisine aşağıdaki kodları yazın. 3. Yeni bir layer ekleyip Frame1 F9 na aşağıdaki kodları ekleyelim. 4. Butonlardan

Detaylı

Kurulum ve Başlangıç Kılavuzu. DataPage+ 2012 için

Kurulum ve Başlangıç Kılavuzu. DataPage+ 2012 için DataPage+ 2012 için Son Güncelleme: 29 Ağustos 2012 İçindekiler Tablosu Önkoşul Olan Bileşenleri Yükleme... 1 Genel Bakış... 1 Adım 1: Setup.exe'yi Çalıştırın ve Sihirbazı Başlatın... 1 Adım 2: Lisans

Detaylı

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

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011 PHP I E. Fatih Yetkin 26 Eylül 2011 Outline Temel Tanımlar HTML e Giriş PHP ye Giriş MySQL ve PHP Temel Tanımlar Web Sunucu Nedir? Teknik detaylar bir kenara bırakılacak olursa, hazırlanan web sayfasını

Detaylı

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

4. Bağlantı (Köprü) Oluşturma 4. Bağlantı (Köprü) Oluşturma Bu bölümü bitirdiğinizde, HTML dosyalarında nasıl bağlantı oluşturulduğunu, Bağ etiketinin ne olduğunu, Yerel dosyalara nasıl bağlantı kurulduğunu, İnternet üzerindeki dosyalara

Detaylı

EBA Dosya Uygulaması Kullanıcı Kılavuzu ( W eb)

EBA Dosya Uygulaması Kullanıcı Kılavuzu ( W eb) EBA Dosya Uygulaması Kullanıcı Kılavuzu ( W eb) İçindekiler EBA Dosya Nedir?... 1 Kimler kullanabilir?... 2 Uygulama Ne işe Yarar?... 2 Sisteme internet üzerinden giriş nasıl yapılır?... 2 Yeni bir klasör

Detaylı

Zoru Kolay Yapmak İçin...

Zoru Kolay Yapmak İçin... Zoru Kolay Yapmak İçin... 3308 Mesleki Eğitim Okullarında Öğrenci Takip Programı KURULUM Programı http://www.cetasey.com/userfiles/file/setup.exe adresinden bilgisayarınıza indirip kurun. Daha sonra programın

Detaylı

Kurumsal Grup E-Posta Eğitim Dokümanı

Kurumsal Grup E-Posta Eğitim Dokümanı Kurumsal Grup E-Posta Eğitim Dokümanı Bu Eğitim Dokümanı Bilişim Merkezi Modelleme Grubu Öğrencileri Tarafından Hazırlanmıştır. İçindekiler Kurumsal Grup E-Posta Nedir?... 2 Amaçlar... 3 1. Liste Talebinde

Detaylı

WEB TASARIMININ TEMELLERİ

WEB TASARIMININ TEMELLERİ WEB TASARIMININ TEMELLERİ Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Ders İzlencesi Hafta Modüller/İçerik/Konular 1. Hafta İnternet ve WEB Tanımları Html Temel Etiketleri 2. Hafta Html Temel Etiketleri

Detaylı

Dinamik Kodlama. [X] Fusion@6. [X] Yeni Fonksiyon

Dinamik Kodlama. [X] Fusion@6. [X] Yeni Fonksiyon Dinamik Kodlama Ürün Grubu Kategori Versiyon Önkoşulu [X] Fusion@6 [X] Yeni Fonksiyon @6 Uygulama @6 Serisi ürünlerde, kullanıcı arabirimlerinin her yerine eklenen dinamik kodlama özelliği ile, programın

Detaylı

Kırklareli Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Kırklareli Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi Kırklareli Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi Kluzem Panel Kullanımı Öğrenci Sürümü 2 Hazırlayan: Uzman Süleyman ASLAN Uzaktan Eğitim Merkezi İletişim Bilgileri Kluzem Müdürü Yrd.

Detaylı

KELİME İŞLEMCİLERE GİRİŞ 5.SINIF BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ ÇALIŞMA KÂĞIDI

KELİME İŞLEMCİLERE GİRİŞ 5.SINIF BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ ÇALIŞMA KÂĞIDI KELİME İŞLEMCİLERE GİRİŞ 5.SINIF BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ ÇALIŞMA KÂĞIDI Microsoft Office Word programı, Amerika da bulunan ve Bill Gates in sahibi olduğu yazılım firması Microsoft tarafından

Detaylı

Web Tasarımının Temelleri

Web Tasarımının Temelleri 1. Hafta Web Tasarımının Temelleri Öğr. Gör. Murat YAZICI www.muratyazici.com Artvin Çoruh Üniversitesi, Artvin Meslek Yüksekokulu www.artvin.edu.tr Formlar Kullanıcının da aktif olacağı dinamik web sayfaları

Detaylı

1. Mutabakat.zip dosyası açılır. 2. Mutabakat klasörü içindeki Mutabakat.exe dosyası çalıştırılır.

1. Mutabakat.zip dosyası açılır. 2. Mutabakat klasörü içindeki Mutabakat.exe dosyası çalıştırılır. BA&BS MUTABAKAT PROGRAMI Kurulumu 1. Mutabakat.zip dosyası açılır. 2. Mutabakat klasörü içindeki Mutabakat.exe dosyası çalıştırılır. 3. Server ayarlarının yapılacağı pencere açılır. 3.1 Server Adı\instance

Detaylı

DAO İLE SQL KOMUTLARI. Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım.

DAO İLE SQL KOMUTLARI. Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım. DAO İLE SQL KOMUTLARI Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım. SQL-1 SELECT En basit SQL cümleciği oluşturmak için SELECT sözcüğü

Detaylı

Yeni Adrese Tebligat Gönderim İşlemleri

Yeni Adrese Tebligat Gönderim İşlemleri Yeni Adrese Tebligat Gönderim İşlemleri Yeni Adrese Tebligat Gönderim İşlemleri İÇİNDEKİLER Yeni Adrese Tebligat Gönderilme Aşamaları (Barkodsuz)... 3 YENİ ADRESE TEBLİGAT GÖNDERİLMESİ... 3 1- Tebliğ Durumu

Detaylı

MUĞLA SITKI KOÇMAN ÜNĠVERSĠTESĠ. BĠLGĠ ĠġLEM DAĠRE BAġKANLIĞI. AKADEMĠK PERSONEL KĠġĠSEL WEB SAYFASI KULLANIM KILAVUZU MUKWEB ĠÇĠNDEKĠLER TABLOSU

MUĞLA SITKI KOÇMAN ÜNĠVERSĠTESĠ. BĠLGĠ ĠġLEM DAĠRE BAġKANLIĞI. AKADEMĠK PERSONEL KĠġĠSEL WEB SAYFASI KULLANIM KILAVUZU MUKWEB ĠÇĠNDEKĠLER TABLOSU MUĞLA SITKI KOÇMAN ÜNĠVERSĠTESĠ BĠLGĠ ĠġLEM DAĠRE BAġKANLIĞI AKADEMĠK PERSONEL KĠġĠSEL WEB SAYFASI KULLANIM KILAVUZU MUKWEB ĠÇĠNDEKĠLER TABLOSU 1. GENEL BĠLGĠLER... 1 2. Ana Sayfa... 4 3. MukWeb Sayfaları...

Detaylı

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

İnternet Programcılığı Form İşlemleri ve Oturum Yönetimi Örnekleri 1 İnternet Programcılığı Form İşlemleri ve Oturum Yönetimi Örnekleri Örnek 1 : Aşağıda ekran görüntüleri verilen HTML formunu ve oluşturduğunuz bu formdaki bilgileri elde edecek PHP sayfasını hazırlayınız.(formdan

Detaylı

Site Temizlik Projesi Kodları

Site Temizlik Projesi Kodları Site Temizlik Projesi Kodları Site Temizlik Projesi -2 nin kodları aşağıdadır. (İlgili site sayfasını önceki yazılarda bulabilirsiniz.) [crayon-5c2acf77c2a0b746634170/] İndir (DOCX, 15KB) İlk Hafta Sunumu

Detaylı

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

Bölüm 10: PHP ile Veritabanı Uygulamaları Bölüm 10: PHP ile Veritabanı Uygulamaları -231- Öğr.Gör. Serkan DİŞLİTAŞ 10.1. PHP PHP, platformdan bağımsız sunucu taraflı çalışan betik bir web programlama dilidir. PHP programlama dili ile MySQL, MSSQL,

Detaylı

Luca NET Kobi Ticari Yazılımında ilk yapılacaklar

Luca NET Kobi Ticari Yazılımında ilk yapılacaklar Luca NET Kobi Ticari Yazılımında ilk yapılacaklar Luca MMP (Mali Müşavir Paketi) bilgileri ile Luca Üye girişinden sisteme giriş yapıldıktan sonra Luca Net Kobi Ticari Giriş butonuna basarak programa giriş

Detaylı

ÇANKIRI KARATEKİN ÜNİVERSİTESİ ZİMBRA E-POSTA SİSTEMİ KULLANICI DOKÜMANI

ÇANKIRI KARATEKİN ÜNİVERSİTESİ ZİMBRA E-POSTA SİSTEMİ KULLANICI DOKÜMANI ÇANKIRI KARATEKİN ÜNİVERSİTESİ ZİMBRA E-POSTA SİSTEMİ KULLANICI DOKÜMANI İÇİNDEKİLER GİRİŞ... 3 EPOSTA SİSTEMİNE BAĞLANMA... 3 ESKİ E-POSTLAR... 5 YENİ KİŞİ VEYA GÖREV OLUŞTURMA... 6 MESAJ YAZMA... 6 KİŞİLER...

Detaylı

2. Belgeye Metin Ekleme

2. Belgeye Metin Ekleme METİN İŞLEMLERİ Flashta 2 çeşit metin vardır:1)tlf metni 2)Klasik metin 1)TLF Metni : CS5 ile başlayan metin türü. TLF metni FLA dosyanızın yayınlama ayarlarında ActionScript 3.0 ve Flash Player 10 veya

Detaylı

Kets DocPlace LOGO Entegrasyonu

Kets DocPlace LOGO Entegrasyonu Kets DocPlace LOGO Entegrasyonu Kets DocPlace Kurulumu Öncesinde Yapılması Gereken İşlemler Windows 7, Windows 8, Windows Server 2008 R2, Windows Server 2012 veya daha yeni işletim sistemlerinde Programlar

Detaylı

İçindekiler ADIM 1 : Üye Olma... 2 ADIM 2 : Giriş Yap ve Hatırlatma Sayfaları... 3 ADIM 3: Üye Girişi yapıldıktan sonra yapabileceğiniz işlemler...

İçindekiler ADIM 1 : Üye Olma... 2 ADIM 2 : Giriş Yap ve Hatırlatma Sayfaları... 3 ADIM 3: Üye Girişi yapıldıktan sonra yapabileceğiniz işlemler... İçindekiler ADIM 1 : Üye Olma... 2 ADIM 2 : Giriş Yap ve Hatırlatma Sayfaları... 3 ADIM 3: Üye Girişi yapıldıktan sonra yapabileceğiniz işlemler... 3 ADIM 4: Bildiri Özet Gönderimi Bilgilendirme ve Yardım

Detaylı

Wolvox Kapı Ekranı. AKINSOFT Wolvox Kapı Ekranı Yardım Dosyası. Doküman Versiyon : 1.02.01

Wolvox Kapı Ekranı. AKINSOFT Wolvox Kapı Ekranı Yardım Dosyası. Doküman Versiyon : 1.02.01 AKINSOFT Yardım Dosyası Doküman Versiyon : 1.02.01 Tarih : 15.11.2014 1 1. KULLANIM AMACI Personel takip sistemi kullanmak isteyen tüm işletmeler için geliştirilmiştir. WOLVOX İnsan Kaynakları programı

Detaylı

12. Tanımlama Listeleri <dl> </dl>, <dt> </dt>, <dd> </dd>

12. Tanımlama Listeleri <dl> </dl>, <dt> </dt>, <dd> </dd> 12. Tanımlama Listeleri , , Terimler ve açıklamalarını içeren listeler oluşturmakta kullanılırlar. Bir uygulamanın komut satırı seçeneklerini listelemek ve altlarında açıklamalarını

Detaylı

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

Programlama Yazılımı ile Web Sitesi Oluşturma Hafta- 2 Programlama Yazılımı ile Web Sitesi Oluşturma Programlama yazılımı, bir web projesi oluşturmak için alternatif birkaç yol sunar. Buyollardan bir tanesi ihtiyaca uygun olarak seçilebilir. Programlama

Detaylı

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

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu WEB TASARIM I Öğr. Gör. M. Mutlu YAPICI Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Ders İzlencesi Hafta Modüller/İçerik/Konular 1. Hafta PHP Tanımı ve Sunucu Kurulumları 2. Hafta PHP Yazım Notasyonu

Detaylı

İnternet,artık hayatımızın önemli bir parçası. Her gün interneti programlar aracılığı ile ya da internet siteleri aracılığı ile kullanıyoruz.

İnternet,artık hayatımızın önemli bir parçası. Her gün interneti programlar aracılığı ile ya da internet siteleri aracılığı ile kullanıyoruz. Mahmut BORA KARAKUŞ İnternet,artık hayatımızın önemli bir parçası. Her gün interneti programlar aracılığı ile ya da internet siteleri aracılığı ile kullanıyoruz. Peki internet nasıl çalışıyor ve internet

Detaylı

Android Ders Notları

Android Ders Notları Android Ders Notları 1. Yeni Bir Proje Başlatma Android Studio programında yeni bir proje başlatıyoruz. İlk olarak karşımıza resim 1 deki gibi bir pencere gelecek. Burada Application name kısmına proje

Detaylı

1. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr

1. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr 1. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II Öğr.Gör. Hakan YILMAZ hakanyilmaz@karabuk.edu.tr Karabük Üniversitesi Uzaktan Eğitim Uygulama ve AraştırmaMerkezi 2 İçindekiler 1. GİRİŞ... 3 1.1 ASP NEDİR?...

Detaylı

1 Aralık 2011 / Perşembe

1 Aralık 2011 / Perşembe 1 Aralık 2011 / Perşembe Örnek :İki adet panel var.eğer 1nci panelde şifre Mustafa ise kendimiz bir session değişkeni oluşturup tamam yazdıracağız.değilse Şifre hatalı yazdıracağız. protectedvoid Page_Load(object

Detaylı

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido.

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido. PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan PHP Nedir? Genel kullanım amaçlı bir betik/programlama dilidir.

Detaylı