Turkish Tutorial of Codeigniter | PHP| Part 12 |Blog Sitesi Yapımı 8|

in #utopian-io7 years ago (edited)

Codeigniter
CodeIgniter is an Application Development Framework - a toolkit - for people who build web sites using PHP. Its goal is to enable you to develop projects much faster than you could if you were writing code from scratch, by providing a rich set of libraries for commonly needed tasks, as well as a simple interface and logical structure to access these libraries. CodeIgniter lets you creatively focus on your project by minimizing the amount of code needed for a given task.
Source



ci-logo-big.png
Resim Kaynak



Linklerimiz

Github
Codeigniter Website
Proje Dosyamız


What Will I Learn?Neler Öğreneceğim?
- Yazilar.php View Edit (For edit article and delete article button)- Yazilar.php View Düzenleme (Yazı düzenleme ve silme butonu için)
- Vt.php Model Edit (For delete article)- Vt.php Model Düzenleme (Yazı silme için)
- Yonetimpaneli.php Controller Edit (For delete article)- Yonetimpaneli.php Controller Düzenleme (Yazı silme için )

RequirementsGereksinimler
- Notepad++ (Website)- Notepad++ (Website)
- Intermediate code and algorithm knowledge- Orta derece kod ve algoritma bilgisi
- Basic HTML and CSS knowledge- Basit HTML and CSS bilgisi
- Basic PHP knowledge- Basit PHP bilgisi
- Basic Database knowledge- Basit Veritabanı bilgisi
- Localhost or Server (For run the project)- Localhost veya sunucu (Projeyi çalıştırmak için)

DifficultyZorluk
- Intermediate- Orta

Curriculum (Bu konuyla ilgili tüm içeriklerim)

Part 1: Turkish Tutorial of Codeigniter | PHP | Part 1 |
Part 2: Turkish Tutorial of Codeigniter | PHP | Part 2 |
Part 3: Turkish Tutorial of Codeigniter | PHP | Part 3 |

Part 4: Turkish Tutorial of Codeigniter | PHP | Part 4 |

Part 5: Turkish Tutorial of Codeigniter | PHP| Part 5 |Blog Sitesi Yapımı|
Part 6: Turkish Tutorial of Codeigniter | PHP| Part 6 |Blog Sitesi Yapımı 2|
Part 7: Turkish Tutorial of Codeigniter | PHP| Part 7 |Blog Sitesi Yapımı 3|

Part 8: Turkish Tutorial of Codeigniter | PHP| Part 8 |Blog Sitesi Yapımı 4|

Part 9: Turkish Tutorial of Codeigniter | PHP| Part 9 |Blog Sitesi Yapımı 5|
Part 10: Turkish Tutorial of Codeigniter | PHP| Part 10 |Blog Sitesi Yapımı 6|
Part 11: Turkish Tutorial of Codeigniter | PHP| Part 11 |Blog Sitesi Yapımı 7|

Part 12: (Şuan buradasınız) Proje Dosyamız


Tutorial Contents (Yazının İçeriği)

Bu eğitimizdede blog projemize devam ediyoruz. Bu önceki eğitimimizde yazı ekleme sayfamız için projemize CKEditor'ü entegre etmiştik. Bu işlemden sonra yine yazı ekleme sayfamızdaki yazılarımızın url'sini almak için yeni bir helper eklemiştik ve bu helperımızı autoload.php üzerinden projemize eklemiştik. Yonetim.php controllerımızı düzenledikten sonra yazı ekleme sayfamızıda hazırlamıştık ve blog projemiz için yazı ekleme ve yazılarımızı görüntüleme özelliklerimizi tamamlamıştık. Bu dersimizde ise yazılar sayfamıza ve modelimize ve yönetim panelimize istediğimiz yazılarımızı silmek için entegrelerimizi yapacağız ve kodlarımızı yazacağız.


Yazilar.php View Düzenleme (application/views/yonetim/yazilar.php)

Evet geçtiğimiz derste yazılarımızı görüntülemek için Yazilar.php view'imizi hazırlamıştık. Şuan yazılarımız normal bir şekilde gözükmekte. Bu dersimizde ise yazılar tablomuzun sonundaki İşlemler alanımızın düzenlemesini yapacağız view'imiz üzerinde. Her yazımız için silme ve güncelleme işlemlerinin yapılacağı butonlarımızı ekleyeceğiz.

1.png

Evet işlemlerimiz için yukarıda kodlarımızda kırmızı alanla gösterdiğim şuan "X" yazan alanımızı düzenleyeceğiz. İki adet buton eklemeyi düşünüyorum bu butona contollerımıza yazımızın id'si ile giden bir link vereceğiz. Yani şimdi controllerımızda silme işlemi yapacağız ama seçtiğimiz yazımızı silmemiz gerekli bunun içinde yazımızın veritabanında verdiğimiz id'sinide controllerımıza göndereceğiz.

Evet kodlarımız şu şekilde:


<td class="center">
<button type="button" class="btn btn-warning"><i class="fa fa-pencil"></i></button>
<a href="<?php echo base_url('yonetimpaneli/yazisil/'); echo ''.$bilgi->yaziid.''?>">
<button type="button" class="btn btn-danger"><i class="fa fa-remove"></i></button></a>
</td>


Evet gördüğünüz gibi öncelikle turuncu olması için btn-warning class'lı bir buton yerleştirdim kodumuza ve butonumuzun içinede kalem işareti koydum buradan yazılarımızı düzenleyeceğiz. Şuan düzenleme butonumaza link verme işlemini yapmadım öncelikle silme butonumuzun işlemlerini yapacağız.

