Forumda arama yapmadığın belli.
Ben bu istediğin işlemin aynısını yapan kodlar yazmıştım
forumda mevcut.
Merhaba arkadaşlar,
ID ISIM TUTAR
1 ferhat 100
2 ali 200
bu veriler mysqlden getirtiyorum. Tablodaki sütun ismine yada sütun isminin yanına 2 adet bir aşağı bir yukarı kücük ok koyarak artalan azalan - azalan artalan seklinde nasıl sıralatabilirim?
Forumda arama yapmadığın belli.
Ben bu istediğin işlemin aynısını yapan kodlar yazmıştım
forumda mevcut.
Yanılıyorsunuz epey aradım ama hep sql komutu olarak order by alan desc seklinde cıktı.Php ile sütun baslıklarına tıklanınca artalan azalan azalan artalan seklinde göremedim.Yada ben bulamadım.Eğer mevcutsa linkini atabilirseniz sevinirim.Teşekkürler.
tiklamada zaten get metodu ile paremetre gonderip order by i ona gore degistirmeniz gerekir. bunun klasik bir standarti yoktur yani
İlginiz için teşekkür ederim.Küçük bir örnek gösterebilirmisiniz? Uğraştım ama get metodu ile parametre gönderemedim order by ın karşısındakini değişkene.
şöyle yaparsınız mesela;
<a href="goster.php?sirala=eski">eskiden yeniye</a> | <a href="goster.php?sirala=yeni">yeniden eskiye</a>
sql sorgunuzada "ORDER BY id $sort" diye eklersiniz. buna benzer farklı şekillerde kullanabilirsiniz. size kalmış.PHP Kodu:$sort = $_GET['sirala'];
if($sort == 'eski'){$sort = 'ASC';} else{$sort = 'DESC';}
Böyle bişeydi...PHP Kodu:<?php
$tasi = temizle($_GET['tasi']);
$nere = temizle($_GET['e']);
if($tasi == "a"){
$yeniyer = 999999999;
$eskyer = $nere + 1;
$db->sorgu("UPDATE iletisim SET siralama = '$yeniyer' WHERE siralama = '$nere' "); // tasinacak yere farkli deger veriyoruz
$db->sorgu("UPDATE iletisim SET siralama = '$nere' WHERE siralama = '$eskyer'"); // bir üste tasinacak degeri giriyoruz
$db->sorgu("UPDATE iletisim SET siralama = '$eskyer' WHERE siralama = '$yeniyer'"); // girilen farkli degeri alta cekiyoruz.
// beklegit("iletisim.php",0);
}else if($tasi == "y"){
$yeniyer = 999999999;
$eskyer = $nere - 1;
$db->sorgu("UPDATE iletisim SET siralama = '$yeniyer' WHERE siralama = '$nere' "); // tasinacak yere farkli deger veriyoruz
$db->sorgu("UPDATE iletisim SET siralama = '$nere' WHERE siralama = '$eskyer'"); // bir üste tasinacak degeri giriyoruz
$db->sorgu("UPDATE iletisim SET siralama = '$eskyer' WHERE siralama = '$yeniyer'"); // girilen farkli degeri alta cekiyoruz.
// beklegit("iletisim.php",0);
}
$sql = mysql_query("....");
while($ver = mysql_fetch_assoc($sql))
{
//Asagi-yukari tasima ///////////////////////////////////
$aktifyer = $v["siralama"];
$aktifsonuc = $aktifyer - 1;
if($aktifsonuc <= 0){
$yukariresim = "";
$asagiresim = "<img src=\"resimler/atasi.gif\" border=\"0\" alt=\"Asagi Tasi\">";
}else if($aktifyer == $sayy){
$yukariresim = "<img src=\"resimler/ytasi.gif\" border=\"0\" alt=\"Yukari Tasi\">";
$asagiresim = "";
}else{
$yukariresim = "<img src=\"resimler/ytasi.gif\" border=\"0\" alt=\"Yukari Tasi\">";
$asagiresim = "<img src=\"resimler/atasi.gif\" border=\"0\" alt=\"Asagi Tasi\">";
}
echo '<tr>';
echo " <td width=\"18%\" height=\"10\" ><div style=\"padding:1px\" align=\"center\"><a href=\"iletisim.php?tasi=y&e=$v[siralama]\" title=\"Bu Firmaya Görüsme Ekle\">$yukariresim</a> <a href=\"iletisim.php?tasi=a&e=$v[siralama]\" title=\"Asagi Tasi\">$asagiresim</a> <a href=\"iletisim.php?islem=duzenle&id=$v[id]\" title=\"Bu Firma Bilgilerini Düzenle\"><img src=\"resimler/icon_duzenle.gif\" border=\"0\" align=\"absmiddle\" alt=\"Iletisim Bilgilerini Düzenle\"> Düzenle</a> <a href=\"#\" onclick=\"OnayAl('Bu Ýletiþim Bilgisini Silmek Istediginize Eminmisiniz ?','iletisim.php?sayfa=uyeyonetimi&islem=sil&id=$v[id]&sira=$v[siralama]')\"><img border=\"0\" src=\"resimler/icon_sil.gif\" align=\"absmiddle\" alt=\"Bu Üyeyi Sil\"> Sil</a></div></td>
";
echo '</tr>';
}
siralama.gif
Kullandığın tablo yapisina ek olarak siralama diye bir sutun aç. Daha sonra bu kodlari kullanabilirsin veya buna benzer kendin yazabilirsin.
Yok ben bu şekil değil sadece listeleme sirasinda A-Z, Z-A siralama yapcağim dersen arkadaşların dediği yöntemi kullanmalısın.
mesela soyle olabilir
Sıralama linki ise A-Z icin ?sirala = az, Z-A için ise ?sirala = za kullanacaksın.PHP Kodu:$sirala = $_GET['sirala'];
if($sirala == 'az'){$sira = " isim ASC";}else
if($sirala == 'za'){$sira = "isim DESC"}else{
$sira = " isim ASC";
$sorgu = mysql_query("SELECT * FROM uyeler ORDER BY $sirala");
// .......
//.......
}
gibi olabilir
Pardon ; gözden kaçırmışım. kontrol et.PHP Kodu:$sirala = $_GET['sirala'];
if($sirala == 'az'){$sira = " isim ASC";}else
if($sirala == 'za'){$sira = "isim DESC";}else{
$sira = " isim ASC";
$sorgu = mysql_query("SELECT * FROM uyeler ORDER BY $sirala");
// .......
//.......
}
Bu arada ilk verdiğim kodla ikinci verdiğim kodu birbirine karıştırma ikisi de ayrı ayrı örnek. Farklı şeyler yani.
kodları bu sekilde düzenledim fakat sorguda hata veriyor.Büyük ihtimalle benim atladığım bir yer var.PHP Kodu:
<?php
$sirala = $_GET['sirala'];
if($sirala == 'az'){$sira = " id ASC";}else
if($sirala == 'za'){$sira = "id DESC";}else{
$sira = " id ASC";
if( ! $sayfa ) {
$sayfa = 1;
}
$kacar=10;
$kayit_sayisi=mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM rent"));
$sayfa_sayisi=$kayit_sayisi['0']/$kacar;
if ($kayit_sayisi%$kacar!=0) {
$sayfa_sayisi++;
}
$nerden=($sayfa*$kacar)-$kacar;
$sorgu=mysql_query("select * from rent order by $sirala limit $nerden,$kacar");
while($satir=mysql_fetch_array($sorgu)) {
$bol=explode("-", $satir['tesciltar']);
echo "<tr><td>$satir[0]</td><td width='60px'>$satir[plaka]</td><td>$satir[aractur]</td><td>$satir[tip]</td><td>$satir[versiyon]</td><td>$satir[paket]</td><td>$satir[motorhacim]</td><td>$satir[beygir]</td><td>$satir[vites]</td><td>$satir[yedekanahtar]</td><td>$satir[model]</td><td width='60px'>$bol[2]/$bol[1]/$bol[0]</td><td>$satir[renk]</td><td>$satir[lastik]</td><td>$satir[sasi]</td><td>$satir[motorno]</td><td>$satir[yakit]</td><td>$satir[radyo]</td><td>$satir[rehin]</td><td>$satir[banka]</td><td><a onclick='ikAZ()' href='arackimliksil.php?id=$satir[0]' ><img src='stop.png' border='0' width='30' height='31' /></a> </td></tr>";
}
}
?>
Warning: Supplied argument is not a valid MySQL result resource in c:\apache\htdocs\rentcar\arackimlikliste.php on line 181
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks