Bir forumdaki üyeleri baska foruma tasimak

Kurulum, güncelleme, taşıma ilgili soru(n)lar.

Bir forumdaki üyeleri baska foruma tasimak

İleti velociraptor 17.01.2007, 11:29

iki forumum var ve ben bu iki forumu birlestirmeyi düsündügümden ilk olarak üyeleri birlestireyim dedim fakat ne yaptiysam olmadi (Her iki forumda phpbb ve ayni sürüm)verdigi hata asagida:

#1136 - Column count doesn't match value count at row 1

1.Themalar ayni
2.Dil ayni
Kullanıcı avatarı
velociraptor
Üye
Üye
 
İleti: 130
Kayıt: 26.11.2005, 01:35

İleti Simuzer 17.01.2007, 12:32

Bu birleştirmeyi neye göre yaptın?

Aynı ID'ye sahip kullanıcılar için nasıl bir yöntem geliştirdin, yine aynı mantıkla aynı ID'ye sahip mesajları nasıl birleştirdin. Bu oldukça komplex bir şey gibi...
Kullanıcı avatarı
Simuzer
Geliştirme Grubu
Geliştirme Grubu
 
İleti: 669
Kayıt: 09.11.2005, 09:34
Konum: İstanbul

Cvp: Bir forumdaki üyeleri baska foruma tasimak

İleti velociraptor 17.01.2007, 15:30

birlestiremedim zaaten fakat User id pek problem degil :
Resim
diyelimki üstteki resimde 5 te biten id yi ben import edecegim sql dosyasinda 6 dan baslattim , kisacasi orada sorun yok , themayi ve dili de ayni yaptimki hata vermesin , fakat birseler daha var degistirilmesi gereken o nedir onu bilemiyorum, eminimki bu isin oluru var ama bakalim nasil bir olur

Not: Bu arada kullanici mesajlarini tasimayacagim istedigim sadece kullanicilari tasimak , mesaj sayilari sifir görünse benim icin cok daha iyi (Cünkü yeni forumda sadece üyelere ilave edilmelrini istiyorum)

Kafamdaki fikir , yeni forumda mesaj sayisi sifir olan bir kullaniciyi alip , sadece id kismini bir arttirip tek tek SQL den insert yapmak ama sanirim excel ile 10-15 dk da istedigim formata getirip toplu halde atabilirim , ama yine hata verirse ozaman nasil bir cözüm bulurum bende merak ediyorum ,ama bulamazssam ben bu databank ve SQL egitimini bosuna almisim demektir
Kullanıcı avatarı
velociraptor
Üye
Üye
 
İleti: 130
Kayıt: 26.11.2005, 01:35

İleti Cybernet 18.01.2007, 18:21

iki phpbb forumunun yedeklerini al ve kullanıcı id kısımlarını sil ve birinden birine users tablosunun içeriğini diğerinin alt kısmına yapıştır.
sonra veritananındaki users tablosunu boşalt.
ve sorgu ekranından alt alta koyduğun users tablo içeriğini kopyala yapıştır yaparak sorgulat. yada sql dosyasındaki users tablosunun tablo oluşturma bölümünü sil sadece dosyaları kalsın ve kaydet sonra sql inportu kullanarak veritabanına yükle.

kullanıcılarının mesaj sayıları aynı kalacak.

not yedekleri saklamayı unutma. eğer hata verirse geri yüklersin.
Kullanıcı avatarı
Cybernet
Üye
Üye
 
İleti: 44
Kayıt: 20.01.2006, 21:31
Konum: Rize

Cvp: Bir forumdaki üyeleri baska foruma tasimak

İleti velociraptor 19.01.2007, 18:34

@Cybernet: neyazikki okadar basit degil

