![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 287 Pomógł: 10 Dołączył: 22.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie Ponownie
Jak mogę zbudować licznik zarejestrowanych osób i ostatnio zarejestrowaną osobę, aby wyświetlało mi te dane na stronie głównej. Chcę to zrobić poprzez MySql ponieważ tam robiłem wpis tabeli. Dane Tabeli: Nazwa: user Hasła: password Loginy: login ID: user_id I na stronie głównej poprzez połączenie MySql wyświetlać mi ma: Mamy [liczba] Zarejestrowanych Użytkowników Ostatnio Zarejestrowany: [username] |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Masz tu prawie gotowe rozwiazanie:
Ten post edytował sadistic_son 23.08.2009, 09:11:07 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
sadistic_son bez sensu, po co pobierać wszystkich jak chce się tylko w tym miejscu mieć ostatniego oraz ilość wszystkich? Nie optymalne.
Matimor Do pobrania ostatniego: ORDER BY, LIMIT Do pobrania liczby wszystkich: COUNT |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 287 Pomógł: 10 Dołączył: 22.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
sadistic_son bez sensu, po co pobierać wszystkich jak chce się tylko w tym miejscu mieć ostatniego oraz ilość wszystkich? Nie optymalne. Matimor Do pobrania ostatniego: ORDER BY, LIMIT Do pobrania liczby wszystkich: COUNT No racja, Twoj jest bardziej optymalny ale moj tez dziala. Masz gdzies za duzo o jeden '{'. Wkodzie ktory ja napisalem wszystko sie zgadza. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 287 Pomógł: 10 Dołączył: 22.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
No racja, Twoj jest bardziej optymalny ale moj tez dziala. Masz gdzies za duzo o jeden '{'. Wkodzie ktory ja napisalem wszystko sie zgadza. Klamry mam ok więc o co chodzi (IMG:style_emoticons/default/worriedsmiley.gif) |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 450 Pomógł: 84 Dołączył: 27.11.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat Parse error: syntax error, unexpected '{' in masz dalej napisane on line xx i w tej linii xx masz błąd, swoją drogą zaopatrz się w jakiś dobry edytor, polecam na start notepad++, dużo łatwiej sprawdzić gdzie masz błąd (IMG:style_emoticons/default/winksmiley.jpg) Ten post edytował sniffer32 23.08.2009, 09:52:27 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
No racja, Twoj jest bardziej optymalny ale moj tez dziala. Jeśli oba sposoby działają, a podany przeze mnie, dodatkowo jest bardziej optymalny to niech autor pomyśli który zastosować (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
#luq podał najoptymalniejszy chyba sposób (IMG:style_emoticons/default/smile.gif)
Robisz count w bazie oraz robisz ORDER BY id DESC LIMIT 1 Ja bym dodał jeszcze jedną rzecz... Wstaw w obu warunek WHERE active = 1, gdzie active oznacza, czy zarejestrowany użytkownik aktywował swoje konto. Bo na co mi wiadomość o liczbie userów, włącznie z tymi, którzy nawet nie byli na tyle inteligentni, by kliknąć w link aktywacyjny posłany do nich mailem? (IMG:style_emoticons/default/winksmiley.jpg) Istotni są tylko CI, którzy to zrobili, bo w ten sposób można wyeliminować część botów chcących zarejestrować konta by spamować w portalu. |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 287 Pomógł: 10 Dołączył: 22.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Odkopie lekko temat.
Nadal mam z tym problem pisze mi, że mam za dużo {
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%) ![]() ![]() |
W 14 linijce masz za mało nawiasów.
|
|
|
![]()
Post
#12
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Optymalizuj to chłopie i popraw byki (IMG:style_emoticons/default/winksmiley.jpg)
DESC ma być. ASC to sortowanie od najmniejszej do największej. A Ty masz mieć najnowszego usera, czyli z największym id, a więc ma być DESC. Na dodatek po co ślesz cała tabelę userów? Masz posłać tylko liczbę userów i najnowszego więc zrób porządne zapytanie (IMG:style_emoticons/default/smile.gif)
To da Ci tylko jeden rekord wynikowy, który zawiera zarówno nazwę ostatnio zarejestrowanego użytkownika, jak i liczbę userów w bazie. Jeśli będziesz miał w bazie 500 userów to będziesz do skryptu posyłał 500 rekordów by sprawdzić wartość tylko jednego z nich? Szczerze wątpię (IMG:style_emoticons/default/smile.gif) Ten post edytował thek 25.08.2009, 21:56:04 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 287 Pomógł: 10 Dołączył: 22.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ok zrobiłem to tak, ale teraz mi nie pokazuje tego w index.php, użyłem require.
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 32 Dołączył: 24.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
$zapytanie = mysql_query("SELECT login FROM user");
$ilosc_wierszy = mysql_num_rows($zapytanie); $last= mysql_query("SELECT * FROM user ORDER BY user_id DESC LIMIT 1"); echo 'Mamy <b>'.$ilosc_wierszy.'</b> zarejestrowanych użytkowników.<br> Ostatnio zarejestrowany:<b>' .$last['user'].'</b>.'; Ten post edytował Kszyhuu 26.08.2009, 13:44:03 |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 287 Pomógł: 10 Dołączył: 22.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#16
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Po co uruchamiać pętle (IMG:style_emoticons/default/blinksmiley.gif) Moje zapytanie zwraca maksymalnie 1 (słownie jeden) rekord. Jeśli sprawdzisz czy zwróciło cokolwiek to już tylko wyciągasz dane.
Czy to naprawdę takie trudne? I zobaczcie o ile sobie w porównaniu do innych skróciłem kod. Myślenie nie boli (IMG:style_emoticons/default/smile.gif) @Kszyhuu: ? Czy jeśli baza miałaby 10000 userów to zwracałbyś 10000 loginów by je sobie potem w php funkcją num_rows policzyć? Od tego masz gotowe funkcje w bazie danych więc używaj ich. Po to masz właśnie count() w bazie. @Matimor: masz błąd bo masz spację wewnątrz echo. nazwa => T_ENCAPSED_AND_WHITESPACE o tym mówi. Zaraz po b a przed kropką. |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 287 Pomógł: 10 Dołączył: 22.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
thek Wielkie dzięki działa poprawnie.
Temat do wygaszenia. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 14:59 |