: Sitende kullandığın hata verilen code ları burda yazarsan yardımcı olabilirim arkadaş. hocam ilgin için teşekkür ederim. o sorunumu hallettim. şuan başka bişeyle uğraşıyorum. onu sorayım. ben haberlerde son 5 kayıtın listelenmesini istiyorum. bana limit'le alakalı şeyler sylemeyin. limit'le yapamadım. olmamasının nedeni de şu: mesela ilk kayıtın id'si 4, sonraki 5, sonraki 6, sonraki 7, sonraki 8 sonraki 9. byle olduğu zaman sorun yok. ama ben id'si 7 olanı sildiğimde ortalık karışıyor. limit'i bu yüzden yapamamıştım. başka bi çzüm nerisi olursa çok sevinirim edit: ilk mesajını bana yazmışsın. ayrıca teşekkür ederim :) Kayalardan kayarım yoktur benim ayarım (;

PHP Kodu düzgün çıkmamış burdan indir:http://rapidshare.com/files/83022291/listele. php.htmlTablo Yapısı:CREATE TABLE `haber` ( `id` int(22) NOT NULL auto_increment, `takmaad` varchar(22) NOT NULL, `konu` varchar(22) NOT NULL, `tarih` varchar(22) NOT NULL, `yazi` varchar(22) NOT NULL, `onay` varchar(22) NOT NULL, PRIMARY KEY ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;-- -- Tablo dküm verisi `haber`-- INSERT INTO `haber` VALUES (1, '1', 'haber', '1', '1', '1');INSERT INTO `haber` VALUES (2, '1', 'haber2', '1', '1', '1');Tablo yapısı seninkiyle aynı rnek olsun diye verdim, kod ise son eklenen 5 kaydın listesini verecek.

