Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/mysql] Lista najaktywniejszych userów w phpbb modified by przemo
Forum PHP.pl > Forum > Przedszkole
scretch
Witam, na swoim serwerze mam zainstalowany skrypt forum phpbb modified by przemo i chciałbym wyciągnąć z bazy listę 5 najaktywniejszych userów aktualnego miesiąca (teraz sierpień).

Według przykładu:
Cytat
Scretch (12)
Scretcha (8)
Maciek (7)
Bartek (7)
Żółwik (6)


kolega napisał mi taki skrypt:

  1. <?php
  2. $link = mysql_connect('localhost', 'login', 'haslo');
  3. mysql_select_db('nazwa bazy');
  4. $stats = mysql_query("SELECT forum_users.users, COUNT(forum_posts.posts) FROM forum_users, forum_posts WHERE forum_users.users=forum_posts.users AND forum_posts.date BETWEEN "2006-08-01 00:00:00" AND "2006-08-3 11:50:59" ORDER BY COUNT(forum_posts.posts) LIMIT 1;", $link);
  5. echo $stats;
  6. ?>


ale wyświetla się tylko błąd:
Cytat
Parse error: syntax error, unexpected T_LNUMBER on line 4.


dostałem również taki kod:

  1. SELECT users.user, COUNT(post.post) FROM users, post WHERE users.user=post.user AND post.date BETWEEN "2006-07-01 00:00:00" AND "2006-07-31 23:59:59" ORDER BY COUNT(post.post) LIMIT 10;
ale nie wiem jak go przerobić. withstupidsmiley.gif


Z góry dziękuję winksmiley.jpg
nospor
Masz blad w stringu zapytania odnosnie ".
Przeczytaj to dokladnie:
http://pl.php.net/manual/pl/language.types.string.php
A wszystko bedzie jasne
scretch
nie wiem jak to naprawić sad.gif
nospor
Ty kurka bardzo szybko czytasz.... a mowilem dokladnie masz przeczytac....
Cytat
Aby w takim łańcuch umieścić symbol pojedynczego cudzysłowu, należy go poprzedzić ukośnikiem wstecznym (\), tak jak w wielu innych językach programowania

Identyczna zasada dotyczy podwojnego apostrofu "

A teraz sobie luknij w pierwsze zapytanie i zobacz czego brakuje przed pewnymi "
scretch
teraz są dwa błędy:

  1. <?php
  2. Warning: Unexpected character in input: '' (ASCII=92) state=1 in /home.5/s/c/r/scretch/www/staty_forum.php on line 2
  3.  
  4. Parse error: syntax error, unexpected T_LNUMBER in /home.5/s/c/r/scretch/www/staty_forum.php on line 4
  5. ?>
nospor
No ale pokaz jak to zrobiles, bo zapewne źle. miales dac \ tylko w srodkowych ". Ale to bylo w linku ladnie napisane i pokazane na przykladach

  1. <?php
  2. $zm = "vocococo " sadasdsa " as das ";
  3. ?>
scretch
ok, błąd się już nie wyświetla, ale lista tych userów się też nie wyświetla :/

kod:

  1. <?php
  2. $link = mysql_connect("localhost", "login", "haslo");
  3. mysql_select_db('baza');
  4. $stats = mysql_query("SELECT forum_users.users, COUNT(forum_posts.posts) FROM forum_users, forum_posts WHERE forum_users.users=forum_posts.users AND forum_posts.date BETWEEN \"2006-08-01 00:00:00\" AND \"2006-08-3 11:50:59\" ORDER BY COUNT(forum_posts.posts) LIMIT 5;", $link);
  5. echo $stats;
  6. ?>


tabele:

forum_users - użytkownicy
forum_posts - posty
nospor
a teraz luknij tu:
http://pl.php.net/manual/pl/function.mysql-query.php
i zobacz co zwraca mysql_query

zeby odebrac wyniki z mysql_query, nalezy uzyc np. mysql_fetch_array:
http://pl.php.net/manual/pl/function.mysql-fetch-array.php

Tym razem przeanalizuj dokladnie podane linki. wszystko tam jest jasno i po polsku napisane

edit: nie zapomnij tez o informacji o ewnetualnyum bledzie:

  1. <?php
  2. mysql_query('....') or die(mysql_error());
  3. ?>

z racji ze nic ci sie nie wyswietla to pewnie masz blad w zapytaniu
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.