Üstad ilk sorundan başlayalım, bu sistemde hem yayında olsun hem yedekte bir olay olmaz, aynı veriyi iki kere eklemiş olman gerekiyor, zaten şu yapıda aynı veri hem yedekte hem yayında, yani veritabanında duruyor. Diyelim ki admin panelinde hem yedekte olanları hemde yayında olanları listelemek istiyorsunuz.
<?php
$tumIcerik = mysql_query("select * from tabloadi");
?>Bu şekilde hepsini listeleyebilirsiniz, bir ileri daha götürelim, hangisinin yedekte hangisinin yayında olduğunuzu görmek için ise;
<?php
$tumIcerik = mysql_query("select * from tabloadi");
while($tumGoster = mysql_fetch_array($tumIcerik))
{
echo $tumGoster["baslik"];
if($tumIcerik["yedek"] == 0){
echo "Yayında";
}else{
echo "Yedekte";
}
}
?>Yukarı da ki kodla da, tablodan tüm içerikleri çektik, başlıkları yazdırdık yanına da yayında mı yedekte mi olduğunu yazdırdık.
Gelelim 2. soruya Eğer ki başka tabloya aktarma yapma yöntemi ile yapılmak istenir ise, öncelikle "yedek" adı altında bir tablo açıyoruz, "yedek" tablomuzun sütunları "içerik" tablomuzun sütunları ile birebir aynı olmak zorunda ki, orada ki içeriği aynı şekilde buraya aktarabilelim. Tablomuzu açtıktan sonra, silme işlemini yaptığımız sayfa da şöyle bir düzenleme yapmamız gerekiyor.
Anlaşılması için adım adım gösteriyorum.
1. Adım Öncelikle silinmesi istenen içeriği buluyoruz ve bütün değerlerini diğer tabloya aktarmak için çekiyoruz.
<?php
$icerikID = $_GET["id"];
$icerikBul = mysql_query("select * from tabloadi where id='$icerikID'");
$icerikGoster = mysql_fetch_array($icerikBul);
?>Bu şekilde tüm içeriğimizi aldık, şimdi içeriğimiz de bulunan tüm değerleri yeni açtığımız "yedek" tablosuna ekliyoruz.
Not: içerik tablosunda
baslik ve
icerik alanlarının olduğunu varsayıyorum.
<?php
$baslik = $icerikGoster["baslik"];
$icerik = $icerikGoster["icerik"];
$yedekEkle = mysql_query("insert into yedek (baslik,icerik) VALUES ('$baslik','$icerik')");
?>Artık silmek istediğimiz içerik "yedek" tablomuza eklenmiş oldu. Şimdi bu içeriği "içerik" tablosundan silelim ve işlemleri tamamlayalım.
<?php
$icerikSil = mysql_query("delete from tabloadi where id='$icerikID'");
?>İşlemlerimiz tamamlanmıştır.
2. Sorunun tüm kodlarının birleşimi şu şekilde oluyor ;
<?php
/** İçerik Bulunuyor **/
$icerikID = $_GET["id"];
$icerikBul = mysql_query("select * from tabloadi where id='$icerikID'");
$icerikGoster = mysql_fetch_array($icerikBul);
/** Yedek tablosuna ekleniyor ***/
$baslik = $icerikGoster["baslik"];
$icerik = $icerikGoster["icerik"];
$yedekEkle = mysql_query("insert into yedek (baslik,icerik) VALUES ('$baslik','$icerik')");
/** İçerik gerçek tablomuzdan siliniyor **/
$icerikSil = mysql_query("delete from tabloadi where id='$icerikID'");
?>Şimdiden başarılar, gözümden kaçmış yazım hataları olabilir, affola