Simple Machines Community Forum

SMF Support => Türkçe Bölümü (Turkish) => Language Specific Support => Dokümantasyon => Topic started by: Pijama on February 15, 2009, 06:59:53 PM

Title: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Pijama on February 15, 2009, 06:59:53 PM
Merhabalar
Daha önce bu konu Elmacik arkadaşımız tarafından anlatıldı.
Bir çok kişi bu anlatım sayesinde silinmiş eski üyelerini veya
kazara silinen üyelerini geri getirmeyi başardı.
Fakat bu işlemden sonra yeni bir ihtiyaç ortaya çıktı.
Peki nedir bu ihtiyaç ?
"Geri getirilen üyenin mesaj alanındaki yan profilde bulunan Mesaj Sayısı: kısmı degişmiyordu"

- Admin > Forum Bakımı > İstatistikleri ve forum toplamını yeniden say işe yaramadı
- Mysql den tabloları onardık yine işe yaramadı
- üyenin profilinden mesaj sayısını değiştirmeyi akıl ettik yine olmadı
  çünkü eski üyeliğin kaç mesajı olduğunu bilmiyorduk

Şimdi hem silinen üyemizi geri getireceğiz hemde mesaj sayısını değiştirecegiz
bu durumu şuanda forum sitemde silinmiş bir üyeyi örnek vererek, resimli olarak anlatacağım

Silinmiş olan üye profilini aşağıda görüyorsunuz
mesaj tarihine dikkat edin..

