Php Üyelik Sistemi

PDO kullanarak PHP ile üyelik sistemi oluşturmak oldukça kolaydır. Bu makalede, PHP PDO kullanarak üyelik sistemi oluşturmanın adımlarını ayrıntılı olarak ele alacağız.

  • Veritabanı ve Kayıt Formunun Oluşturulması
  • Php Üyelik Sistemi için Veritabanı Bağlantısının Sağlanması
  • Kullanıcı Kayıt İşlemi
  • Kullanıcı Giriş Formunun Oluşturulması ve Giriş İşlemi
  • Oturum Yönetimi
  • Kullanıcı Çıkış İşlemi

Adım 1 : Veritabanı ve Kayıt Formunun Oluşturulması

Öncelikle,php üyelik sistemi için bir veritabanımızı ve tablonuzu oluşturuyoruz.

CREATE DATABASE ornek;
USE ornek;
CREATE TABLE `uyeler` (
`uye_id` int(11) NOT NULL AUTO_INCREMENT,
`uye_kadi` varchar(50) NOT NULL,
`uye_sifre` varchar(20) NOT NULL,
`uye_eposta` varchar(50) NOT NULL,
PRIMARY KEY (`uye_id`))

SQL create database komutu ile örnek veritabanımızı oluşturuyoruz. Use komutu ile örnek isimli veritabanını kullanacağımızı belirttikten sonra örnek veritabanı içerisine create table komutu ile üyeler isimli tablomuzu oluşturuyoruz.

Veritabanı ve tablomuzu oluşturduktan sonra kullanıcının sisteme kayıt olabilmesi için bir HTML kayıt formu oluşturuyoruz. Kayıt formumuzun daha düzenli ve modern görünmesi için bootstrap kütüphanesini kullandım.

Okumaya devam et Php Üyelik Sistemi

Php Pdo Kullanımı

PHP PDO, PHP için bir veritabanı arabirimi sağlayan bir kütüphanedir. PDO, veritabanı bağlantıları, sorguları ve işlemleri gerçekleştirmek için kullanılır. Bu makalede, PHP PDO hakkında daha ayrıntılı bilgi vereceğim.

Php PDO Nedir?

PDO, veritabanı sürücülerini kullanarak MySQL, PostgreSQL, SQLite ve Oracle gibi farklı veritabanlarına erişim sağlar. PDO, veritabanı bağlantılarını yönetir, sorguları çalıştırır ve sonuçlarını işler.

PDO’nun en büyük avantajı, SQL enjeksiyonlarına karşı koruma sağlamasıdır. PDO, sorguları parametrelerle birleştirir, böylece kötü niyetli kullanıcıların sorgulara müdahale etmesi engellenir. Bu nedenle, PDO kullanmak, güvenlik açısından önemlidir.

PDO ayrıca, çeşitli veritabanı işlemlerini gerçekleştirmek için bir dizi yöntem sunar. Örneğin, veri eklemek, güncellemek, silmek, seçmek ve daha fazlasını yapabilirsiniz. PDO, veritabanı bağlantılarını da yönetir ve bağlantı hatalarını ele alır.

Okumaya devam et Php Pdo Kullanımı

Php Include & Require Fonksiyonları

Php include ve require fonksiyonları bir dosya başka dosyayı dahil etmemizi sağlıyor. Php include ve require fonksiyonları oldukça sık kullanacağımız fonksiyonlardır. Bu nedenle fonksiyonları anlatmadan önce nerelerde kullanacağımızdan bahsedeceğim.

Bu iki fonksiyon dosya içerisine başka dosyanın çağırılmasında kullanılır dedik. Buna örnek olarak html temaları düşünün bu temalarda header, menu, sidebar,body, footer gibi kısımlar vardır. Tüm bu kısımları bir dosyada tutmak karmaşıklığa neden olacaktır. Bu nedenle ayrı ayrı tutuyoruz ve süreç yönetimini kolaylaştırıyoruz. Her parça gerek duyulduğu yerde dosyaya dahil edilerek bir bütünü oluşturur.

Okumaya devam et Php Include & Require Fonksiyonları

Php Dosya Yükleme Fonksiyonu

Php dosya yükleme fonksiyonu sunucuya form aracılığı ile dosya yüklemek için kullanacağımız fonksiyondur. Dosya yükleme hemen hemen her projede önümüze çıkacaktır. Php dosya yükleme işlemini uzun uzun her seferinde yazmak yerine fonksiyon tanımlayacağız ve böylece gereksiz tekrarı ve zaman kaybını önlemiş olacağız.

Dosya yükleme fonksiyonumuzu yazmaya başlamak için index.php isimli bir dosya oluşturuyorum ve içerisinde dosya yükleme formumu Bootstrap kütüphanesini kullanarak oluşturuyorum.

