sanırım kesin bir çözüm değil bende bu modifikasyon yapılmış halde ve forumlarıda sık sık senkronizasyon yapıyorum ama malesef taş gibi bu hata duruyor hala....
Bu phpbb nin en nalet tarafı ve alt yapısının müsade etmemesinden dolayı çözemiyorlar sanırım.
Önemli bir hata çünkü bir konuya post edilen mesaj için üyelere mail gidiyor üyeler maildeki linke tıkladığında cevap gelmemiştir hatası ile karşılaşıyorlar yöneticiler fark etmese bile bu büyük bir illettir.
ben bunu cozmuştum amA gecici oLarak yani surekli deil bunun sebebi şu oluyor zaten mantik yuruttsen bulursun Forumdaki bir mesaj silinince mysql'den silinmiyor orada kaliyor ve bu mesaj fazlaligi gozukuyor fakat foruma girdiginde mesaj silinmiş gozukuyor ama datalarda silinmemiş olarak kaldiginda uyumsuzluk oluyor bunun cozumu olarak eger sildiginiz mesaji hatirliyorsaniz girip mysql'iye o mesajin bir kelimesini aratpi o mesaji bulunuz ve siliniz. eger hatirlamiyorsaniz o kişinin mesajlarini bulup taratin yada o başligi taratip oradaki mesajlardan sildiginiz mesaji siliniz ben bu yontem ile yapmiştim duzelmişti ve ondan sonra forumda mesaj silmemiştim ve editleyip mesaj icerigini siliyorum... umarim anlatabilmişimdir. bu verilen kodlar ise bir işe yaramiyor halen hata devam ediyor. dedigim yontem o anlik o hatayi gideriyor ama surekli ayni şeyi yapmak zorundasiniz kisa yoL bilen varsa soylesin paylassin mantik kullanilsa bulunur aslinda.
Scriptçe bilmediğim için türkçe anlatayım siz scriptçeye çevirir burada yayınlarsanız all dünya size hayran kalır....
Sayın script aç SQL'i
Tüm üyelerin ID sini bir güzel aklında tut ve nuke_bbposts içindeki poster_id altındaki ID ler ile compare ediver (karşılaştır)
nuke_bbposts içindeki poster_id de bulunan ama nuke_users içindeki user_id de bulunmayan tüm dataları bir kenara ayır bunları sileceksin ama içinde sileceklerinin post_id lerini aklında tut ki onları da nuke_bbposts_text içinde bul ve onlarıda bir siliver kıyağın olsun...
Böylece sitemizden silmiş olduğumuz üyelerin foruma attıkları mesajlarda forumda görünmez ama arka planda kalırken artık kalmaz olmuşlar pek bir de mutlu olmuşuzdur.
Şimdi sevgili script aç sql deki nuke_bbtopics tablosunu içinde topic_poster sütunundaki üye ID leri ile şu bizim nuke_users deki user_id altındaki numerolarıda bir güzel karşılaştır ve birbirini tutmayan nuke_bbtopics dekilerini siliver valla lazım değil onlar....
buraya kadar temizleme işlerini yaptık yani sitemizde olmayan kişilerin forumdaki mesajlarınıda yok ettik sanırım zaten çıkmıyorlardı (herhalde ama valla bilmiyorum)
şimdi second aşamaya gelelim bu aşamada ise hesaplama yaptırıp doğruyu bulacağız....
Sevgili script sql i açıver orda nuke_bbposts daki topic_id sütununu dikkate al ve içindeki rakkamları alt alta sıralı hale getir sonra ilk rakkamdan kaç tane var onuda bir aklından toplayı ver ve hangi rakkamı topladığını kaç tane olduğunu unutma, sonra git nuke_bbtopics tablosunu aç içinde topic_id sütununu bul ordaki rakkamlarıda ufaktan büyüğe sırala ondan sonrada aklında tuttuğun o rakkamı içeren satırı bul ve o satırdaki topic_replies sütununa aklında tuttuğun toplam rakkamı yaz ve bunu sürekli olay bitene kadar yap...
işte size şıp diye çözdüm olayı bunu bir allahın kulu akıl edememiş bana nasip oldu scripti yazıverin altına da "djalphanın sivri zekası ürünüdür" yazıverin onore olurum :p
Şaka bir yana arkadaşlar anlatımda eksiklerim olabilir ama kesin çözüm bu hem veri bankanıza acaip bir temizlik de yapmakta var olmayan üyenin mesajları kalsın istiyorsanız onu bilemem o zaman tek tek forumların içindeki birden fazla sayfası olan mesajları sayıp mesaj adetini nuke_bbtopics içindeki topic_replys e yazacaksınız o zaman sorununuz çözülecektir.
Kayıt: Jul 20, 2002 Mesajlar: 3836 Konum: Balıkesir
Tarih: 2006-07-06, 00:36:53 Mesaj konusu:
djalpha doğru mantıktan gitmişsin. Ancak bu uygulama tehlikeli bir işlem olacak. Onun için bu tür bir eklentiyi hemen yayınlamak zor. Ben şu sıralar bu konuya hiç mesaj gelmemiş hatasına taktım. Ona bakıyorum.
benim anlattigim yontem zaten webmaster arkadasin dedigi yontem sql'de mesaji goruor fakat sitede gormuyor sorun buradan kaynaklaniyor ve hic mesaj gelmemiş hatasini veriyor.
djalpha doğru mantıktan gitmişsin. Ancak bu uygulama tehlikeli bir işlem olacak. Onun için bu tür bir eklentiyi hemen yayınlamak zor. Ben şu sıralar bu konuya hiç mesaj gelmemiş hatasına taktım. Ona bakıyorum.
Söylediğim yöntem sadece forumu temizlememekte bu konuya hiç mesaj gelmemiş hatasınıda düzeltmektedir.
Yöntemin mutlaka riskleri var hatta yukarıda rahatça anlattığım komutlar dizininde var olmayan mantıkta komut da olabilir...
Ama ben komutları ve script yazmayı bilmediğim için mantığımı bildiğim uzun yollardan giderek gerçeğe dökebilmekteyim size şimdi en basitinden bu karşılaştırmaları yapmanın yolunu önereceğim..
Söz konusu 2 tabloyu CSV olarak export edin excell de açın ve söz konusu sütunu yukarıdan aşağı sıralayın karşılaştırın arada var olmayan ID leri fark edeceksiniz... Bunu daha kolay yapmak içinde sadece bir excell compare&Merge softwarei kullanmanız yeterlidir o programlar otomatik olarak sütunu karşılaştırıp farklı ID olanları renkli yaparlar. Sizede renkli satırları silmek kalır.
Bakalım ilerlememiz sonuç verecekmi şimdilik bu kadar.
Kayıt: Jul 20, 2002 Mesajlar: 3836 Konum: Balıkesir
Tarih: 2006-07-10, 14:17:41 Mesaj konusu:
Yaptığım scriptleri denemek isteyenler webmaster@netopsiyon.com adresinden benimle iletişim kurabilirler. Henüz sorun olup olmadığı konusunda emin olmadığımdan dosyayı herkese vermeyeceğim. Deneyimli kişilerin denemesi faydalı olacaktır.
Olay bitmiştir sonsuz teşekkürler Ali ne diyebilirimki gözlerine, aklına parmaklarına ve popona sağlık (18 saat oturup kod yazmak her yiğidin harcı değildir) helal olsun tebrik ederim.
Ali osman abi bende dediğiniz şekilde de yaptım bu sfer viewtopic.php dosyasında httpdocs\modules\Forums\viewtopic.php on line 388 diye hata verdi orjinal sürümündeki viewtopic.php dosyasını atınca sorun gitti sanırım oldu yine sorun yaşayan arkadaşlar dediğim gibi deneyebilrler..
Bu forumda yeni başlıklar açamazsınız Bu forumdaki başlıklara cevap veremezsiniz Bu forumdaki mesajlarınızı değiştiremezsiniz Bu forumdaki mesajlarınızı silemezsiniz Bu forumdaki anketlerde oy kullanamazsınız