phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

FAQFAQ - PIERWSZA POMOC!!  regulaminREGULAMIN  SzukajSZUKAJ  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload  katalog Forów DyskusyjnychKatalog Forów   FAQ Video tutoriale

Poprzedni temat «» Następny temat
Jak wykonać inkrementację wartości w wielu polach na raz
Autor Wiadomość
Draco demonicus


Posty: 93
Wysłany: 12-10-2012, 12:43   Jak wykonać inkrementację wartości w wielu polach na raz

Otóż problem jest taki, że w phpBB2 nie da się kompletnie zmieniać kolejności pól profilu. Zawsze robiłem to manualnie, no ale teraz, gdy pól jest dokładnie 63 do przeskoczenia to po prostu nie mam na to ochoty.

Chciałem zrobić tak aby od pola x do końca zwiększyć wartość o 1. Ale żeby te początkowe miały swoje dawne numery.

Konkretnie to chcę zwiększyć ID w tabeli phpbb_profile_fields o wartość 1 od pola 15 (czyli 1-14 mają być niezmienione).
Chciałbym też zmienić w tabeli phpbb_users nazwę pól analogicznie. Np. user_field_61 na user_field_62 itp.

W phpBB3 było to proste, wystarczyło bez problemu zmienić kolejność w panelu admina. Ewentualnie jeśli jest jakaś modyfikacja do tego to proszę.

Już kiedyś o to pytałem i dzięki temu wiedziałem, że mogę to robić ręcznie, ale teraz problem jest poważniejszy bo musiałbym zmieniać 65 razy wartość w jednej tabeli i 130 razy w drugiej (bo poza user_field_xx jest też user_allow_field_xx.

Jeśli nie zmieniłbym w tej drugiej tabeli tych nazw, wtedy kolejność wpisywanych informacji przez użytkowników by się nie zmieniła, ale opis pół tak.

Np.:
Cytat:
Imię: Mateusz
Miejscowość: Opole

Jak dodałbym tylko w phpbb_profile_fields pole "Nazwisko" to wyszłoby tak:
Cytat:
Imię: Mateusz
Nazwisko: Opole
Miejscowość:


Z góry dziękuję za pomoc. Jak ktoś wie jak to zrobić to bardzo dziękuję :D

EDIT: Ewentualnie, jeśli byłby problem z tymi polami w phpbb_users to proszę tylko o tę inkrementację id w tej pierwszej phpbb_profile_fields. Najwyżej użytkownicy by sobie sami zmienili kolejność tych pól
_________________
Avek jest mojego autorstwa. Zastrzegam sobie prawo do jego kopiowania, przerabiania i posiadania. Niestosowanie się do tego oznacza kradzież.
 
     
Gadatliwa Kasia 

   
MQs

Pomógł: 172 razy
Posty: 480
Wysłany: 13-10-2012, 05:12   

Jeżeli numery id pokrywają się z wierszami (domyślnie tak ma być) to wystarczy
Kod:
UPDATE phpbb_profile_fields SET id = id + 1 WHERE id > 14


Jeśli chodzi o nazwy to nie wiem czy zapytaniem coś takiego zrobisz. Najwygodniej chyba pętlę w php napisać i wstawić ją na chwilę w kod forum.
 
     
Draco demonicus


Posty: 93
Wysłany: 18-10-2012, 18:56   

Kurcze, pokazuje się taki error:

Cytat:
#1062 - Duplicate entry '16' for key 'PRIMARY'


Wiem o co chodzi, ale nie wiem jak to rozwiązać :/
15 chce mi zmienić na 16, ale 16 już istnieje bo jeszcze nie została zinkrementowana...

EDIT: Nie ma jakiegoś sposobu na inkrementację od ostatniego id? Żeby 74 zmieniło na 75, dopiero wtedy 73 na 74 potem 72 na 73 itp. Ja tak kiedyś robiłem ręcznie, ale wtedy było tego trochę mniej.
Mogę to zrobić, ale przy większej ilości łatwiej o pomyłkę, stąd pytam o zautomatyzowanie tego :P
_________________
Avek jest mojego autorstwa. Zastrzegam sobie prawo do jego kopiowania, przerabiania i posiadania. Niestosowanie się do tego oznacza kradzież.
 
     
MQs

Pomógł: 172 razy
Posty: 480
Wysłany: 18-10-2012, 22:47   

Faktycznie zapomniałem o duplikatach. Dodaj na końcu jeszcze
Kod:
ORDER BY id DESC
 
     
Draco demonicus


Posty: 93
Wysłany: 19-10-2012, 14:14   

Wielkie dzięki :D Wszystko działa i po wyczyszczeniu cache pole są przestawione, tak jak chciałem :)
_________________
Avek jest mojego autorstwa. Zastrzegam sobie prawo do jego kopiowania, przerabiania i posiadania. Niestosowanie się do tego oznacza kradzież.
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Kopiowanie wszelkich treści zawartych na forum, modyfikacji oraz instrukcji bez zgody administracji i autorów tematów/postów zabronione!

Powered by phpBB modified by Przemo © 2003 phpBB
Strona wygenerowana w 0,06 sekundy. Zapytań do SQL: 12
Polecane serwisy

Najlepsze oprogramowanie do prowadzenia sklepu internetowegoNajlepszy program do sklepu firmowany przez Przem'a

Sklep z gadżetami

serwis laptopów

phpbb

Design Cart - Tworzenie sklepu internetowego

iRonin.IT

• Zamów reklamę