Silme butonumuzun kırmızı olması içni btn-danger class'ımızı belirledim ve içine bir remove X işareti yerleştirdim linkimiz için ise yönetim paneli controllerımızın yazisil fonksiyonuna yazımızın id'siyle url yönlendirmesi yaptım. Böylelikle butonumuz önce controllerımızdaki yazi sil fonksiyonuna gidecek, giderken yanında postumuzun id'sini götürecek, fonksiyonumuz ise veritabanımızdan o yazımızı silecek.

2.png

Kodumuzdaki değişikliklerimiz şimdilik tamamlandı view'imizin eski görünümleri ve yeni görünümü aşağıda:

Eski görünüm:
3.png


Yeni görünüm:
4.png


Evet yazilar.php düzenlememiz tamamlandı şimdi yazı silme işlemimiz için modelimizi düzenleyebiliriz.


Vt.php Model Düzenleme (application/models/Vt.php)

Evet yazılarımızı silebilmemiz için modelimizde veritabanımıza bağlanıp yazılar tablomuzdan silme yapacak bir fonksiyona ihtiyacımız var bunuda Vt.php modelimizin içine yazacağız. Bu fonksiyonumuz controllerımızdan gönderdiğimiz id'yi alacak. Veritabanımızın yazılar tablomuzdaki bu id'ye sahip olan yazıyı silecek.

Kodumuz şu şekilde:


function yazisil($id)
{
$result=$this->db->delete('yazilar',array('yaziid'=>$id));
return $result;
}


Evet kodumuz bu şekilde açıklamam gerekirse basit bir kodumuz var her zaman yaptığımız gibi modelimizde bir fonksiyon oluşturuyoruz. Bu fonksiyonumuzun ismini "yazisil" olarak belirliyoruz.
Sonra fonksiyonumuzun içine geçiyoruz result adlı bir değişken belirliyor = diyoruz. veritabanımızdan delete diyoruz. Yazılar tablomuzun yazıid'si dışardan aldığımız id olanı diyoruz. Yani özetle gönderdiğimiz id'yi veritabanından sil diyoruz. Son olarak result değişkenimizi geri döndürüyoruz.

5.png

Evet yazı silmemiz için model düzenlememizde bu kadardı son olarak controllerımızıda düzenleyerek işlemimizi bitirebiliriz.


Yonetimpaneli.php Controller Düzenleme (application/controllers/yonetimpaneli.php)

Evet son olarak yazı silme işlemimizi bitirmek için controllerımıza yazisil fonksiyonumuzu yazacağız. Fonksiyonumuza dışardan view'imizden aldığımız id'mizi alacağız ki modelemize o id'yi gönderip o id'li yazıyı veritabanımızdan sildirebilelim.

Kodumuz şu şekilde:


public function yazisil($id)
{
$this->load->model('vt');
$delete=$this->vt->yazisil($id);
if($delete)
{
$this->session->set_flashdata('bilgi','<div class="alert alert-success alert-dismissable">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">x</button>
Tebrikler. Yazınız başarıyla silindi. </div>');
redirect('yonetimpaneli/yazilar');
}
}


Evet kodumuz bu kadar kodumuzu açıklamam gerekirse öncelikle controllerımıza yazisil adında bir fonksiyon oluşturduk. Fonksiyonumuzun içinde ise modelimizi yükledik ve delete adında bir değişken belirledik. Değişkenimiz = dedik modelimizin yazisil fonksiyonuna controllerımızdan aldığımız id'yi gönderdik. Yani controllerımız view'den yazımızın id'sini alacak ve modelimizde yazdığımız fonksiyonumuza gönderecek modeldeki fonksiyonumuzdan veritabanımızdan o yazıyı silecek. Sonra eğer (if) delete değişkenimiz başarıylıysa yani postumuz silindiyse yazı giriş fonksiyonumuzdaki gibi bir flashdata session belirledik. Bu bilgi sessionumuzu yine view'imize gönderdik. Son olarak yonetim panelimizde bulunan yazılar'viewimize yönlendirme yaptık. Yani özetle bu kodumuzda postumuz silinecek bilgi sessionımızla birlikte yazılar sayfamıza tekrar yönlendirme olacak ve yazılar sayfamızda "Tebrikler. Yazınız başarıyla silindi." mesajımız gözükecek.

6.png

Evet controllerımızıda hazırladık view'imiz ve modelimizde hazır olduğuna göre projemize yazı silme işlemimizi başarıyla entegre etmiş olduk.


Ekran görüntüleri

7.png


8.png


Turkish Tutorial of Codeigniter | PHP| Part 12 |Blog Sitesi Yapımı 8| eğitimimizde bu kadardı okuduğunuz için teşekkürler.



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Thank you for the contribution. It has been approved.

You can contact us on Discord.
[utopian-moderator]

Thank you

Hey @pars11 I am @utopian-io. I have just upvoted you!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Suggestions

  • Contribute more often to get higher and higher rewards. I wish to see you often!
  • Work on your followers to increase the votes/rewards. I follow what humans do and my vote is mainly based on that. Good luck!

Get Noticed!

  • Did you know project owners can manually vote with their own voting power or by voting power delegated to their projects? Ask the project owner to review your contributions!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Coin Marketplace

STEEM 0.18
TRX 0.16
JST 0.030
BTC 62884.65
ETH 2444.83
USDT 1.00
SBD 2.61