Az önce islemi , o üstte de "sanirim bu sekilde olur" diye yazdigim sekilde gerceklestirdim :D
iki farkli phpbb forumundan birinin sadece üyelerin yedegini alip digerinin üyelerine su sekilde ekledim:
1.tasinacak üyelerin yedegi alinir (uzantisi txt sekline getirilir)
2.excel de file open diyerek excel formatina import edilir (bu arada biraz ileri excel bilgisi gerekiyor cünkü sadece id,isim,password(Md5 seklinde) ve emailler bize gerekli) yani bunlarin ayri sütünlarda olmasini saglayacagiz
3.tasinmak istenen foruma yeni bir kullanici kaydi yapilir (örnegin : deneme isminde olsun)
4.deneme aktive edilip INSERT INTO `phpbb_users` ..... seklindeki tüm kaydi alinip notepad e yapistirilir(uzantisi.txt seklinde kaydedilir) ve yine excel de acilir 2. maddedeki ayri olmasi gereken sütunlar burada yine göz önüne alinir
5.daha sonra : denemenin id si göz önüne alinir diyelimki 3965 iste burakam kilit rakamdir yani 1. maddedekilerin id leri burakamin bir fazlasi seklide devam ettirlir (excelde cok kolay bir sekilde yapiliyor)
6.ve tasinacak üyelerin id,isim,password(Md5 seklinde) ve email sütunlari alinip 4. maddedeki deneme nin id,isim,password, ve email sütunlarinin altina yapistirilir (excel de yapiyoruz bunu)
7.bos kalan diger sütunlara denemeninkiler kopyalanir , bu arada thema ve dil kisimlarinin deneme ile ayni olmasina dikkat etmek gerekiyor
8. burada yine ileri bir excel bilgisi ile ( =CONCATENATE() ) fonksiyonu ile ayri sütunlar birlestirilip güle güle kullanilir , biraz karisik oldu biliyorum ama 10 dk mi aldi yapmak ve tam 700 üye tasidim, hepsinin kullanici isimleri , sifreleri ve emailleri aynen kaldi ;)

Yöntemi bulan ve deneyen : Velociraptor
Kullanıcı avatarı
velociraptor
Üye
Üye
 
İleti: 130
Kayıt: 26.11.2005, 01:35

İleti Cybernet 19.01.2007, 19:29

basit olmayan şeyi anlayamadım. senin yaptığın yöntemi çok önceleri yapıyordum ben istersen bir kaç ipucu vereyim sana senin yönteminden.

1. dosyanın uzantısını txt yapmana gerek yok. sql dosyasını exelden çağırırken senden isteyeceği sekme türünü belirt. ki bu sınırlandırılmış seçeneğidir. sonra veriyi almaya başlayacağı satırdır ki burada ilk insert tablosunun olduğu bölümdür. 2. adıma geçerek sekme seçeneğinin işaretini kaldırıp virgül seçeneğini işaretleyip 3. adıma geçin sonra oradaki metin radio butonunu işaretleyip son butonuna tıklayın. açılan sayfadaki sadce imza kısımlarını kontrol edeceğiz çünkü imzalarda virgül ,) kullanılmışsa bu hücreyide ikiye bölmüş olabilir böyle olanları düzelte bilirsiniz (bu sütünü almak istiyorsanız tabi). son olarakta ctrl+s tuşuşlarına bas. sql dosyasını bie html editor ile aç açılan sayfada virgüller gözükmeyecektir bu yüzden dikkat etmeniz nokta buandan itibaren başlıyor. virgül yerine tab tuşu ile sağladığımız sekme yerleşmiştir. html editorü ki burada frontpage veya cuteftpnin html editorunu öneriyorum. tab sekmesine ikikez tıkladığımızda bu alanı seçer ve sonra ctrl+f tuşuna basarak (cuteftpde) değiştirilecek kısma , yazılıp tümünü değiştir butonu ile değiştirilir ve kaydedilir.

