Helper - Dosya Yükleme Fonksiyonu
Bu bölümde bir formdan dosya yükleme işlemlerini göreceğiz. Bu bölüm de, trait içerisindeki fonksiyonumuzu geliştirerek adım adım ilerleyip, gelişmiş bir upload (dosya yükleme) işlemi gerçekleştireceğiz. İlk olarak libraries dizini içerisinde dosya_yukleme.php adında bir dosya oluşturup aşağıdaki gibi kodluyoruz.
Daha sonra views dizini içerisindeki users.php dosyasını açıyoruz ve form_ac() alanını aşağıdaki form_multipart ile değiştiriyoruz.
Şimdi de views dizini içerisindeki users.php dosyasını açıyoruz ve kullanici_adi inputunun altına aşağıdaki inputu ekliyoruz.
Şimdi de controllers dizini içerisindeki profile.php dosyasını açıyoruz ve submit_form() methodunu aşağıdaki gibi kodluyoruz. Diğer form inputlarının kodlamasını şimdilik yorum satırı haline getirdiğimizi görebilirsiniz. Bunları tekrar yazmamanız adına şimdilik pasif duruma düşürdük, yükleme işlemini yaptıktan sonra toplu olarak testlerimizi yapabiliriz.
ibraries dizini içerisinde dosya_yukleme.php adında bir dosya oluşturmuştuk, bu dosyanınde libraries dizini içerisindeki netron.php sınıfına tanımlanması gerekiyor. Daha önce biliyorsunuz use form_dogrulama diye bir trait eklemiştik. Aynı şekilde aşağıdaki gibi use form_dogrulama alanının hemen yanına bunu alabiliriz. Örnek kod aşağıdaki gibi olacak.
Şimdi libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz.
Şimdi tarayıcımız da
Şimdi de dosya giriş alanının, boş olup olmadığını kontrol edelim ve boş gelirse bir hata mesajı gönderelim. Bunun için libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz.
Daha sonra controllers dizini içerisinde profile.php dosyamızı açalım ve submit_form() methodunu aşağıdaki gibi düzenleyelim.
Şimdi tarayıcımız da
Sıradaki işlemimiz gelen dosyanın uygun formatta olup olmadığını kontrol edeceğiz. Bunun libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz.
Daha sonra controllers dizini içerisinde profile.php dosyamızı açalım ve submit_form() methodunu aşağıdaki gibi düzenleyelim.
Şimdi tarayıcımız da
Şimdi dosya yolunun kontrolünü ve dosyanın yüklemesini yapacağız. libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz. Ayrıca yazılan kodların tüm açıklaması kod içerisine açıklama satırları halinde eklenmiştir.
Şimdi kodlarımızı biraz daha toparlayalım. Bunun views dizini içerisindeki users.php dosyasını açın ve image inputunun altına aşağıdaki hata çıktılama kodlarını ekleyin.
Şimdi de controllers dizini içerisindeki profile.php dosyasını açın ve submit_form() methodunu aşağıdaki method ile değiştirin.
Şimdi de tarayıcınızda
Son işlemlerimizi yapalım. Dosyanın yüklenmesini ve isminin değiştirilmesi yani dosya adının benzersiz olmasını sağladık ayrıca dosya da bazı değişiklikler yaptık. Kod açıklamalarında hepsini belirttik. libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz.
Şimdi controllers dizini içerisindeki profile.php dosyamızı açıyoruz ve içerisindeki submit_form() method kodlarını aşağıdaki kodlarla değiştiriyoruz.
Şimdi tarayıcımız da
Şimdi kodlarımızı biraz daha toparlayalım. Bunun views dizini içerisindeki users.php dosyasını açın ve image inputunun altına aşağıdaki hata çıktılama kodlarını ekleyin.
Şimdi de controllers dizini içerisindeki profile.php dosyasını açın ve submit_form() methodunu aşağıdaki method ile değiştirin.
Şimdi tarayıcımız da
Bu bölümde bir formdan dosya yükleme işlemlerini göreceğiz. Bu bölüm de, trait içerisindeki fonksiyonumuzu geliştirerek adım adım ilerleyip, gelişmiş bir upload (dosya yükleme) işlemi gerçekleştireceğiz. İlk olarak libraries dizini içerisinde dosya_yukleme.php adında bir dosya oluşturup aşağıdaki gibi kodluyoruz.
PHP:
<?php
/*
* Dosya yükleme kütüphanesi
*/
trait Dosya_yukleme
{
public function dosya($data)
{
}
}
?>
Daha sonra views dizini içerisindeki users.php dosyasını açıyoruz ve form_ac() alanını aşağıdaki form_multipart ile değiştiriyoruz.
PHP:
<?php echo form_multipart("profile/submit_form", "post", ['class' => 'form']); ?><br />
Şimdi de views dizini içerisindeki users.php dosyasını açıyoruz ve kullanici_adi inputunun altına aşağıdaki inputu ekliyoruz.
PHP:
<?php echo form_input(['type' => 'file', 'name' => 'image', 'id' => 'input-id', 'class' => 'form-control']); ?><br />
Şimdi de controllers dizini içerisindeki profile.php dosyasını açıyoruz ve submit_form() methodunu aşağıdaki gibi kodluyoruz. Diğer form inputlarının kodlamasını şimdilik yorum satırı haline getirdiğimizi görebilirsiniz. Bunları tekrar yazmamanız adına şimdilik pasif duruma düşürdük, yükleme işlemini yaptıktan sonra toplu olarak testlerimizi yapabiliriz.
PHP:
public function submit_form()
{
$data = [
'dosya_adi' => 'image',
'dosya_uzantisi' => 'jpg|png',
'yuklenecek_yol' => 'images/',
'label_ismi' => 'Resim'
];
$this->dosya($data);
/*$this->dogrulama('kullanici_adi', 'Kullanıcı Adı', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('adres', 'Adres', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('sifre', 'Şifre', 'min_uzunluk|5|gerekli');
$this->dogrulama('sifre_tekrar', 'Şifre Tekrarı', 'onay_sifre|sifre|gerekli');
$this->dogrulama('email', 'Email', 'benzersiz|users|gerekli');
if($this->calistir()){
echo $this->post("kullanici_adi");
echo $this->post("adres");
echo $this->post("password");
}else{
$this->view("users");
}*/
}
ibraries dizini içerisinde dosya_yukleme.php adında bir dosya oluşturmuştuk, bu dosyanınde libraries dizini içerisindeki netron.php sınıfına tanımlanması gerekiyor. Daha önce biliyorsunuz use form_dogrulama diye bir trait eklemiştik. Aynı şekilde aşağıdaki gibi use form_dogrulama alanının hemen yanına bunu alabiliriz. Örnek kod aşağıdaki gibi olacak.
PHP:
use form_dogrulama, dosya_yukleme;
Şimdi libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz.
PHP:
<?php
/*
* Dosya yükleme kütüphanesi
*/
trait Dosya_yukleme
{
public $dosya_hatalari = [];
public $data;
public $dosya_data;
public function dosya($data)
{
$this->data = $data;
$this->dosya_data = [
'dosya_adi' => $_FILES[$this->data['dosya_adi']]['name'],
'dosya_tmp' => $_FILES[$this->data['dosya_adi']]['tmp_name'],
'uzantilar' => $this->data['dosya_uzantisi'],
'yuklenecek_yol' => $this->data['yuklenecek_yol'],
'label_ismi' => $this->data['label_ismi'],
'alan_ismi' => $this->data['dosya_adi']
];
print_r($this->dosya_data);
}
}
?>
Şimdi tarayıcımız da
http://localhost/netron/profile/user
url'imize jpg veya png formatlarına sahip bir dosya yüklemesi yapalım ve aşağıdaki çıktıyı alalım.Şimdi de dosya giriş alanının, boş olup olmadığını kontrol edelim ve boş gelirse bir hata mesajı gönderelim. Bunun için libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz.
PHP:
<?php
/*
* Dosya yükleme kütüphanesi
*/
trait Dosya_yukleme
{
public $dosya_hatalari = [];
public $data;
public $dosya_data;
public function dosya($data)
{
$this->data = $data;
$this->dosya_data = [
'dosya_adi' => $_FILES[$this->data['dosya_adi']]['name'],
'dosya_tmp' => $_FILES[$this->data['dosya_adi']]['tmp_name'],
'uzantilar' => $this->data['dosya_uzantisi'],
'yuklenecek_yol' => $this->data['yuklenecek_yol'],
'label_ismi' => $this->data['label_ismi'],
'alan_ismi' => $this->data['dosya_adi']
];
/*
* Dosya giriş alanının boş olup olmadığını kontrol ediyoruz.
*/
if(empty($this->dosya_data['dosya_adi'])){
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $this->dosya_data['label_ismi'] . " gerekli alandır!";
}
}
public function dosya_calistir()
{
if(empty($this->dosya_hatalari)){
return true;
}else{
return false;
}
}
}
?>
Daha sonra controllers dizini içerisinde profile.php dosyamızı açalım ve submit_form() methodunu aşağıdaki gibi düzenleyelim.
PHP:
public function submit_form()
{
$data = [
'dosya_adi' => 'image',
'dosya_uzantisi' => 'jpg|png',
'yuklenecek_yol' => 'images/',
'label_ismi' => 'Resim'
];
$this->dosya($data);
if($this->dosya_calistir()){
}else{
print_r($this->dosya_hatalari);
}
/*$this->dogrulama('kullanici_adi', 'Kullanıcı Adı', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('adres', 'Adres', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('sifre', 'Şifre', 'min_uzunluk|5|gerekli');
$this->dogrulama('sifre_tekrar', 'Şifre Tekrarı', 'onay_sifre|sifre|gerekli');
$this->dogrulama('email', 'Email', 'benzersiz|users|gerekli');
if($this->calistir()){
echo $this->post("kullanici_adi");
echo $this->post("adres");
echo $this->post("password");
}else{
$this->view("users");
}*/
}
Şimdi tarayıcımız da
http://localhost/netron/profile/user
açalım ve boş bir form gönderelim. Aşağıdaki çıktıyı görebiliriz.Sıradaki işlemimiz gelen dosyanın uygun formatta olup olmadığını kontrol edeceğiz. Bunun libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz.
PHP:
<?php
/*
* Dosya yükleme kütüphanesi
*/
trait Dosya_yukleme
{
public $dosya_hatalari = [];
public $data;
public $dosya_data;
public function dosya($data)
{
$this->data = $data;
$this->dosya_data = [
'dosya_adi' => $_FILES[$this->data['dosya_adi']]['name'],
'dosya_tmp' => $_FILES[$this->data['dosya_adi']]['tmp_name'],
'uzantilar' => $this->data['dosya_uzantisi'],
'yuklenecek_yol' => $this->data['yuklenecek_yol'],
'label_ismi' => $this->data['label_ismi'],
'alan_ismi' => $this->data['dosya_adi']
];
/*
* Dosya giriş alanının boş olup olmadığını kontrol ediyoruz.
*/
if(empty($this->dosya_data['dosya_adi'])){
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $this->dosya_data['label_ismi'] . " gerekli alandır!";
}
// Resim/Dosya uzantısını kontrol ediyoruz.
$dosya_uzantisi = explode(".", $this->dosya_data['dosya_adi']);
$dosya_uzantisi = end($dosya_uzantisi);
$uzantilar = explode("|", $this->dosya_data['uzantilar']);
if(!in_array($dosya_uzantisi, $uzantilar)){
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $dosya_uzantisi . " bu format desteklenmiyor!";
}
}
public function dosya_calistir()
{
if(empty($this->dosya_hatalari)){
return true;
}else{
return false;
}
}
}
?>
Daha sonra controllers dizini içerisinde profile.php dosyamızı açalım ve submit_form() methodunu aşağıdaki gibi düzenleyelim.
PHP:
public function submit_form()
{
$data = [
'dosya_adi' => 'image',
'dosya_uzantisi' => 'jpg|png|PNG',
'yuklenecek_yol' => 'images/',
'label_ismi' => 'Resim'
];
$this->dosya($data);
if($this->dosya_calistir()){
}else{
print_r($this->dosya_hatalari);
}
/*$this->dogrulama('kullanici_adi', 'Kullanıcı Adı', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('adres', 'Adres', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('sifre', 'Şifre', 'min_uzunluk|5|gerekli');
$this->dogrulama('sifre_tekrar', 'Şifre Tekrarı', 'onay_sifre|sifre|gerekli');
$this->dogrulama('email', 'Email', 'benzersiz|users|gerekli');
if($this->calistir()){
echo $this->post("kullanici_adi");
echo $this->post("adres");
echo $this->post("password");
}else{
$this->view("users");
}*/
}
Şimdi tarayıcımız da
http://localhost/netron/profile/user
açalım ve png veya jpg dışında başka bir formatta dosya yüklemesi yapalım. Aşağıdaki hata mesajını görebilirsiniz.Şimdi dosya yolunun kontrolünü ve dosyanın yüklemesini yapacağız. libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz. Ayrıca yazılan kodların tüm açıklaması kod içerisine açıklama satırları halinde eklenmiştir.
PHP:
<?php
/*
* Dosya yükleme kütüphanesi
*/
trait Dosya_yukleme
{
public $dosya_hatalari = [];
public $data;
public $dosya_data;
public function dosya($data)
{
$this->data = $data;
$this->dosya_data = [
'dosya_adi' => $_FILES[$this->data['dosya_adi']]['name'],
'dosya_tmp' => $_FILES[$this->data['dosya_adi']]['tmp_name'],
'uzantilar' => $this->data['dosya_uzantisi'],
'yuklenecek_yol' => $this->data['yuklenecek_yol'],
'label_ismi' => $this->data['label_ismi'],
'alan_ismi' => $this->data['dosya_adi']
];
/*
* Dosya giriş alanının boş olup olmadığını kontrol ediyoruz.
*/
if(empty($this->dosya_data['dosya_adi'])){
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $this->dosya_data['label_ismi'] . " gerekli alandır!";
}
/*
* Resim/Dosya uzantısını kontrol ediyoruz.
*/
// Dosya (.) nokta'dan explode ile dizi halinde parçalıyoruz.
$dosya_uzantisi = explode(".", $this->dosya_data['dosya_adi']);
// end ile dosyanın son dizi elemanını alıyoruz.
$dosya_uzantisi = end($dosya_uzantisi);
// Gelen dosya uzantılarını (|) dik çizgiden dizi hakinde parçalıyoruz.
$uzantilar = explode("|", $this->dosya_data['uzantilar']);
// Gelen dosya uzantılarını uygun formatta değilse hata mesajını bastıyoruz.
if(!in_array($dosya_uzantisi, $uzantilar)){
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $dosya_uzantisi . " bu format desteklenmiyor!";
}
/*
* Dosya yolunun kontrolünün yapılıyor.
*/
// Dosya yolu geçerli bir dizin mi diye kontrol ediyoruz.
if(!file_exists($this->dosya_data['yuklenecek_yol'])){
// Hata mesajında dosyanın sonundaki slash görünmesin diye temizmiyoruz.
$dizin = rtrim($this->dosya_data['yuklenecek_yol'], "/");
// Dosya yolunda hata var ise hata mesajını gönderiyoruz.
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $dizin . " yükleme dizini hatası!";
}
}
public function dosya_calistir()
{
if(empty($this->dosya_hatalari)){
/*
* Dosya yüklemesi yapılıyor.
*/
move_uploaded_file($this->dosya_data['dosya_tmp'], $this->dosya_data['yuklenecek_yol'].$this->dosya_data['dosya_adi']);
return true;
}else{
$this->data = null;
return false;
}
}
}
?>
Şimdi kodlarımızı biraz daha toparlayalım. Bunun views dizini içerisindeki users.php dosyasını açın ve image inputunun altına aşağıdaki hata çıktılama kodlarını ekleyin.
PHP:
<?php if(!empty($this->hatalar['kullanici_adi'])): ?>
<?php echo $this->hatalar['kullanici_adi']; ?>
<?php endif; ?><br />
Şimdi de controllers dizini içerisindeki profile.php dosyasını açın ve submit_form() methodunu aşağıdaki method ile değiştirin.
PHP:
public function submit_form()
{
$data = [
'dosya_adi' => 'image',
'dosya_uzantisi' => 'jpg|png|PNG',
'yuklenecek_yol' => 'images/',
'label_ismi' => 'Resim'
];
$this->dosya($data);
$this->dogrulama('kullanici_adi', 'Kullanıcı Adı', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('adres', 'Adres', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('sifre', 'Şifre', 'min_uzunluk|5|gerekli');
$this->dogrulama('sifre_tekrar', 'Şifre Tekrarı', 'onay_sifre|sifre|gerekli');
$this->dogrulama('email', 'Email', 'benzersiz|users|gerekli');
if($this->dosya_calistir() & $this->calistir()){
echo "Form iletildi";
}else{
$this->view('users');
}
}
Şimdi de tarayıcınızda
http://localhost/netron/profile/user
url'ini çalıştırın ve boş bir form gönderimi yapın. Aşağıdaki çıktıyı alacaksınız.Son işlemlerimizi yapalım. Dosyanın yüklenmesini ve isminin değiştirilmesi yani dosya adının benzersiz olmasını sağladık ayrıca dosya da bazı değişiklikler yaptık. Kod açıklamalarında hepsini belirttik. libraries dizini içerisinde dosya_yukleme.php dosyamızı açıyoruz ve içerisindeki kodları aşağıdaki kodlarla değiştiriyoruz.
PHP:
<?php
/*
* Dosya yükleme kütüphanesi
*/
trait Dosya_yukleme
{
public $dosya_hatalari = [];
public $data;
public $dosya_data;
public function dosya($data)
{
$this->data = $data;
$this->dosya_data = [
'dosya_adi' => $_FILES[$this->data['dosya_adi']]['name'],
'dosya_tmp' => $_FILES[$this->data['dosya_adi']]['tmp_name'],
'uzantilar' => $this->data['dosya_uzantisi'],
'yuklenecek_yol' => $this->data['yuklenecek_yol'],
'label_ismi' => $this->data['label_ismi'],
'alan_ismi' => $this->data['dosya_adi'],
// PATHINFO_EXTENSION bize dosya uzantısını otomatik bulur.
'dosya_uz' => pathinfo($_FILES[$this->data['dosya_adi']]['name'], PATHINFO_EXTENSION)
];
/*
* Dosya giriş alanının boş olup olmadığını kontrol ediyoruz.
*/
if(empty($this->dosya_data['dosya_adi'])){
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $this->dosya_data['label_ismi'] . " gerekli alandır!";
}
/*
* Resim/Dosya uzantısını kontrol ediyoruz.
*/
// Dosya uzantısını yukarıda yakaladığımız pathinfo'dan gelen 'dosya_uz'dan alıyoruz.
$dosya_uzantisi = strtolower($this->dosya_data['dosya_uz']);
// Gelen dosya uzantılarını (|) dik çizgiden dizi hakinde parçalıyoruz.
$uzantilar = explode("|", $this->dosya_data['uzantilar']);
// Gelen dosya uzantılarını uygun formatta değilse hata mesajını bastıyoruz.
if(!in_array($dosya_uzantisi, $uzantilar)){
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $dosya_uzantisi . " bu format desteklenmiyor!";
}
/*
* Dosya yolunun kontrolünün yapılıyor.
*/
// Dosya yolu geçerli bir dizin mi diye kontrol ediyoruz.
if(!file_exists($this->dosya_data['yuklenecek_yol'])){
// Hata mesajında dosyanın sonundaki slash görünmesin diye temizmiyoruz.
$dizin = rtrim($this->dosya_data['yuklenecek_yol'], "/");
// Dosya yolunda hata var ise hata mesajını gönderiyoruz.
return $this->dosya_hatalari[$this->dosya_data['alan_ismi']] = $dizin . " yükleme dizini hatası!";
}
}
public function dosya_calistir()
{
if(empty($this->dosya_hatalari)){
/*
* Dosya yüklemesi yapılıyor.
*/
// PATHINFO_FILENAME ile dosyanın adını alıyoruz.
$dosya_adi = pathinfo($this->dosya_data['dosya_adi'], PATHINFO_FILENAME);
// Gelen dosya da boşluk var ise bunları _ alt tire işareti ile değiştiriyoruz.
$dosya_adi = preg_replace("/\s+/", "_", "$dosya_adi");
// Dosya adının benzersiz olması için time() methodunu dosya adının önüne ekletiyoruz.
$dosya_adi = time().$dosya_adi;
// En yukarıda data da oluşturduğumuz PATHINFO_EXTENSION ile dosya uzantısını alıyoruz.
$dosya_adi = $dosya_adi.".".$this->dosya_data['dosya_uz'];
// move_uploaded_file ile dosyanın yüklenmesini sağlıyoruz.
move_uploaded_file($this->dosya_data['dosya_tmp'], $this->dosya_data['yuklenecek_yol'].$dosya_adi);
// Yeni dosya adını alıyoruz.
$this->dosya_data['dosya_adi'] = $dosya_adi;
return true;
}else{
$this->data = null;
return false;
}
}
}
?>
Şimdi controllers dizini içerisindeki profile.php dosyamızı açıyoruz ve içerisindeki submit_form() method kodlarını aşağıdaki kodlarla değiştiriyoruz.
Şimdi tarayıcımız da
http://localhost/netron/profile/user
açalım ve png veya jpg formatına sahip bir resim dosyası yükleyelim. Dosyanın başarılı bir şekilde public\images dizinine yüklendiğini görebiliriz.Şimdi kodlarımızı biraz daha toparlayalım. Bunun views dizini içerisindeki users.php dosyasını açın ve image inputunun altına aşağıdaki hata çıktılama kodlarını ekleyin.
PHP:
<?php if(!empty($this->hatalar['kullanici_adi'])): ?>
<?php echo $this->hatalar['kullanici_adi']; ?>
<?php endif; ?><br />
Şimdi de controllers dizini içerisindeki profile.php dosyasını açın ve submit_form() methodunu aşağıdaki method ile değiştirin.
PHP:
public function submit_form()
{
$data = [
'dosya_adi' => 'image',
'dosya_uzantisi' => 'jpg|png',
'yuklenecek_yol' => 'images/',
'label_ismi' => 'Resim'
];
$this->dosya($data);
$this->dogrulama('kullanici_adi', 'Kullanıcı Adı', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('adres', 'Adres', 'int_yok|min_uzunluk|5|gerekli');
$this->dogrulama('sifre', 'Şifre', 'min_uzunluk|5|gerekli');
$this->dogrulama('sifre_tekrar', 'Şifre Tekrarı', 'onay_sifre|sifre|gerekli');
$this->dogrulama('email', 'Email', 'benzersiz|users|gerekli');
if($this->dosya_calistir() & $this->calistir()){
echo $this->dosya_data['dosya_adi'];
}else{
$this->view('users');
}
}
Şimdi tarayıcımız da
http://localhost/netron/profile/user
açalım ve png veya jpg formatına sahip bir resim dosyası yükleyelim. Dosyanın başarılı bir şekilde farklı isimde public\images dizinine yüklendiğini görebiliriz.