Zobacz temat
Strona 2 z 2: 12
|
Usunięcie własnego konta
|
|
piotrek199214 |
Dodany dnia 13.04.2009 14:19:02
|
Bywalec Postów: 977 Pomógł: 168 v7.01.05 Data rejestracji: 17.12.2007 21:05 |
Trochę zmian: Wszystkie pliki wrzucamy do odpowiednich miejsc. Jeżeli pliki były już modyfikowane to można dodać ręcznie przez edycje plików (znajdziesz poniżej). Modyfikacje w pliku edit_profile.php: Linia ok. [~27]: pod: Rozwiń Kod źródłowy PHP dodajemy: Rozwiń Kod źródłowy PHP Linia ok. [~122]: zamiast: Rozwiń Kod źródłowy PHP zamieszczamy to: Rozwiń Kod źródłowy PHP Następnym plikiem edycji jest infusions/user_info_panel/user_info_panel.php: Linia ok. [~29]: pod tym: Rozwiń Kod źródłowy PHP dodajemy: Rozwiń Kod źródłowy PHP Jakie zmiany: - w panelu user_info_panel po kliknięciu na link usuń konto wyskakuje komunikat (Czy na pewno chcesz skasować swoje konto? - czy jakoś tak) - widoczność linków dla użytkowników i adminów (lecz nie dla SuperAdmina) - w pliku delete.php dodałem wprowadzenie hasła użytkownika. Jeżeli hasło będzie złe zostanie wyświetlone info. - po wprowadzeniu poprawnego hasła konto zostanie skasowane. - po wejściu na stronę bezpośrednio z wklepanego adresu jako gość powróci na stronę główną, taka sama sytuacja z SuperAdminem. Paczka w załączniku, tylko podmienić.
piotrek199214 dodał/a następującą plik:
Edytowane przez piotrek199214 dnia 13.04.2009 14:23:20 Pomogłem Ci? Wystarczy podziękować i oznaczyć post jako pomocny Tanie tworzenie wtyczek, masz problem napisz. |
|
|
Wścibski Gość |
Dodany dnia 25.11.2024 02:52:35
|
Pan Kontekstualny Postów: n^x Data rejestracji: Zawsze |
|
IP: localhost | |
Artur-M |
Dodany dnia 13.04.2009 21:36:59
|
Początkujący Postów: 225 Pomógł: 5 Ostrzeżeń: 4 Data rejestracji: 16.12.2008 17:42 |
Dzięki piotrek199214. Wszystko śmiga że aż miło. Teraz ciekawe, czy twórcy PHP-Fusion wklepią to na stałe. |
|
|
Grzes |
Dodany dnia 13.04.2009 22:04:07
|
Zaawansowany Postów: 1656 Pomógł: 42 Data rejestracji: 28.04.2005 20:28 |
Artur-M napisał/a: Dzięki piotrek199214. Wszystko śmiga że aż miło. Teraz ciekawe, czy twórcy PHP-Fusion wklepią to na stałe. Na 100% w tej postaci nie zostanie to wykorzystane - posiada jedną zasadniczą wadę dyskwalifikującą to na starcie. Wyobraźcie sobie teraz takiego jantoma albo Pieke usuwającego sobie swoje konto z supportu... znikną także ich posty - jakby nie patrzeć wiele wartościowych postów z rozwiązaniami różnych problemów znika. Za takie usuwanie użytkowników to ja dziękuję... jak administrator serwisu nie macie żadnego wpływu na to czy ktoś wam nie skasuje setki postów. Jeden użytkownik znikający ze swoimi postami może narobić ładnego zamieszania jak był aktywny przez lata i się obraził bo jakiś moderator go okrzyczał za nieprawidłową nazwę tematu.... Wybór czy to stosujecie na swych stronach należy tylko i wyłącznie do Was. Często najmądrzejszą odpowiedzią jest milczenie
|
|
|
Artur-M |
Dodany dnia 13.04.2009 22:12:51
|
Początkujący Postów: 225 Pomógł: 5 Ostrzeżeń: 4 Data rejestracji: 16.12.2008 17:42 |
No, cóż. Każdy może sobie w delete.php ustawić, to ma być kasowane z bazy danych razem z kontem użytkownika. Ja zaraz po wgraniu tego na serwer dałem, żeby posty na forum zostały. Oczywiście postąpiłem tak jak na naszej-klasie, czyli napis typu Informujemy, że zgodnie z Art. 5.5 naszego Regulaminu usunięcie konta nie jest równoznaczne z usunięciem danych osobowych z bazy serwisu nasza-klasa.pl. Jeśli chcesz usunąć te dane, prześlij do nas odpowiednie żądanie za pomocą formularza kontaktowego. tylko że zamiast "danych osobowych" to dałem "postów na forum".W sumie to prymitywne, bo jak ktoś chce zobaczyć profil tego, kto coś tam napisał na forum to ląduje na komunikacie że "nie ma takiej strony", ewentualnie na stronie głównej (pracuje nad tym). Edytowane przez Artur-M dnia 13.04.2009 22:19:24 |
|
|
Grzes |
Dodany dnia 13.04.2009 22:19:16
|
Zaawansowany Postów: 1656 Pomógł: 42 Data rejestracji: 28.04.2005 20:28 |
Artur-M napisał/a: No, cóż. Każdy może sobie w delete.php ustawić, to ma być kasowane z bazy danych razem z kontem użytkownika. Wspomniałem o tym w poście na poprzedniej stronie. Tak nie można. Sprawdź sobie na testowej stronie co się stanie jak usera usuniesz a posty i newsy czy arty zostawisz nietknięte. Ja bym zastosował pole user_status w tabeli users do identyfikacji usuniętego konta. Wartość 3 jest wolna, może oznaczać konto usunięte. Zamiast usuwania rekordu w delete.php zmienić mu tylko wartość w tym polu. W maincore.php przy logowaniu uwzględnić to, tak samo w setuser.php. Następnie w profile.php zamiast wyświetlania profilu tego użytkownika tylko informacja że konto użytkownika XXXX zostało usunięte. W ten sposób zawartości witryny nie trzeba usuwać. Konto pozostaje niedostępne dla nikogo co jest równoważne z faktem usunięcia. Należy takie zmiany także uwzględniać w dodatakach tylko listy mailingowe choć z tego co kojarze wysyłają maile do osób z user_status równym 0 (zero). Aktualizacja: Nasza klasa przewidziała tego typu możliwość. Jak to technicznie mają rozwiązane nie dowiemy się. Odpowiednie zapiski w regulaminie i moje rozwiązanie powinno zadowolić administratora jak i usuwanego użytkownika. Można w takim profilu usuwanym wykasować adres email (UPDATE tabeli users) co usunie dane osobowe. To samo z komunikatorami. Po prostu profil wyczyścić. Edytowane przez Grzes dnia 13.04.2009 22:21:33 Często najmądrzejszą odpowiedzią jest milczenie
|
|
|
Artur-M |
Dodany dnia 13.04.2009 22:21:06
|
Początkujący Postów: 225 Pomógł: 5 Ostrzeżeń: 4 Data rejestracji: 16.12.2008 17:42 |
Pomysł i rozwiązanie - lepsze. Ale nie wiem, czy ktoś się pisze na ich realizację. Bo chyba więcej roboty niż przy zwykłym usunięciu wszystkich rekordów danego usera.
Edytowane przez Artur-M dnia 13.04.2009 22:33:13 |
|
|
Grzes |
Dodany dnia 13.04.2009 22:43:29
|
Zaawansowany Postów: 1656 Pomógł: 42 Data rejestracji: 28.04.2005 20:28 |
maincore.php (229-238) Rozwiń Kod źródłowy PHP zamienić na: Rozwiń Kod źródłowy PHP setuser.php Można zrezygnować z edycji tego pliku jeśli zgodzimy się na informację przy logowaniu "nieprawidłowa nazwa użytkowinka lub hasło" która to jest wyświetlana standardowo przy podaniu nieprawidłowych danych dla konta lub nieistniejącego - tego oczkujemy. profile.php Za długo nie kopałem w kodzie. Okazje się że modyfikacja tego pliku także nie jest potrzebna. Jest w nim linijka: Rozwiń Kod źródłowy PHP która przy user_status innym niż 0 nie wyświetli profilu. Co pozostaje? Zamiast tych wsyzstkich delete w waszym pliku tylko jedno zapytanie do bazy: Rozwiń Kod źródłowy PHP Zaktualizuje to user_status aktualnie zalogowanemu uzytkownikowi oraz dla przykładu wyczyści email oraz komunikator aim. Każdy wg uznania powinien sobie pola do wyczyszczenia tu dopisać. Można też z automatu wybrać listę komunikatorów na podstawie zarządzania polami w PA dla profilu. Jednak kod będzie dłuższy. Łatwiej będzie ręcznie wybrane pola tu dopiasać. Dopracujcie sobie to wszystko i macie gotowca :) Edytowane przez Grzes dnia 14.04.2009 12:07:57 Często najmądrzejszą odpowiedzią jest milczenie
|
|
|
Artur-M |
Dodany dnia 14.04.2009 11:22:52
|
Początkujący Postów: 225 Pomógł: 5 Ostrzeżeń: 4 Data rejestracji: 16.12.2008 17:42 |
Czyli w praktyce - zastąpić wszystkie zapytania do bazy z obecnego pliku delete.php na jeden: i sobie dostosować, tak? P.S. + zmienić fragment w maincore.php oczywiście. Edytowane przez Artur-M dnia 14.04.2009 12:22:13 |
|
|
Grzes |
Dodany dnia 14.04.2009 11:58:18
|
Zaawansowany Postów: 1656 Pomógł: 42 Data rejestracji: 28.04.2005 20:28 |
Dokładnie. Powinno działać bez problemów. Kilka dni temu instalowałem nowy system u siebie a serwer w ovh w drodze. W tej chwili nie mam działającej strony testowej żeby to sprawdzić i zagwarantować działanie.
Często najmądrzejszą odpowiedzią jest milczenie
|
|
|
Artur-M |
Dodany dnia 14.04.2009 12:06:12
|
Początkujący Postów: 225 Pomógł: 5 Ostrzeżeń: 4 Data rejestracji: 16.12.2008 17:42 |
Oto, co pisze jak się już usunęło dane (ostatni etap usuwania konta): I pod tym Konto test1 wraz ze wszystkimi wpisami w bazie danych zostało skasowane. (to już było w delete.php)
Edytowane przez Artur-M dnia 14.04.2009 12:06:53 |
|
|
Grzes |
Dodany dnia 14.04.2009 12:08:32
|
Zaawansowany Postów: 1656 Pomógł: 42 Data rejestracji: 28.04.2005 20:28 |
Literówka w zapytaniu. Napisałem UDPATE zamiast UPDATE. Poprawiłem w poprzednim moim poście. Często najmądrzejszą odpowiedzią jest milczenie
|
|
|
Artur-M |
Dodany dnia 20.10.2009 17:55:47
|
Początkujący Postów: 225 Pomógł: 5 Ostrzeżeń: 4 Data rejestracji: 16.12.2008 17:42 |
Każdy wg uznania powinien sobie pola do wyczyszczenia tu dopisać. W związku z tym mam pytanie: czy jak w delete.php znajdzie zapytanie do bazy o wyczyszczenie pola, którego nie ma w bazie to czy tak może być? Czy nic się nie stanie? Bo ja nie mam testowej strony i nie mogę tego sprawdzić. PW od moderatora:
Edytowane przez Artur-M dnia 20.10.2009 17:14:05 |
|
|
Matts |
Dodany dnia 20.10.2009 19:02:00
|
Przedszkolak Postów: 41 Pomógł: 3 Data rejestracji: 09.12.2007 11:19 |
Nie usunie Ci niczego innego. Nie może usunąć czegoś czego nie ma. |
|
|
Artur-M |
Dodany dnia 20.10.2009 20:05:32
|
Początkujący Postów: 225 Pomógł: 5 Ostrzeżeń: 4 Data rejestracji: 16.12.2008 17:42 |
Czyli jak będzie w delete.php np. user_gg='', a takiej kolumny w fusion_users nie ma, to nic nie szkodzi? |
|
Strona 2 z 2: 12
Przejdź do forum: |