<?php include 'fonksiyon.php'; ?>
<!doctype html>
<html lang="tr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <link rel="stylesheet" href="boot/css/bootstrap.min.css"/>

    <title>Php Dosya Yükleme</title>
</head>
<body>
<div class="row">
    <div class="col-md-4 offset-md-4 mt-5">
        <h4>Php Dosya Yükleme</h4>
        <form action="" method="post" enctype="multipart/form-data">
            <div class="mb-3">
                <label class="form-label">Dosya Seçin</label>
                <input type="file" class="form-control" name="dosya">
            </div>
            <button type="submit" class="btn btn-primary">Yükle</button>
        </form>
    </div>
</div>
</body>
</html>
Okumaya devam et Php Dosya Yükleme Fonksiyonu

Php Güvenlik Önlemleri

Php güvenlik önlemleri konumuzda kullanıcıdan veri alırken basit fonksiyon ile güvenlik önlemi alacağız. Bilindiği üzere kullanıcıdan verileri formlar aracılığı ile GET ve POST süper global değişkenleri ile alıyoruz. Uygulamamızdaki her türlü güvenlik zafiyeti tüm emeklerin boşa gitmesine neden olabilir. Bu nedenle en ufak detaylar bile göz ardı edilmemelidir.

Get veya Post ile aldığımız her verinin içerisindeki boşluklar, html etiketler ve tırnak işaretleri gibi güvenlik sorununa neden olabilecekleri temizlememiz gerekiyor. Öncelikle bu kontrolleri tek tek nasıl yaptığımızı aşağıdaki örnekten inceleyelim.

<?php
$uye_adi = htmlspecialchars(addslashes(trim($_POST["uye_adi"])));
$uye_sifre = htmlspecialchars(addslashes(trim($_POST["uye_sifre"])));
?>
Okumaya devam et Php Güvenlik Önlemleri

Php Yazı Kısaltma Yöntemleri

Php yazı kısaltma fonksiyonları yazıları istediğimiz uzunlukta kısaltmamızı sağlıyor. Yazı kısaltma fonksiyonlarının en sık kullanıldığı yerler arasında haber ve blog siteleri yer almaktadır. Haber ve blog sitelerinde görmüş olduğunuz devamını oku veya daha fazlası gibi linklerden önce php yazı kısaltma fonksiyonları ile içerik kısaltılır. İçeriğin kısaltılması ile hem olası taşmalar önlenir hem de anasayfada daha fazla içeriğin listelenmesi için yer açar. Böylece anasayfada uzun uzun yer kaplayan yazıların oluşturacağı karışıklık önlenmiş olur.

Burada kendi fonksiyonumuzu da oluşturacağımız için php ile fonksiyon tanımlama hakkında bilgi almak için Php Fonksiyon Kullanımı başlıklı yazıma göz atabilirsiniz.Ayrıca php dilinin bize sunduğu hazır String Fonksiyonları da mevcuttur. Php String Fonksiyonları hakkında bilgi sahibi olmak için ise buraya tıklayabilirsin.

Php hali hazırda geliştiriciler için string ifadelerin kısaltılmasını sağlayan fonksiyon tanımlamıştır. Bu fonksiyon substr fonksiyondur. Substr php yazı kısaltma fonksiyonu üç parametre almaktadır.

  • Birinci parametre string ifadeyi tutan değişkenimiz.
  • İkinci parametre kısalmaya kaçıncı karakterden başlanacağını belirten parametredir.
  • Üçüncü parametre kısaltmanın kaçıncı karakterde biteceğini belirten parametredir.
Okumaya devam et Php Yazı Kısaltma Yöntemleri

Php Şifreleme Yöntemleri

Php şifreleme yöntemlerini açıkça görünmesini istemediğimiz verilerimizi şifrelemek için kullanırız. Şifreleme yöntemleri gönderilen verileri belirli algoritmalara göre yeniden yapılandırarak bir dizge oluşturur.

openssl_encrypt Şifreleme Fonksiyonu

Belirtilen veriyi belirtilen yöntem ve parola ile şifrelemek için kullanılır. base64 kodlu bir dizge döndürür. openssl_encrypt şifrelenen veriler belirlenen parola ile tekrar geri döndürülür. Parolayı sadece şifrelemeyi yapan kişi bileceği için oldukça güvenlidir.

<?php
$veri = '123456';
$sifreleme_yontemi = 'AES-128-ECB';
$anahtar = 'ornek_anahtar';
$sifrelenmis_hal = openssl_encrypt($veri, $sifreleme_yontemi, $anahtar);

echo $sifrelenmis_hal; // wl+HWhSZSSNUXKGcCIjgIQ==
?>

