• 21-11-2010, 16:01:06
    #1
    Merhaba arkadaşlar ;

    Bir siteme hazır sözlük scriptini kurdum. Yalnız sol framede son eklenen başlıklar en altta çıkıyor. Son eklenen başlıkları nasıl ilk sırada çıkarabilirim ? Yani sıralama sondan başa doğru olacak .

    Sol framenin yani today.php dosyasının kodları :

    <?
    if ($verified_user) {
    $osorgu=mysql_query("select * from online where nick='$verified_user'");
    $ono=@mysql_num_rows($osorgu);
    $oip = getenv('REMOTE_ADDR');
    if ($ono==0) {
    $zaman=time();
    mysql_query("insert into online values('$verified_user','$zaman','$oip','on')");
    } else if ($ono>=2) {
    mysql_query("delete from online where nick='$verified_user'");
    }
    }
    ?>
    <STYLE TYPE="text/css">
    BODY
    {
    scrollbar-base-color: orange;
    scrollbar-arrow-color: green;
    scrollbar-DarkShadow-Color: blue;
    }
    </STYLE>
    <SCRIPT type=text/javascript>
    function sch(s) { var o = document.getElementById("cf");o.checked=(o.disabled=(s=="r"))?true:o.checked; }
    function vi(s,v) { var o = document.getElementById(s); if(o) o.style.visibility=v?"visible":"hidden"; }
    </SCRIPT>
    <body class=bgleft>
              <DIV style="OVERFLOW-X: hidden; WIDTH: 100%">
    <?
    $bugun = date("d");
    $ay = date("m");
    
    if ($verified_user)
    echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"300;URL=sozluk.php?process=today\">";
    
    $btarih = date ("d/m/Y");
    
    
    $max = 40;
    if (!$_GET["sayfa"])  { $_GET["sayfa"]=1; }
    $alt = ($_GET["sayfa"] - 1)  * $max;
    
    $sor = mysql_query("select id from konular WHERE statu='' and `gun` = '$bugun' and `ay` = '$ay' ORDER BY 'tarih'");
    $w = mysql_num_rows($sor);
    $ws=ceil($w/40);
    
    $sor = mysql_query("select gun from mesajlar WHERE statu='' and `gun` = '$bugun' and `ay` = '$ay'");
    $entrysayisi = mysql_num_rows($sor);
    
    $goster = $w/$max;
    $goster=ceil($goster);
    if ($goster >1) {
    echo "<center><div class=pagi><font face=Verdana size=1>
    gunun ba\$liklari.. ($w ba\$lik)<br>
    sayfa
    ";
    
    if ($sayfa >= 1 or !$sayfa) {
    
    $linksayfa = $sayfa - 1;
    if ($sayfa > 1 or $sayfa) {
    if ($sayfa != 1) {
    if (!$yesterday)
    echo "<a class=but href=?process=today&sayfa=$linksayfa><font face=verdana size=1><<</font></a> ";
    else
    echo "<a class=but href=?process=today&yesterday=vlk&sayfa=$linksayfa><font face=verdana size=2><<</font></a> ";
    }
    }
    
    }
    
    echo "
    <SELECT class=pagis onchange=\"jm('self',this,0);\" name=sayfa>";
    for ($i=1;$i<=$goster;$i++) {
    
    if ($sayfa == $i) {
    if ($yesterday)
    echo " <OPTION value=sozluk.php?process=today&yesterday=vlk&sayfa=$i selected>$i</OPTION>";
    else
    echo " <OPTION value=sozluk.php?process=today&sayfa=$i selected>$i</OPTION>";
    } // if
    else {
    if ($yesterday)
    echo "<OPTION value=sozluk.php?process=today&yesterday=vlk&sayfa=$i>$i</OPTION>";
    else
    echo "<OPTION value=sozluk.php?process=today&sayfa=$i>$i</OPTION>";
    } // new
    
    }
    echo "</SELECT> / $ws ";
    
    if ($sayfa >= 1 or !$sayfa) {
    if (!$sayfa)
    $sayfa = 1;
    
    $linksayfa = $sayfa + 1;
    
    if ($linksayfa <= $goster) {
    if (!$yesterday)
    echo " <a class=but href=?process=today&sayfa=$linksayfa><font face=verdana size=1>>></font></a>";
    else
    echo " <a class=but href=?process=today&yesterday=vlk&sayfa=$linksayfa><font face=verdana size=1>>></font></a>";
    }
    
    }
    
    
    }
    
    echo "
    <br>
    </center></center></div>
    <TABLE cellSpacing=0 cellPadding=0 border=0>
      <TBODY>
    ";
    
    
    
    // $sorgu  = "SELECT id,baslik,tarih,gun, count(mesajlar.sira) as adet FROM konular, mesajlar WHERE konular.statu='' and konular.gun = '$bugun' and  konular.ay = '$ay' and mesajlar.statu='' and mesajlar.gun = '$bugun' and mesajlar.ay = '$ay' and mesajlar.sira = konular.id ORDER BY 'tarih' desc limit $alt,$max";
    
    $listele = mysql_query("SELECT id,baslik,tarih,gun FROM konular WHERE statu='' and `gun` = '$bugun' and  `ay` = '$ay' ORDER BY 'tarih' desc limit $alt,$max");
    $toplams=@mysql_num_rows($listele);
    while ($kayit=mysql_fetch_array($listele)) {
    $id=$kayit["id"];
    $kactane=@mysql_num_rows(mysql_query("select * from mesajlar where sira='$id' and gun='$bugun'"));
    $tkac=@mysql_num_rows(mysql_query("select * from mesajlar where sira='$id'"));
    if ($kactane==0) {
     $kactane2="";
    } else {
     $kactane2=$kactane;
    }
    $enson=mysql_query("select * from mesajlar where sira='$id' order by id desc limit 0,1");
    $ensonb=@mysql_result($enson,0,'id');
    $ensonk=@mysql_result($enson,0,'yazar');
    $baslik=$kayit["baslik"];
    $tarih=$kayit["tarih"];
    $yazan=$kayit["yazan"];
    $gun=$kayit["gun"];
    $link = ereg_replace(" ","+",$baslik);
    $saydir++;
    $hid=$kayit['id'];
    echo "
      <TR onmouseover=\"vi('m$hid',true)\" onmouseout=\"vi('m$hid',false)\">
        <TD>·&nbsp;</TD>
      <TD width='190'><A href=\"sozluk.php?process=word&q=$link\"
          target=main title='($tkac)'>$baslik</A>&nbsp;($kactane2)&nbsp;";
    if ($verified_user) {
    echo "<span id=\"m$hid\" style=\"visibility:hidden\"><a href='sozluk.php?process=eid&eid=$ensonb' target='main' title='(#$ensonb)'>..</a></span>";
    }
    echo "
    </TD></TR>
    ";
    }
    echo "</TBODY></TABLE>";
    
    
    
    $goster = $w/$max;
    $goster=ceil($goster);
    if ($goster >1) {
    echo "<center><div class=pagi>
    gunun ba\$liklari.. ($w ba\$lik)<br>
    sayfa
    ";
    
    if ($sayfa >= 1 or !$sayfa) {
    
    $linksayfa = $sayfa - 1;
    if ($sayfa > 1 or $sayfa) {
    if ($sayfa != 1) {
    if (!$yesterday)
    echo "<a class=but href=?process=today&sayfa=$linksayfa><font face=verdana size=1><<</font></a>";
    else
    echo "<a class=but href=?process=today&yesterday=vlk&sayfa=$linksayfa><font face=verdana size=1><<</font></a>";
    }
    }
    
    }
    
    echo "
    <SELECT class=pagis onchange=\"jm('self',this,0);\" name=sayfa>";
    for ($i=1;$i<=$goster;$i++) {
    
    if ($sayfa == $i) {
    if ($yesterday)
    echo " <OPTION value=sozluk.php?process=today&yesterday=vlk&sayfa=$i selected>$i</OPTION>";
    else
    echo " <OPTION value=sozluk.php?process=today&sayfa=$i selected>$i</OPTION>";
    } // if
    else {
    if ($yesterday)
    echo "<OPTION value=sozluk.php?process=today&yesterday=vlk&sayfa=$i>$i</OPTION>";
    else
    echo "<OPTION value=sozluk.php?process=today&sayfa=$i>$i</OPTION>";
    } // new
    
    }
    echo "</SELECT> / $ws ";
    
    if ($sayfa >= 1 or !$sayfa) {
    if (!$sayfa)
    $sayfa = 1;
    
    $linksayfa = $sayfa + 1;
    
    if ($linksayfa <= $goster) {
    if (!$yesterday)
    echo "<a class=but href=?process=today&sayfa=$linksayfa><font face=verdana size=1>>></font></a>";
    else
    echo "<a class=but href=?process=today&yesterday=vlk&sayfa=$linksayfa><font face=verdana size=1>>></font></a>";
    }
    
    }
    
    
    }
    
    echo "</div><hr>";
    ?>
  • 21-11-2010, 16:26:16
    #2
    order by asc yazan kısımları desc yap
  • 21-11-2010, 16:40:08
    #3
    antipos adlı üyeden alıntı: mesajı görüntüle
    order by asc yazan kısımları desc yap
    order by asc yazan bi kısım yok ki
  • 21-11-2010, 16:52:09
    #4
    xTyle adlı üyeden alıntı: mesajı görüntüle
    order by asc yazan bi kısım yok ki
    bahsettiğin kod hangi satırda. yani sol bölümü oluşturan kodlar nerede başlıyor?
    sorgulardan birinin sonuna order by 'bilmem_ne' gibi kısmın sonuna DESC eklemen lazım. istiyorsan hepsinin sonuan ekleyebilirsin doğru satırı bulana kadar. sayfa tasarımını anlamaya uğraşmadım. sayfa adresini verseydin görerek yanıt vermek daha kolay olurdu.
  • 22-11-2010, 06:58:29
    #5
    digiklan adlı üyeden alıntı: mesajı görüntüle
    bahsettiğin kod hangi satırda. yani sol bölümü oluşturan kodlar nerede başlıyor?
    sorgulardan birinin sonuna order by 'bilmem_ne' gibi kısmın sonuna DESC eklemen lazım. istiyorsan hepsinin sonuan ekleyebilirsin doğru satırı bulana kadar. sayfa tasarımını anlamaya uğraşmadım. sayfa adresini verseydin görerek yanıt vermek daha kolay olurdu.
    index.php'de bi sol frame olusturulmuş bugun diye. Oraya today.php'yi çekiyor. yani today.php'nin tümü sol frame oluyor. Wordpressteki sidebar gibi. Site adresi : www.kazansozluk.com

    order by terimi geçen 3 satır var ;

    $sor = mysql_query("select id from konular WHERE statu='' and `gun` = '$bugun' and `ay` = '$ay' ORDER BY 'tarih'"); // 42. Satır
    
    $listele = mysql_query("SELECT id,baslik,tarih,gun FROM konular WHERE statu='' and `gun` = '$bugun' and  `ay` = '$ay' ORDER BY 'tarih' desc limit $alt,$max"); // 120. Satır
    
    $enson=mysql_query("select * from mesajlar where sira='$id' order by id desc limit 0,1"); // 131. Satır
    42. Satırda `ay` = '$ay' ORDER BY 'tarih' desc" yaptım ama yine bişey olmadı
  • 22-11-2010, 08:04:37
    #6
    ORDER BY id DESC
    yaparsanız sorun çözülür muhtemelen. Sanırım tarih alanına timestamp değil bugünün tarihi yazılıyor. O halde bugün eklenen tüm kayıtlar aynı tarih değerine sahip olduğu için başka bir sütuna göre sıralama yapıyor.
  • 22-11-2010, 21:29:25
    #7
    digiklan adlı üyeden alıntı: mesajı görüntüle
    ORDER BY id DESC
    yaparsanız sorun çözülür muhtemelen. Sanırım tarih alanına timestamp değil bugünün tarihi yazılıyor. O halde bugün eklenen tüm kayıtlar aynı tarih değerine sahip olduğu için başka bir sütuna göre sıralama yapıyor.
    Yine olmadı maalesef :S

    yesterday.php'de tam istediğim gibi son eklenenler başa gelmiş. Onunda kodlarını vereyim isterseniz.

    <?
    $bugun = date("d");
    $dun = $bugun - 1;
    $ay = date("m");
    if (!$_GET['sayfa']) {
    $max=0;
    } else {
    $max=$_GET['sayfa'];
    }
    $sorgu = "SELECT * FROM konular where gun='$dun' and ay='$ay' order by id desc limit $max,40";
    $sorgulama = mysql_query($sorgu);
    $sorguk=mysql_query("select * from konular where gun='$dun' and ay='$ay'");
    $sorgu2=mysql_num_rows($sorguk);
    if ($sorgu2>0){
    //kayıtları listele
    $no=$sorgu2;
    $tsayfa=$no/40;
    $tyeni=ceil($tsayfa);
    if ($tsayfa >1) {
    echo "<center><div class=pagi><font face=Verdana size=1>
    dunun ba\$liklari.. ($sorgu2 ba\$lik)<br>
    sayfa
    ";
    
    if ($sayfa >= 1 or !$sayfa) {
    
    $linksayfa = $sayfa - 1;
    if ($sayfa > 1 or $sayfa) {
    if ($sayfa != 1) {
    if (!$yesterday)
    echo "<a class=but href=?process=yesterday&sayfa=$linksayfa><font face=verdana size=1><<</font></a> ";
    else
    echo "<a class=but href=?process=yesterday&yesterday=vlk&sayfa=$linksayfa><font face=verdana size=2><<</font></a> ";
    }
    }
    
    }
    echo "
    <SELECT class=pagis onchange=\"jm('self',this,0);\" name=sayfa>";
    for ($i=1;$i<=$tyeni;$i++) {
    
    if ($sayfa == $i) {
    if ($yesterday)
    echo " <OPTION value=sozluk.php?process=yesterday&yesterday=vlk&sayfa=$i selected>$i</OPTION>";
    else
    echo " <OPTION value=sozluk.php?process=yesterday&sayfa=$i selected>$i</OPTION>";
    } // if
    else {
    if ($yesterday)
    echo "<OPTION value=sozluk.php?process=yesterday&yesterday=vlk&sayfa=$i>$i</OPTION>";
    else
    echo "<OPTION value=sozluk.php?process=yesterday&sayfa=$i>$i</OPTION>";
    } // new
    
    }
    echo "</SELECT> / $tyeni ";
    
    if ($sayfa >= 1 or !$sayfa) {
    if (!$sayfa)
    $sayfa = 1;
    
    $linksayfa = $sayfa + 1;
    
    if ($linksayfa <= $tyeni) {
    if (!$yesterday)
    echo " <a class=but href=?process=yesterday&sayfa=$linksayfa><font face=verdana size=1>>></font></a>";
    else
    echo " <a class=but href=?process=yesterday&yesterday=vlk&sayfa=$linksayfa><font face=verdana size=1>>></font></a>";
    }
    
    }
    
    
    }
    echo "
    <br>
    </center> </center>
    <TABLE cellSpacing=0 cellPadding=0 border=0>
      <TBODY>
    ";
    while ($kayit=mysql_fetch_array($sorgulama)){
    ###################### var ##############################################
    $id=$kayit["id"];
    $baslik=$kayit["baslik"];
    $tarih=$kayit["tarih"];
    $yazan=$kayit["yazan"];
    
    $link = ereg_replace(" ","+",$baslik);
    echo "
      <tr>
        <td><font color=#0062AD>· </font><a href=\"sozluk.php?process=word&q=$link\" target=main>$baslik</a></td>
      </tr>
    ";
    }
    }
    echo "</TBODY></TABLE>";
    if ($tsayfa >1) {
    echo "<center><div class=pagi><font face=Verdana size=1>
    dunun ba\$liklari.. ($sorgu2 ba\$lik)<br>
    sayfa
    ";
    
    if ($sayfa >= 1 or !$sayfa) {
    
    $linksayfa = $sayfa - 1;
    if ($sayfa > 1 or $sayfa) {
    if ($sayfa != 1) {
    if (!$yesterday)
    echo "<a class=but href=?process=yesterday&sayfa=$linksayfa><font face=verdana size=1><<</font></a> ";
    else
    echo "<a class=but href=?process=yesterday&yesterday=vlk&sayfa=$linksayfa><font face=verdana size=2><<</font></a> ";
    }
    }
    
    }
    echo "
    <SELECT class=pagis onchange=\"jm('self',this,0);\" name=sayfa>";
    for ($i=1;$i<=$tyeni;$i++) {
    
    if ($sayfa == $i) {
    if ($yesterday)
    echo " <OPTION value=sozluk.php?process=yesterday&yesterday=vlk&sayfa=$i selected>$i</OPTION>";
    else
    echo " <OPTION value=sozluk.php?process=yesterday&sayfa=$i selected>$i</OPTION>";
    } // if
    else {
    if ($yesterday)
    echo "<OPTION value=sozluk.php?process=yesterday&yesterday=vlk&sayfa=$i>$i</OPTION>";
    else
    echo "<OPTION value=sozluk.php?process=yesterday&sayfa=$i>$i</OPTION>";
    } // new
    
    }
    echo "</SELECT> / $tyeni ";
    
    if ($sayfa >= 1 or !$sayfa) {
    if (!$sayfa)
    $sayfa = 1;
    
    $linksayfa = $sayfa + 1;
    
    if ($linksayfa <= $tyeni) {
    if (!$yesterday)
    echo " <a class=but href=?process=yesterday&sayfa=$linksayfa><font face=verdana size=1>>></font></a>";
    else
    echo " <a class=but href=?process=yesterday&yesterday=vlk&sayfa=$linksayfa><font face=verdana size=1>>></font></a>";
    }
    
    }
    
    
    }
    echo "</div><hr>";
    ?>
  • 22-11-2010, 23:04:49
    #8
    Konu dışı olacak. Script'te kullanıcı izni ile ilgili bir kısıtlamadan dolayı açık oluşuyor bilginize. Kurulu aktif bir site hacklendi bu script ile site loglarından bakıldığında izin ile ilgili bir problem gözüküyor.