buda senin yaptığın işlemdi sanırım ama bu işlemi birbiri ile ilgili olmayan kayıt sistemlerinde kullanırız. örneğin bir phpbb forum üyeleri ile vbulletin üyelerini birleştirmek gibi. ama yukardaki ilk sorunda anladığım kadarıyla iki phpbb kullanıcı tabanını birleştireceksinki tablolar zaten aynı sql dosyalarının yedeklerini alıp html editorü veya text editorü ile açıp birini diğerinin altına yapıştırman yeterli olacaktır. yanliz idlerini silmeni tavsiye ederim en azından aynı idlere sahip kullanıcıların idlerini değiştirmelisin. buda süreceği en fazla 2 dakikadır.
Kullanıcı avatarı
Cybernet
Üye
Üye
 
İleti: 44
Kayıt: 20.01.2006, 21:31
Konum: Rize

Cvp: Bir forumdaki üyeleri baska foruma tasimak

İleti velociraptor 20.01.2007, 14:54

Ne yazikki denemeden yazmissin , iki farkli forum ac sonra kullanicilari birlestirmeyi dene , bence yapamazssin , sebebini anlasilmayan bir sekilde olmuyor , yoksa ilk denedigim yöntemdi , bu arada kendi yöntemimle ilgili bana ipucu verdigin icin tesekürler , fakat eger excelden .txt degil de .sql seklinde alirsan (ki o sekilde yapmayi da en az 10 defa denemistim) islemlerini yaklasik 30 dk uzatirsin sebebi de : neyazikki sekmeye virgül konularak falan olmuyor dedim ya : Biri 3000 digeri 700-800 üyeli bir forumu sadece birkez birlestirmeyi denersen neyi neden yaptigim daha acik ve net ortaya cikar.
her iki forumun kullanicilarini alip, alt alta yapistirarak (her ikiside phpbb) hicbir sonuc elde edemezssin , yap ve yaparkende ekran görüntüsünü kaydet ve sonrada bu yamali SQL i Phpmyadminden calistirmayi dene , ki bende ögreneyim ,cünkü bunu en azb 100 defa denedim (ise yaramiyor) lütfen denemeden yazmayalim
Kullanıcı avatarı
velociraptor
Üye
Üye
 
İleti: 130
Kayıt: 26.11.2005, 01:35

İleti Cybernet 23.01.2007, 17:28

arkadaşım bu bir tartışmaya döüşüyor fakat ben denedim 10 larca site yaptım bu şekilde ve hiçbir sorun ile kjarşılaşmadım yani denemeden yazmayalım demene alındım bilesin. ben asla denemediğim bişeyi başkasına önermem. ve 30 dakika dediğin olay en fazla 5 dakika sürüyor. sen yapamadıysan sebeplerini incelemelisin. neresinde hata yaptığını öğrenmelisin sql dosyasını bir gözden geçir istersen diyeceğim ama neyse zaten sorunun kalmamış yapmışsın. tartışmaya dönüşmesin. ben sadece bence en kolay yöntemi dedim sana. sql dosyasının içindeki id kısımlarını silmen yeterli olur. ben bunu defalarca yaptım. üstelik sadece phpbb de değil bütün sistemlerin sql yöntemleri bu şekilde işler. sql dosyası işlemesini bilmiyorsan öğrenmeni tavsiye ederim.
Kullanıcı avatarı
Cybernet
Üye
Üye
 
İleti: 44
Kayıt: 20.01.2006, 21:31
Konum: Rize

İleti velociraptor 29.01.2007, 04:08

sql bilmiyorum haklisin :) , sanirim ne thema ne dil nede bu kullanicilarin actiklari mesajlarin tarihleri veya sayisi veya o kullanicilarin baskaca hicbir özelligi önemli degil , sileim id yi hemen birbiriyle hic alakasi olmayan iki forum kullanicilari eklensin , sihir gibi geliyor kulaga , sanirim sihir bilmedigimden yapamiyorum , sql bilmedigimden degil
Kullanıcı avatarı
velociraptor
Üye
Üye
 
İleti: 130
Kayıt: 26.11.2005, 01:35


Kurulum, Güncelleme, Taşıma



Kimler çevrimiçi

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 0 misafir

cron