(http://olaysohbet.ol.funpic.org/yukle/resimler/d30631f7e56b598e743222ec22b39fd6.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/d30631f7e56b598e743222ec22b39fd6.gif)

Daha sonra bu üye foruma farklı bir isimle kayıt olup tonca mesaj yazmış
kendisini silen bu üyenin yeni isimle aldıgı yeni profili aşagıda görüyorsunuz
eski sildiği isimle bir daha kayıt olabilirdi. Bu hiç bir işlemimizde farklılık göstermeyecktir.

(http://olaysohbet.ol.funpic.org/yukle/resimler/45820c2e89001b209a4c31501527b07f.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/45820c2e89001b209a4c31501527b07f.gif)

Şimdi bu üye yanıma geldi ve eski mesajlarımı yeni üyeliğime eklermisiniz dedi
"hay hay ne demek işimiz bu" demedim tabi :)
bende Elmacık arkadaşımızın konusuna göz attım ve sonra Yağız hocamı soru bombardımanına tuttum

3 sql sorgusuyla isteklerimizi tam anlamıyla gerçekleştirdik.

Başlıyoruz..
öncelikle silinmiş üyenizin yeni bir üyeliği yoksa hemen yeni bir üyelik alın
alacağınız yeni üyelik ismi, silinmiş olan üyelik ismi ile aynı olabilir.

cPanelden phpMyadmin sayfamıza baglanıyoruz
ve SMF forum sitemiz için kurduğumuz veritabanını tıklıyoruz

(http://olaysohbet.ol.funpic.org/yukle/resimler/5699959e02fd376ebb2c1139f09efd23.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/5699959e02fd376ebb2c1139f09efd23.gif)

Veritabanımızı seçip tıkladıktan sonra açılan sayfada
veritabanının ismi üzerinde duran SQL simgesi tıklıyoruz
ve karşımıza sql sorgu paneli çıkıyor

(http://olaysohbet.ol.funpic.org/yukle/resimler/1663f083405d486a34e839de5cb935b4.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/1663f083405d486a34e839de5cb935b4.gif)

Evet işte sql sorgu panelimiz

(http://olaysohbet.ol.funpic.org/yukle/resimler/26f964840c149b0637fa2f51fc1ba9e0.gif)

bu panele aşagıda verdigim sorguyu yazıp sağ alt köşedeki GiT butonunu tıklıyoruz

Code (SMF 1.x) Select

UPDATE smf_messages SET ID_MEMBER='YENI_UYE_NUMARASI' WHERE posterName='ESKI_KULLANICI_ADI';


Code (SMF 2.x) Select

UPDATE smf_messages SET id_member='YENI_UYE_NUMARASI' WHERE poster_name='ESKI_KULLANICI_ADI';


bu sorguda dikkat edilmesi gerekenler şunlardır ve kendinize göre değiştiriniz
smf_messages kısmındaki smf_ tabloların ön ekidir. Eger siz farklı bir ön ek kullanmışsanız degiştiriniz
YENI_UYE_NUMARASI nı bulmak için forum sitenizde yeni alınan üyeligin ismi üzerine mause getirin
örnek resim aşağıdadır.

(http://olaysohbet.ol.funpic.org/yukle/resimler/2ce8797f22769a3657cebf5d1b12bf72.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/2ce8797f22769a3657cebf5d1b12bf72.gif)

ESKI_KULLANICI_ADI silinen üyenin ismidir. Eski silinmiş üye ismi yani

evet sorgumuz hakkındaki bu ek bilgilerden sonra sorgumuzu çalıştırıyoruz
aşağıdaki resimde görüldügü gibi sorgumu kendime göre değiştirdim ve GiT butonuna basıyorum

(http://olaysohbet.ol.funpic.org/yukle/resimler/d4881508836a19457babf19e185e7b6b.gif)
Resim açılmadıysa burayı tıkla (http://olaysohbet.ol.funpic.org/yukle/resimler/d4881508836a19457babf19e185e7b6b.gif)

Evet aşağıdaki resimde gördügünüz gibi sorgumuz başarıyla çalıştı
ve eski silinmiş üyeni tüm mesajları yeni üyelik ismine aktarıldı

(http://olaysohbet.ol.funpic.org/yukle/resimler/d248aba5d38b9e2a4d4ae9526adc764d.gif)
Resim açılmadıysa burayı tıklayınız (http://olaysohbet.ol.funpic.org/yukle/resimler/d248aba5d38b9e2a4d4ae9526adc764d.gif)

İşte farkları belgeleyen resim

(http://olaysohbet.ol.funpic.org/yukle/resimler/407c4a99a4ee46f62ac2f8e4c86a0ac3.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/407c4a99a4ee46f62ac2f8e4c86a0ac3.gif)

Evet silinmiş üyemizi geri getirdik
yanlız ufak bir fark var üyenin yan Pofiline baktıgımızda mesaj sayısının değişmedigini görüyoruz
halbuki mesaj sayısının yükselmesi lazımdı degilmi ? çünkü eski mesajlarıda ekledik

ilk önce silinmiş olan o eski üyemizin isminde kaç mesaj var onu bulmamız lazım
Yağız hocamız hemen bize sql sorgusunu verdi ve denemeye başlıyoruz

phpMyadmin sayfamızda veritabanının ismi üzerindeki SQL simgesini tıklıyoruz
ve açılan sql sorgu paneline aşağıdaki sorguyu yazıyoruz

Code (SMF 1.x) Select

SELECT COUNT(*) FROM smf_messages WHERE posterName = 'ESKI_KULLANICI_ADI';


Code (SMF 2.x) Select

SELECT COUNT(*) FROM smf_messages WHERE poster_name = 'ESKI_KULLANICI_ADI';


Sorguyu kendime göre değiştirerek uyguluyorum. Nasıl değişileceğini yukarda yazmıştım
karşıma eski silinmiş üyemizin mesaj sayısı geliyor. Hemen bu sayıyı yanıma not ediyorum
çünkü birazdan bu sayıyı yeni üyeliğe aktaracağız

(http://olaysohbet.ol.funpic.org/yukle/resimler/cf78c3a1115fc838006628c8c838533e.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/cf78c3a1115fc838006628c8c838533e.gif)

Evet eski mesaj sayısını buldum
birde üyemin varsa şunki mesaj sayısını alıyorum

Eski mesaj sayısı : 5136
Yeni mesaj sayısı : 4247
Toplam Mesaj Sayısı: 9383

şimdi toplam mesaj sayısını yeni üyeliğe aktaralım
Yağız hocam sağolsun hemen sql sorgusunu bana veriyor

Code (SMF 1.x) Select

UPDATE smf_members SET posts = 'TOPLAM_MESAJ_SAYISI' WHERE ID_MEMBER = 'YENi_UYE_NUMARASI'


Code (SMF 2.x) Select

UPDATE smf_members SET posts = 'TOPLAM_MESAJ_SAYISI' WHERE id_member= 'YENi_UYE_NUMARASI'


YENi_UYE_NUMARASI nasıl bulunur yukarda anlatmıştım hemen ilgili yere yazıyoruz
TOPLAM_MESAJ_SAYISI kısmınada üyenin eski mesaj sayısı ve yeni mesaj sayısının toplamını yazıyorum

artık sql sorgularını nasıl çalıştıracağımızı biliyoruz degilmi
az once iki defa anlattım zaten :)

veritabanı ismi üzerindeki SQL simgesini tıklıyorum çıkan sorgu paneline sorgumu yazıyorum
ve GiT butonuna basarak işlemi gerçekleştiriyorum. Karşıma şöyle bir sonuç geliyor..

(http://olaysohbet.ol.funpic.org/yukle/resimler/0a502318d345182cd9a560fb6ffc4b44.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/0a502318d345182cd9a560fb6ffc4b44.gif)

Evet tüm işlemler bitti
Yeni üyemiz böylelikle eski mesajlarına sahip oldu

Bu son verdigim sorgunun yerine şöylede yapabilirsiniz..
Buldugunuz toplam mesaj sayısını ilgili üyenin profiline giderek
Üyelik Ayarları kısmını tıklayarak açılan sayfada mesaj sayısı kutucugunada yazabilirsiniz

Örnek resim:
(http://olaysohbet.ol.funpic.org/yukle/resimler/505b8c8680b7172c85c5157aeabd6c90.gif)
Resim açılmadıysa burayı tıklayın (http://olaysohbet.ol.funpic.org/yukle/resimler/505b8c8680b7172c85c5157aeabd6c90.gif)


İşte hepsi bu kadar :)
ilk baştada dediğim gibi 3 sorgulama işlemiyle istediğimizi yerine getirdik.

Konusuyla ilham veren Elmacık arkadaşıma
ve hazırladığı sorgularla destek veren daha doğrusu
bu çalışmanın gerçek emekcisi Yağız hocama sonsuz teşekkürlerimi sunarım
o olmasaydı bende bu çalışmayı hazırlamıyacaktım..

Umarım anlatım işinize yaramıştır..
Cümlemize kolay gelsin
Hayırlı çalışmalar..

Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: c a g a t a y on February 16, 2009, 04:00:49 PM
Eyvallah Pijama
Sık sık lazim olan bir konu oldugundan ADD to BOOKMARK yaptim bu konuyu

Selamlar
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: turanordusu.tc on March 09, 2009, 09:24:37 PM
Emeğine sağlık Çok güzel ve açıklayıcı bir anlatım olmuş. ;)
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: ttopchu on March 11, 2009, 07:25:40 AM
çok teşekkürler
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Gökhan | Brestgerfich on March 12, 2009, 08:26:31 PM
Hocam şu an sitemdeki son üye THE-X, forumda 309. üye olarak görünüyor. (http://www.takilanlar.com/profile/?u=309 şeklinde yani)

Ancak silinen üyelikler nedeniyle forum istatistiklerinde 293 üye görünüyor. Arada 16 üyelik bir fark var yani.
Yukarıda yaptığınız anlatımla bu 16 üyelik farkı kapatmak mümkün mü? Benim anladığım kadarıyla mümkün değil -yeni bir üyelik açtığımız için böyle düşünüyorum- ama size bi sorayım dedim.
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Pijama on March 16, 2009, 12:51:00 PM
Mucize dedigini anladım

Tam olarak şöyle demeye çalışıyorsun
silinen üyeyi, silinmeden önce hangi ID numarasıydaysa o ID numarasıyla birlikte geri alayım
böylelikle Üye sayısı ile ID numaraları paralel yürüsün diyorsun..

Bence bir kaç msql sorgusuyla buda olur diye düşünüyorum ama emin değilim
yinede profesyonel anlamda bir hocamıza danışmak lazım
biliyorsunki, verdigim sorguları yağız hocamız hazırlamıştı..

Herhangi bir bilgi edindigimde burda paylaşırım
şimdilik kolay gelsin..

Ayrıca teşekkür eden arkadaşlara, ilgilerinden dolayı ben teşekkür ederim
umarım işlerine yaramıştır.

Iyi Calışmalar..
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Yağız... on March 16, 2009, 12:55:02 PM
Bunun için sanırım rallyproco birşey hazırlamıştı. Burada da olması gerekiyor. Bir bakayım ama çalışmayabilir...
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Gökhan | Brestgerfich on March 17, 2009, 02:11:48 PM
İlginiz için teşekkürler Pijama ve Yağız ;)
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Yağız... on March 17, 2009, 02:19:05 PM
Buldum, ve çalıştırdım. Ama bazı hataları var. O yüzden biraz daha deneme yapacağım :)
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: €®Ю€∏∏----® on April 01, 2009, 01:31:38 PM
eline emeğine sağlık hocam çok güzel olmuş
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: c a g a t a y on May 11, 2009, 02:22:14 PM
Babalar kafai yedim olmuyor

UPDATE smfyedek_messages SET ID_MEMBER='23708' WHERE posterName='TURKSOYLU'

sorguda hersey normal (smfyedek tablo adi böyle)

Neden olmadigi konusunda bir fikri olan?
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Yağız... on May 11, 2009, 02:24:33 PM
posterName yanlış olabilir.
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: c a g a t a y on May 12, 2009, 02:30:27 AM
adım gibi eminim dogru Yagiz'cim
Sifir result ile dönüyor cok ilginc?
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Gökhan | Brestgerfich on May 14, 2009, 04:27:16 PM
#1054 - Unknown column 'posterName' in 'where clause'

hatası cıktı :S
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Yağız... on May 14, 2009, 05:12:28 PM
SMF 2.0 için eklendi.
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Gökhan | Brestgerfich on May 14, 2009, 07:58:21 PM
Teşekkürler Yağız...

Konu sayısı için topics tablosunda arama yaptım. poster_name yerine starter_name yazdım ama kabul etmedi.
Ne olabilir ?
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: agguvenligi on May 18, 2009, 06:51:56 PM
çok güzel bir paylaşım olmuş teşekkürler .
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: asaddas on August 24, 2009, 04:11:34 PM
Quote from: Mucize | Brestgerfich on May 14, 2009, 07:58:21 PM
Teşekkürler Yağız...

Konu sayısı için topics tablosunda arama yaptım. poster_name yerine starter_name yazdım ama kabul etmedi.
Ne olabilir ?

+1
Bir yardım ederseniz sevinirm  :)
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Özgür on August 24, 2009, 08:24:59 PM

2.0 için admin paneli bakım bölümünde "Kullanıcı iletilerini ilişkilendir" var. Ordan yapın bu işlemi.
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: asaddas on August 25, 2009, 09:50:12 AM
Ben henüz 1.1.9 kullanıyorum
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Yağız... on August 27, 2009, 01:12:33 PM
Eğer Sinan'ın(benim) Topic Count On Display (Mesajlarda Konu Sayısı) modifikasyonunu kurduysanız bu kodu kullanın:
UPDATE smf_members SET topics = 'TOPLAM_MESAJ_SAYISI' WHERE ID_MEMBER = 'YENi_UYE_NUMARASI'
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Çiko on September 21, 2009, 04:26:34 PM
Teşekkürler işime yaradı.

Bu olayı konu sahibi değiştirmede kullanamazmıyız?
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: Gökhan | Brestgerfich on October 23, 2009, 08:43:27 AM
Quote from: Yağız... on March 17, 2009, 02:19:05 PM
Buldum, ve çalıştırdım. Ama bazı hataları var. O yüzden biraz daha deneme yapacağım :)

Yağız çoktan unutmuşsundur muhakkak ama hatırlatayım :) Deneme yaptın mı :)
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: karasin on November 01, 2009, 10:40:35 AM
Herkese İyi akşamlar.

Konuyu çok güzel açıklamışsınız. Ama bende olmadı ya da ben yapamadım. Kodları eksiksiz kopyaladım. Üye numarası dahil herşeyi yaptım ama mesajlar geri gelmedi. Hala ismin altında "ziyaretçi" yazmakta. Yeni üyelik ise olduğu gibi duruyor.

Mesaj sayısını profilden elle değiştirmek mümkün. Onu değiştirdim. Ama öncesinde de silinen üyenin mesaj sayını aratmıştım. 1230 olması lazımken, 10 diye gösterdi.

Bu sorunların sebebi nedir acaba, cevap verebilir misiniz?

Ben nerede yanlış yapıyorum?
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: DannyOnline on November 15, 2009, 06:10:56 PM
Selam arkadaşlar, aydınlatıcı bilgiler için teşekkürler. Peki şöyle bir yardım rica etsem mümkün mü?


Ben yanlışlıkla ID numarası 1 olan bir üyeyi "yanlışlıkla" sildim. Tekrar yeni bir üyelik açtım ona. Ancak bu yeni üyeliğin de ID numarasının 1 olmasını istiyorum. Bu mümkün müdür? Yada nasıl mümkündür?

Şimdiden teşekkürler..
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: DannyOnline on November 16, 2009, 09:33:23 PM
Yeni ID numarasını 1 yaptım arkadaşlar PMA'dan teşekkür ederim bana yol gösterdiğiniz ve sorunu çözmem de fikir öncüsü olduğunuz için. Herkese hayırlı geceler dostlar..
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: parashaw on May 16, 2010, 08:02:29 AM
Çok işime yaradı  :D Elinize sağlık
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: kagan1243 on July 06, 2010, 05:27:21 PM
paylaşım için teşkkürler.
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: kaptan_75 on January 29, 2011, 01:59:31 PM
ya arkadaşlar bende yaptım ama hata aldım

#1267 - Illegal mix of collations (latin1_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: b-24 on March 16, 2011, 10:25:33 PM
Konu işime yaradı, teşekkürler...
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: akbora on July 14, 2013, 08:28:44 AM
Üyeyi ve mesajlarını bağladık ancak diyelim üye ilklerden 90 ID numarası ama yeni numarası 49... kusür oldu. Bunu değiştirme şansı var mı bir de konularını belirleyemedik. smf_topics'ten konusunu da belirlemek mümkün mü teşekkürler...

Edit: gurubunu phpmyadminden değiştirdim ID'sini değiştirince hata verdi.

Edit: UPDATE smf_topics SET id_member_started='4xxx' WHERE id_member_started='xx';

diye işlem yaptım ama eski üyenin konu açma kayıtları da yok ki update olan birşey olmadı.
Title: Re: Silinmiş Üyeyi Geri Getirmek (Resimli anlatım)
Post by: husow on August 26, 2020, 01:13:07 PM
Elinize sağlık teşekkürler.  :)