hocam kod'um şu:include ;$sorgu1 = mysql_query("SELECT COUNT FROM haber where onay=1 "); $yaz1 = mysql_result($sorgu1, 0); $ok = $yaz1-5;$sorgu=mysql_query("select from haber where onay=1 limit $ok, 5");while ($yaz=mysql_fetch_array mysql_free_result ;databasem ise:id takmaad konu tarih yazi onay 62ajan1111g11.01.2008 fghfghgf1 61ajan1111f11.01.2008 fghfghgf1 60ajan1111e11.01.2008 dfhggfhhgjhg1 58ajan1111c11.01.2008 dfgfhfg1 57ajan1111b11.01.2008 dfhgbdhgf1 56ajan1111a11.01.2008 dfgffd1 63ajan1111h11.01.2008 fgjhghjhg1 64ajan1111j11.01.2008 jhkjh1 65ajan1111k11.01.2008 jkljkl1 71ajan1111fghgf11.01.2008 jhghj1 68ajan1111n11.01.2008 hjghj1 69ajan1111o11.01.2008 1 70ajan111111.01.2008 ghjghj1aradan yine bi kayıt sildim. 71. kayıtı eklediğimde yine karıştı. sorun database'de sanırım. byle karışmaması gerek. merak ettim. rene. veya holy. hocam siz ana sayfadaki haberleri hangi mantıkla yaptınız? bi yol gsterseniz gerisini hallederim :) Kayalardan kayarım yoktur benim ayarım (;

hoca ben sorunumu hallettimde yinede açıklayım. cookie olayına hiç girmedim. sadece sessionla hallettim şimdilik. sorunda 2 tane = kullanacağım yerde 1 tane kullanmışım. Kayalardan kayarım yoktur benim ayarım (;

SELECT From tablo order by id desc limit 0,5buşekilde dene sanırım bir sorunun kalmayacaktır.

tarih le ilgili bi column varsa mesela sql sorgunuSELECT from news ORDER BY tarih DESC LIMIT 5bu şekilde olabilir ama yine limit var :S //edit spy-cx5 benden nce yazmış :d zgür iradeydi şeytanım.

SPY-CX5 bunu yazdı: $sorgu=mysql_query("select from haber where onay=1 order by id desc limit 0,5");while ($yaz=mysql_fetch_array hocam çok çok teşekkür ederim. database'nin o haline rağmen çalıştı. şu " order by id desc " yazısı eksikti benim kodumda. demek mesele onda bitiyormuş. iyi bi araştırmacı değilmişim anlaşılan. hocam tekrar teşekkür ediyorum. ve diğer yardımcı olmaya çalışan arkadaşlarada teşekkür ediyorum. saolun. Kayalardan kayarım yoktur benim ayarım (;

Sitende kullandığın hata verilen code ları burda yazarsan yardımcı olabilirim arkadaş.

Hoca limite niye bu kadar kinlisin anlamadım sanırım sen bi yanlışlık yapıyon :)Select from haberler order by ID DESC Limit 0,5 Bu SQL kodu istediğin işlemi yapması lazım, kodun anlamı: en büyük idden başla küçüğe doğru 5 kayıt listele.

62ajan1111g11.01.2008 fghfghgf1 61ajan1111f11.01.2008 fghfghgf1 60ajan1111e11.01.2008 dfhggfhhgjhg1 58ajan1111c11.01.2008 dfgfhfg1 57ajan1111b11.01.2008 dfhgbdhgf1 56ajan1111a11.01.2008 dfgffd1işte byle bi karışıklık oluyor db'de. dikkat ederseniz 59. kayıtı sildim. byle oldu. silmeden nce 56,57,58,59,60,61,62 olarak listeliydi. bu liste db'min en üstten ilk 5 kayıtı. bundan sonra kayıt yaptığım zaman id 63,64,65 diye gidiyo. yalnız şunuda farkettim. her zaman yapmıyor. sonucuma gelince:$sorgu1 = mysql_query("SELECT COUNT FROM haber where onay=1 "); $yaz1 = mysql_result($sorgu1, 0); $ok = $yaz1-5;$sorgu=mysql_query("select from haber where onay=1 limit $ok, 5");gibi bi kod yazdım. şimdilik çalışıyor. inşallah bunda da sorun çıkarmaz. Kayalardan kayarım yoktur benim ayarım (;

mysql tablo türü olarak ne kullandın birdeREPAIR TABLE "tablo";bunu çalıştır bakalım ne olucak Mühendis kahveyi projeye dnüştüren bir insan evladıdır.

$say= mysql_query("select count id from tablo");$kayit_sayi= $say ;$kayit_alti=$kayit_sayi-5;for bu şekilde hata vermemesi lazım arkadaşım

: burda onaylı olanları filitrele sonra enson kayıtlı olanları almı diyorsun yanlız iki sorgu biraz fazla değilmi sence zaten limit kullandığın sorguda filitreliyorsun. hoca limit'in kullanımında bi sorun yok. limit'e bi kastımda yok :) sorun database'de bence. normal bi şekilde yeni kayıt yapıldığında id'ler artıyor. aradan birini siliyorum. sonra yeni kayıt eklediğimde 64ajan1111j11.01.2008 jhkjh1 65ajan1111k11.01.2008 jkljkl1 71ajan1111fghgf11.01.2008 jhghj1 68ajan1111n11.01.2008 hjghj1 69ajan1111o11.01.2008 1 70ajan111111.01.2008 ghjghj1gibi bişey oluyo. silmeden nce 64,65,66,67,68,69,70,71 diye listeliydi. 66'yı sildim listelemede sorun yapmadı. 67'yi sildim yine sorun yapmadı. 64,65,68,69,70 olarak listeliyordu. sonra yeni kayıt ekledim. 71. kayıtı database nereye kaydetmiş... tekrar kayıt ekliyorum. 70'den sonra 72,73 olarak devam ediyor. database neden byle yapıyoooo?kayıt ekleme kodumda şu:include ;$takmaad=$username;$konu=$_POST ;$tarih=$_POST ;$yazi=$_POST ;$onay="0";mysql_query("insert into haber values ");mysql_close ; Kayalardan kayarım yoktur benim ayarım (;

şimdi senin geliştirdiğin kodlarda nasıl bir üyelik uyguladın bilgileri nasıl taşıtıyorsun cookielerlemi sessionlarlamı yada nasıl burası çok nemli anladığım kadarı ile bazı noktaları karıştırdın haliylede hata alıyorsun neyse sen buraya nasıl bir sistematik izlediğini yazarsan ona gre cevap yazarız

İşte orda 1 satırı silince, tüm satırların idlerini düzenlemez. Heryerde yle, mesela tahribatta bi konu sildinmi bidaha o idde bir konu gremezsin. Limit sayı atlamaya karışmıyor, limitin grevi sana 5 kaydı listelemek. Bahsettiğin olay karışıklık değil doğal bir durumdur.

SPY-CX5 bunu yazdı: Hoca limite niye bu kadar kinlisin anlamadım sanırım sen bi yanlışlık yapıyon :)Select from haberler order by ID DESC Limit 0,5 Bu SQL kodu istediğin işlemi yapması lazım, kodun anlamı: en büyük idden başla küçüğe doğru 5 kayıt listele. hoca işte aradan bi kayıt silince sapıtıyo. o yüzden limiti yapamıyorum :) Kayalardan kayarım yoktur benim ayarım (;

burda onaylı olanları filitrele sonra enson kayıtlı olanları almı diyorsun yanlız iki sorgu biraz fazla değilmi sence zaten limit kullandığın sorguda filitreliyorsun.

$limit="SELECT FROM haber WHERE onay=1 order by id desc limit 0,5";$sorgu=mysql_query ;while ($yaz=mysql_fetch_array mysql_free_result ; bu şekilde dene istersen

kendime site yazıyorum. çoğu şey hazır. bide anket olsun istedim sitemde. anket yazmaya başladım. oy gndermeyi yaptım. oylara gre sonuçları gsterecektimki sitem sapıtmaya başladı. oy gnderenler için sonuçları, gndermeyenler için oy gnderme menüsünü gstermesi için uğraşıyordum. fakat giriş yapıyorum. oy gnderdiğimde veya başka bi sayfaya tıkladığımda o giriş yaptığım bilgiler kayboluyor veya tutmuyor artık herneyse "giriş yapınız" diye hata alıyorum. bu hatayı almam normal. çünkü sitemde birçok yerde üyeliği mecbur tuttum. şimdiye kadar en ufak bi sıkıntım yoktu. ama şimdi niye byle oldu anlamadım. yeni üyelik açıyorum onda da aynı problemi yapıyor. benim hissime gre database afallamaya başladı. sizce nedir bu problemin çzümü? niye Kayalardan kayarım yoktur benim ayarım (;

muhahahahahaya arkadaşım sabahtan beri millet yırtıyor kendi order by id desc diye :D

arkadaşım sen en iyisi bize kullandığın code yazsanda biz sana yle cevap versek hani kr ebe gibi birşey oluyor bu ben buzamana kadar yazdığım okadar site var birisinde limit e kinlenmedim yahu:D