Veriyi şifrelemek için openssl_encrypt fonksiyonunu kullanıyoruz. Şifrelediğimiz veriyi ise openssl_decrypt fonksiyonu ile çözümlüyoruz.

Okumaya devam et Php Şifreleme Yöntemleri

Php Süper Global Değişkenler

Php süper global değişkenler php dilinin olmazsa olmaz değişkenleridir. Süper global değişkenler ile formdan veri alma, dosya yükleme, oturum açma, çerez oluşturma, sistem bilgisi alma, ziyaretçi hakkında bilgi topla gibi işlemleri yapabiliriz. En çok başvuracağınız php süper global değişkenleri $_POST, $_GET, $_COOKIE, $_SESSION ve $_FILES olacaktır.

DeğişkenAçıklama
$GLOBALSBir değişkeni uygulamamızdaki herhangi bir yerde kullanmamızı sağlar.
$_POSTFormdan gelen veriyi elde etmek için kullanılır fakat form metodunun method=’post’ olarak tanımlanmış olması gerekir.
$_GETFormdan gelen veriyi elde etmek için kullanılır fakat form metodunun method=’get’ olarak tanımlanmış olması gerekir.
$_SESSIONOturum nesneleri oluşturmak için kullanılır.
$_COOKIEKullanıcının bilgisayarında çerez nesneleri oluşturmak için kullanılır.
$_REQUEST$_POST, $_GET ve $_COOKIE değişkenlerinin değerlerini tek başına alabilir.
$_SERVERSunucu bilgilerini verilen anahtar doğrultusunda elde eder. Ip adresi, mevcut sayfa adresi, tarayıcı tipi vs.
$_FILESHer türden dosyanın sunucuya yüklenmesi için kullanılır.
$_ENVSistem değişkenlerini saklayan bir değişkendir.

$GLOBALS php süper global değişkeninin örnek kullanımını aşağıda inceleyelim. Fonksiyon içerisinde ve fonksiyon dışarısında a değişkeni tanımladık bu iki a değişkeninin değerleri birbirinden farklıdır. Fonksiyon içerisinde $GLOBALS süper global değişkenini kullanarak fonksiyon dışında tanımlamış olduğumuz a değişkeninin değerine erişebiliyoruz.

Okumaya devam et Php Süper Global Değişkenler

Php ile Form Kullanımı

Php dili ile dinamik sayfalar oluşturmak için html formlar oldukça önemlidir çünkü bu formlar aracılığıyla kullanıcılardan veri alıyoruz veya dinamik sayfamızın içeriğini yine formlar aracılığı ile veri tabanına kayıt ediyoruz. Kısaca php içerisinde form hem veri almak için hem de veri girmek için kullanılmaktadır.

Herhangi bir web sayfanı incelediğinizde iletişim sayfasında görmüş olduğunuz iletişim formu kullanıcıdan veri almak için kullanılan forma örnek verilebilir.

Html ile form oluştururken dikkat edilmesi gereken bazı parametreler vardır. Bu parametreler method ve action parametreleridir. Method parametresi GET veya POST değerlerini almaktadır. Action parametresi ise formun çalıştırılacağı sayfayı belirlemek için kullanılır ve boş bırakılabilir. Boş bırakıldığı taktirde mevcut sayfada çalışacaktır.

Okumaya devam et Php ile Form Kullanımı

Php Dosya Yükleme Nasıl Yapılır?

Dosya yükleme işlemi günümüzde neredeyse her web sitesinde mevcuttur. Php dosya yükleme fonksiyonu ile dosyaların sunucuya yüklenmesini sağlayacağız. Dosya yükleme işlemini gerçekleştirmek için formları kullanıyoruz. Php ile Form Kullanımı başlık yazımda formlar aracılığı ile dosya yükleme yaparken kullandığımız file form elemanından bahsetmiştim.

Php ile dosya yükleme işlemi için ilk olarak yükleme formumuzu oluşturuyoruz. Dosya yükleme formumuzu oluştururken enctype parametresinin multipart/form-data olması gerektiğini unutmayın.

<h4>Php Dosya Yükleme</h4>
<form action="" method="post" enctype="multipart/form-data">
    <input type="file" name="dosya"> <br />
    <button type="submit" style="margin-top:15px;">Yükle</button>
</form>

Formlardan veri almak için $_GET ve $_POST süper global değişkenlerinin kullanıyoruz. Formlar aracılığı ile gönderilen dosya bilgilerine erişmek için ise $_FILES süper global değişkeni kullanılmaktadır. Süper global değişkenler hakkında bilgi almak için Php Süper Global Değişkenler başlıklı yazıma göz atabilirsiniz.

Okumaya devam et Php Dosya Yükleme Nasıl Yapılır?