Merhaba;
Hazırladığım Bir Sistem İçin Menu Başlıklarının Sıralamasını Değiştirmek İçin Aşağı ve Yukarı Oklarımız var.
Yukarı Çıkacak isek Yukarı Ok'a Tıklıyoruz ve değeri -1 yapıyoruz.
aynı şekilde Aşağı İşlemlerinde de Değeri +1 Yapıyoruz Buraya Kadar Tamamada
Sıralama Tablosunda bir üst ve bir alt tablo değeri çakışıyor.
mesela 4. sıradaki başlığı 3. sıraya çıkaracağımız zaman zaten var olan bir 3. sıra var bu sefer 2 adet 3. sıra oluşuyor bunun olmaması için bir ust ve bir alt tabloyu nasıl etkileyeceğiz.
Tablo Orneği
siralama |
1
2
3
4 // bu sıranın da aşağı inmesi için değeri 5 olması lazım
5 // bu sıra yukarı çıktığında değeri 4 olur.
6 // bu sranın değeride aşağı indiğinde 5 ile 6 yer değişmesi lazım..
7
8
9
İşlem Sıralamada Kayıt Değişkliği?
9
●1.690
- 09-04-2013, 18:25:27örneğin 5. sıradakini 4e almak için önce 4.sıradaki kaydın sırasıı değiştirilir:
update tabloadi set siralama=5 where siralama=4
(4. sıradaki kaydın sırasını 5 yaptık)
update tabloadi set siralama=4 where id=menu_kayit_id
(işlem yapılan satır için de sıralamayı 4 yaptık) - 10-04-2013, 20:01:13Üyeliği durduruldumerhaba;
sistem şu şekilde olacak joomla deneyimi olan arkadaşlarımızın yonetimde menu veya konu başlıklarını yukarı veya aşağı taşıma sistemi gibi bir sistem düşünüyorum.

resimde de gördüğünüz gibi menude bulunan mavi renkli oklara basında başlık bir yukarı çıkıcak yukardaki başlık bir alta inecek.
kırmızıda da anlattığımın tam tersi yani kırmızıya basınca bir alt satıra geçecek alttaki de yukarı çıkacak.
kısmı olarak tamamladım sayılır fakat kafam durdu.
yukarı işlemlerinde taşınan ve yerine geçilen satırın sıralama numarasını aynı anda etkilemem lazım. yani 5. satırı 4. satıra taşırken -1 ile 5. satır daki sıra no 4 olurken 4. satırdaki sıra numarası +1 ile 5 olması lazım.
gper adlı üyeden alıntı: mesajı görüntüle - 11-04-2013, 12:41:06Slider sıralamasını düzenlemek için bir uygulama hazırlamıştım.
jQuery sortable özelliği. Sayfanıza jQuery kütüphanesini dahil etmeniz gerekiyor.
<script type="text/javascript"> $(document).ready(function() { $(".listele").sortable({ opacity: 0.6, revert: true, placeholder: 'ui-state-highlight', update: function(){ var posted = $(this).sortable("serialize"); $.post("slider-guncelle.php",posted,function(cevap){ alert(cevap); }); }//Güncelleme bitiş }); }); </script>
Bir kaç stil düzenlemesi
<style type="text/css"> .mamy { width: 500px; padding: 15px; border: solid 1px #ddd; margin: 10px auto; } .listele li { padding: 4px; width: 600x; margin-bottom: 4px; background-color: #eee; border: solid 1px #ddd; cursor: move; height: 20px; } </style>Sayfa içeriği;
<div class="mamy"> <ul class="listele"> <?php $sliderlar = $vt->tablo('select * from sliderlar order by sira asc'); foreach($sliderlar as $slider) { echo '<li id="degerler_'.$slider->id.'"><center> '.$slider->sira.'. Slider </center></li>'; } ?> </ul> </div>ve son olarak slider-guncelle.php dosyası içeriği
$degerler = $_POST['degerler']; $sayi = 1; foreach($degerler as $degersayi){ $gnc = mysql_query("update sliderlar set sira = '".$sayi."' where id= '".$degersayi."'"); $sayi = $sayi+1; } if($gnc){echo'Slider siralamasi guncellendi!';}Umarım işinize yarar, kolay gelsin. - 11-04-2013, 19:53:40Üyeliği durdurulduMerhaba;
Paylaşım İçin Teşekkür ederim. fakat benim istediğim bu değil.
benim istediğim şöyle tekrar anlatayım.
elimizde 5 satırlık veri var
1. satır
2. satır // 3. satır bu satırın yerine geldiğinde satır numarası 3 den 2 ye değişicek bu satırın numarasıda 3 olcakki buda 3. satırın yerine geçebilsin.
3. satır // diyelim bu satırı 2. satırın yerine getiricez burda satırın numarası 2 yaptık.
4. satır
5. satır
msgr adlı üyeden alıntı: mesajı görüntüle - 11-04-2013, 20:48:59Javascript bilginiz ne derece bilmiyorum ama ben bunu javascript ile yapıyorum. Şöyle ki;
Yukarıda resmini verdiğiniz menüyü listeleyen sayfada, sıralama tuşlarına basınca bir fonksiyonu tetikliyorum. Her menünün altında hidden inputlar yer alıyor. Örneğin üçüncü menüyü bir alta aldıysam, javascript ile hidden inputlarda 3. menünün inputuna 4, 4.menünün inputuna 3 yazıyorum. Güncelle dediğimde tümünü güncelliyorum.
Farklı bir yöntem kullandığım bir script de vardı, json formatında çalıştığım..
